From 8d7c9a2592d41ae6e549a5662d1e96bbf92eb194 Mon Sep 17 00:00:00 2001 From: Owl Developer <10116759+igorka48@users.noreply.github.com> Date: Fri, 3 Oct 2025 01:59:30 +0300 Subject: [PATCH 1/5] Added support for SugarCube device --- variants/esp32/sugarcube/platformio.ini | 8 ++++++++ variants/esp32/sugarcube/variant.h | 26 +++++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 variants/esp32/sugarcube/platformio.ini create mode 100644 variants/esp32/sugarcube/variant.h diff --git a/variants/esp32/sugarcube/platformio.ini b/variants/esp32/sugarcube/platformio.ini new file mode 100644 index 0000000000..aa25df43de --- /dev/null +++ b/variants/esp32/sugarcube/platformio.ini @@ -0,0 +1,8 @@ +[env:sugarcube] +extends = esp32_base +board = ttgo-lora32-v21 +board_check = true +build_flags = + ${esp32_base.build_flags} -D TLORA_V2_1_16 -I variants/esp32/sugarcube + -DGPS_POWER_TOGGLE ; comment this line to disable triple press function on the user button to turn off gps entirely. +upload_speed = 115200 diff --git a/variants/esp32/sugarcube/variant.h b/variants/esp32/sugarcube/variant.h new file mode 100644 index 0000000000..58e1839304 --- /dev/null +++ b/variants/esp32/sugarcube/variant.h @@ -0,0 +1,26 @@ +#define BATTERY_PIN 35 +#define ADC_CHANNEL ADC1_GPIO35_CHANNEL +#define BATTERY_SENSE_SAMPLES 30 + +// ratio of voltage divider = 2.0 (R42=100k, R43=100k) +#define ADC_MULTIPLIER 2 + +#define I2C_SDA 21 // I2C pins for this board +#define I2C_SCL 22 + +#define BUTTON_PIN 0 +//#define LED_PIN 25 // If defined we will blink this LED + +#define USE_RF95 +#define LORA_DIO0 26 // a No connect on the SX1262 module +#define LORA_RESET 23 + +// In the T3 V1.6.1 TXCO version, GPIO 33 is connected to Radio’s +// internal temperature-compensated crystal oscillator enable +#ifdef LORA_TCXO_GPIO +#define LORA_DIO1 RADIOLIB_NC // no-connect on sx127x module +#else +#define LORA_DIO1 33 // https://www.thethingsnetwork.org/forum/t/big-esp32-sx127x-topic-part-3/18436 +#endif + +#define LORA_DIO2 32 // Not really used \ No newline at end of file From e1da309181f8ac6c7d35c6a701018131615bc0b8 Mon Sep 17 00:00:00 2001 From: igorka48 <10116759+igorka48@users.noreply.github.com> Date: Mon, 6 Oct 2025 01:03:58 +0300 Subject: [PATCH 2/5] Update variants/esp32/sugarcube/platformio.ini Co-authored-by: Austin --- variants/esp32/sugarcube/platformio.ini | 1 + 1 file changed, 1 insertion(+) diff --git a/variants/esp32/sugarcube/platformio.ini b/variants/esp32/sugarcube/platformio.ini index aa25df43de..68de9195ac 100644 --- a/variants/esp32/sugarcube/platformio.ini +++ b/variants/esp32/sugarcube/platformio.ini @@ -1,6 +1,7 @@ [env:sugarcube] extends = esp32_base board = ttgo-lora32-v21 +board_level = extra board_check = true build_flags = ${esp32_base.build_flags} -D TLORA_V2_1_16 -I variants/esp32/sugarcube From 342a8fd3af87b2f1fd0ee0778e4d6630d792375c Mon Sep 17 00:00:00 2001 From: Owl Developer <10116759+igorka48@users.noreply.github.com> Date: Mon, 6 Oct 2025 02:42:12 +0300 Subject: [PATCH 3/5] added buzzer pin --- variants/esp32/sugarcube/platformio.ini | 1 - variants/esp32/sugarcube/variant.h | 4 +++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/variants/esp32/sugarcube/platformio.ini b/variants/esp32/sugarcube/platformio.ini index 68de9195ac..d496e3ae79 100644 --- a/variants/esp32/sugarcube/platformio.ini +++ b/variants/esp32/sugarcube/platformio.ini @@ -5,5 +5,4 @@ board_level = extra board_check = true build_flags = ${esp32_base.build_flags} -D TLORA_V2_1_16 -I variants/esp32/sugarcube - -DGPS_POWER_TOGGLE ; comment this line to disable triple press function on the user button to turn off gps entirely. upload_speed = 115200 diff --git a/variants/esp32/sugarcube/variant.h b/variants/esp32/sugarcube/variant.h index 58e1839304..414caf0f7c 100644 --- a/variants/esp32/sugarcube/variant.h +++ b/variants/esp32/sugarcube/variant.h @@ -9,7 +9,9 @@ #define I2C_SCL 22 #define BUTTON_PIN 0 -//#define LED_PIN 25 // If defined we will blink this LED +// SugarCube has buzzer and LED sharing the same GPIO pin (25). +// LED activity triggers unintended buzzer noise, so LED functionality is disabled. +#define PIN_BUZZER 25 #define USE_RF95 #define LORA_DIO0 26 // a No connect on the SX1262 module From 1c90233846dfd48693bdfc623f7c0abb35870415 Mon Sep 17 00:00:00 2001 From: Owl Developer <10116759+igorka48@users.noreply.github.com> Date: Tue, 7 Oct 2025 00:15:02 +0300 Subject: [PATCH 4/5] Apply PR comments --- variants/esp32/sugarcube/platformio.ini | 12 +++++------ variants/esp32/sugarcube/variant.h | 28 ------------------------- variants/esp32/tlora_v2_1_16/variant.h | 4 ++++ 3 files changed, 10 insertions(+), 34 deletions(-) delete mode 100644 variants/esp32/sugarcube/variant.h diff --git a/variants/esp32/sugarcube/platformio.ini b/variants/esp32/sugarcube/platformio.ini index d496e3ae79..5a2d3f4d4f 100644 --- a/variants/esp32/sugarcube/platformio.ini +++ b/variants/esp32/sugarcube/platformio.ini @@ -1,8 +1,8 @@ [env:sugarcube] -extends = esp32_base -board = ttgo-lora32-v21 +extends = env:tlora-v2-1-1_6 board_level = extra -board_check = true -build_flags = - ${esp32_base.build_flags} -D TLORA_V2_1_16 -I variants/esp32/sugarcube -upload_speed = 115200 +build_flags = + ${env:tlora-v2-1-1_6.build_flags} + -DBUTTON_PIN=0 + -DPIN_BUZZER=25 + -DLED_PIN=-1 \ No newline at end of file diff --git a/variants/esp32/sugarcube/variant.h b/variants/esp32/sugarcube/variant.h deleted file mode 100644 index 414caf0f7c..0000000000 --- a/variants/esp32/sugarcube/variant.h +++ /dev/null @@ -1,28 +0,0 @@ -#define BATTERY_PIN 35 -#define ADC_CHANNEL ADC1_GPIO35_CHANNEL -#define BATTERY_SENSE_SAMPLES 30 - -// ratio of voltage divider = 2.0 (R42=100k, R43=100k) -#define ADC_MULTIPLIER 2 - -#define I2C_SDA 21 // I2C pins for this board -#define I2C_SCL 22 - -#define BUTTON_PIN 0 -// SugarCube has buzzer and LED sharing the same GPIO pin (25). -// LED activity triggers unintended buzzer noise, so LED functionality is disabled. -#define PIN_BUZZER 25 - -#define USE_RF95 -#define LORA_DIO0 26 // a No connect on the SX1262 module -#define LORA_RESET 23 - -// In the T3 V1.6.1 TXCO version, GPIO 33 is connected to Radio’s -// internal temperature-compensated crystal oscillator enable -#ifdef LORA_TCXO_GPIO -#define LORA_DIO1 RADIOLIB_NC // no-connect on sx127x module -#else -#define LORA_DIO1 33 // https://www.thethingsnetwork.org/forum/t/big-esp32-sx127x-topic-part-3/18436 -#endif - -#define LORA_DIO2 32 // Not really used \ No newline at end of file diff --git a/variants/esp32/tlora_v2_1_16/variant.h b/variants/esp32/tlora_v2_1_16/variant.h index 48c069ab77..9584dd68b7 100644 --- a/variants/esp32/tlora_v2_1_16/variant.h +++ b/variants/esp32/tlora_v2_1_16/variant.h @@ -8,7 +8,11 @@ #define I2C_SDA 21 // I2C pins for this board #define I2C_SCL 22 +#if defined(LED_PIN) && LED_PIN == -1 +#undef LED_PIN +#else #define LED_PIN 25 // If defined we will blink this LED +#endif #define USE_RF95 #define LORA_DIO0 26 // a No connect on the SX1262 module From c03dd8414c2ecd921e17e4082ce2e1575c4b378a Mon Sep 17 00:00:00 2001 From: Owl Developer <10116759+igorka48@users.noreply.github.com> Date: Sun, 19 Oct 2025 11:27:45 +0300 Subject: [PATCH 5/5] Fix MR comments --- variants/esp32/sugarcube/platformio.ini | 8 -------- variants/esp32/tlora_v2_1_16/platformio.ini | 9 +++++++++ 2 files changed, 9 insertions(+), 8 deletions(-) delete mode 100644 variants/esp32/sugarcube/platformio.ini diff --git a/variants/esp32/sugarcube/platformio.ini b/variants/esp32/sugarcube/platformio.ini deleted file mode 100644 index 5a2d3f4d4f..0000000000 --- a/variants/esp32/sugarcube/platformio.ini +++ /dev/null @@ -1,8 +0,0 @@ -[env:sugarcube] -extends = env:tlora-v2-1-1_6 -board_level = extra -build_flags = - ${env:tlora-v2-1-1_6.build_flags} - -DBUTTON_PIN=0 - -DPIN_BUZZER=25 - -DLED_PIN=-1 \ No newline at end of file diff --git a/variants/esp32/tlora_v2_1_16/platformio.ini b/variants/esp32/tlora_v2_1_16/platformio.ini index 6967bb480f..8d5bdab9ef 100644 --- a/variants/esp32/tlora_v2_1_16/platformio.ini +++ b/variants/esp32/tlora_v2_1_16/platformio.ini @@ -5,3 +5,12 @@ board_check = true build_flags = ${esp32_base.build_flags} -D TLORA_V2_1_16 -I variants/esp32/tlora_v2_1_16 upload_speed = 115200 + +[env:sugarcube] +extends = env:tlora-v2-1-1_6 +board_level = extra +build_flags = + ${env:tlora-v2-1-1_6.build_flags} + -DBUTTON_PIN=0 + -DPIN_BUZZER=25 + -DLED_PIN=-1 \ No newline at end of file