Hi all,
I’m working on an nRF5340 project where the network core runs a hci_ipc firmware to forward HCI RAW packets to the application core, which then parses vendor-specific information from Bluetooth advertising data. Legacy advertising works fine, and I receive and process those packets as expected. However, I have run into some snags attempting to sniff Bluetooth 5 extended advertising packets.
My application core already calls bt_le_scan_start() with passive scanning and registers a bt_le_scan_cb callback to capture all advertising data. My netcore prj.conf for hci_ipc currently contains:
CONFIG_IPC_SERVICE=y CONFIG_MBOX=y CONFIG_HEAP_MEM_POOL_SIZE=4096 CONFIG_MAIN_STACK_SIZE=512 CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=512 CONFIG_BT=y CONFIG_BT_HCI_RAW=y CONFIG_BT_MAX_CONN=16 CONFIG_BT_EXT_ADV=y
However, I noticed that in the build logs:
“CONFIG_BT_EXT_ADV was assigned the value y, but got the value n. Missing dependencies:
((!HAS_BT_CTLR || BT_CTLR_ADV_EXT_SUPPORT) && BT_RPC_STACK) || ((!HAS_BT_CTLR || BT_CTLR_ADV_EXT_SUPPORT) && BT_HCI && BT)”
I imagine what I’m trying to do is possible and I’m just not configuring properly. I’ve done some searching for examples but haven’t come across any that are a direct match for this use case. What should I be looking at in order to successfully capture BT5 extended advertising packets?
Thanks in advance!