Commit Graph

71 Commits

Author SHA1 Message Date
ViezeVingertjes
eb4fa032ff Implement token bucket duty cycle enforcement 2026-01-04 21:33:46 +01:00
taco
638f41d143 calculate shared_secret on demand 2025-12-06 16:21:17 +11:00
csrutil
cfb7ed876c CMD_SET_CUSTOM_VAR will update gps and gps_interval 2025-11-30 09:45:56 +08:00
csrutil
4aebc57add fixed gps init value 2025-11-29 18:02:08 +08:00
csrutil
678915ef3b add GPS interval validation and bounds checking 2025-11-29 17:30:13 +08:00
csrutil
88fb173297 add configurable GPS update interval
Make GPS update interval configurable via settings instead of using hardcoded 1 second value. The interval is persisted from preferences and can be adjusted at runtime through the sensor manager settings interface
2025-11-29 17:20:21 +08:00
csrutil
c641beabd3 https://github.com/meshcore-dev/MeshCore/issues/989 - persist GPS enabled state to preferences
Add GPS configuration to NodePrefs structure and persist the GPS
enabled state when toggled via UI. This ensures GPS settings are
retained across device restarts.
2025-11-29 16:37:23 +08:00
Scott Powell
cdbeacdc4d Merge branch 'dev' into ext-trace 2025-11-25 15:17:48 +11:00
ripplebiz
f2740150df Merge pull request #1075 from agessaman/companion-stats
Add statistics commands to return device metrics on companions
2025-11-24 12:34:35 +11:00
Scott Powell
b33d226c58 * proposal for 'Extended Trace' packets. Using 'flags' byte, lower 2 bits, for path hash size. 2025-11-21 15:44:31 +11:00
agessaman
a3c9a07377 Modify CMD_GET_STATS with sub-types for core, radio, and packet statistics. Consolidated to a single RESP_CODE_STATS with a second byte to identify response structure. Updated documentation and examples to reflect the new command structure and response parsing. 2025-11-17 09:57:36 -08:00
Stephan Rodemeier
16c294ce60 Allow SF smaller than 7 to be saved 2025-11-13 22:25:55 +01:00
agessaman
39f83efbfe Remove unused statistics formatting methods and associated header includes from MyMesh class. Whoops. 2025-11-09 11:39:47 -08:00
agessaman
80d6dd4367 Update statistics handling to use binary frames instead of JSON formatting for consistency with other companion commands. Added documentation of frame structure with code examples. 2025-11-09 11:28:49 -08:00
agessaman
c9aa536ca6 Reverted MyMesh constructor for simplicity.
Updated formatStatsReply method to use new member variables for statistics handling.
Removed excess variable creation
2025-11-09 11:28:49 -08:00
agessaman
df4dab8509 Add statistics commands and response handling in MyMesh
- Introduced new commands for retrieving statistics: CMD_GET_STATS_CORE, CMD_GET_STATS_RADIO, and CMD_GET_STATS_PACKETS.
- Implemented corresponding response handling methods to format and send statistics data.
- Updated MyMesh constructor to initialize new member variables for managing statistics.
- Included StatsFormatHelper for formatting statistics replies.
2025-11-09 11:28:49 -08:00
Scott Powell
2e63499ae5 * companion: protocol ver bumped to 8. 2025-11-06 22:51:17 +11:00
Scott Powell
4a5404d997 * companion: added CMD_SEND_CONTROL_DATA, and PUSH_CODE_CONTROL_DATA 2025-11-06 22:10:20 +11:00
Scott Powell
937865c8fd * companion: new CMD_SET_FLOOD_SCOPE (54) 2025-11-05 14:56:18 +11:00
Scott Powell
9ebeb477aa * RegionMap: inverted 'flags' to _deny_ bits
* Mesh: new filterRecvFloodPacket() for overriding
* repeater CLI: 'allow' -> 'allowf' or 'denyf'
2025-11-05 14:34:44 +11:00
Scott Powell
d9ff3a4d02 * Mesh: new sendFlood() overload with transport codes.
* BaseChatMesh:  sendFloodScoped(), for overriding with some outbound 'scope' / TransportKey
* companion: new 'send_scope' variable.
2025-11-04 01:21:56 +11:00
recrof
87677fda76 allow spreading factor from 5 and bandwidth from 7.8kHz 2025-10-22 15:15:29 +02:00
liamcottle
418ae08b4d add FIRMWARE_VER_LEVEL to companion PUSH_CODE_LOGIN_SUCCESS 2025-09-25 15:21:58 +12:00
Scott Powell
a5af1b5bcd * companion: disabled processing/sending of keep_alive packets (deprecated)
* FIRMWARE_VER_LEVEL now moved to end of response payloads
2025-09-25 09:39:11 +10:00
Scott Powell
52d5cc6068 * tidy and minor fix for offline queue deletion 2025-09-22 15:01:28 +10:00
ripplebiz
28d673ee15 Merge pull request #796 from 446564/mutable-queue
make offline queue channel messages mutable
2025-09-22 14:54:09 +10:00
csrutil
043f37a08e ♻️ refactor: unify UI notification methods into single notify() function
Consolidates soundBuzzer() and triggerVibration() into a unified notify() method
that handles both audio and haptic feedback based on UIEventType.
2025-09-17 08:56:18 +08:00
csrutil
2da50882c0 feat: add vibration feedback support for UI events
- Add genericVibration class with 5-second cooldown and 1-second pulse
- Integrate vibration triggers for new messages and contact discoveries
- Add conditional compilation support with PIN_VIBRATION guard
- Implement abstract interface for vibration in UITask system
2025-09-17 08:56:18 +08:00
446564
fca16f1b71 make offline queue channel messages mutable
older channel messages can be overwritten, keeping other mssagage types

