Commit Graph
60 Commits
Author SHA1 Message Date
mikecarper 11d64b3db3 Add configurable nRF52 battery profiles with LiFePO4 cutoff 2026-09-30 01:11:10 -07:00
mikecarper 49d4cc3f3e Expose Companion flood retry controls and clarify T096 fixed TX PA 2026-09-26 10:31:54 -07:00
mikecarper 4176c92462 Merge PowerSaving-v17 into keymindCascade 2026-09-24 00:56:05 -07:00
mikecarper 66b605a49d Add Wi-Fi OTA partition migration support 2026-09-19 20:14:37 -07:00
Kevin Le d9c42964eb Added enterDeepSleep() for NRF52 and shutdownPeripherals() for ESP32 2026-09-19 18:37:03 +07:00
mikecarper 9816e21834 Harden nRF52 OTA, USB sessions, and T096 controls
Bind Companion replies to request transports, make dual-CDC USB sessions nonblocking and reconnect-safe, and harden nRF52 watchdog/OTA storage paths. Fix T096 button debounce, display wake, sleep races, and the compact message layout; add exact WisBlock OTA profiles plus expanded native/static/HIL documentation.
2026-09-01 20:51:43 -07:00
mikecarper c24bc82814 Merge upstream dev companion CLI updates 2026-08-28 17:31:28 -07:00
mikecarper c6476b8ba8 feat: consolidate full companion runtime profiles 2026-08-28 08:47:26 -07:00
mikecarper e5fd77e53f feat: add Bluetooth-controlled LoRa OTA
Add the framed BLE mOTA transport and companion control path, complete the full-profile build and runtime fixes, and document and test the OTA workflow.
2026-08-27 01:22:18 -07:00
Scott Powell a1cf5bd806 * refactored 'FEM' commands for HeltecTrackerV2 & HeltecV4 2026-08-24 02:16:18 +10:00
Scott Powell 47b0b7b3b8 * T096, and Station G3: refactoring the 'FEM' prefs to variant-specific code
* CommonCLI: 'FEM' commands removed
* introduced static no-op attachDynamicPrefs() for all boards
2026-08-24 01:50:22 +10:00
Kevin Le 0e47bdf846 Hardcoded femon, femoff for v4 and T096 2026-08-14 23:42:25 +07:00
mikecarper c2e64da695 Merge remote-tracking branch 'upstream/dev' into keymindCascade
# Conflicts:
#	examples/companion_radio/MyMesh.cpp
#	examples/companion_radio/NodePrefs.h
#	examples/simple_repeater/MyMesh.cpp
#	examples/simple_room_server/MyMesh.cpp
#	examples/simple_room_server/MyMesh.h
#	examples/simple_sensor/SensorMesh.cpp
#	src/Identity.cpp
#	src/MeshCore.h
#	src/Utils.cpp
#	src/helpers/CommonCLI.cpp
#	src/helpers/CommonCLI.h
#	src/helpers/radiolib/CustomLR2021Wrapper.h
#	src/helpers/radiolib/CustomSX1262Wrapper.h
#	src/helpers/radiolib/CustomSX1268Wrapper.h
#	src/helpers/radiolib/RadioLibWrappers.cpp
#	src/helpers/radiolib/RadioLibWrappers.h
#	src/helpers/ui/SH1106Display.cpp
#	variants/minewsemi_me25ls01/target.cpp
#	variants/minewsemi_me25ls01/target.h
#	variants/muziworks_r1_neo/target.cpp
2026-08-14 08:14:12 -07:00
taco 49d9f9a839 Heltec T096: fix PIN_SPI1_MISO
Setting SPI pins to values that are OOB of the g_ADigitalPinMap[] array causes OOB reads. This variant.h has pin 0 as 0xFF which passes through as NRFX_SPIM_PIN_NOT_USED.
2026-08-12 22:31:57 +10:00
taco 264d778168 Revert "T096 PA_CTX pin direction workaround"
This reverts commit 82de18fb0e.
2026-08-12 22:28:05 +10:00
taco 82de18fb0e T096 PA_CTX pin direction workaround 2026-08-12 14:07:31 +10:00
mikecarper 5640fe0641 Merge remote-tracking branch 'IoTThinks/PowerSaving-v16' into keymindCascade
# Conflicts:
#	build-iotthinks.sh
#	examples/companion_radio/MyMesh.cpp
#	examples/simple_repeater/MyMesh.cpp
#	src/helpers/CommonCLI.cpp
#	src/helpers/CommonCLI.h
#	variants/rak4631/platformio.ini
2026-08-05 16:28:53 -07:00
Kevin Le 6160509efc PowerSaving17: Cleanup for RX PowerSaving 2026-08-05 22:06:23 +07:00
mikecarper 9bec10b41a Merge IoTThinks PowerSaving v16 updates
# Conflicts:
#	examples/companion_radio/MyMesh.cpp
#	examples/simple_repeater/MyMesh.cpp
#	examples/simple_repeater/UITask.cpp
#	examples/simple_repeater/UITask.h
#	examples/simple_room_server/MyMesh.cpp
#	examples/simple_room_server/MyMesh.h
#	examples/simple_sensor/SensorMesh.cpp
#	examples/simple_sensor/SensorMesh.h
#	src/Dispatcher.cpp
#	src/Dispatcher.h
#	src/helpers/CommonCLI.cpp
#	src/helpers/CommonCLI.h
#	src/helpers/radiolib/CustomLR1110.h
#	src/helpers/radiolib/CustomLR1110Wrapper.h
#	src/helpers/radiolib/CustomSX1262.h
#	src/helpers/radiolib/CustomSX1262Wrapper.h
#	src/helpers/radiolib/RadioLibWrappers.cpp
#	src/helpers/radiolib/RadioLibWrappers.h
#	variants/rak4631/platformio.ini
#	variants/thinknode_m3/variant.cpp
#	variants/thinknode_m3/variant.h
#	variants/thinknode_m6/variant.cpp
#	variants/thinknode_m6/variant.h
2026-08-03 15:09:52 -07:00
mikecarper 61cb8d6e96 Merge upstream dev into keymindCascade
# Conflicts:
#	docs/payloads.md
#	examples/companion_radio/DataStore.cpp
#	examples/companion_radio/DataStore.h
#	examples/companion_radio/MyMesh.cpp
#	examples/companion_radio/MyMesh.h
#	examples/companion_radio/NodePrefs.h
#	examples/companion_radio/main.cpp
#	examples/simple_room_server/MyMesh.cpp
#	examples/simple_room_server/MyMesh.h
#	examples/simple_sensor/SensorMesh.cpp
#	platformio.ini
#	src/Utils.cpp
#	src/helpers/CommonCLI.cpp
#	src/helpers/CommonCLI.h
#	src/helpers/NRF52Board.cpp
#	src/helpers/nrf52/SerialEthernetInterface.cpp
#	src/helpers/radiolib/CustomLLCC68.h
#	src/helpers/radiolib/CustomLLCC68Wrapper.h
#	src/helpers/radiolib/CustomLR1110.h
#	src/helpers/radiolib/CustomSTM32WLxWrapper.h
#	src/helpers/radiolib/CustomSX1262.h
#	src/helpers/radiolib/CustomSX1268.h
#	src/helpers/radiolib/CustomSX1268Wrapper.h
#	src/helpers/ui/ST7735Display.cpp
#	test/mocks/Stream.h
#	variants/minewsemi_me25ls01/target.h
#	variants/wio-tracker-l1/platformio.ini
2026-08-03 14:53:59 -07:00
IoTThinks 1fe531e6a4 Merge pull request #11 from Dom4n/rx-powersaving
Added RX duty-cycle power saving support
2026-08-03 16:05:03 +07:00
mikecarper 1e009abe4c Add user-controlled GPIO commands 2026-08-02 22:57:17 -07:00
mikecarper 308589afa3 Harden nRF52 shutdown and radio recovery 2026-07-31 16:01:02 -07:00
liamcottle e7f2c71701 usb companion firmwares now require build flag to include usb interface 2026-07-28 03:45:02 +12:00
mikecarper 9a4834b192 Merge PowerSaving v16 updates 2026-07-24 01:34:35 -07:00
mikecarper 836af4b623 Fix onboard GPS in LoRa OTA builds 2026-07-23 09:57:01 -07:00
mikecarper c8052e90c2 Enable onboard GPS in LoRa OTA builds 2026-07-22 16:00:59 -07:00
Kevin Le d6c61af7c7 Added POWERSAVING_DEBUG=1 2026-07-22 16:19:54 +07:00
mikecarper 371d86c4b1 Normalize tracked text to ASCII 2026-07-22 00:43:38 -07:00
mikecarper d5a00da2a0 Harden nRF52 persistence, watchdog, and build variants 2026-07-20 22:55:58 -07:00
mikecarper 86905733ff Add configurable FEM RX gain and recalibration 2026-07-20 15:57:46 -07:00
Jarosław Domański b6c3fad82c Added fixed RX duty-cycle profiles for companion builds with sane default 2026-07-19 01:13:44 +02:00
mikecarper ccce0c8d75 feat: prepare v1.16.07 firmware release 2026-07-18 14:53:56 -07:00
mikecarper f7b7edf393 Merge upstream dev 2026-07-17 16:17:16 -07:00
mikecarper 2c4e6da63b Add explicit Heltec companion FEM builds 2026-07-17 10:28:52 -07:00
Huw Duddy 64e8e24720 Merge pull request #2951 from meshcore-dev/fast-st7735-display
Fast ST7735 Display Driver
2026-07-14 16:01:14 +10:00
mikecarper 4c0dbe707d Merge PR 2864 LoRa OTA into Keymind 2026-07-11 12:40:31 -07:00
Valentin Kivachuk Burda ee6e548746 variants: enable OTA on Heltec T096 (nRF52840, shared rak4631_hw recipe)
The T096 is an nRF52840 with the same S140 v6 SoftDevice and flash geometry as
the RAK4631, so it can reuse the shared rak4631_hw OTA recipe (ENABLE_OTA +
OtaFlashLayout_nrf52.h — APP_BASE 0x26000, staging ceiling 0xD4000, all
static_asserts satisfied by the stock nrf52840_s140_v6[_extrafs] ldscripts).

