Commit Graph
5558 Commits
Author SHA1 Message Date
mikecarper 6b75ad07d3 Preserve MeshCore preambles with Meshtext and allow MQTT upload 2026-10-15 11:04:38 -07:00
mikecarper 9363ad4f95 Add safe ESP32 WiFi compatibility controls and unified status 2026-10-15 11:04:07 -07:00
mikecarper d3bbd5a4d0 Protect ESP32 identities during interrupted partition migration 2026-10-15 11:03:43 -07:00
mikecarper 3347a62780 Recover stalled MQTT transports and broker acknowledgments 2026-10-14 10:34:40 -07:00
mikecarper 8a49a98709 Support Meshtext beacons across LoRa radio families
Add checked protocol adapters for every project LoRa family and enable Indicator LoRa TX. Preserve normal modem restoration, LR1110 fast hops, LR2021 side detectors and physical-band power limits.

Fix SX1276 beacon CAD completion dispatch, concrete-chip validation on multi-chip variants, no-GPS sensor hook linkage and STM32 file construction. Add fault, negative-control and preset coverage to CI. Keep flash-constrained STM32 artifacts disabled after measured opt-in overflows.
2026-10-14 10:22:04 -07:00
mikecarper 009bfff383 Add staggered transmit-only channel text beacons 2026-10-14 09:58:24 -07:00
mikecarper 8049754de9 Synchronize Ethernet fixture wakeups with predicate updates 2026-10-14 04:12:46 -07:00
mikecarper 457e403017 Adapt AGC maintenance cadence during device power saving 2026-10-14 04:11:10 -07:00
mikecarper d7c8a3a104 Reduce routine RX power-saving noise-floor refreshes 2026-10-14 01:37:55 -07:00
mikecarper d43bc23f5a Release OLED power ownership when initialization fails 2026-10-14 00:21:23 -07:00
mikecarper 6a2fd182d3 Avoid stopping unstarted nRF UARTs during bridge wake 2026-10-14 00:21:04 -07:00
mikecarper 32e920250a Keep power-saving sleep within queued work deadlines 2026-10-14 00:20:04 -07:00
mikecarper 6b12f4c0a4 Preserve tracker GPS ownership when changing power saving 2026-10-14 00:16:15 -07:00
mikecarper ff78f8df7e Put firmware selections first and show contextual board notes 2026-10-13 22:05:00 -07:00
mikecarper 3d539b0a8d Add actual Companion device-query handshake regression harness 2026-10-13 17:05:37 -07:00
mikecarper 80c93f20f1 Prevent WiFi handshake starvation and blocking Companion TCP sends 2026-10-13 17:03:10 -07:00
mikecarper 5aac446ee1 Scope Companion public-key CLI assertions to the identity branch 2026-10-13 16:29:28 -07:00
mikecarper 20929a598f Recover Companion WiFi TCP listener failures and expose diagnostics 2026-10-13 16:24:34 -07:00
mikecarper 368770656f Fix WisBlock GPS power policy and preserve shared peripherals 2026-10-13 09:55:32 -07:00
mikecarper 9079d6f47e Correct Morse human spacing and harden speed qualification 2026-10-13 05:25:07 -07:00
mikecarper b1198b6e3e Improve Morse timing adaptation and repair CI regression coverage 2026-10-13 03:02:52 -07:00
mikecarper 1b2c1cf2b3 Coordinate Reader output with Morse and enforce HIL flash safety
Preserve Reader streaming during Morse timing and block synchronous inflate/progress interleaving. Fail closed on uncertain port ownership and enforce application-only DFU packages before querying USB. Cover the guards in CI and clarify experimental benchmark scope.
2026-10-13 01:51:27 -07:00
mikecarper ca9caece53 Add bounded Morse receive and negotiated RS232 autosleep
Add native narrow-band CW capture, ACK-first remote sessions, retained LoRa-readable pages, checked restoration and transport-safe progress. Add stock-compatible negotiated heartbeat/autosleep and recovery. Include host regressions and identity-bound HIL runners; keep unverified faster tuning HIL-only and document outstanding hardware validation.
2026-10-13 01:24:39 -07:00
mikecarper d2bea5fb10 Reduce nRF52 Companion flash and stream Reader chapters
Use a 960-byte constant-time Ed25519 base table, compact hash/scalar code and unused-library trims while retaining Reader, BLE P-256 and the 8 KiB stack. RAK4631 Full saves 57,496 flash bytes and 3,152 static RAM bytes versus preview3.

Support complete chapters and verse ranges with bounded app continuation replies and cooperative terminal output. Use nonblocking TCP writes under reader backpressure. Add scalar/signature comparisons and a linked ARM crypto/stack CI gate.

Validated clean RAK4631, T1000-E, T096 and V4 Full builds, host regressions, and physical RAK chapter/reconnect and signing comparisons. Physical signing averages 35.9 ms versus 14.4 ms with the original table.
2026-10-13 01:02:30 -07:00
mikecarper 65820d0dd2 Include and qualify Meshtext in RAK4631 Full Companion
Port Meshtext settings to verified atomic nRF52 storage and use the existing radio RNG and hardware entropy. Keep the ExtraFS boundary, GPS, contacts, channel count and 8 KiB stack unchanged; omit unused library data to fit the image. Require linked codec and Companion transport evidence and build the real RAK Full profile in CI. Add configuration and storage-failure regression coverage.
2026-10-12 22:39:00 -07:00
mikecarper 7e5eabe81c Shorten firmware picker selection links and keep original download names
Replace the download-file shortcut approach with compact self-contained picker URLs under /p/. Preserve long-link compatibility, selected install formats, and full published firmware filenames. Cover selection round trips and the redirect in the picker tests.
2026-10-12 22:02:20 -07:00
mikecarper 5bd2c1fe4c Publish immutable short firmware download links
Mirror pinned GitHub release bytes at shorter version-specific Pages URLs. Verify size, SHA-256 and firmware format before publishing, and preserve deployed alias identities across later site builds.

