mikecarper
a92215fd07
Merge PR #3214 : companion USB connection and flow control
...
Preserve the newer terminal and mOTA passthrough paths while adding real USB client detection and whole-frame transmit pacing.
2026-08-17 23:55:40 -07:00
mikecarper
c76ee004f1
Merge IoTThinks PowerSaving-v17
...
Port current-compatible power-saving updates while retaining newer local implementations.
2026-08-17 23:45:06 -07:00
Kevin Le
167a32fbdc
Fixed to show d h, h m and m for BLE companions
2026-08-18 10:40:16 +07:00
Simon Blandford
a6ae765020
Applied GPS power saving profile with 10 min on, 1 day off cycle
2026-08-17 13:25:22 +01:00
mikecarper
c9652754cf
Fit complete Companion correction matrix
2026-08-16 22:42:07 -07:00
mikecarper
80ea7976e2
Enable Companion power saving by default
2026-08-16 21:06:23 -07:00
mikecarper
a514b2a6d5
Stabilize T-Beam full companion startup
2026-08-16 11:00:55 -07:00
Kevin Le
54f292f40d
Added uptime to companion screen
2026-08-16 16:07:03 +07:00
mikecarper
bcedfdd019
Keep T-Beam companion available without radio
2026-08-15 22:34:45 -07:00
mikecarper
7afa6b11a8
Add T-Beam WiFi button toggle
2026-08-15 18:12:09 -07:00
mikecarper
933697f65c
Fix Companion device power saving
2026-08-15 17:58:37 -07:00
mikecarper
9161dfd7d5
Expose RX power saving in WebConfig
2026-08-15 09:07:41 -07:00
IoTThinks
ca85060c42
Merge pull request #13 from Dom4n/feature/rxps-v1.17.1-clean
...
RX power saving using rx duty cycle
2026-08-15 17:12:54 +07:00
mikecarper
759a35fc4f
Fix complete firmware matrix builds
2026-08-14 15:16:03 -07:00
root and Claude Fable 5
a7724b9ec6
Add flow control to the companion USB interface
...
The contact sync streams up to MAX_CONTACTS frames back to back, but
ArduinoSerialInterface never checked whether the stream could take
them: isWriteBusy() returned false unconditionally, so MyMesh's pacing
gate had no effect, and writeFrame() called write() without looking at
availableForWrite(). On ESP32 (HWCDC, 256 byte TX ring) a host that
stalls for a moment makes the driver drop queued bytes silently, which
tears a frame in half - and since the framing is length prefixed with
no checksum and no resync marker, the client stays desynchronised for
the rest of the session. Reported as 'the app disconnects while
syncing contacts' on devices with a large contact list.
Add opt-in flow control: report busy until a whole frame fits, and
drop frames as a unit instead of tearing them. Enable it for the
companion USB interface and give HWCDC a bigger TX buffer with a short
write timeout, mirroring what kiss_modem already does.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-14 20:16:20 +02:00
root and Claude Fable 5
ab492ba187
Report the real USB client connection state in companion builds
...
ArduinoSerialInterface::isConnected() always returned true, so any
companion build with a USB interface believes a client is attached from
boot onwards. Two user visible effects:
- new message notifications never fire, because MyMesh only notifies
the UI (display, buzzer) while no client is connected
- on builds that also expose BLE the home screen shows '< Connected >'
instead of the BLE pairing PIN, so a freshly flashed device cannot be
paired at all
Add an optional connection check callback and wire it up per platform:
native USB-CDC (TinyUSB on nRF52/RP2040/ESP32 with USB_MODE=0) exposes
real DTR through (bool)Serial. The ESP32 USB-Serial-JTAG peripheral has
no DTR concept - it reports 'connected' as soon as the host enumerated
the device - so fall back to frame activity there. Plain UARTs keep the
previous assume-connected behaviour.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-14 20:13:36 +02:00
Kevin Le
d42f4240ff
Fixed PowerSaving for ESP32 USB companions
2026-08-14 23:42:25 +07:00
Kevin Le
4cb67d9054
GPS PowerSaving, outpath, sensor, reboot.interval, board_build.ldscript
2026-08-14 23:36:52 +07:00
Kevin Le
be6f3599e2
PowerSaving for room servers
2026-08-14 23:36:52 +07:00
Kevin Le
594d770968
PowerSaving for companions
2026-08-14 23:36:52 +07:00
mikecarper
7605b12cc7
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
Jarosław Domański
285cf10a7a
RX power saving using rx duty cycle
2026-08-14 16:11:21 +02:00
Scott Powell
d929643524
* version 1.17.1
2026-08-14 22:19:19 +10:00
mikecarper
8c5262c6f8
Accelerate adaptive LoRa OTA transfers
2026-08-14 03:00:36 -07:00
Scott Powell
890a2e2cff
* commenting out the load/save of the fem_ properties, until they can be set
2026-08-14 16:30:12 +10: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
3cd9c84893
Fix Companion NodePrefs ODR conflict
2026-08-12 15:42:50 -07:00
mikecarper
a9d6398f33
Fix size-constrained ESP32 release builds
2026-08-12 11:50:25 -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
mikecarper
4d51d49660
Improve Companion terminal routing and controls
2026-08-11 12:19:41 -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
71619934fc
Fix USB terminal backspace handling
2026-08-10 23:47:09 -07:00
mikecarper
48a5d5b4cd
Fix trace TX stalls from invalid radio airtime
2026-08-10 23:47:02 -07:00
mikecarper
2ff1166c15
Fix BLE pairing display and RX gain defaults
2026-08-10 19:42:44 -07:00
mikecarper
968ca3363b
Add runtime FEM control and fix full Companion boot
2026-08-10 17:10:18 -07:00
mikecarper
f40615ab56
Add full Companion builds and terminal path routing
2026-08-10 16:10:13 -07:00
mikecarper
4e91cc9487
Expand full Companion terminal tooling
2026-08-10 14:53:39 -07:00
agessaman
1f79e91c7f
fix(observer): recover T-Beam Supreme display startup
2026-08-10 12:50:11 -07:00
mikecarper
88ba5b26cb
Add full Companion OTA source builds
2026-08-10 12:39:07 -07:00
agessaman
e2aa7b98f9
feat(companion_radio): add external FEM gain preferences for RX and TX for companions
...
Introduced consistent preferences for external LoRa FEM RX and TX gain settings in NodePrefs. Updated companion MyMesh to apply these settings during initialization and transmission. Added unit tests to verify the round-trip serialization of these new preferences.
2026-08-10 11:59:26 -07:00
Jarosław Domański
5a30f8ac9c
Merge branch 'PowerSaving-v16' into rx-powersaving
2026-08-10 15:05:45 +02:00
Jarosław Domański
fc660cc061
Fix RX_EN handling during RX power saving
2026-08-10 14:50:34 +02:00
mikecarper
19206f7745
Merge remote-tracking branch 'upstream/dev' into keymindCascade
...
# Conflicts:
# build.sh
# platformio.ini
# variants/station_g2/platformio.ini
2026-08-09 15:49:06 -07:00