With the OTAFIX bootloader (oltaco PR #42 adds the T096 board) a node applies
in place; without it the node still discovers/relays/serves OTA and merely
fetch-refuses apply — so a T096 is a useful OTA relay/seeder regardless.

MOTA_HW_ID='"Heltec_t096"' tags the EndF trailer so a .mota built for other
hardware is refused. Propagates to every T096 role via ${Heltec_t096.*}.

Verified: repeater + companion_radio_usb build clean, 14 OTA objects each,
EndF stamped (hw='Heltec_t096', v1.17.0).
2026-07-11 14:42:12 +02:00
Scott Powell cea246d0eb * super fast ST7735 display driver 2026-07-06 15:09:18 +10:00
Kevin Le eec75eab31 Cleanup Poweroff for NRF52 boards 2026-07-05 22:10:47 +07:00
mikecarper d9cefed1b1 Merge remote-tracking branch 'IoTThinks/PowerSaving-v16' into keymindCascade
# Conflicts:
#	build-iotthinks.sh
#	build.sh
#	examples/simple_repeater/MyMesh.h
#	src/helpers/CommonCLI.cpp
#	variants/heltec_ct62/platformio.ini
#	variants/heltec_t096/T096Board.cpp
#	variants/heltec_t096/platformio.ini
#	variants/heltec_tracker/platformio.ini
#	variants/heltec_tracker_v2/platformio.ini
#	variants/heltec_v2/platformio.ini
#	variants/heltec_v3/HeltecV3Board.h
#	variants/heltec_v3/platformio.ini
#	variants/heltec_v4/HeltecV4Board.cpp
#	variants/heltec_v4/platformio.ini
#	variants/heltec_wireless_paper/platformio.ini
#	variants/lilygo_tbeam_1w/platformio.ini
#	variants/lilygo_tbeam_SX1262/platformio.ini
#	variants/lilygo_tbeam_SX1276/platformio.ini
#	variants/lilygo_tbeam_supreme_SX1262/platformio.ini
#	variants/lilygo_tlora_v2_1/platformio.ini
#	variants/xiao_c3/platformio.ini
#	variants/xiao_s3_wio/platformio.ini
2026-06-22 17:50:12 -07:00
Kevin Le 22e45d559d Power off board including radio, display, GPS and components 2026-06-20 12:17:40 +07:00
mikecarper ccf36f5d94 Merge remote-tracking branch 'upstream/dev' into HEAD
# Conflicts:
#	src/helpers/CommonCLI.h
#	variants/heltec_t096/T096Board.cpp
#	variants/heltec_v4/HeltecV4Board.cpp
2026-06-15 15:52:14 -07:00
mikecarper 40d1e29ad9 Merge remote-tracking branch 'upstream/main' into keymindCascade
# Conflicts:
#	docs/cli_commands.md
#	examples/companion_radio/MyMesh.cpp
#	examples/companion_radio/main.cpp
#	examples/simple_repeater/MyMesh.cpp
#	examples/simple_room_server/MyMesh.cpp
#	examples/simple_sensor/SensorMesh.cpp
#	platformio.ini
#	src/MeshCore.h
#	src/helpers/CommonCLI.cpp
#	src/helpers/ESP32Board.h
#	src/helpers/SimpleMeshTables.h
#	src/helpers/radiolib/CustomLLCC68Wrapper.h
#	src/helpers/radiolib/CustomLR1110Wrapper.h
#	src/helpers/radiolib/CustomSTM32WLxWrapper.h
#	src/helpers/radiolib/CustomSX1262Wrapper.h
#	src/helpers/radiolib/CustomSX1268Wrapper.h
#	src/helpers/radiolib/CustomSX1276Wrapper.h
#	src/helpers/sensors/EnvironmentSensorManager.cpp
#	variants/xiao_s3/platformio.ini
#	variants/xiao_s3/target.cpp
#	variants/xiao_s3/target.h
2026-06-15 15:45:05 -07:00
Quency-D 9100a58671 Merge branch 'dev' into cli-lna-command 2026-06-10 11:30:04 +08:00
Kevin Le 4a733c61ce Renamed to add "femon" env to Heltec v4 and T096 2026-06-09 10:02:03 +07:00
Kevin Le e67933ca2a PowerSaving 16 2026-06-08 21:11:49 +07:00
csrutil 0cf4d422a8 Add Heltec T096 sensor environment 2026-05-17 16:17:05 +08:00
Kevin Le 8abf4a92ff Added RADIO_FEM_RXGAIN in build option for T096 2026-05-10 22:09:56 +07:00
Quency-D 12e6899580 Merge branch 'dev' into cli-lna-command 2026-05-09 18:19:31 +08:00