Add RAK4631 Full Companion 1.17.1.10 preview2 UF2 and native DFU ZIP aliases, a short-download directory, documentation and CI regressions. Existing flashing tools use the ZIP URL without losing board-family checks.

Validation: 16 short-link and Pages guard regressions, hosted-doc routing tests, firmware picker tests, full MkDocs build and exact UF2/ZIP byte checks.
2026-10-12 21:47:08 -07:00
mikecarper 42e5c0c07b Repair WiFi power-policy CI fixtures and run ownership checks earlier 2026-10-12 15:55:04 -07:00
mikecarper 05a675a57a Suspend failed ESP32 MQTT and NTP uplinks for power saving
Share one bounded WiFi outage and recovery schedule across MQTT, automatic NTP, Companion station ownership and WebConfig. Preserve enabled settings and foreground access while allowing normal sleep after confirmed physical shutdown.

Honor failed SDK client stops before handing off WiFi, protect clean teardown and reconfiguration, and retry transient ESP-NOW channel restoration without repeated disconnects. Add production-method, SDK failure and real sleep regressions to CI.

Validation: native MQTT/NTP/clock/reconnect suites; production power and wrapper failure tests; browser, room HTTP, OTA and combined bridge regressions; Full Heltec V4 repeater, room and companion builds with capability, flash and linked-memory checks.
2026-10-12 14:57:01 -07:00
mikecarper 767cdac6f8 Check all application USB startup flags on migration bridges 2026-10-11 15:14:28 -07:00
mikecarper d686012292 Verify USB partition bridge transports in CI 2026-10-11 15:10:33 -07:00
mikecarper 5ff4747105 Document automatic pinned USB migration utility downloads 2026-10-11 13:29:08 -07:00
mikecarper d2f0c0038d Merge remote-tracking branch 'origin/keymindCascade' into keymindCascade 2026-10-11 13:28:23 -07:00
mikecarper 5d6081feee Add verified USB-only ESP32 partition migration bridges 2026-10-11 13:28:23 -07:00
mikecarper 772644b005 Repair CI dependencies and fit STM32 Companion firmware 2026-10-11 09:13:33 -07:00
mikecarper 05907f49e0 Add Meshtext Companion channel chat and automatic radio2 setup 2026-10-11 02:08:02 -07:00
mikecarper 1f1a499482 Add opt-in low power Sensor dog tracking
Acquire fresh GPS and validated UTC, check an authenticated owner Companion, and apply saved lost-status cadence with bounded awake windows. Persist request tags, routes, and six-hour flood reservations; preserve the four-day cutoff across sleep and restart.

Keep Dispatcher recovery active after a failed radio wake, honor denied flood retries after lost TxDone, and qualify GPS ownership and clock corrections. Add executable regression tests and nRF52/ESP32 Sensor build jobs.

Validation: six firmware builds, 1829 native test cases, sanitized tracker/storage/GPS/sleep/recovery tests, and strict documentation build. Bluetooth Find My advertising and automatic Room mailbox polling remain separate work.
2026-10-10 20:08:58 -07:00
mikecarper 90b12f6fa3 Repair room mailbox adapters in sensor reply bounds tests 2026-10-10 19:48:17 -07:00
mikecarper 8031e60b55 Add Companion lost-status replies and repair room mailbox test adapters
Save an opt-in off/no/yes answer to private Am I lost questions from known
chat contacts. Keep reply traffic and ACK state bounded, preserve pending
user delivery, and expose the setting through local CLI and ESP32 WebConfig.

Retain compact STM32 application/filesystem boundaries, qualify the Tag BLE
queue allowance, and exercise saved-image compatibility and browser controls.
Fix stale room mailbox protocol dependencies in the ACL/route test fixtures.

Validation: ten Companion builds, sanitized production-path regressions,
preference fault/compatibility tests, browser tests, and 86 capacity/build
recipe checks passed. No live radio was flashed for this feature.
2026-10-10 19:24:42 -07:00
mikecarper 2c1c2c8e99 Add owner-controlled personal room mailboxes and WiFi management 2026-10-10 18:26:13 -07:00
mikecarper 5165b6f490 Correct LoRa room board index completion documentation 2026-10-10 17:56:01 -07:00
mikecarper 9922e60ce4 Clarify MQTT restoration evidence 2026-10-10 15:52:36 -07:00
mikecarper 52f4f94d6e Record shared ESP32 MQTT regression and hardware validation 2026-10-10 15:52:04 -07:00
mikecarper eec6ab0a9f Count runtime WiFi memory in every ESP32 MQTT profile 2026-10-10 15:46:53 -07:00
mikecarper 110b26c737 Fix MQTT recovery admission and retained client buffer sizing 2026-10-10 15:29:50 -07:00
mikecarper beb5b69a80 Reserve SDK client startup memory before MQTT TLS admission 2026-10-10 15:09:19 -07:00
mikecarper 94cc96f234 Expose broker publish acknowledgments for MQTT validation 2026-10-10 15:01:14 -07:00
mikecarper 70052c5e5b Preserve MQTT TLS connection time and internal DMA headroom 2026-10-10 14:43:57 -07:00
mikecarper b705824cf3 Keep room ACL test harnesses aligned with reply routing 2026-10-10 11:59:59 -07:00
mikecarper c678ab6553 Add room catch-up and Wi-Fi administration 2026-10-10 11:51:00 -07:00