Commit Graph

836 Commits

Author SHA1 Message Date
agessaman cc17c6b745 Merge remote-tracking branch 'origin/dev' into mqtt-bridge-implementation-flex
Resolve conflicts: keep MQTT prefs skip/pad and append rx_boosted_gain I/O
per dev layout; add devcontainer node feature from dev.

Made-with: Cursor
2026-03-28 08:37:42 -07:00
Scott Powell 2325973fec * Companion: applyGPSPrefs() now just in one place (moved out of UITask) 2026-03-25 16:26:51 +11:00
Alejandro Ramirez f8dbdce6bb fix: apply persisted GPS enabled setting on boot for companion radio
The companion_radio example was not restoring the GPS enabled/disabled
preference from flash after reboot. The preference was being saved
correctly when toggled via the mobile app, but on boot,
sensors.begin() -> initBasicGPS() unconditionally sets gps_active=false
and nothing subsequently restored the persisted state.

Added applyGpsPrefs() (matching the pattern in simple_repeater,
simple_sensor, and simple_room_server) and call it from main.cpp
after sensors.begin() to ensure the GPS hardware is initialized
before the saved preference is applied.
2026-03-24 09:10:09 -05:00
agessaman 4a60f16683 Refactor logging and error handling in MyMesh and MQTTBridge. Implement checks for Serial availability before printing logs to prevent potential blocking. Update MQTTBridge to include circuit breaker logic for managing reconnect attempts and enhance slot management with new state tracking. Expand MQTTPresetDef to include a new preset with configurable token lifetime and retain options. 2026-03-23 20:21:47 -07:00
liamcottle 1d61df72c3 add define for reserved group data type 2026-03-23 23:09:35 +13:00
liamcottle c78f7133c9 reorder command args 2026-03-23 23:02:24 +13:00
liamcottle ed326255d5 add support for direct paths when sending group data 2026-03-23 21:46:21 +13:00
Liam Cottle 91aed048e9 Merge pull request #1928 from dz0ny/feat/grp-data-upstream
feat: Add support for PAYLOAD_TYPE_GRP_DATA
2026-03-23 21:41:51 +13:00
agessaman 95874f0c24 Enhance MQTT bridge implementation to support a new MeshRank preset, allowing for token-based authentication and custom topic templates. Update CLI commands for slot management, including new commands for setting tokens and topics. Improve documentation to reflect these changes and provide examples for configuring the new preset. 2026-03-22 11:06:37 -07:00
Rastislav Vysoky 285fc685c5 allow to set lower LoRa frequency 2026-03-22 13:54:42 +01:00
agessaman c67fb12b44 Refactor MQTT bridge implementation to use dynamic allocation for the MQTTBridge instance, preventing static initialization crashes on ESP32. Update related methods to check for bridge existence before invoking operations. Enhance documentation to clarify memory limits for active connection slots based on PSRAM availability. 2026-03-21 12:21:34 -07:00
agessaman b43e9618db Refactor MQTT bridge implementation to support up to 3 configurable connection slots with built-in presets for LetsMesh Analyzer (US/EU) and MeshMapper. Update CLI commands for slot management and enhance configuration migration from legacy settings. Adjust related documentation and code structure for improved clarity and functionality. 2026-03-20 22:41:41 -07:00
agessaman abe6e046fe Merge branch 'upstream/dev' into mqtt-bridge-implementation
Reverted prior dev merge, then merged current meshcore-dev dev. Resolved
CommonCLI by restoring MQTT prefs flow with upstream com_prefs layout
(rx_boosted_gain at offset 79), rxgain CLI, poweroff/shutdown, and FEM
variant files from upstream.

Made-with: Cursor
2026-03-20 15:55:39 -07:00
agessaman 22eb9b87a3 Revert "Merge remote-tracking branch 'origin/dev' into mqtt-bridge-implementation"
This reverts commit 2b63765522, reversing
changes made to 304719e8e0.
2026-03-20 15:54:14 -07:00
agessaman 2b63765522 Merge remote-tracking branch 'origin/dev' into mqtt-bridge-implementation 2026-03-20 06:06:06 -07:00
Scott Powell 467959cc3b * version 1.14.1 2026-03-20 12:32:41 +11:00
Janez T 2f68769185 fix: Widen grp data type
ref: #1928
2026-03-19 09:25:42 +01:00
Janez T 1fb26e7623 fix: Drop grp data timestamp
ref: #1928
2026-03-19 09:22:12 +01:00
Janez T f25d7a882a fix: Align channel data framing
ref: #1928
2026-03-18 20:14:22 +01:00
Janez T a21b83b127 fix: address comments
ref:
2026-03-18 20:09:11 +01:00
Janez T 9b84278607 feat: Add support for PAYLOAD_TYPE_GRP_DATA
Docs changes are to reflect how it is currently in fw

