From 74756c9ded53a0785c65f34253bae26cff51c53f Mon Sep 17 00:00:00 2001 From: mikecarper Date: Sun, 18 Oct 2026 18:19:38 -0700 Subject: [PATCH] Publish qualified T114 screen-detection picker defaults --- docs/_data/firmware_controls.json | 419 +++++++++++++++++- docs/firmware_picker.md | 2 +- docs/heltec_t114.md | 5 + .../heltec_t114_display_detection.md | 18 +- 4 files changed, 441 insertions(+), 3 deletions(-) diff --git a/docs/_data/firmware_controls.json b/docs/_data/firmware_controls.json index 0aa235524..53ed9a513 100644 --- a/docs/_data/firmware_controls.json +++ b/docs/_data/firmware_controls.json @@ -15582,5 +15582,422 @@ "webconfig": false } }, - "source": "88c85108005a30a730fa7b78b2899b210754f3be" + "source": "88c85108005a30a730fa7b78b2899b210754f3be", + "supplementalReleases": [ + { + "familyTag": "v1.18.0.1.preview1-794f5f7b", + "partitionMigrations": { + "Ebyte_EoRa-S3_Repeater": "ebyte-eora-s3-repeater", + "Ebyte_EoRa-S3_room_server": "ebyte-eora-s3-room-server", + "Generic_E22_sx1262_repeater": "generic-e22-sx1262-repeater", + "Generic_E22_sx1268_repeater": "generic-e22-sx1268-repeater", + "Heltec_E213_repeater": "heltec-e213-repeater", + "Heltec_E213_room_server": "heltec-e213-room-server", + "Heltec_E290_repeater": "heltec-e290-repeater", + "Heltec_E290_room_server": "heltec-e290-room-server", + "Heltec_T190_repeater_": "heltec-t190-repeater", + "Heltec_T190_room_server_": "heltec-t190-room-server", + "Heltec_WSL3_repeater": "heltec-wsl3-repeater", + "Heltec_WSL3_room_server": "heltec-wsl3-room-server", + "Heltec_WSL3_sensor": "heltec-wsl3-sensor", + "Heltec_Wireless_Paper_repeater": "heltec-wireless-paper-repeater", + "Heltec_Wireless_Paper_room_server": "heltec-wireless-paper-room-server", + "Heltec_Wireless_Tracker_repeater": "heltec-wireless-tracker-repeater", + "Heltec_Wireless_Tracker_room_server": "heltec-wireless-tracker-room-server", + "Heltec_ct62_repeater": "heltec-ct62-repeater", + "Heltec_ct62_sensor": "heltec-ct62-sensor", + "Heltec_v2_repeater": "heltec-v2-repeater", + "Heltec_v2_room_server": "heltec-v2-room-server", + "Heltec_v3_repeater": "heltec-v3-repeater", + "Heltec_v3_room_server": "heltec-v3-room-server", + "Heltec_v3_sensor": "heltec-v3-sensor", + "LilyGo_T3S3_sx1262_repeater": "t3s3-sx1262-repeater", + "LilyGo_T3S3_sx1262_room_server": "t3s3-sx1262-room-server", + "LilyGo_T3S3_sx1276_repeater": "t3s3-sx1276-repeater", + "LilyGo_T3S3_sx1276_room_server": "t3s3-sx1276-room-server", + "LilyGo_TBeam_1W_repeater": "lilygo-tbeam-1w-repeater", + "LilyGo_TBeam_1W_room_server": "lilygo-tbeam-1w-room-server", + "LilyGo_TDeck_repeater": "lilygo-tdeck-repeater", + "LilyGo_TETH_Elite_sx1262_repeater": "lilygo-teth-elite-sx1262-repeater", + "LilyGo_TETH_Elite_sx1262_room_server": "lilygo-teth-elite-sx1262-room-server", + "MKE_s3_repeater": "mke-s3-repeater", + "MKE_s3_room_server": "mke-s3-room-server", + "MKE_s3_sensor": "mke-s3-sensor", + "RAK_3112_repeater": "rak-3112-repeater", + "RAK_3112_room_server": "rak-3112-room-server", + "RAK_3112_sensor": "rak-3112-sensor", + "Station_G2_logging_repeater": "station-g2-logging-repeater", + "Station_G2_repeater": "station-g2-repeater", + "Station_G2_room_server": "station-g2-room-server", + "Station_G3_ESP32_logging_repeater": "station-g3-esp32-logging-repeater", + "Station_G3_ESP32_repeater": "station-g3-esp32-repeater", + "Station_G3_ESP32_room_server": "station-g3-esp32-room-server", + "T_Beam_S3_Supreme_SX1262_repeater": "t-beam-s3-supreme-sx1262-repeater", + "T_Beam_S3_Supreme_SX1262_room_server": "t-beam-s3-supreme-sx1262-room-server", + "Tenstar_C3_sx1262_repeater": "tenstar-c3-sx1262-repeater", + "Tenstar_C3_sx1268_repeater": "tenstar-c3-sx1268-repeater", + "ThinkNode_M2_Repeater": "thinknode-m2-repeater", + "ThinkNode_M2_room_server": "thinknode-m2-room-server", + "ThinkNode_M5_Repeater": "thinknode-m5-repeater", + "ThinkNode_M5_room_server": "thinknode-m5-room-server", + "ThinkNode_M7_repeater": "thinknode-m7-repeater", + "ThinkNode_M7_room_server": "thinknode-m7-room-server", + "ThinkNode_M9_repeater_": "thinknode-m9-repeater", + "ThinkNode_M9_room_server_": "thinknode-m9-room-server", + "Waveshare_S3_LR1121_repeater_observer_mqtt": "waveshare-s3-lr1121-observer-repeater", + "Waveshare_S3_LR1121_room_server_observer_mqtt": "waveshare-s3-lr1121-observer-room-server", + "Xiao_C3_repeater": "xiao-c3-repeater", + "Xiao_C3_room_server": "xiao-c3-room-server", + "Xiao_S3_WIO_repeater": "xiao-s3-wio", + "Xiao_S3_WIO_room_server": "xiao-s3-wio-room-server", + "Xiao_S3_WIO_sensor": "xiao-s3-wio-sensor", + "Xiao_S3_repeater": "xiao-s3-repeater", + "Xiao_S3_room_server": "xiao-s3-room-server", + "Xiao_S3_sensor": "xiao-s3-sensor", + "heltec_rc32_repeater": "heltec-rc32-repeater", + "heltec_rc32_room_server": "heltec-rc32-room-server", + "heltec_rc32_sensor": "heltec-rc32-sensor", + "heltec_rc32_without_display_repeater": "heltec-rc32-no-display-repeater", + "heltec_rc32_without_display_room_server": "heltec-rc32-no-display-room-server", + "heltec_rc32_without_display_sensor": "heltec-rc32-no-display-sensor", + "heltec_tracker_v2_repeater": "heltec-tracker-v2-repeater", + "heltec_tracker_v2_room_server": "heltec-tracker-v2-room-server", + "heltec_tracker_v2_sensor": "heltec-tracker-v2-sensor", + "heltec_v4_expansionkit_repeater": "heltec-v4-expansionkit-repeater", + "heltec_v4_r8_repeater": "heltec-v4-r8-repeater", + "heltec_v4_r8_room_server": "heltec-v4-r8-room-server", + "heltec_v4_r8_sensor": "heltec-v4-r8-sensor", + "heltec_v4_r8_tft_repeater": "heltec-v4-r8-tft-repeater", + "heltec_v4_r8_tft_room_server": "heltec-v4-r8-tft-room-server", + "heltec_v4_r8_tft_sensor": "heltec-v4-r8-tft-sensor", + "heltec_v4_repeater": "heltec-v4", + "heltec_v4_room_server": "heltec-v4-room-server", + "heltec_v4_sensor": "heltec-v4-sensor", + "heltec_v4_tft_repeater": "heltec-v4-tft-repeater", + "heltec_v4_tft_room_server": "heltec-v4-tft-room-server", + "heltec_v4_tft_sensor": "heltec-v4-tft-sensor", + "meshnology_w12_repeater": "meshnology-w12-repeater", + "meshnology_w12_room_server": "meshnology-w12-room-server", + "meshnology_w12_sensor": "meshnology-w12-sensor", + "nibble_screen_connect_repeater_": "nibble-screen-repeater", + "nibble_screen_connect_room_server_": "nibble-screen-room-server", + "nibble_zero_connect_repeater_": "nibble-zero-repeater", + "nibble_zero_connect_room_server_": "nibble-zero-room-server" + }, + "profiles": { + "Heltec_t114_companion_radio_full": { + "dedicatedUsbLogging": true, + "display": true, + "displayAuto": true, + "displayController": "st7789", + "displaySource": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "espnowBridge": false, + "femRx": false, + "femTx": false, + "gps": true, + "loggingControl": "usb.logging", + "loggingModes": [ + "none", + "usb" + ], + "loggingSource": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "memoryNote": "Full Companion queue: 256 offline messages normally; 128 while mOTA borrows queue storage. Sync unread messages with a Companion app before starting mOTA if more than 128 are pending. Stopping or disconnecting the source restores all 256 slots.", + "memorySource": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "mqtt": false, + "otaRole": "lora-source", + "platform": "NRF52_PLATFORM", + "primaryEspnow": false, + "rs232": false, + "rxgain": true, + "rxps": true, + "snmp": false, + "updateMethods": [ + "bluetooth" + ], + "webconfig": false + }, + "Heltec_t114_kiss_modem": { + "display": false, + "espnowBridge": false, + "femRx": false, + "femTx": false, + "gps": true, + "mqtt": false, + "otaRole": "none", + "platform": "NRF52_PLATFORM", + "primaryEspnow": false, + "rs232": false, + "rxgain": true, + "rxps": true, + "snmp": false, + "updateMethods": [], + "webconfig": false + }, + "Heltec_t114_repeater_lora_ota_no_external_sensors-full": { + "display": true, + "displayAuto": true, + "displayController": "st7789", + "displaySource": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "espnowBridge": false, + "femRx": false, + "femTx": false, + "gps": true, + "mqtt": false, + "otaRole": "lora-receiver", + "platform": "NRF52_PLATFORM", + "primaryEspnow": false, + "rs232": true, + "rs232Merged": true, + "rs232Source": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "rxgain": true, + "rxps": true, + "sensorProfile": "full", + "sensorProfileSource": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "snmp": false, + "updateMethods": [ + "bluetooth", + "lora" + ], + "updateRequirements": { + "lora": { + "bootloader": "Matching board/storage OTAFIX bootloader", + "bootloader_release": "https://github.com/mikecarper/Adafruit_nRF52_Bootloader_OTAFIX/releases/tag/v0.11.0-OTAFIX2.4.11", + "notes": [ + "Use a destination-specific .mota package matching the board, target, and storage layout.", + "An in-place delta requires the exact firmware currently running as its base.", + "The package must fit the receiver's staging and apply workspace.", + "Check the release's exact-board bootloader manifest; hardware-pending boards are not covered by the normal release.", + "Artifact inspection verifies compiled support; it does not verify the bootloader installed on a physical device.", + "Requires the exact-board retained-RAM handoff bootloader profile; a transfer cannot resume after the receiver restarts." + ], + "package_types": [ + "in_place_delta" + ], + "storage": "internal_flash_and_retained_ram" + } + }, + "webconfig": false + }, + "Heltec_t114_repeater_lora_ota_no_external_sensors-reduced": { + "display": true, + "displayAuto": true, + "displayController": "st7789", + "displaySource": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "espnowBridge": false, + "femRx": false, + "femTx": false, + "gps": true, + "mqtt": false, + "otaRole": "lora-receiver", + "platform": "NRF52_PLATFORM", + "primaryEspnow": false, + "rs232": true, + "rs232Merged": true, + "rs232Source": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "rxgain": true, + "rxps": true, + "sensorProfile": "reduced", + "sensorProfileSource": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "snmp": false, + "updateMethods": [ + "bluetooth", + "lora" + ], + "updateRequirements": { + "lora": { + "bootloader": "Matching board/storage OTAFIX bootloader", + "bootloader_release": "https://github.com/mikecarper/Adafruit_nRF52_Bootloader_OTAFIX/releases/tag/v0.11.0-OTAFIX2.4.11", + "notes": [ + "Use a destination-specific .mota package matching the board, target, and storage layout.", + "An in-place delta requires the exact firmware currently running as its base.", + "The package must fit the receiver's staging and apply workspace.", + "Check the release's exact-board bootloader manifest; hardware-pending boards are not covered by the normal release.", + "Artifact inspection verifies compiled support; it does not verify the bootloader installed on a physical device.", + "Requires the exact-board retained-RAM handoff bootloader profile; a transfer cannot resume after the receiver restarts." + ], + "package_types": [ + "in_place_delta" + ], + "storage": "internal_flash_and_retained_ram" + } + }, + "webconfig": false + }, + "Heltec_t114_room_server_lora_ota_no_external_sensors-full": { + "display": true, + "displayAuto": true, + "displayController": "st7789", + "displaySource": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "espnowBridge": false, + "femRx": false, + "femTx": false, + "gps": true, + "mqtt": false, + "otaRole": "lora-receiver", + "platform": "NRF52_PLATFORM", + "primaryEspnow": false, + "rs232": false, + "rxgain": true, + "rxps": true, + "sensorProfile": "full", + "sensorProfileSource": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "snmp": false, + "updateMethods": [ + "bluetooth", + "lora" + ], + "updateRequirements": { + "lora": { + "bootloader": "Matching board/storage OTAFIX bootloader", + "bootloader_release": "https://github.com/mikecarper/Adafruit_nRF52_Bootloader_OTAFIX/releases/tag/v0.11.0-OTAFIX2.4.11", + "notes": [ + "Use a destination-specific .mota package matching the board, target, and storage layout.", + "An in-place delta requires the exact firmware currently running as its base.", + "The package must fit the receiver's staging and apply workspace.", + "Check the release's exact-board bootloader manifest; hardware-pending boards are not covered by the normal release.", + "Artifact inspection verifies compiled support; it does not verify the bootloader installed on a physical device.", + "Internal storage accepts in-place application deltas, not full application packages." + ], + "package_types": [ + "in_place_delta" + ], + "storage": "internal_flash" + } + }, + "webconfig": false + }, + "Heltec_t114_room_server_lora_ota_no_external_sensors-reduced": { + "display": true, + "displayAuto": true, + "displayController": "st7789", + "displaySource": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "espnowBridge": false, + "femRx": false, + "femTx": false, + "gps": true, + "mqtt": false, + "otaRole": "lora-receiver", + "platform": "NRF52_PLATFORM", + "primaryEspnow": false, + "rs232": false, + "rxgain": true, + "rxps": true, + "sensorProfile": "reduced", + "sensorProfileSource": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "snmp": false, + "updateMethods": [ + "bluetooth", + "lora" + ], + "updateRequirements": { + "lora": { + "bootloader": "Matching board/storage OTAFIX bootloader", + "bootloader_release": "https://github.com/mikecarper/Adafruit_nRF52_Bootloader_OTAFIX/releases/tag/v0.11.0-OTAFIX2.4.11", + "notes": [ + "Use a destination-specific .mota package matching the board, target, and storage layout.", + "An in-place delta requires the exact firmware currently running as its base.", + "The package must fit the receiver's staging and apply workspace.", + "Check the release's exact-board bootloader manifest; hardware-pending boards are not covered by the normal release.", + "Artifact inspection verifies compiled support; it does not verify the bootloader installed on a physical device.", + "Internal storage accepts in-place application deltas, not full application packages." + ], + "package_types": [ + "in_place_delta" + ], + "storage": "internal_flash" + } + }, + "webconfig": false + }, + "Heltec_t114_sensor_lora_ota_no_external_sensors-full": { + "display": true, + "displayAuto": true, + "displayController": "st7789", + "displaySource": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "espnowBridge": false, + "femRx": false, + "femTx": false, + "gps": true, + "mqtt": false, + "otaRole": "lora-receiver", + "platform": "NRF52_PLATFORM", + "primaryEspnow": false, + "rs232": false, + "rxgain": true, + "rxps": true, + "sensorProfile": "full", + "sensorProfileSource": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "snmp": false, + "updateMethods": [ + "bluetooth", + "lora" + ], + "updateRequirements": { + "lora": { + "bootloader": "Matching board/storage OTAFIX bootloader", + "bootloader_release": "https://github.com/mikecarper/Adafruit_nRF52_Bootloader_OTAFIX/releases/tag/v0.11.0-OTAFIX2.4.11", + "notes": [ + "Use a destination-specific .mota package matching the board, target, and storage layout.", + "An in-place delta requires the exact firmware currently running as its base.", + "The package must fit the receiver's staging and apply workspace.", + "Check the release's exact-board bootloader manifest; hardware-pending boards are not covered by the normal release.", + "Artifact inspection verifies compiled support; it does not verify the bootloader installed on a physical device.", + "Internal storage accepts in-place application deltas, not full application packages." + ], + "package_types": [ + "in_place_delta" + ], + "storage": "internal_flash" + } + }, + "webconfig": false + }, + "Heltec_t114_sensor_lora_ota_no_external_sensors-reduced": { + "display": true, + "displayAuto": true, + "displayController": "st7789", + "displaySource": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "espnowBridge": false, + "femRx": false, + "femTx": false, + "gps": true, + "mqtt": false, + "otaRole": "lora-receiver", + "platform": "NRF52_PLATFORM", + "primaryEspnow": false, + "rs232": false, + "rxgain": true, + "rxps": true, + "sensorProfile": "reduced", + "sensorProfileSource": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "snmp": false, + "updateMethods": [ + "bluetooth", + "lora" + ], + "updateRequirements": { + "lora": { + "bootloader": "Matching board/storage OTAFIX bootloader", + "bootloader_release": "https://github.com/mikecarper/Adafruit_nRF52_Bootloader_OTAFIX/releases/tag/v0.11.0-OTAFIX2.4.11", + "notes": [ + "Use a destination-specific .mota package matching the board, target, and storage layout.", + "An in-place delta requires the exact firmware currently running as its base.", + "The package must fit the receiver's staging and apply workspace.", + "Check the release's exact-board bootloader manifest; hardware-pending boards are not covered by the normal release.", + "Artifact inspection verifies compiled support; it does not verify the bootloader installed on a physical device.", + "Internal storage accepts in-place application deltas, not full application packages." + ], + "package_types": [ + "in_place_delta" + ], + "storage": "internal_flash" + } + }, + "webconfig": false + } + }, + "source": "794f5f7b8c508b708ee8fc7db7bff066aa3d1a0a", + "releaseTag": "heltec-t114-v1.18.0.1.preview1" + } + ] } diff --git a/docs/firmware_picker.md b/docs/firmware_picker.md index cdf415dac..667abf3e0 100644 --- a/docs/firmware_picker.md +++ b/docs/firmware_picker.md @@ -4,7 +4,7 @@ # Firmware picker -
+