Commit Graph
5669 Commits
Author SHA1 Message Date
mikecarper ebd40d1e92 Bound Ethernet receive work to the entry byte budget 2026-10-16 03:14:37 -07:00
mikecarper 4dc3b43f10 Reject oversized flood retry prefix lists without truncation 2026-10-16 03:13:33 -07:00
mikecarper e980d983be Validate flood retry bucket index before narrowing 2026-10-16 03:11:02 -07:00
mikecarper 5a5d013f06 Restore terminal profile checks for current NodeInfo policy 2026-10-16 03:06:35 -07:00
mikecarper 829d9d819a Keep OTA-only Companions on inherited foreign callbacks 2026-10-16 03:01:34 -07:00
mikecarper fa5471d070 Handle correlated C++ guards in host test extraction 2026-10-16 03:01:21 -07:00
mikecarper 114a0d98c5 Keep RAK Companion Ethernet waits off the mesh loop
Run DHCP and renewal in a cooperative worker, bound socket commands, and retain SPI ownership until cleanup is safe. Preserve framing deadlines, response ownership and whole-frame replay, including pending-ACK queue pinning.

Budget the worker additively and retain all OTA names with an exact-checked Full-only compact index. Add full-driver, sanitizer, queue, shutdown, storage and memory regression coverage.
2026-10-16 02:23:03 -07:00
mikecarper d923de379d Retain SdFat in remapped RAK4631 OTA profile builds 2026-10-16 01:48:27 -07:00
mikecarper 19d36daf50 Preserve non-SD OTA staging during card maintenance 2026-10-16 01:43:48 -07:00
mikecarper 3cc9515bb9 Restore shared Ethernet chip select on every acquisition 2026-10-16 01:43:06 -07:00
mikecarper b11cb44e06 Restore RX power saving after deferred calibration cleanup 2026-10-16 01:42:37 -07:00
mikecarper 41405ee01b Merge remote-tracking branch 'origin/keymindCascade' into keymindCascade 2026-10-16 01:27:24 -07:00
mikecarper 339079c439 Bound failed RX retries without blocking power-saving sleep 2026-10-16 01:27:24 -07:00
mikecarper 73a4c97e8c Merge remote-tracking branch 'origin/keymindCascade' into keymindCascade 2026-10-16 01:21:48 -07:00
mikecarper 862260de17 Reject AGC intervals that would wrap or silently disable resets 2026-10-16 01:19:09 -07:00
mikecarper e8ac3ddc6b Merge remote-tracking branch 'origin/keymindCascade' into keymindCascade 2026-10-16 01:18:26 -07:00
mikecarper 774c2adc80 Add adaptive RAK4631 SD storage to full firmware profiles 2026-10-16 01:18:26 -07:00
mikecarper 9cf2417d29 Use production packet routing types in OTA adapter regression 2026-10-16 01:08:46 -07:00
mikecarper 5b464e93a6 Fit headless Wio Companion while retaining button controls 2026-10-16 00:55:56 -07:00
mikecarper 6a90229d9a Preserve folder OTA staging when resume reads fail 2026-10-16 00:54:49 -07:00
mikecarper 6614be22f2 Retain USB commands until required replies can be queued 2026-10-16 00:53:06 -07:00
mikecarper e629f1c44f Fit headless RAK Companion without shrinking storage 2026-10-16 00:50:55 -07:00
mikecarper 41564bf6b7 Verify SX126x status reads against the current RadioLib pin 2026-10-16 00:47:45 -07:00
mikecarper d5cc73c43d Validate beacon power without stranding saved settings 2026-10-16 00:39:07 -07:00
mikecarper adbeb2d007 Finish OTA policy cleanup when seeder log close fails 2026-10-16 00:28:56 -07:00
mikecarper afbf8f9b9a Keep seeder log inspection working after flush errors 2026-10-16 00:20:23 -07:00
mikecarper edf3f85199 Reject ambiguous management firmware versions without scanf 2026-10-16 00:15:55 -07:00
mikecarper 6322b0765f Classify OTA source errors without rejecting welcome names 2026-10-16 00:15:47 -07:00
mikecarper 55557722f9 Include MQTT consent in independent beacon wire vectors 2026-10-16 00:11:35 -07:00
mikecarper 4846191fff Never roll beacon IDs back to an unrelated stale backup 2026-10-16 00:10:57 -07:00
mikecarper bb93c69828 Preserve seeder progress counters when logs are unavailable 2026-10-16 00:08:47 -07:00
mikecarper 9181e3e0ec Keep BLE transmit queues and recovery bound to their connection session 2026-10-16 00:01:28 -07:00
mikecarper aa0a3832f4 Bound management JSON depth before decoding on every Python version 2026-10-15 23:59:54 -07:00
mikecarper 55373f692e Merge remote-tracking branch 'origin/keymindCascade' into keymindCascade 2026-10-15 23:50:05 -07:00
mikecarper 7c8edf5ff1 Honor shared foreign radio ownership before beacon admission 2026-10-15 23:48:38 -07:00
mikecarper 7df52f5260 Add opt-in decoded-channel Meshtext rebroadcasting 2026-10-15 23:39:05 -07:00
mikecarper 9947c40686 Keep local onboarding notices behind real Companion traffic 2026-10-15 23:37:17 -07:00
mikecarper 98a4cc9be6 Bound legacy Companion startup version labels without heap copies 2026-10-15 23:34:50 -07:00
mikecarper e0f46a5014 Restore GPS control shutdown for externally started receivers 2026-10-15 23:34:34 -07:00
mikecarper 36ec9b8bd3 Seed a quiet local emergency-channel notice on Companion joins 2026-10-15 23:16:27 -07:00
mikecarper 4b465f9966 Close GPS-owned UARTs before sleeping receivers 2026-10-15 23:07:37 -07:00
mikecarper 7dcdae3b08 Serialize nRF52 BLE receive frames across link resets 2026-10-15 23:04:40 -07:00
mikecarper a7828d5342 Bound CommonCLI arguments before scratch copies 2026-10-15 23:02:05 -07:00
mikecarper 3a625b03fe Fix missing Waveshare LR1121 observer migration metadata 2026-10-15 22:51:36 -07:00
mikecarper 7a2bc9b8fa Publish one auto-slot Station G3 firmware choice per profile 2026-10-15 22:30:37 -07:00
mikecarper 8eced48d34 Fix peripheral power shutdown and auto-detect Station G3 radio slots 2026-10-15 22:30:37 -07:00
mikecarper c6e43c5530 Add guarded Meshtext, radio2 and multi-hop OTA hardware tests
Add identity-bound app flash adapters, exact-receipt radio2 sweeps through preamble 384, measured packet-window goodput, stock-peer delivery probes, Zopfli1000 USB OTA serving and bridge outage/recovery checks. Keep dwell experiments opt-in, production timing unchanged, generated artifacts outside Git, and wire offline safety tests into CI.
2026-10-15 21:05:40 -07:00
mikecarper 03b660e06f Initialize mesh retry state in the trace test fixture
Mirror firmware startup before direct receive helpers run so sanitizer builds do not read uninitialized retry-slot flags.
2026-10-15 21:05:39 -07:00
mikecarper 690ffe5601 Keep bridged OTA retries resumable across profile handoffs
Let the mesh timed OTA retry guard own byte-identical requests instead of the permanent bridge FIFO. Bind bridge ingress to its primary profile generation and preserve UART reflection/liveness protections. Verified a LoRa to ESP-NOW to LoRa update with outage recovery and install.
2026-10-15 21:05:23 -07:00
mikecarper bc1b414af0 Fix Meshtext metadata lifecycle and radio2 readiness refresh
Delay automatic GPS-free NodeInfo until a quiet TX gap, invalidate stale metadata after durable node renames, and refresh the profile when same-tuple publication releases its busy guard. Cover the real Companion methods and document the behavior.
2026-10-15 21:05:14 -07:00