From a840bd4aaf3715749471feb2844ff0dcf281c237 Mon Sep 17 00:00:00 2001 From: jeremy Date: Sat, 31 Aug 2024 23:39:36 -0400 Subject: [PATCH] changes needed to support the t-echo device --- RNS/Utilities/rnodeconf | 1 + RNS/Utilities/rnodeconf.py | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 120000 RNS/Utilities/rnodeconf diff --git a/RNS/Utilities/rnodeconf b/RNS/Utilities/rnodeconf new file mode 120000 index 0000000..dca04fb --- /dev/null +++ b/RNS/Utilities/rnodeconf @@ -0,0 +1 @@ +rnodeconf.py \ No newline at end of file diff --git a/RNS/Utilities/rnodeconf.py b/RNS/Utilities/rnodeconf.py index 566df60..a54d6e1 100755 --- a/RNS/Utilities/rnodeconf.py +++ b/RNS/Utilities/rnodeconf.py @@ -131,6 +131,7 @@ class ROM(): PRODUCT_RAK4631 = 0x10 MODEL_11 = 0x11 MODEL_12 = 0x12 + PRODUCT_TECHO = 0x43 PRODUCT_RNODE = 0x03 MODEL_A1 = 0xA1 @@ -200,6 +201,7 @@ class ROM(): BOARD_GENERIC_ESP32 = 0x35 BOARD_LORA32_V2_0 = 0x36 BOARD_LORA32_V2_1 = 0x37 + BOARD_TECHO = 0x43 BOARD_RAK4631 = 0x51 MANUAL_FLASH_MODELS = [MODEL_A1, MODEL_A6] @@ -214,6 +216,7 @@ products = { ROM.PRODUCT_T32_21: "LilyGO LoRa32 v2.1", ROM.PRODUCT_H32_V2: "Heltec LoRa32 v2", ROM.PRODUCT_H32_V3: "Heltec LoRa32 v3", + ROM.PRODUCT_TECHO: "LilyGO T-Echo", ROM.PRODUCT_RAK4631: "RAK4631", } @@ -233,6 +236,7 @@ mcus = { models = { 0x11: [430000000, 510000000, 22, "430 - 510 MHz", "rnode_firmware_rak4631.zip", "SX1262"], 0x12: [779000000, 928000000, 22, "779 - 928 MHz", "rnode_firmware_rak4631.zip", "SX1262"], + 0x43: [779000000, 928000000, 22, "779 - 928 Mhz", "rnode_firmware_techo.zip", "SX1262"], 0xA4: [410000000, 525000000, 14, "410 - 525 MHz", "rnode_firmware.hex", "SX1278"], 0xA9: [820000000, 1020000000, 17, "820 - 1020 MHz", "rnode_firmware.hex", "SX1276"], 0xA1: [410000000, 525000000, 22, "410 - 525 MHz", "rnode_firmware_t3s3.zip", "SX1268"], @@ -1603,6 +1607,7 @@ def main(): print("[8] Heltec LoRa32 v3") print("[9] LilyGO LoRa T3S3") print("[10] RAK4631") + print("[11] LilyGo T-Echo") print(" .") print(" / \\ Select one of these options if you want to easily turn") print(" | a supported development board into an RNode.") @@ -1756,6 +1761,19 @@ def main(): print("who would like to experiment with it. Hit enter to continue.") print("---------------------------------------------------------------------------") input() + elif c_dev == 11: + selected_product = ROM.PRODUCT_TECHO + clear() + print("") + print("---------------------------------------------------------------------------") + print(" LilyGo T-Echo RNode Installer") + print("") + print("Important! Using RNode firmware on LilyGo T-Echo devices should currently be") + print("considered experimental. It is not intended for production or critical use.") + print("The currently supplied firmware is provided AS-IS as a courtesey to those") + print("who would like to experiment with it. Hit enter to continue.") + print("---------------------------------------------------------------------------") + input() except Exception as e: print("That device type does not exist, exiting now.") graceful_exit() @@ -2042,6 +2060,21 @@ def main(): except Exception as e: print("That band does not exist, exiting now.") graceful_exit() + elif selected_product == ROM.PRODUCT_TECHO: + selected_mcu = ROM.MCU_NRF52 + print("\nWhat band is this T-Echo for?\n") + print("[1] 915 MHz") + print("\n? ", end="") + try: + c_model = int(input()) + if c_model < 1 or c_model > 1: + raise ValueError() + elif c_model == 1: + selected_model = ROM.PRODUCT_TECHO + selected_platform = ROM.PLATFORM_NRF52 + except Exception as e: + print("That band does not exist, exiting now.") + graceful_exit() if selected_model != ROM.MODEL_FF and selected_model != ROM.MODEL_FE: fw_filename = models[selected_model][4]