Commit Graph
48 Commits
Author SHA1 Message Date
mikecarper 85a786e796 Wait for nRF52 BLE client data before sending queued frames 2026-10-19 13:12:54 -07:00
mikecarper 629557fcfe Fix nRF52 idle sleep event and CryptoCell handling 2026-10-17 02:22:26 -07:00
mikecarper 9181e3e0ec Keep BLE transmit queues and recovery bound to their connection session 2026-10-16 00:01:28 -07:00
mikecarper 7dcdae3b08 Serialize nRF52 BLE receive frames across link resets 2026-10-15 23:04:40 -07:00
mikecarper e57ab1309f Preserve BLE command replies and respect negotiated mOTA MTU 2026-10-15 11:05:00 -07:00
mikecarper 29de7820e5 Integrate upstream fixes and paired nRF52 sensor OTA release profiles 2026-10-02 17:52:12 -07:00
mikecarper 633e2ce832 Add opt-in nRF52 Bluetooth event diagnostics and USB capture 2026-10-01 02:19:45 -07:00
mikecarper bb58b40d9c Persist Full Companion BLE subscriptions across reboot 2026-09-30 23:20:14 -07:00
mikecarper dd0ce36176 Refresh nRF52 Companion BLE name without reboot 2026-09-23 14:12:37 -07:00
mikecarper 7de7fcf675 fix(nrf52): recover idle secured BLE links 2026-09-23 13:11:09 -07:00
mikecarper 5c4394edd8 Keep nRF52 Full Companion BLE subscriptions across reconnects 2026-09-23 03:19:58 -07:00
mikecarper 7e1f87dfbc Fix nRF52 flash completion and preserve recoverable ExtraFS 2026-09-22 09:29:05 -07:00
mikecarper 3282b7898e fix(nrf52): stabilize full companion bluetooth 2026-09-22 05:54:46 -07:00
mikecarper 7bad5f9b30 fix(companion): recover radio profile settings after flash 2026-09-21 18:21:36 -07:00
mikecarper 2ea493994e Share T096 Full mOTA memory with the offline queue 2026-09-08 01:15:19 -07:00
mikecarper d28535f503 Add independent Companion Bluetooth stealth flag
Keep stealth separate from custom, saved-random and rotating MAC policies without migrating the development MAC mode. Persist authenticated peer state, guard advertising transitions and recovery, and expose the setting through the CLI and WebConfig.

Add regression and CI checks and record exact XIAO BLE pairing, reconnect, reboot and address-rotation hardware results.
2026-09-07 23:46:55 -07:00
mikecarper 8d72c3e3da Add configurable Companion Bluetooth addresses 2026-09-07 18:29:00 -07:00
mikecarper e5fd77e53f feat: add Bluetooth-controlled LoRa OTA
Add the framed BLE mOTA transport and companion control path, complete the full-profile build and runtime fixes, and document and test the OTA workflow.
2026-08-27 01:22:18 -07:00
mikecarper 65e40ff05f feat: add customizable companion Bluetooth names 2026-08-25 20:51:18 -07:00
mikecarper dc92ee61ef Expand and harden full companion profiles 2026-08-24 01:57:38 -07:00
mikecarper 2ff1166c15 Fix BLE pairing display and RX gain defaults 2026-08-10 19:42:44 -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 7f56da7a34 Extend flood policy and harden message retries 2026-08-07 14:26:31 -07:00
mikecarper bda0722ad8 Harden nRF52 storage and hardware recovery 2026-07-21 00:01:01 -07:00
mikecarper 1a9b37d62b Recover stale BLE bonds 2026-07-20 14:26:16 -07:00
mikecarper 63776482e1 Add repeater filtering, clock sync, and companion fixes 2026-07-15 17:40:20 -07:00
Kevin Le 517d3ed643 Added isReadBusy for NRF52 BLE 2026-05-06 12:40:52 +07:00
liamcottle cfe4b0b9a5 bleuart service stay registered first to prevent gatt cache issues on android when already paired 2026-04-18 14:43:47 +12:00
txkbaldlaw b898e7a04e Add DFU to BLE Stack 2026-04-16 16:04:30 -05:00
Wessel Nieboer e3afbf975e Prevent auto-restarting BLE when disabling it on nRF52
If client is still connected, client would automatically reconnect
immediately thus keeping BLE on

