mikecarper
da61c48e7b
feat: integrate R8 observer and companion updates
2026-08-28 18:39:26 -07:00
mikecarper
c24bc82814
Merge upstream dev companion CLI updates
2026-08-28 17:31:28 -07:00
mikecarper
2b3b93ab2f
fix: harden ESP-NOW and full companion networking
...
Add selectable shared ESP-NOW channels, raw/wrapped bridge compatibility, and bounded fragmentation for maximum-size packets.\n\nGive ESP32 Full profiles WiFi coexistence, stabilize WebConfig and USB terminal lifecycles, and keep disabled bridges stopped during observer updates.\n\nUpdate generated UI, firmware selection, documentation, and regression coverage.
2026-08-28 16:36:34 -07:00
mikecarper
d17c250137
fix: port T-Beam 1W hardware corrections
...
Adapt the validated fan thermostat, battery ADC calibration, GPS baud, SX1262 register patch, and 1700us PA ramp behavior from mintylinux/Meshcore-T-beam-1W-Firmware to the current board architecture. Also make Arduino 3 full-build dependency switching reliable after standard ESP32 builds and guard the release hardware contract with regression coverage.
2026-08-27 18:58:37 -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
mikecarper
91870e4bb0
fix: harden firmware builds and runtime reliability
2026-08-26 15:42:12 -07:00
mikecarper
9bc95a60fe
fix: default advert location to stored preferences
2026-08-25 23:47:40 -07:00
mikecarper
131bbafc67
feat: retain multi-channel voltage telemetry
2026-08-25 22:51:22 -07:00
mikecarper
ad1ff3f03e
feat: order flood rules by channel specificity
2026-08-25 21:58:08 -07:00
mikecarper
605b245eb5
feat: add selective flood retry rules
2026-08-25 21:38:23 -07:00
mikecarper
1792acda6a
Harden external radio recovery and power limits
2026-08-25 10:27:26 -07:00
mikecarper
7077283e95
Make RXPS preamble adaptive for fast radio settings
2026-08-24 20:42:54 -07:00
mikecarper
4a4a795f52
Harden recoverable external radio startup
2026-08-24 16:54:41 -07:00
mikecarper
ba70c5b3c6
Harden fast RXPS timing and board behavior
2026-08-24 15:10:54 -07:00
Scott Powell
5a162ff4c6
* new DynamicConfigSerializer
...
* board/variant KeyValueStore now can write to 'custom' object in Json prefs
2026-08-24 17:12:56 +10:00
mikecarper
f2d4ffbb7e
Unify full firmware profiles and add dual USB logging
2026-08-23 19:22:45 -07:00
mikecarper
b699e552ec
Add secure host CLI bridge and harden OTA workflows
...
Expose the Full Companion terminal over TCP and add an authenticated, replay-resistant host command service with documented CPU temperature, reboot, and allowlisted program examples.\n\nImprove LoRa OTA diagnostics and persistent CLI handling, reduce clock correction drift to ten minutes, and make mOTA stream flush behavior an explicit transport policy with regression coverage.
2026-08-23 15:29:30 -07: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
Scott Powell
2c0ace2519
* new TXT_TYPE_CLI_COMMAND (3)
2026-08-23 22:04:05 +10:00
mikecarper
c7bc7a0740
Compact flood filter persistence
2026-08-21 00:55:05 -07:00
ripplebiz
e0031870f6
Merge pull request #3233 from entr0p1/fix/centralise-max-clients
...
Fix duplicate MAX_CLIENTS definition
2026-08-20 14:09:30 +10:00
mikecarper
3c6fee3277
Ensure full repeater packet logging
2026-08-19 16:20:24 -07:00
mikecarper
4ebbdc3d9b
Merge remote-tracking branch 'review/observer-firmware' into keymindCascade
...
# Conflicts:
# MQTT_IMPLEMENTATION.md
# examples/simple_repeater/MyMesh.cpp
# examples/simple_room_server/MyMesh.cpp
# examples/simple_sensor/SensorMesh.cpp
# src/helpers/CommonCLI.h
# src/helpers/MQTTPresets.h
# src/helpers/bridges/MQTTBridge.cpp
# src/helpers/bridges/MQTTBridge.h
# src/helpers/radiolib/CustomLLCC68Wrapper.h
# src/helpers/ui/SH1106Display.cpp
2026-08-19 13:45:47 -07:00
mikecarper
a39bbbd467
Add normalradio to common CLI
2026-08-19 12:44:49 -07:00
mikecarper
47993d178e
Update MeshCore features and OTA layout handling
2026-08-18 23:17:42 -07:00
mikecarper
818f610ba3
Fix Cascade power saving, USB Companion, and mOTA flows
2026-08-18 14:02:10 -07:00
mikecarper
7fb413bc12
Merge remote-tracking branch 'upstream/dev' into keymindCascade
...
# Conflicts:
# examples/simple_repeater/MyMesh.cpp
2026-08-18 11:51:58 -07:00
Rastislav Vysoky
2db4b40617
repeater: set loop.detect to minimal as default for new installs
2026-08-18 14:56:58 +02:00
entr0p1
a8a6001576
Duplicate MAX_CLIENTS definition
...
MAX_CLIENTS is defined in both src/helpers/ClientACL.h and examples/simple_repeater/MyMesh.h. Appears it was centralised in the former header file some time ago. Both are included in some places and, depending on which order they're in, either value can win.
This change drops the duplicate entry from the repeater firmware and bumps the central limit up to 32 (per the original repeater firmware value).
Changes:
- Remove MAX_CLIENTS from repeater MyMesh.h
- Increase MAX_CLIENTS limit in ClientACL.h to 32
2026-08-17 23:01:52 +10:00
mikecarper
b8d274c90e
Expose RX power saving in WebConfig
2026-08-15 09:07:41 -07:00
mikecarper
d10e0b46c5
Fix complete firmware matrix builds
2026-08-14 15:16:03 -07:00
mikecarper
a04a284a3f
Merge remote-tracking branch 'review/observer-firmware' into keymindCascade
...
# Conflicts:
# .github/workflows/build-observer-firmwares.yml
# .gitignore
# MQTT_IMPLEMENTATION.md
# MQTT_INTERNALS.md
# README.md
# STABILITY_TESTABILITY_HANDOFF.md
# docs/cli_commands.md
# examples/companion_radio/MyMesh.cpp
# examples/simple_repeater/MyMesh.cpp
# examples/simple_repeater/UITask.cpp
# examples/simple_room_server/MyMesh.cpp
# examples/simple_room_server/UITask.cpp
# examples/simple_sensor/SensorMesh.cpp
# platformio.ini
# scripts/generate_webconfig_html.py
# scripts/webconfig_mock_server.py
# src/helpers/CommonCLI.cpp
# src/helpers/CommonCLI.h
# src/helpers/JWTHelper.cpp
# src/helpers/MQTTDefaults.h
# src/helpers/MQTTMessageBuilder.cpp
# src/helpers/MQTTPayloadBuilder.h
# src/helpers/MQTTPresets.h
# src/helpers/bridges/MQTTBridge.h
# src/helpers/esp32/WebConfigServer.cpp
# src/helpers/esp32/WebConfigServer.h
# src/helpers/ui/SH1106Display.cpp
# variants/lilygo_tbeam_SX1262/platformio.ini
# variants/lilygo_tbeam_SX1276/platformio.ini
# variants/lilygo_tlora_v2_1/platformio.ini
# variants/thinknode_m7/platformio.ini
# webui/index.html
2026-08-14 08:53:02 -07:00
mikecarper
f0fe67df30
Merge remote-tracking branch 'review/PowerSaving-v16' into keymindCascade
...
# Conflicts:
# build-iotthinks.sh
# examples/simple_repeater/MyMesh.cpp
# examples/simple_room_server/MyMesh.cpp
# examples/simple_sensor/SensorMesh.cpp
# src/helpers/CommonCLI.cpp
# src/helpers/radiolib/CustomSX1262.h
# src/helpers/sensors/EnvironmentSensorManager.cpp
# variants/heltec_v4/platformio.ini
# variants/heltec_v4_r8/HeltecV4R8Board.cpp
# variants/heltec_v4_r8/HeltecV4R8Board.h
# variants/heltec_v4_r8/platformio.ini
2026-08-14 08:22:26 -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
agessaman
8818a67b14
merge: upstream/dev into observer-firmware-dev (v1.17.1)
...
Picks up upstream MeshCore 1.17.1.
Notable upstream content:
- 1.17.1 version/build-date bump in the example MyMesh headers.
- nRF52: combine radio entropy with CC310 RNG.
- Companion FEM prefs: load/save of fem_ properties commented out until they
can be set from the client.
- Scoped reply routing: replies no longer dropped when flood.max.unscoped is
low (RoutingPolicy + unit tests).
- nRF52 unused-pin sweep (T1, T-Echo Lite, MeshPocket).
No conflicts.
2026-08-14 08:09:07 -07:00
Scott Powell
d929643524
* version 1.17.1
Firmware Builder / create-release (push) Canceled after 0s
Firmware Builder / build (push) Canceled after 0s
Firmware Builder / generate-build-matrix (push) Canceled after 0s
Build Companion Firmwares / build-companion-firmwares (push) Canceled after 0s
Firmware Builder / create-release (push) Canceled after 0s
Firmware Builder / build (push) Canceled after 0s
Firmware Builder / generate-build-matrix (push) Canceled after 0s
Build Repeater Firmwares / build-repeater-firmwares (push) Canceled after 0s
Firmware Builder / create-release (push) Canceled after 0s
Firmware Builder / build (push) Canceled after 0s
Firmware Builder / generate-build-matrix (push) Canceled after 0s
Build Room Server Firmwares / build-room-server-firmwares (push) Canceled after 0s
2026-08-14 22:19:19 +10:00
mikecarper
8c5262c6f8
Accelerate adaptive LoRa OTA transfers
2026-08-14 03:00:36 -07:00
mikecarper
cd824765b4
Prioritize and pace private TempRadio OTA
2026-08-13 17:53:33 -07:00
mikecarper
8ffafddd6a
Add scheduled telemetry history packets
2026-08-13 00:52:17 -07:00
ripplebiz
b09cb27a1f
Merge pull request #3106 from ViezeVingertjes/fix/scoped-reply-routing
...
Fix replies dropped when flood.max.unscoped is low
2026-08-13 15:00:37 +10:00
mikecarper
a9d6398f33
Fix size-constrained ESP32 release builds
2026-08-12 11:50:25 -07:00
agessaman
7e1a94358b
merge: upstream/dev into observer-firmware-dev
...
Brings in the external FEM gain preferences (fem_txgain, PR #3137 plus the
companion-side port), the AGC reset rxgain fix, the LR2021 preamble/IRQ
timeout logic, and assorted variant fixes (T096, T-Echo Card TCXO, promicro
pinmap, minewsemi, R1 Neo).
Conflict resolutions:
- SH1106Display: both sides fixed T-Beam Supreme startup independently. Kept
our _initialized guard and DISPLAY_ADDRESS_ALT override, took upstream's
SA0-pair fallback and its unconditional display.begin() so the frame buffer
is allocated even when no panel answers.
- MyMesh/SensorMesh/CommonCLI: took upstream's fem_txgain default and wiring,
kept our comments and the observer-side prefs layout.
Also fixes CustomLLCC68Wrapper, which upstream missed when sx126xResetAGC
gained its rx_boost_gain parameter. No variant builds that wrapper today, so
neither tree failed to compile.
2026-08-12 07:19:19 -07:00
ripplebiz
a4ab7f0e59
Merge pull request #3137 from agessaman/feat/station-g3-fem-prefs
...
Station G3: Expose, persist, and apply FEM gain preferences
2026-08-12 16:11:23 +10:00
mikecarper
b80971b85f
Enable mesh clock sync for infrastructure roles
2026-08-11 15:55:07 -07:00
mikecarper
a65769c96a
Harden ESP32 identity entropy handling
2026-08-11 14:25:52 -07:00
mikecarper
ea3843e0b4
Merge branch 'PowerSaving-v17' of https://github.com/IoTThinks/MeshCore 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_sensor/SensorMesh.cpp
# platformio.ini
# src/MeshCore.h
# src/helpers/CommonCLI.cpp
# src/helpers/CommonCLI.h
# src/helpers/radiolib/CustomSX1262Wrapper.h
# src/helpers/radiolib/CustomSX1268Wrapper.h
# src/helpers/radiolib/LR11x0Reset.h
# src/helpers/radiolib/SX126xReset.h
2026-08-11 13:28:43 -07:00
Kevin Le
7509e51e3d
Station G3: Expose, persist, and apply FEM gain preferences. https://github.com/meshcore-dev/MeshCore/pull/3137
2026-08-12 00:07:37 +07:00
mikecarper
2ff1166c15
Fix BLE pairing display and RX gain defaults
2026-08-10 19:42:44 -07:00
agessaman
de554b702c
fix(observer): recover T-Beam Supreme display startup
2026-08-10 12:59:02 -07:00
agessaman
bb5d2e84b9
fix(observer): recover T-Beam Supreme display startup
2026-08-10 12:50:11 -07:00