Commit Graph
1846 Commits
Author SHA1 Message Date
mikecarper af69918094 Honor saved WebUI off during unconfigured boot setup
An enabled MQTT bridge without a saved SSID forced WebConfig back on at boot,
even after set webui off. Its setup AP also suspended an enabled ESP-NOW bridge.

Use first-time MQTT setup as the default only when no WebUI choice is saved.
Apply the saved on/off setting afterward in Repeater and Room Server. Preserve
first-time provisioning and explicit starts.

Add executable boot regressions for both roles with unset, on and off WebUI
settings and configured/unconfigured WiFi. Update setup and picker guidance.
2026-10-25 09:07:47 -07:00
mikecarper 16399a019d Fix Companion pairing tests and nRF52 OTA image size
The extracted inbox renderer was missing HomeScreen's pairing PIN visibility
state. Provide it and check that it agrees with the complete PIN on screen.

Reuse the text drawing result instead of measuring pairing values twice, and
keep the bottom pairing layout separate from the large home renderer. This
saves 32 bytes in the RAK4631 Full Companion and lets its OTA image pass the
existing application limit without removing features or weakening checks.

Fixes the two failures in unit-test run 40174991783.
2026-10-25 09:00:12 -07:00
mikecarper 6bcedc7344 Merge PR #24: report Companion receive profiles
Pull in https://github.com/mikecarper/MeshCore/pull/24.

Preserve reserved fallback bytes for single-profile operation and UDP ingress. Clarify the protocol documentation and validate both UDP-enabled and UDP-disabled builds of the receive-profile helper.

Validation: receive-profile tags, response bounds, UART sessions, UDP packet origins, and bridge ingress tests passed.
2026-10-25 01:01:17 -07:00
mikecarper 83e4b45221 Avoid duplicate pairing PINs across Companion displays 2026-10-25 00:51:06 -07:00
mikecarper 587d5b79a6 Hide duplicate pairing PIN on T096 home screen 2026-10-25 00:44:41 -07:00
mikecarper 4c94d6b4e4 Default Cascade Companions to two-byte path hashes 2026-10-24 23:52:54 -07:00
mikecarper 4fd3358a45 Add saved node and region discovery response switches 2026-10-24 20:37:51 -07:00
Claude 0e756bf24a Companion: say which profile raw and channel data arrived on
MeshCore Open TAK labels a MediaMesh photo or voice clip "Received via
MediaMesh", "via main mesh" or both. Wadamesh standalones tell the
app the profile in a frame byte stock firmware leaves reserved; a
Cascade companion left it unset, so the app showed nothing.

While radio2 is on (rx or rxtx):
- PUSH_CODE_RAW_DATA (0x84) byte 3: 0xA0 primary, 0xA1 radio2
  (stock 0xFF).
- RESP_CODE_CHANNEL_DATA_RECV (0x1B) byte 2: the same (stock 0).
With radio2 off, or for a packet from the UDP bridge, the stock values
stay, so existing clients see no change.

Test: test/test_companion_rx_via.py (in run-unit-tests); the two
harnesses that compile these handlers get a stub.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011i5tJJtj95MB4oUgncCUe5
2026-10-24 17:31:53 -07:00
mikecarper 03214a16df Fit Full Tbeam Room servers using qualified auxiliary memory 2026-10-24 07:12:46 -07:00
mikecarper 21194b9825 Fix compile and capacity blockers in the full release matrix
Resolve Serial macro and ESP-NOW wrapper compilation errors. Preserve queue, neighbor, advert-history and Room post capacities while using qualified RTC, PSRAM and word-only IRAM storage on constrained ESP32 targets. Reduce Full infrastructure flash through lossless Room web compression, compact crypto and unused exception metadata removal.

