From d610b7be8606039dc1366f15376dea6565c6f2d5 Mon Sep 17 00:00:00 2001 From: recrof Date: Wed, 3 Sep 2025 20:17:55 +0200 Subject: [PATCH] thinknode m1 refactor --- .../thinknode_m1}/ThinkNodeM1Board.cpp | 16 ++++----- .../thinknode_m1}/ThinkNodeM1Board.h | 13 ------- variants/thinknode_m1/platformio.ini | 35 ++++++++++--------- variants/thinknode_m1/target.h | 2 +- 4 files changed, 27 insertions(+), 39 deletions(-) rename {src/helpers/nrf52 => variants/thinknode_m1}/ThinkNodeM1Board.cpp (92%) rename {src/helpers/nrf52 => variants/thinknode_m1}/ThinkNodeM1Board.h (78%) diff --git a/src/helpers/nrf52/ThinkNodeM1Board.cpp b/variants/thinknode_m1/ThinkNodeM1Board.cpp similarity index 92% rename from src/helpers/nrf52/ThinkNodeM1Board.cpp rename to variants/thinknode_m1/ThinkNodeM1Board.cpp index 63768eea..12dd7362 100644 --- a/src/helpers/nrf52/ThinkNodeM1Board.cpp +++ b/variants/thinknode_m1/ThinkNodeM1Board.cpp @@ -1,10 +1,10 @@ -#include #include "ThinkNodeM1Board.h" +#include #ifdef THINKNODE_M1 -#include #include +#include static BLEDfu bledfu; @@ -26,14 +26,14 @@ void ThinkNodeM1Board::begin() { Wire.begin(); - #ifdef P_LORA_TX_LED - pinMode(P_LORA_TX_LED, OUTPUT); - digitalWrite(P_LORA_TX_LED, LOW); - #endif +#ifdef P_LORA_TX_LED + pinMode(P_LORA_TX_LED, OUTPUT); + digitalWrite(P_LORA_TX_LED, LOW); +#endif pinMode(SX126X_POWER_EN, OUTPUT); digitalWrite(SX126X_POWER_EN, HIGH); - delay(10); // give sx1262 some time to power up + delay(10); // give sx1262 some time to power up } uint16_t ThinkNodeM1Board::getBattMilliVolts() { @@ -50,7 +50,7 @@ uint16_t ThinkNodeM1Board::getBattMilliVolts() { return (uint16_t)((float)adcvalue * REAL_VBAT_MV_PER_LSB); } -bool ThinkNodeM1Board::startOTAUpdate(const char* id, char reply[]) { +bool ThinkNodeM1Board::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() diff --git a/src/helpers/nrf52/ThinkNodeM1Board.h b/variants/thinknode_m1/ThinkNodeM1Board.h similarity index 78% rename from src/helpers/nrf52/ThinkNodeM1Board.h rename to variants/thinknode_m1/ThinkNodeM1Board.h index fc752223..cffa0aaa 100644 --- a/src/helpers/nrf52/ThinkNodeM1Board.h +++ b/variants/thinknode_m1/ThinkNodeM1Board.h @@ -3,19 +3,6 @@ #include #include -// LoRa radio module pins for Elecrow ThinkNode M1 -#define P_LORA_DIO_1 20 -#define P_LORA_NSS 24 -#define P_LORA_RESET 25 -#define P_LORA_BUSY 17 -#define P_LORA_SCLK 19 -#define P_LORA_MISO 23 -#define P_LORA_MOSI 22 -#define SX126X_POWER_EN 37 - -#define SX126X_DIO2_AS_RF_SWITCH true -#define SX126X_DIO3_TCXO_VOLTAGE 1.8 - // built-ins #define VBAT_MV_PER_LSB (0.73242188F) // 3.0V ADC range and 12-bit ADC resolution = 3000mV/4096 diff --git a/variants/thinknode_m1/platformio.ini b/variants/thinknode_m1/platformio.ini index 590f2100..f987ac83 100644 --- a/variants/thinknode_m1/platformio.ini +++ b/variants/thinknode_m1/platformio.ini @@ -1,33 +1,35 @@ -[nrf52840_thinknode_m1] +[ThinkNode_M1] extends = nrf52_base -platform_packages = framework-arduinoadafruitnrf52 +board = thinknode_m1 +board_build.ldscript = boards/nrf52840_s140_v6.ld build_flags = ${nrf52_base.build_flags} -I src/helpers/nrf52 -I lib/nrf52/s140_nrf52_6.1.1_API/include -I lib/nrf52/s140_nrf52_6.1.1_API/include/nrf52 -lib_deps = - ${nrf52_base.lib_deps} - rweather/Crypto @ ^0.4.0 - -[ThinkNode_M1] -extends = nrf52840_thinknode_m1 -board = thinknode_m1 -board_build.ldscript = boards/nrf52840_s140_v6.ld -build_flags = ${nrf52840_thinknode_m1.build_flags} -I variants/thinknode_m1 -D THINKNODE_M1=1 -D RADIO_CLASS=CustomSX1262 -D WRAPPER_CLASS=CustomSX1262Wrapper - -D LORA_TX_POWER=22 - -D P_LORA_TX_LED=13 + -D P_LORA_DIO_1=20 + -D P_LORA_NSS=24 + -D P_LORA_RESET=25 + -D P_LORA_BUSY=17 + -D P_LORA_SCLK=19 + -D P_LORA_MISO=23 + -D P_LORA_MOSI=22 + -D SX126X_POWER_EN=37 + -D SX126X_DIO2_AS_RF_SWITCH=true + -D SX126X_DIO3_TCXO_VOLTAGE=1.8 -D SX126X_CURRENT_LIMIT=140 -D SX126X_RX_BOOSTED_GAIN=1 -build_src_filter = ${nrf52840_thinknode_m1.build_src_filter} + -D LORA_TX_POWER=22 + -D P_LORA_TX_LED=13 +build_src_filter = ${nrf52_base.build_src_filter} + - + + + +<../variants/thinknode_m1> lib_deps = - ${nrf52840_thinknode_m1.lib_deps} + ${nrf52_base.lib_deps} stevemarple/MicroNMEA @ ^2.0.6 debug_tool = jlink upload_protocol = nrfutil @@ -81,7 +83,6 @@ build_flags = ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 build_src_filter = ${ThinkNode_M1.build_src_filter} - + + + + diff --git a/variants/thinknode_m1/target.h b/variants/thinknode_m1/target.h index eac221c3..1e4e1381 100644 --- a/variants/thinknode_m1/target.h +++ b/variants/thinknode_m1/target.h @@ -3,7 +3,7 @@ #define RADIOLIB_STATIC_ONLY 1 #include #include -#include +#include #include #include #include