For visibility, since this seems related to the old BLE/VOXL discussion here:
https://forum.modalai.com/topic/1730/bluetooth-ble-communication-on-the-voxl-is-it-possible
I was able to get BLE 5.0 extended advertising scanning working on VOXL2 / Starling 2 with an ASUS BT500 / Realtek RTL8761B USB adapter by backporting newer upstream Linux Bluetooth HCI event parsing logic into the QRB5165 4.19 kernel tree. My understanding is future revisions of VOXL will have more up to date kernels that solve this issue without back porting.
The issue we were hitting was with LE Extended Advertising Reports. With BLE 5.0 beacons transmitting extended advertising, the older 4.19 Bluetooth path could mis-handle extended advertising report parsing / event-type bits, leading to bad report handling and, in our case, Bluetooth instability / crashes during scanning.
The relevant upstream Linux changes I used as reference include:
b48b833f9e8a - Bluetooth: HCI: Use skb_pull_data to parse LE Ext Advertising Report event
ad38e55e1c89 - Bluetooth: hci_event: Ignore reserved bits in LE Extended Adv Report
0cadf8534f2a - Bluetooth: hci_event: Mask data status from LE ext adv reports
There are also related Realtek / extended-scan quirk changes upstream, but for our immediate case the stronger LE extended advertising parser backport was enough to stop the crash path and allow scanning.
Validated result:
VOXL2 / Starling 2
QRB5165 4.19 kernel
ASUS BT500 / RTL8761B USB BLE adapter
BLE 5.0 beacons using extended advertising
btmgmt --index 0 find -l successfully reports devices and RSSI
btmon captures LE Extended Advertising Report events
no more Bluetooth NULL pointer dereference / hci_le_ext_adv_report_evt crash during the test
observed all 16 expected beacons and repeated RSSI samples
I’m not proposing this as a merge-ready ModalAI patch, but I put the build changes and notes here in case anyone else needs BLE 5.0 extended advertising / RSSI collection on VOXL2:
https://gitlab.com/steven323/qrb5165-kernel-build-docker
Relevant upstream commit links:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=b48b833f9e8a
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ad38e55e1c89
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0cadf8534f2a