Add focused native regressions for storage ownership, exact protocol output, OTA proofs and build policy. Keep physical flash sizes, OTA slots and RAM guard formulas unchanged.
2026-10-24 05:38:23 -07:00
mikecarper 98c2858087 Warn admins on login while the default password is unchanged 2026-10-24 01:05:49 -07:00
mikecarper 25f3546c07 Resolve board aliases before selecting packed Companion help 2026-10-23 23:51:09 -07:00
mikecarper bbe29fbf95 Add saved telemetry packet type controls 2026-10-23 21:32:47 -07:00
mikecarper 553957fff8 Space telemetry batch packets 90 seconds apart 2026-10-23 19:52:01 -07:00
mikecarper 8e8c603eb5 Keep RAK4631 Full OTA images within the application region 2026-10-23 19:39:54 -07:00
mikecarper 170c1761d0 Merge remote-tracking branch 'origin/keymindCascade' into keymindCascade 2026-10-23 18:08:25 -07:00
mikecarper ab5de10e79 Qualify Full Meshtext builds and share cold storage on constrained companions 2026-10-23 18:08:25 -07:00
mikecarper fc1e721a84 Scope automatic bootloader updates to each firmware image 2026-10-23 17:52:16 -07:00
mikecarper 3226e208bf Automatically check embedded bootloader after 70 seconds with reboot protection 2026-10-23 17:34:57 -07:00
mikecarper 9b0e013f4b Merge PowerSaving-v18 into keymindCascade
Integrate the ESP32 power-saving core and RXPS recovery/status updates while preserving radio2, telemetry and saved settings.
2026-10-23 16:11:49 -07:00
mikecarper 84cae8a774 Show last completed telemetry transmission age 2026-10-23 15:12:42 -07:00
mikecarper d6853f4521 Add saved 9 MHz alias for supported 8.889 MHz SPI clocks 2026-10-23 12:54:54 -07:00
mikecarper 5b20bf3709 Include the packed help interface for STM32WL Companions 2026-10-23 11:26:05 -07:00
mikecarper 73789a64e8 Pack STM32WL Companion help while retaining every command 2026-10-23 11:25:33 -07:00
mikecarper 9d973d353a Preserve the compact STM32WL interface and profile storage path 2026-10-23 11:13:35 -07:00
mikecarper 4c0f2acf64 Merge remote-tracking branch 'origin/keymindCascade' into keymindCascade 2026-10-23 10:41:27 -07:00
mikecarper 61d024bc72 Add saved controls for radio switching acceleration 2026-10-23 10:41:26 -07:00
mikecarper 99eb24736f Limit Meshtext messages to 15 total attempts
Stop on a matching forwarded echo and preserve lower saved retry settings. Keep scheduled beacons on their separate single-send path.
2026-10-23 10:33:21 -07:00
mikecarper 0cdf6f9aa6 Store complete RAK help with bounded LZSS compression 2026-10-23 10:02:01 -07:00
mikecarper 629db8542d Share SD command parsing and history output without changing replies 2026-10-23 09:59:48 -07:00
mikecarper 5d70d0af76 Optimize occasional RAK Companion management code for size 2026-10-23 09:51:40 -07:00
mikecarper 8f621cbb3f Isolate RAK help packing from the firmware C++11 build 2026-10-23 09:40:00 -07:00
mikecarper 4deff5b687 Pack RAK Full help text at compile time without changing output 2026-10-23 09:32:02 -07:00
mikecarper 684df9c643 Reduce RAK Full Companion help overhead without removing commands 2026-10-23 09:19:09 -07:00
mikecarper 807343de8d Share Companion hardware diagnostics and protect RXEN reconfiguration 2026-10-23 08:57:51 -07:00
mikecarper 04c4fdb240 Expose Companion bootloader version and fence XIAO role-transition tests 2026-10-23 08:33:02 -07:00
mikecarper 1412ee4954 Prioritize ESP32 Auto CPU speed during dual-profile radio scanning 2026-10-23 02:34:50 -07:00
mikecarper 302e441e2b Keep Mini Repeater within flash after channel-busy fix 2026-10-22 23:09:36 -07:00
mikecarper adb11e7b41 Qualify RAK repeater RAM and retire stale channel-busy waits 2026-10-22 22:59:23 -07:00
mikecarper 2d35a291fa Fix release size regressions and calibration test fixtures 2026-10-22 19:53:31 -07:00
mikecarper ab6412e73c Add persistent battery ADC calibration across boards
Add meter-reference calibration with saved ADC corrections, checked persistence and rollback. Preserve existing board coefficients and nRF52 voltage policy, and merge the Mini Repeater feature gates.

Validation: 69 focused tests, hosted documentation checks, and four firmware builds passed. Mini Repeater retains calibration and its existing filesystem with 376 flash bytes free; earlier Mini Sensor size failures remain documented.
2026-10-22 18:56:32 -07:00
mikecarper af106a0ee9 Add optional battery thresholds for repeat and flood forwarding 2026-10-22 17:33:23 -07:00
mikecarper 3d29a1d811 Keep noise history within small-board memory budgets 2026-10-22 17:21:33 -07:00
mikecarper f4ade738df Add packed noise-floor telemetry history for both radio profiles 2026-10-22 16:50:31 -07:00
mikecarper 36d9735e55 Resume UDP station ownership after WebConfig fallback 2026-10-22 13:59:12 -07:00
mikecarper 9b80ee63ee Expose standalone ESP-NOW bridge state to wireless control 2026-10-22 12:46:46 -07:00
mikecarper 5e25faa3d0 Add station-only WiFi UDP bridge with eight authenticated peers 2026-10-22 12:20:43 -07:00
mikecarper 281f1a5199 Add runtime RS232 bridge diagnostics and wired link probes 2026-10-22 11:51:56 -07:00
mikecarper 14682de00e Add runtime ESP-NOW bridge diagnostics and link probes 2026-10-22 11:30:28 -07:00
Kevin Le d2e84bc3ba Fixed companion PS for C6 2026-10-23 00:44:51 +07:00