]> git.tnoah.ca Git - lora-radio.git/commitdiff
use neopixel on heltec t114
authorliamcottle <liam@liamcottle.com>
Thu, 2 Jan 2025 10:39:54 +0000 (23:39 +1300)
committerliamcottle <liam@liamcottle.com>
Thu, 2 Jan 2025 10:39:54 +0000 (23:39 +1300)
Boards.h
Utilities.h

index 471321dce2706d5d362ed393e5afa3b88388ceef..0c1dca634013f0f2e04c5c78b17e272039fc2c89 100644 (file)
--- a/Boards.h
+++ b/Boards.h
       #define HAS_BLE true
       #define HAS_CONSOLE false
       #define HAS_PMU false
-      #define HAS_NP false
+      #define HAS_NP true
       #define HAS_SD false
       #define HAS_TCXO true
       #define HAS_BUSY true
       // LED
       #define LED_T114_GREEN 3
       #define PIN_T114_LED 14
+      #define NP_M 1
+      const int pin_np = PIN_T114_LED;
 
       // SPI
       #define PIN_T114_MOSI 22
     #define OCP_TUNED 0x38
   #endif
 
+  #ifndef NP_M
+    #define NP_M 0.15
+  #endif
+
 #endif
index 7f6309702f89996caeff57b38045a8e19cfaf456..e4179904e029455ab617ce0d848cbe24eb30d508 100644 (file)
@@ -106,7 +106,6 @@ uint8_t boot_vector = 0x00;
 #if HAS_NP == true
        #include <Adafruit_NeoPixel.h>
        #define NUMPIXELS 1
-       #define NP_M 0.15
        Adafruit_NeoPixel pixels(NUMPIXELS, pin_np, NEO_GRB + NEO_KHZ800);
 
        uint8_t npr = 0;
@@ -120,10 +119,17 @@ uint8_t boot_vector = 0x00;
   }
 
   void led_init() {
-       if (EEPROM.read(eeprom_addr(ADDR_CONF_PSET)) == CONF_OK_BYTE) {
-               uint8_t int_val = EEPROM.read(eeprom_addr(ADDR_CONF_PINT));
-               led_set_intensity(int_val);
-       }
+    #if MCU_VARIANT == MCU_NRF52
+      if (eeprom_read(eeprom_addr(ADDR_CONF_PSET)) == CONF_OK_BYTE) {
+        uint8_t int_val = eeprom_read(eeprom_addr(ADDR_CONF_PINT));
+        led_set_intensity(int_val);
+      }
+    #else
+    if (EEPROM.read(eeprom_addr(ADDR_CONF_PSET)) == CONF_OK_BYTE) {
+        uint8_t int_val = EEPROM.read(eeprom_addr(ADDR_CONF_PINT));
+        led_set_intensity(int_val);
+    }
+    #endif
   }
 
   void npset(uint8_t r, uint8_t g, uint8_t b) {
@@ -253,7 +259,12 @@ uint8_t boot_vector = 0x00;
                void led_tx_off() { digitalWrite(pin_led_tx, LOW); }
        #endif
 #elif MCU_VARIANT == MCU_NRF52
-    #if BOARD_MODEL == BOARD_RAK4631
+    #if HAS_NP == true
+        void led_rx_on()  { npset(0, 0, 0xFF); }
+        void led_rx_off() {    npset(0, 0, 0); }
+        void led_tx_on()  { npset(0xFF, 0x50, 0x00); }
+        void led_tx_off() { npset(0, 0, 0); }
+    #elif BOARD_MODEL == BOARD_RAK4631
                void led_rx_on()  { digitalWrite(pin_led_rx, HIGH); }
                void led_rx_off() {     digitalWrite(pin_led_rx, LOW); }
                void led_tx_on()  { digitalWrite(pin_led_tx, HIGH); }
@@ -469,6 +480,8 @@ unsigned long led_standby_ticks = 0;
        #endif
 
 #elif MCU_VARIANT == MCU_NRF52
+        int led_standby_lng = 200;
+        int led_standby_cut = 100;
                uint8_t led_standby_min = 200;
                uint8_t led_standby_max = 255;
                uint8_t led_notready_min = 0;