Commit Graph
1758 Commits
Author SHA1 Message Date
mikecarper a3d77a9a76 Clean project references and separate optional bench tooling
Remove unrelated ecosystem comparisons and software citations while retaining hardware links, measured model names, and required license notices.

Preserve stock-peer runners and tests in a verified local validation package. Keep shared Companion USB transport in the firmware repository for the raw-radio sweep and OTA seeder, with focused CI coverage. Restore missing hosted documentation links.
2026-10-21 17:35:37 -07:00
mikecarper 9aa7974567 Enable SolarXiao Room Server power profiles and late-detection history 2026-10-21 17:02:01 -07:00
mikecarper 70b8db9388 Scope native SolarXiao power controls to qualified repeater targets 2026-10-21 15:32:23 -07:00
mikecarper 2dcc1caccb Add native SolarXiao MPPT and battery telemetry and controls 2026-10-21 15:25:53 -07:00
mikecarper e7141400d6 Fix SolarXiao INA260 discovery and carrier I2C pins 2026-10-21 14:26:07 -07:00
mikecarper d5a6df6283 Detect SSD1306 and SH1106 screens on RAK boards
Use repeated status reads at screen initialization and preserve SSD1306 for ambiguous responses. Share the existing framebuffer, drawing, rotation and power handling; use SH1106 page transfers when detected.

Enable this for RAK4631 and RAK3401, including WisMesh Pocket v2/v3. Add controller overrides, protocol tests and CI coverage. Addresses meshcore-dev/MeshCore#3296.
2026-10-20 09:43:25 -07:00
9d52b1fd68 Add saved LED controls across supported boards
Add get leds and set leds on|off for Companion, repeater, room server and
sensor builds. Preserve the setting across reboots and cover GPIO, RGB,
Bluetooth, notification and expander indicators without changing radio
amplifier controls or screen backlights.

RAK Companions blink while advertising and keep the Bluetooth LED off once
connected, including late timer callbacks.

Adapted from meshcore-dev/MeshCore#3605 and #2694.
Validated with host regressions and firmware builds for SenseCAP Solar,
RAK4631, T096, Heltec V4, T-Beam, Xiao S3, Pico W and Wio E5 Mini.

Co-authored-by: R0ck <develop@hectospark.co.uk>
Co-authored-by: Nick Dunklee <nick@dunklee.org>
2026-10-20 08:59:39 -07:00
mikecarper 40a4161782 fix: keep unavailable radios out of identity and settings recovery 2026-10-19 17:44:48 -07:00
mikecarper a3f858f6f0 Fit V3 Full with NimBLE and bounded OTA source proofs 2026-10-19 02:47:13 -07:00
mikecarper a782cc8413 Speed up T-Deck radio2 retunes with guarded command reuse
Reuse the confirmed LoRa modem only inside acknowledged warm continuous-RX hops and revoke that capability before modem initialization or after failures.

Opt the tested T-Deck into IQ workaround reuse and an exact 8,888,888 Hz SPI setting. Keep the existing BUSY, packet-ownership and recovery checks; other boards retain their modem-cache default.
2026-10-18 23:20:50 -07:00
mikecarper a944b1779d Keep T-Deck radio2 scanning active during screen redraws
Render into a PSRAM canvas and release the shared SPI bus between bounded TFT strips. Service only the radio driver at cooperative checkpoints and use the buffered radio HAL, preserving packet and transmit guards.

Cover pixel parity, transaction boundaries, allocation failure, partial updates and sleep/wake behavior with native tests.
2026-10-18 23:18:55 -07:00
mikecarper d98cd2cbe6 Enable circuit-verified Nano G2 MCU regulator selection 2026-10-18 23:07:39 -07:00
mikecarper 758004373d Keep unsupported STM32 controls out of tiny Companion images 2026-10-18 21:54:35 -07:00
mikecarper c4a1d485ff Add saved regulator modes and battery-gated crash recovery 2026-10-18 21:10:58 -07:00
mikecarper 9c78ccde57 Unify optional hardware variants and add runtime R8 TFT rotation 2026-10-18 20:25:13 -07:00
mikecarper 4f746d1e3b Detect manufacturer-supported optional screens on RC32, Tracker V1 and V4 R8 2026-10-18 18:55:38 -07:00
mikecarper 1ce3f0cdd7 Make T114 screen detection the default firmware and picker choice 2026-10-18 16:20:27 -07:00
mikecarper 22ab02caf7 Fix G3 gain transitions, slot commands and radio restore 2026-10-18 14:29:19 -07:00
mikecarper 015eff4c22 Restore G3 startup tolerance and G2-compatible flash mode 2026-10-18 13:58:02 -07:00
mikecarper 6ce784bbd6 Fit all STM32 Companions with checked fractional preferences
Stage STM32 preference prefixes and checked footers in one atomic image, reject declared tails that encounter premature EOF, and share the typed CLI rollback helper. Use the proven Wio Mini code-layout flags on Wio E5 and Tiny Relay without changing features or memory boundaries. All four STM32 targets and RAK4631 Full pass at the full 1.18.0.1 release version length.
2026-10-18 09:11:51 -07:00
mikecarper 59b0ab93d0 Keep fractional timezones within constrained flash budgets
Deduplicate validation and preserve the published preference bytes and transactional saves. Correct Ikoka Handheld Companion flash bounds and document QSPI Room migration. Qualify STM32 and RAK4631 at the full 1.18.0.1 release version length.
2026-10-18 08:46:20 -07:00
mikecarper 89dcd82089 Add guarded hardware acceptance and restoration tools 2026-10-18 00:24:03 -07:00
mikecarper 55f67f9062 Fit Mini Repeater with approved optional service cuts 2026-10-17 19:35:05 -07:00
mikecarper d83a6a3ceb Fit Tiny Relay Companion while retaining GPIO and storage 2026-10-17 17:40:40 -07:00
mikecarper dbe092f5d5 Fit Wio-E5 Companion without reducing storage or contacts 2026-10-17 17:39:04 -07:00
mikecarper 3d04bb3048 Sleep unused onboard SX1262 in RAK13302 builds
Adapt the optional onboard-radio probe for RAK3401 and RAK4631 cores using the external RAK13302 image. Preserve SPI1 radio ownership, external FEM startup, and ordinary RAK4631 primary-radio operation.