this allows a user to be away for a long time and still get the most recent
channel messages without losing any direct messages for exampe
2025-09-16 15:40:21 -07:00
Scott Powell
74dea260e5 * proposed change for re-trying reciprocal path transmit 2025-09-08 19:22:59 +10:00
taco
bcfc8d3771 improved RescueCLI for dual FS 2025-09-06 14:15:40 +10:00
taco
2b24c575c7 support dual filsystems on nrf52
store identity and prefs in UserData and contacts, channels and adv_blobs in ExtraData
2025-09-06 14:15:40 +10:00
Scott Powell
acde9921b5 * Refactor of UITask, moved to /ui-new 2025-08-16 20:04:54 +10:00
Scott Powell
4b95c981bb * UI revamp for companion radios 2025-08-08 20:01:31 +10:00
Scott Powell
2824fc31a4 * CMD_SEND_PATH_DISCOVERY_REQ: now force the sendRequest() to use flood mode 2025-07-31 14:38:11 +10:00
Scott Powell
32e8ce4130 * REQ_TYPE_GET_TELEMETRY_DATA, first reserved byte (of 4) is now inverse mask to apply to permissions 2025-07-31 13:45:53 +10:00
Scott Powell
fcdf342db6 * Companion: experimental CMD_SEND_DISCOVERY_REQ -> PUSH_CODE_DISCOVERY_RESPONSE 2025-07-31 13:04:16 +10:00
Scott Powell
f87e856347 * companion: fix for CMD_IMPORT_PRIVATE_KEY, to re-calc shared secrets 2025-07-30 16:00:47 +10:00
Scott Powell
f66d900ae2 * companion: bug fix for CMD_ADD_UPDATE_CONTACT 2025-07-30 14:57:38 +10:00
Scott Powell
ad19ac1ab3 * Companion: CMD_ADD_UPDATE_CONTACT now with optional extra 'last_mod' timestamp 2025-07-25 22:59:48 +10:00
Scott Powell
5881b04a31 * companion: optional double ACKs, new prefs.multi_acks 2025-07-16 19:25:28 +10:00
Scott Powell
fccb3b6c39 * companion: added CMD_FACTORY_RESET (51) 2025-07-15 15:56:59 +10:00
Scott Powell
7947e8a2d8 * simple_sensor: redesigned permissions
* companion:  PUSH_CODE_LOGIN_SUCCESS now has extra byte in frame for ACL permissions
2025-07-15 15:05:38 +10:00
Scott Powell
1930dc347e * companion: reverted PUSH_CODE_TELEMETRY_RESPONSE, added new PUSH_CODE_BINARY_RESPONSE 2025-07-14 12:46:51 +10:00
Scott Powell
df33321bdc * companion: added CMD_SEND_BINARY_REQ (50) 2025-07-14 12:25:34 +10:00
Scott Powell
781f7e99f6 * companion: added CMD_GET_TUNING_PARAMS -> RESP_CODE_TUNING_PARAMS 2025-07-09 23:10:33 +10:00
liamcottle
0914056a09 tidy logic for devices with display 2025-07-06 14:16:43 +12:00
liamcottle
7ea6a98513 dont show cli data replies on display 2025-07-06 14:07:56 +12:00
ripplebiz
f8d277de83 Merge pull request #426 from 446564/feat-GH109
allows manual BLE pin even when device has display
2025-07-01 15:09:43 +10:00
Scott Powell
9df3c8c663 * companion: new 'advert_loc_policy' pref. Defaults to ADVERT_LOC_NONE (ie. do Not share location in adverts) 2025-06-22 16:21:04 +10:00