diff --git a/variants/ikoka_stick_nrf/ikoka_stick_nrf_board.cpp b/variants/ikoka_stick_nrf/IkokaStickNRFBoard.cpp similarity index 91% rename from variants/ikoka_stick_nrf/ikoka_stick_nrf_board.cpp rename to variants/ikoka_stick_nrf/IkokaStickNRFBoard.cpp index 8634cda1..6b660383 100644 --- a/variants/ikoka_stick_nrf/ikoka_stick_nrf_board.cpp +++ b/variants/ikoka_stick_nrf/IkokaStickNRFBoard.cpp @@ -1,28 +1,26 @@ #ifdef XIAO_NRF52 #include -#include "ikoka_stick_nrf_board.h" +#include "IkokaStickNRFBoard.h" #include #include static BLEDfu bledfu; -static void connect_callback(uint16_t conn_handle) -{ +static void connect_callback(uint16_t conn_handle) { (void)conn_handle; MESH_DEBUG_PRINTLN("BLE client connected"); } -static void disconnect_callback(uint16_t conn_handle, uint8_t reason) -{ +static void disconnect_callback(uint16_t conn_handle, uint8_t reason) { (void)conn_handle; (void)reason; MESH_DEBUG_PRINTLN("BLE client disconnected"); } -void ikoka_stick_nrf_board::begin() { +void IkokaStickNRFBoard::begin() { // for future use, sub-classes SHOULD call this from their begin() startup_reason = BD_STARTUP_NORMAL; @@ -50,7 +48,7 @@ void ikoka_stick_nrf_board::begin() { delay(10); // give sx1262 some time to power up } -bool ikoka_stick_nrf_board::startOTAUpdate(const char* id, char reply[]) { +bool IkokaStickNRFBoard::startOTAUpdate(const char *id, char reply[]) { // Config the peripheral connection with maximum bandwidth // more SRAM required by SoftDevice // Note: All config***() function must be called before begin() @@ -91,9 +89,6 @@ bool ikoka_stick_nrf_board::startOTAUpdate(const char* id, char reply[]) { strcpy(reply, "OK - started"); return true; - - - return false; } #endif diff --git a/variants/ikoka_stick_nrf/ikoka_stick_nrf_board.h b/variants/ikoka_stick_nrf/IkokaStickNRFBoard.h similarity index 70% rename from variants/ikoka_stick_nrf/ikoka_stick_nrf_board.h rename to variants/ikoka_stick_nrf/IkokaStickNRFBoard.h index c66f4827..4a061d42 100644 --- a/variants/ikoka_stick_nrf/ikoka_stick_nrf_board.h +++ b/variants/ikoka_stick_nrf/IkokaStickNRFBoard.h @@ -5,7 +5,7 @@ #ifdef XIAO_NRF52 -class ikoka_stick_nrf_board : public mesh::MainBoard { +class IkokaStickNRFBoard : public mesh::MainBoard { protected: uint8_t startup_reason; @@ -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 @@ -38,15 +46,15 @@ public: return (adcvalue * ADC_MULTIPLIER * AREF_VOLTAGE) / 4.096; } - const char* getManufacturerName() const override { - return "Ikoka Stick (Xiao-nrf52)"; + const char *getManufacturerName() const override { + return MANUFACTURER_STRING; } void reboot() override { NVIC_SystemReset(); } - bool startOTAUpdate(const char* id, char reply[]) override; + bool startOTAUpdate(const char *id, char reply[]) override; }; #endif diff --git a/variants/ikoka_stick_nrf/platformio.ini b/variants/ikoka_stick_nrf/platformio.ini index 13d82aca..9ced2bbb 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/target.cpp b/variants/ikoka_stick_nrf/target.cpp index c2712761..bd803399 100644 --- a/variants/ikoka_stick_nrf/target.cpp +++ b/variants/ikoka_stick_nrf/target.cpp @@ -2,7 +2,7 @@ #include "target.h" #include -ikoka_stick_nrf_board board; +IkokaStickNRFBoard board; #ifdef DISPLAY_CLASS DISPLAY_CLASS display; diff --git a/variants/ikoka_stick_nrf/target.h b/variants/ikoka_stick_nrf/target.h index 8311503a..c276e89f 100644 --- a/variants/ikoka_stick_nrf/target.h +++ b/variants/ikoka_stick_nrf/target.h @@ -3,7 +3,7 @@ #define RADIOLIB_STATIC_ONLY 1 #include #include -#include +#include #include #include #include @@ -16,7 +16,7 @@ extern MomentaryButton user_btn; #endif -extern ikoka_stick_nrf_board board; +extern IkokaStickNRFBoard board; extern WRAPPER_CLASS radio_driver; extern AutoDiscoverRTCClock rtc_clock; extern EnvironmentSensorManager sensors; 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)