From ae08ecf8fd0003d899d22096c19fa690b6bc04f9 Mon Sep 17 00:00:00 2001 From: James Hall Date: Thu, 20 Mar 2025 11:44:12 -0400 Subject: [PATCH 1/3] Screen support for tbeam --- examples/simple_repeater/main.cpp | 4 ++++ variants/lilygo_tbeam/platformio.ini | 22 +++++++++++++++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/examples/simple_repeater/main.cpp b/examples/simple_repeater/main.cpp index 8c056cd2..adc9d53e 100644 --- a/examples/simple_repeater/main.cpp +++ b/examples/simple_repeater/main.cpp @@ -101,6 +101,10 @@ #include #include static faketecBoard board; +#elif defined(LILYGO_TBEAM) + #include + #include + static TBeamBoard board; #else #error "need to provide a 'board' object" #endif diff --git a/variants/lilygo_tbeam/platformio.ini b/variants/lilygo_tbeam/platformio.ini index ca233571..4cc100e0 100644 --- a/variants/lilygo_tbeam/platformio.ini +++ b/variants/lilygo_tbeam/platformio.ini @@ -8,8 +8,14 @@ build_flags = -D WRAPPER_CLASS=CustomSX1276Wrapper -D LORA_TX_POWER=20 -D P_LORA_TX_LED=4 + -D PIN_BOARD_SDA=21 + -D PIN_BOARD_SCL=22 build_src_filter = ${esp32_base.build_src_filter} board_build.partitions = min_spiffs.csv ; get around 4mb flash limit +lib_deps = + ${esp32_base.lib_deps} + lewisxhe/XPowersLib@^0.2.7 + adafruit/Adafruit SSD1306 @ ^2.5.13 [env:Tbeam_companion_radio_ble] extends = LilyGo_TBeam @@ -33,4 +39,18 @@ build_src_filter = ${LilyGo_TBeam.build_src_filter} lib_deps = ${LilyGo_TBeam.lib_deps} densaugeo/base64 @ ~1.4.0 - lewisxhe/XPowersLib@^0.2.7 + + +[env:Tbeam_repeater] +extends = LilyGo_TBeam +build_flags = + ${LilyGo_TBeam.build_flags} + -D DISPLAY_CLASS=SSD1306Display + -D ADVERT_NAME='"LilyGo TBeam Repeater"' + -D ADVERT_LAT=-37.0 + -D ADVERT_LON=145.0 + -D ADMIN_PASSWORD='"password"' + -D MESH_PACKET_LOGGING=1 +; -D MESH_DEBUG=1 +build_src_filter = ${LilyGo_TBeam.build_src_filter} + +<../examples/simple_repeater> \ No newline at end of file From 8b4662a40a679ce77743094de0fd6ce42ed146a6 Mon Sep 17 00:00:00 2001 From: James Hall Date: Thu, 20 Mar 2025 11:48:35 -0400 Subject: [PATCH 2/3] removed repeater code not working properly --- examples/simple_repeater/main.cpp | 4 ---- variants/lilygo_tbeam/platformio.ini | 21 ++++----------------- 2 files changed, 4 insertions(+), 21 deletions(-) diff --git a/examples/simple_repeater/main.cpp b/examples/simple_repeater/main.cpp index adc9d53e..8c056cd2 100644 --- a/examples/simple_repeater/main.cpp +++ b/examples/simple_repeater/main.cpp @@ -101,10 +101,6 @@ #include #include static faketecBoard board; -#elif defined(LILYGO_TBEAM) - #include - #include - static TBeamBoard board; #else #error "need to provide a 'board' object" #endif diff --git a/variants/lilygo_tbeam/platformio.ini b/variants/lilygo_tbeam/platformio.ini index 4cc100e0..28dad8c9 100644 --- a/variants/lilygo_tbeam/platformio.ini +++ b/variants/lilygo_tbeam/platformio.ini @@ -22,6 +22,7 @@ extends = LilyGo_TBeam board_build.upload.maximum_ram_size=2000000 build_flags = ${LilyGo_TBeam.build_flags} + -D DISPLAY_CLASS=SSD1306Display -D MAX_CONTACTS=100 -D MAX_GROUP_CHANNELS=1 -D BLE_PIN_CODE=123456 @@ -35,22 +36,8 @@ build_flags = ; -D MESH_DEBUG=1 build_src_filter = ${LilyGo_TBeam.build_src_filter} + - +<../examples/companion_radio/main.cpp> + + + +<../examples/companion_radio> lib_deps = ${LilyGo_TBeam.lib_deps} - densaugeo/base64 @ ~1.4.0 - - -[env:Tbeam_repeater] -extends = LilyGo_TBeam -build_flags = - ${LilyGo_TBeam.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D ADVERT_NAME='"LilyGo TBeam Repeater"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 - -D ADMIN_PASSWORD='"password"' - -D MESH_PACKET_LOGGING=1 -; -D MESH_DEBUG=1 -build_src_filter = ${LilyGo_TBeam.build_src_filter} - +<../examples/simple_repeater> \ No newline at end of file + densaugeo/base64 @ ~1.4.0 \ No newline at end of file From 1299b6f813ac99ecfd58454d92ecce43a5bae562 Mon Sep 17 00:00:00 2001 From: James Hall Date: Thu, 20 Mar 2025 12:26:52 -0400 Subject: [PATCH 3/3] added button support --- src/helpers/TBeamBoard.h | 2 ++ variants/lilygo_tbeam/platformio.ini | 1 + 2 files changed, 3 insertions(+) diff --git a/src/helpers/TBeamBoard.h b/src/helpers/TBeamBoard.h index fc0d3b73..6c6367fa 100644 --- a/src/helpers/TBeamBoard.h +++ b/src/helpers/TBeamBoard.h @@ -37,6 +37,8 @@ public: power.setALDO2Voltage(3300); power.enableALDO2(); + pinMode(38,INPUT_PULLUP); + esp_reset_reason_t reason = esp_reset_reason(); if (reason == ESP_RST_DEEPSLEEP) { long wakeup_source = esp_sleep_get_ext1_wakeup_status(); diff --git a/variants/lilygo_tbeam/platformio.ini b/variants/lilygo_tbeam/platformio.ini index 28dad8c9..fa7a65ab 100644 --- a/variants/lilygo_tbeam/platformio.ini +++ b/variants/lilygo_tbeam/platformio.ini @@ -10,6 +10,7 @@ build_flags = -D P_LORA_TX_LED=4 -D PIN_BOARD_SDA=21 -D PIN_BOARD_SCL=22 + -D PIN_USER_BTN=38 build_src_filter = ${esp32_base.build_src_filter} board_build.partitions = min_spiffs.csv ; get around 4mb flash limit lib_deps =