From 2e2e677b0a51dd0e5a36f65619ebceb5ce37a4f9 Mon Sep 17 00:00:00 2001 From: kelsey hudson Date: Wed, 27 Aug 2025 00:37:16 -0700 Subject: [PATCH] Ikoka Stick: Board IDs, LED behavior Updates the manufacturer identifier with the EBYTE module. Makes the LED behave properly. Turns the bright blue LED off after the first time you transmit anything via LoRa. --- variants/ikoka_stick_nrf/ikoka_stick_nrf_board.h | 10 +++++++++- variants/ikoka_stick_nrf/platformio.ini | 3 +++ variants/ikoka_stick_nrf/variant.h | 2 +- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/variants/ikoka_stick_nrf/ikoka_stick_nrf_board.h b/variants/ikoka_stick_nrf/ikoka_stick_nrf_board.h index c66f4827..08061c23 100644 --- a/variants/ikoka_stick_nrf/ikoka_stick_nrf_board.h +++ b/variants/ikoka_stick_nrf/ikoka_stick_nrf_board.h @@ -16,9 +16,17 @@ public: #if defined(P_LORA_TX_LED) void onBeforeTransmit() override { digitalWrite(P_LORA_TX_LED, LOW); // turn TX LED on + #if defined(LED_BLUE) + // turn off that annoying blue LED before transmitting + digitalWrite(LED_BLUE, HIGH); + #endif } void onAfterTransmit() override { digitalWrite(P_LORA_TX_LED, HIGH); // turn TX LED off + #if defined(LED_BLUE) + // do it after transmitting too, just in case + digitalWrite(LED_BLUE, HIGH); + #endif } #endif @@ -39,7 +47,7 @@ public: } const char* getManufacturerName() const override { - return "Ikoka Stick (Xiao-nrf52)"; + return MANUFACTURER_STRING; } void reboot() override { diff --git a/variants/ikoka_stick_nrf/platformio.ini b/variants/ikoka_stick_nrf/platformio.ini index 6e6ae101..16bc1253 100644 --- a/variants/ikoka_stick_nrf/platformio.ini +++ b/variants/ikoka_stick_nrf/platformio.ini @@ -61,6 +61,7 @@ extends = ikoka_stick_nrf_baseboard ; No PA in this model, full 22dBm build_flags = ${ikoka_stick_nrf_baseboard.build_flags} + -D MANUFACTURER_STRING='"Ikoka Stick-E22-22dBm (Xiao_nrf52)"' -D LORA_TX_POWER=22 build_src_filter = ${nrf52840_xiao.build_src_filter} + @@ -75,6 +76,7 @@ extends = ikoka_stick_nrf_baseboard ; cause distortion in the PA output. 20dBm in -> 30dBm out build_flags = ${ikoka_stick_nrf_baseboard.build_flags} + -D MANUFACTURER_STRING='"Ikoka Stick-E22-30dBm (Xiao_nrf52)"' -D LORA_TX_POWER=20 build_src_filter = ${nrf52840_xiao.build_src_filter} + @@ -89,6 +91,7 @@ extends = ikoka_stick_nrf_baseboard ; to the rf amplifier frontend. 9dBm in -> 33dBm out build_flags = ${ikoka_stick_nrf_baseboard.build_flags} + -D MANUFACTURER_STRING='"Ikoka Stick-E22-33dBm (Xiao_nrf52)"' -D LORA_TX_POWER=9 build_src_filter = ${nrf52840_xiao.build_src_filter} + diff --git a/variants/ikoka_stick_nrf/variant.h b/variants/ikoka_stick_nrf/variant.h index f94ebe49..ff5a41a6 100644 --- a/variants/ikoka_stick_nrf/variant.h +++ b/variants/ikoka_stick_nrf/variant.h @@ -35,7 +35,7 @@ extern "C" #define LED_GREEN (13) #define LED_BLUE (12) -#define LED_STATE_ON (1) // State when LED is litted +#define LED_STATE_ON (0) // State when LED is litted // Buttons #define PIN_BUTTON1 (PINS_COUNT)