Probe before boot voltage protection, bound missing-chip waits, release temporary pads, and confirm cold sleep without waking the chip. Add sanitizer-backed host regression tests and CI coverage.
2026-10-17 17:02:54 -07:00
mikecarper 64a928d18f Reduce Indicator radio expander traffic with guarded IQ reuse 2026-10-17 14:19:42 -07:00
mikecarper 05c0ed8bb2 Fit STM32 Companions with equivalent compact field arithmetic 2026-10-17 13:53:00 -07:00
mikecarper 8874cf62ca Fix W12 TX prearming without standby PA drain 2026-10-17 13:36:38 -07:00
mikecarper dcabcb8cb2 Initialize DC/DC on nine circuit-verified nRF52 boards 2026-10-17 11:42:21 -07:00
mikecarper 364e3cabd5 Merge remote-tracking branch 'origin/keymindCascade' into keymindCascade 2026-10-17 11:37:01 -07:00
mikecarper 86984e8e22 Enable RAK4631 Companion DC/DC in all transports 2026-10-17 11:35:50 -07:00
mikecarper 4805b5cdbb Fix T096 Companion runtime RAM with RGB332 framebuffer 2026-10-17 11:22:15 -07:00
mikecarper 21f8b3384f Enable T096 DC/DC initialization before battery checks 2026-10-17 11:01:01 -07:00
mikecarper ce53567a4c Consolidate onboard QSPI infrastructure build profiles 2026-10-16 23:42:10 -07:00
mikecarper d5d84d325b Retire internal-only SolarXiao Room release variants 2026-10-16 23:24:36 -07:00
mikecarper 8717f3f23e Add missing ESP32 Full Companion release targets
Provide canonical Full recipes for Waveshare S3 LR1121 and Wio Tracker L2 while retaining directly buildable USB and BLE compatibility recipes. Cover hardware inheritance, menu selection, and exact Full mappings in the release profile tests.
2026-10-16 07:35:44 -07:00
mikecarper d923de379d Retain SdFat in remapped RAK4631 OTA profile builds 2026-10-16 01:48:27 -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 5b464e93a6 Fit headless Wio Companion while retaining button controls 2026-10-16 00:55:56 -07:00
mikecarper e629f1c44f Fit headless RAK Companion without shrinking storage 2026-10-16 00:50:55 -07:00
mikecarper 8eced48d34 Fix peripheral power shutdown and auto-detect Station G3 radio slots 2026-10-15 22:30:37 -07:00
mikecarper 45796feff4 Declare bridge UART ownership and avoid RAK3401 GPS conflicts 2026-10-15 17:37:55 -07:00
mikecarper 755895c7e0 Control Wio Tracker L2 GPS power and reserve display runtime RAM 2026-10-15 17:37:54 -07:00
mikecarper 9a451dc160 Add configuration-preserving Waveshare observer partition migration 2026-10-15 17:37:52 -07:00
mikecarper eebba0cb9a Add opt-in RAK15002 SD firmware seeder with isolated SPI and cache regression tests 2026-10-15 15:10:44 -07:00
mikecarper b5e493996c Merge observer firmware with persistent opt-in advert signature verification
Add Waveshare LR1121 observer recipes. Adapt observer advert verification to existing transactional CLI, append-only binary preferences and Companion NVS, preserving default file lengths and WiFi credentials. Reject oversized unsigned advert tails consistently with Mesh::onRecvPacket. Keep current BLE recovery and GPS claim accounting.
2026-10-15 13:45:27 -07:00
mikecarper 6ee3ec2b5c Merge PowerSaving-v17 with pinned RadioLib 7.8.1 and target compatibility
Bring in Wio Tracker L2 Pro, RAK3401/TrackerV2 RS232 recipes and explicit FEM-on defaults. Keep qualified runtime FEM ownership and GPS semantics; retain old V4 target aliases and Bash build entry points. Pin the upstream RadioLib 7.8.1 release exactly instead of an open-ended dependency range.
2026-10-15 13:33:03 -07:00
mikecarper 285267e3a1 Merge meshcore-dev dev with routing, WiFi and power-policy compatibility
Integrate upstream 1.18.0, delayed direct ACK forwarding, zero-scope routing, Waveshare LR1121 and dynamic WiFi variants. Preserve fork chemistry-aware power management and bounded multi-interface UI; retain retry/dedup safety while adding upstream ACK delay. Qualify LR1121 band power and HP-only Morse handling with native regressions.
2026-10-15 13:30:41 -07:00