This adds ability to send datagram data to everyone in channel
2026-03-18 20:08:52 +01:00
Orum b4b66521b6 Add MCU temperature to telemetry responses from room servers. 2026-03-16 17:34:16 -05:00
João Brázio 92bef49c55 Merge branch 'dev' into 2026/remote-lna 2026-03-16 09:40:10 +00:00
João Brázio 274e00df50 Merge remote-tracking branch 'upstream/dev' into 2026/remote-lna 2026-03-16 09:37:55 +00:00
Scott Powell fcfdc5fc5b * Repeater and Room Server: flood advert timer now uses the path_hash_mode pref 2026-03-16 13:56:19 +11:00
Scott Powell bb8dc5b55b Merge branch 'main' into dev 2026-03-12 18:14:56 +11:00
ripplebiz 792f299986 Merge pull request #1873 from Specter242/codex/sensecap-solar-led-poweroff-parity
sensecap solar: add poweroff/shutdown support and nrf52 PM parity
2026-03-12 18:13:14 +11:00
ripplebiz cf0cc851d4 Merge pull request #1297 from ViezeVingertjes/feature/duty-cycle-token-bucket
Implement token bucket duty cycle enforcement
2026-03-08 23:54:32 +11:00
agessaman 304719e8e0 Remove default enabling of MQTT analyzer servers in MyMesh::begin for both simple_repeater and simple_room_server examples. 2026-03-07 10:51:04 -08:00
ripplebiz 29be7e293c Merge pull request #1877 from DanielNovak/fix-countbefore-sentinel-regression
Fix countBefore regression: replace sentinel with getOutboundTotal()
2026-03-07 18:48:02 +11:00
agessaman db8b4419e4 Merge upstream/dev into mqtt-bridge-implementation
Resolve conflict in docs/faq.md: take upstream TOC and content (expanded
project list, 5.15/5.16, 7.7 transmit power, intro links).

Made-with: Cursor
2026-03-06 05:55:08 -08:00
Scott Powell 3fe2dd7f48 * ver 1.14.0 2026-03-06 12:20:04 +11:00
João Brázio 3e7fb4add1 Add setRxBoostedGain method declaration and implementation for SX1262/SX1268 2026-03-05 18:48:40 +00:00
João Brázio 9a95e25ef2 Remove unused RX boosted gain mode functions and related preprocessor directives across multiple variants 2026-03-05 18:38:57 +00:00
João Brázio f858f2e4bb Rename sx126x_rx_boosted_gain to rx_boosted_gain 2026-03-05 18:14:47 +00:00
João Brázio 8df87d5609 Merge remote-tracking branch 'upstream/dev' into 2026/remote-lna 2026-03-05 17:21:38 +00:00
Scott Powell 5684b4f1b8 * LOOP_DETECT_MODERATE bug fix 2026-03-05 17:38:51 +11:00
agessaman 56ac85fa72 Merge upstream/dev into mqtt-bridge-implementation
Resolve conflict in CommonCLI.h: keep MQTT/WiFi/timezone fields and add
upstream loop_detect. Add loop_detect sanitization in loadPrefsInt.

Made-with: Cursor
2026-03-04 21:38:36 -08:00
Scott Powell e233346bf0 * repeater: new "get/set loop.detect {off | minimal | moderate | strict }" 2026-03-05 16:26:09 +11:00
agessaman dcbbe5a6d7 Merge upstream/dev into mqtt-bridge-implementation
Resolve conflicts in Heltec tracker/v4 board files: keep upstream
GPIO setup (RTC hold release) and branch comments for GC1109 FEM.

Made-with: Cursor
2026-03-03 12:59:40 -08:00
Wouter Bijen 1d190ad944 Clamp max_hops to 64 to cover full protocol hop range (0-63) 2026-03-03 09:05:53 +01:00
Wouter Bijen 2cb08775c0 Clarify comment wording: 1 = direct (0 hops)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 08:40:17 +01:00
Wouter Bijen c016db86d5 Address PR review: subtract-1 encoding and clamp max_hops
- Change > to >= so stored value 1 means direct/0-hop only (liamcottle)
- Clamp max_hops to 63 on write since getPathHashCount() caps at 63 (robekl)
- Update comments to reflect encoding: 0=no limit, 1=direct only, N=up to N-1 hops

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 08:37:22 +01:00
Wouter Bijen 00566741f6 Add configurable max hops filter for auto-add contacts
Filter auto-add of new contacts by hop count (issues #1533, #1546).
Setting is configurable from the companion app via extended
CMD_SET/GET_AUTOADD_CONFIG protocol (0 = no limit, 1-63 = max hops).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 20:41:41 +01:00
Daniel Novak c7568a8db0 Replace 0xFFFFFFFF sentinel with explicit getOutboundTotal()
Instead of overloading getOutboundCount() with a magic sentinel value,
add a dedicated getOutboundTotal() method to the PacketManager interface
that returns the total queue size without time filtering.

This eliminates the fragile convention that caused the regression and
makes the two operations — time-filtered count vs total count —
explicitly separate in the API.
2026-02-28 17:19:04 +01:00
Specter242 e08dcbdd03 sensecap solar: stabilize wake pin and add button hold poweroff 2026-02-27 22:51:19 -05:00
João Brázio 64a16d7ad2 Merge branch 'dev' into 2026/remote-lna 2026-02-27 10:32:14 +00:00
agessaman 51e9907fa6 Merge upstream/dev into mqtt-bridge-implementation
Resolve conflicts in CommonCLI: keep upstream path_hash_mode and
sanitization (adc_multiplier, path_hash_mode constrain), retain
MQTT/NodePrefs layout and MQTT fields.

Made-with: Cursor
2026-02-25 19:41:42 -08:00
agessaman ee1a9b4ab7 Remove unused preprocessor directive in MyMesh.cpp 2026-02-25 19:38:39 -08:00
agessaman 397a48fc22 Merge upstream/dev into mqtt-bridge-implementation
Resolve conflicts: keep MQTT/WiFi/timezone/analyzer defaults and get
handlers, add upstream neighbour sort guard, adc_multiplier and
pending_discover, and bootloader.ver get handler.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-24 16:23:11 -08:00