agessaman
7b21be3e39
feat(cli): add radio watchdog command and update documentation
...
Introduced a new CLI command to view and set the radio watchdog interval, allowing users to configure the watchdog timeout in minutes (0 to disable, 1-120 for active). Updated the documentation to reflect this addition and clarified the parameters for the `neighbor.remove` command. Default watchdog interval is set to 5 minutes in the codebase.
2026-04-24 20:54:00 -07:00
agessaman
961f829321
Enhance radio watchdog functionality in Dispatcher to prevent false alarms in quiet mesh environments. Introduce a composite timestamp for radio activity, incorporating last RX, ISR events, and successful TX. Update related methods in Dispatcher and RadioLibWrapper to track radio activity accurately. This improves radio management and troubleshooting capabilities.
2026-04-14 16:16:49 -07:00
agessaman
7e4f75c9a5
Add radio diagnostics support in MyMesh and CommonCLI
...
Implement a new method `formatRadioDiagReply` in MyMesh to format and return radio diagnostic information. Update CommonCLI to handle the new command for retrieving radio diagnostics. Enhance the Dispatcher class with a radio watchdog feature to monitor and recover from silent radio states. Introduce new error flags and methods in the Dispatcher and RadioLibWrapper classes to support these diagnostics, improving overall radio management and troubleshooting capabilities.
2026-04-10 08:48:22 -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
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
Scott Powell
45564bad9b
* Dispatcher bug fixes
2026-02-23 23:51:30 +11:00
Scott Powell
3e76161e9c
* refactor of Contact/Client out_path_len (stored in files), from signed to unsigned byte (+2 squashed commits)
...
Squashed commits:
[f326e25] * misc
[fa5152e] * new 'path mode' parsing in Dispatcher
2026-02-21 19:35:51 +11:00
ViezeVingertjes
519b97a90a
Updated the Dispatcher logic to replace hardcoded values with defined constants for minimum TX budget reserve and airtime division.
2026-02-07 19:07:33 +01:00
ViezeVingertjes
30d6588792
Update logic in Dispatcher to ensure refill is only applied when greater than zero.
2026-02-07 18:26:39 +01:00
ViezeVingertjes
eb4fa032ff
Implement token bucket duty cycle enforcement
2026-01-04 21:33:46 +01:00
Chris
ea2ce93c02
Add a counter to track rx time for repeater stats
2025-07-30 09:41:20 -07:00
Scott Powell
466bd6d596
* fix for when AGC reset is disabled (interval = 0)
2025-06-13 14:25:09 +10:00
Scott Powell
32ca3dc9d0
* repeater and room server: new CLI setting "agc.reset.interval" (seconds)
2025-06-13 14:15:21 +10:00
Scott Powell
b3d78ac8a7
* interference threshold now stored in prefs, CLI: set/get "int.thresh"
2025-05-26 17:18:49 +10:00
Scott Powell
0e35ae5ec6
* dynamic noise floor sampling
2025-05-25 21:44:15 +10:00
Scott Powell
f2243b78ae
* added Radio::loop() virtual function
...
* RadioLibWrapper: new isChannelActive() based on current RSSI being above noise_floor + THRESHOLD
2025-05-24 21:24:44 +10:00
Scott Powell
e291b57a07
* Dispatcher::checkSend() bug: getOutboundCount() should only count non-future packets
2025-05-14 16:50:11 +10:00
Scott Powell
805ca7b900
* CommonCLI: added "clear stats" command
2025-05-13 18:12:58 +10:00
Scott Powell
177dd90ca1
* Repeater/Room server: new diagnostics, stats.n_full_events now repurposed to 'err_events' (bit flags)
...
* new Radio::isInRecvMode() method
2025-05-13 15:38:10 +10:00
Scott Powell
b08436eba7
* startSendRaw() now returns false if fail
2025-05-12 17:26:44 +10:00
Scott Powell
1d4ae9f3c4
minor refactor
2025-04-11 19:11:06 +10:00
Scott Powell
ab8cd85d8e
* added Packet::getRawLength() helper
2025-04-11 15:12:04 +10:00
Scott Powell
3c7ff8da29
* Packet::header, new: ROUTE_TYPE_TRANS_FLOOD, ROUTE_TYPE_TRANS_DIRECT
...
* Packet wire format change: (optional) extra 4 bytes for two trans_codes
2025-04-11 04:56:13 +10:00
Scott Powell
89bd6c3416
* Dispatcher: now impose a max time for CAD fail (ie. channel busy), defined by getCADFailMaxDuration(), default 4 seconds.
...
(an sx126x bug _might_ be making radio->isReceiving() return true indefinitely)
2025-03-28 20:50:42 +11:00
Scott Powell
fe4fdeb236
* redesigned TRACE packet structure
2025-03-17 17:56:12 +11:00
Scott Powell
9aa2edf9ba
Merge branch 'dev' into trace
...
# Conflicts:
# examples/companion_radio/main.cpp
# src/Dispatcher.cpp
2025-03-15 15:12:50 +11:00
Scott Powell
3778c0a8ff
* repeater and room server: MESH_PACKET_LOGGING, now dumps RAW: rx packet contents
...
* Dispatcher: MESH_PACKET_LOGGING, added " hash={packet-hash}"
2025-03-09 20:36:49 +11:00
Scott Powell
f77a6944f9
* PUSH_CODE_LOG_RX_DATA: is now just: {snr*4},{rssi},{raw-lora-packet}
2025-03-09 17:04:22 +11:00
Scott Powell
2889867c4c
* Dispatcher: added guard for packet payload size too large
2025-03-08 19:38:36 +11:00
Scott Powell
544adec2b6
* refactor Packet::_snr to single byte
2025-03-07 12:32:23 +11:00
Scott Powell
b2fcc692ea
* TRACE packet logging fix
2025-03-07 12:24:18 +11:00
Scott Powell
b03aac18c0
Merge branch 'dev' into trace
...
# Conflicts:
# src/Dispatcher.cpp
# src/Mesh.cpp
# src/helpers/BaseChatMesh.cpp
2025-03-07 12:14:26 +11:00
Scott Powell
189ed79d46
* new Dispatcher::getCADFailRetryDelay()
2025-02-27 04:05:50 +11:00
Scott Powell
e65c3e3240
* MESH_DEBUG_PRINTLN fixes
2025-02-20 18:04:35 +11:00
Scott Powell
fc02d8fbcb
* Mesh/Dispatcher: MESH_DEBUG_ and MESH_PACKET_LOGGING now output date-time. (new getLogDateTime() virtual)
...
* MESH_PACKET_LOGGING now parity with dynamic/file logging (src/dest hashes)
2025-02-20 12:41:47 +11:00
Scott Powell
3b5b7a1642
* SimpleMeshTables: ACKs now handled separately
...
* Dispatcher: logging methods now with 'len' param
2025-02-18 22:59:03 +11:00
Scott Powell
9d9145a1c2
* repeater: new CLI commands: "log start", "log stop", "log erase", and "log"
2025-02-18 13:20:48 +11:00
Scott Powell
0db15db625
* new Packet type: PAYLOAD_TYPE_TRACE
2025-02-17 19:22:31 +11:00
Scott Powell
5824c9a6c0
* bug fix for rxdelay 0
2025-02-06 11:16:17 +11:00
Scott Powell
7da0a5f7ec
* new RX delays based on SNR
2025-02-04 12:35:53 +11:00
Scott Powell
33bee48d38
* Terminal Chat: new commands "card" and "import"
2025-02-01 21:45:34 +11:00
Scott Powell
de27dfacb6
* basic CAD before TX, for sx126x wrappers
2025-01-21 13:37:32 +11:00
Scott Powell
e4ec9aec0b
* tidy ups
2025-01-20 10:20:42 +11:00
Scott Powell
382b73f6c5
* Dispatcher: more stats added
2025-01-19 00:36:59 +11:00
Scott Powell
20cd756c88
* Radio:: getLastSNR(), getLastRSSI()
...
* MESH_PACKET_LOGGING
2025-01-15 17:02:49 +11:00
Scott Powell
6c7efdd0f6
Initial commit
2025-01-13 14:07:48 +11:00