fixes #1933
2026-03-10 14:31:58 +01:00
Scott Powell 3c27132914 * T1000e BLE - default node name is now the MAC address 2026-01-23 15:53:58 +11:00
liquidraver cba29ea50c queue throttling + slave latency and minor refactor 2025-12-17 13:46:58 +01:00
liquidraver 73ab0d8813 Improve SerialBLEInterface 2025-12-05 07:39:48 +01:00
liamcottle 400e09f318 revert unexpected change to ble advertising interval on nrf52 2025-09-15 13:06:35 +12:00
liamcottle 25ea953cc3 don't mark as connected until connection secured 2025-09-12 20:23:21 +12:00
ViezeVingertjes 5370667bd8 Replaced BLE_LOW_POWER with BLE_TX_POWER & updated usages. 2025-09-07 15:44:24 +02:00
ViezeVingertjes 7363a4f67d Few adjustments after testing. 2025-09-07 14:08:53 +02:00
ViezeVingertjes 963556f9ba Updated BLE functionality for low power mode in SerialBLEInterface. Updated platformio.ini to enable low power mode and added DC/DC converter support in T1000eBoard for improved power efficiency. 2025-09-05 10:46:51 +02:00
Scott Powell fe376e8c35 * RAK_4631: ui-new 2025-08-17 16:49:08 +10:00
Scott Powell 4b95c981bb * UI revamp for companion radios 2025-08-08 20:01:31 +10:00
liamcottle 67f9204e88 refactor nrf52 ble to use callbacks 2025-07-07 16:36:55 +12:00
Lloyd d32fa5c004 Manually restart BLE advertising after disconnect to prevent stack freeze
Replaced use of `restartOnDisconnect(true)` with explicit (existing) manual re-advertising logic.
This avoids Bluetooth stack instability caused by overlapping advertising state,
Changes:
- Added explicit `Bluefruit.Advertising.stop()` and data clears in `startAdv()`
- Disabled automatic restart with `restartOnDisconnect(false)`
- Re-advertising now fully handled in `checkRecvFrame()` loop

Tested on: iPhone, Android, Windows, and Chrome – confirmed stable reconnects and name visibility.
2025-07-04 21:07:55 +01:00
Lloyd ec98d5f8a5 BLE: Remove ScanResponse.addName() to fix re-advertising after disconnect
Removed the call to Bluefruit.ScanResponse.addName() in startAdv(), as it was preventing BLE from reliably restarting advertising after a disconnect.

Hypothesis: adding the device name to the scan response exceeds internal buffer limits or causes a conflict with advertising timing, leading to the BLE stack silently failing to re-advertise.

Tested successfully (on T-1000) without this line, advertising now resumes correctly after disconnection (on Iphone)
2025-07-02 23:41:31 +01:00
Scott Powell 436a99f088 * BLE_WRITE_MIN_INTERVAL upped to 60 millis 2025-05-17 19:54:31 +10:00
liamcottle dbc9659e9a enforce pin being used for ble pairing on nrf52 2025-02-26 17:27:58 +13:00
Scott Powell cd9b60495d * nrf52 BLE, increased MTU to 250 2025-02-13 20:22:56 +11:00
Florent 51a6cb8982 nrf52 ble uart should work 2025-02-12 17:44:06 +01:00
Scott Powell 824f8c1349 * companion radio for RAK (USB) now fixed. (thanks to Bernd Giesecke)
* experimental NRF52 impl of SerialBLEInterface, and experimental RAK BLE companion radio target
2025-02-12 18:40:00 +11:00