Commit Graph
88 Commits
Author SHA1 Message Date
mikecarper 1a43123d2c Expand and harden full companion profiles 2026-08-24 01:57:38 -07:00
mikecarper 4d51d49660 Improve Companion terminal routing and controls 2026-08-11 12:19:41 -07:00
mikecarper 26d6e0f99a Harden message retry replacement and seed testing channel 2026-08-07 23:22:31 -07:00
mikecarper 11b692abfa Harden firmware recovery and retries
Improve companion BLE delivery and idempotent remote CLI retries, make FPF7 persistence atomic with FPF6 migration, verify staged OTA data on resume, and clarify filter policy wildcard and BlackHole semantics.
2026-08-07 16:24:53 -07:00
mikecarper bda0722ad8 Harden nRF52 storage and hardware recovery 2026-07-21 00:01:01 -07:00
mikecarper e3f47b487b Harden packet, retry, and alert handling 2026-07-13 16:37:32 -07:00
mikecarper b9e7e416be Harden retry, region, radio, and alert logic 2026-07-13 13:18:49 -07:00
Scott Powell 538ac38e18 * fix for counter in RESP_CODE_CONTACTS_START 2026-06-14 18:39:34 +10:00
Scott Powell c2d223ff55 * now handle the case where onAdvertRecv() should _replace_ the anon contact slot 2026-06-14 18:12:08 +10:00
Scott Powell 07648e3344 * fix for anon contacts when full 2026-06-14 17:50:41 +10:00
Scott Powell bc5d648204 * contacts sync fix
* fix for reusing transient/anon contacts only
2026-06-01 19:04:42 +10:00
Scott Powell d9df8307ca * first draft 2026-06-01 16:49:31 +10:00
Scott Powell a130a95a0d * added 6th byte to ACK, with RNG 2026-05-21 00:00:03 +10:00
Scott Powell 717142abd6 * bug fix 2026-05-19 17:06:42 +10:00
Scott Powell 2eb747d504 * fix 2026-05-17 22:38:42 +10:00
Scott Powell f6e6fdaa05 * support for sending 5-byte ACKs 2026-05-17 22:10:13 +10:00
liamcottle ed326255d5 add support for direct paths when sending group data 2026-03-23 21:46:21 +13: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
Wouter BijenandClaude Opus 4.6 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 BijenandClaude Opus 4.6 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 BijenandClaude Opus 4.6 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
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
taco 31ba971c60 only store advblob when adding/updating contacts 2026-02-01 00:02:30 +11:00
taco c61fde9328 always send PUSH_CODE_NEW_ADVERT when advert was not added to contacts[] 2026-01-16 13:15:35 +11:00
taco df6687034a bootstrap RTC from contact.lastmod and improve slot overwrite logic
slot overwrite logic can now safely use contact.lastmod to find oldest contact for overwrite
2026-01-15 18:01:20 +11:00
taco 741564dd48 refactor: add populateContactFromAdvert() 2026-01-15 18:01:20 +11:00
taco 403ce1db08 contacts: granular autoadd and overwrite-oldest 2026-01-15 18:01:20 +11:00
Scott Powell 3af25495bb * Repeater: new anon request sub-type: ANON_REQ_TYPE_REGIONS (rate limited to max 4 every 3 mins)
* Companion: new CMD_SEND_ANON_REQ command (reply with existing RESP_CODE_SENT frame)
2026-01-03 12:02:15 +11:00
Scott Powell 676c317f78 * refactor: on-demand getSharedSecret() 2025-12-06 19:17:45 +11:00
taco 638f41d143 calculate shared_secret on demand 2025-12-06 16:21:17 +11:00
Winston Lowe 031fa1e704 Changed uint to a uint8_t 2025-11-20 21:58:42 -08: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
Scott Powell 7755400a35 * Companion: Now using transport codes { 0, 0 } when Share contact zero hop.
* Repeater: onAdvertRecv(), adverts via Share now NOT added to neighbours table
2025-10-31 20:40:22 +11:00
Scott Powell a288ac06a6 Merge branch 'dev' into reciprocal-path-retry 2025-09-16 13:03:41 +10:00
liamcottle 561dbea30f update lastmod when a new message is received 2025-09-15 12:28:26 +12:00
Scott Powell 74dea260e5 * proposed change for re-trying reciprocal path transmit 2025-09-08 19:22:59 +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 5881b04a31 * companion: optional double ACKs, new prefs.multi_acks 2025-07-16 19:25:28 +10:00
Scott Powell c26418016b Merge branch 'dev' into double-acks 2025-07-15 17:02:20 +10:00
Scott Powell df33321bdc * companion: added CMD_SEND_BINARY_REQ (50) 2025-07-14 12:25:34 +10:00
Scott Powell b1ca3d1eb1 * new PAYLOAD_TYPE_MULTIPART
* experimental double ACK's (at each hop), sent 300ms apart (direct mode only)
2025-06-23 01:14:08 +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
Scott Powell e6ce3c896d * companion: new CMD_GET_ADVERT_PATH -> RESP_CODE_ADVERT_PATH 2025-06-18 16:02:09 +10:00
Scott Powell 6e0b505a2a * companion: refactor of all filesystem access to new DataStore module 2025-06-06 15:30:35 +10:00
Scott Powell 5d15a68d0d * SERVER_RESPONSE_DELAY now applied to: login responses, companion telemetry responses 2025-06-04 18:10:47 +10:00
Scott Powell 75503ed52a * Companion now can be configured with TXT_ACK_DELAY (default is 200ms) 2025-06-03 20:27:09 +10:00