My current setup is this:
I have a nRF51822 beacon (tiny coin cell beacon) advertising with its default settings. I have another board, a nRF51822 Development Kit, that is scanning for nearby BLE devices. The development board then sends the MAC addresses to a web server.
I have two problems:
1.) The beacon's advertisement is seemingly not picked up at all by the development board, but it is being picked up by my nRF Connect application on my phone. Is it even possible for the development board to read beacon advertisement packets?
2.) I also want to filter these devices by UUID, and only send certain matching devices' information to the web server. I have explored is_uuid_present through the Central examples in SDK 12.3.0, but I cannot seem to get this to work. The 12th and 13th bytes of the beacon's UUID is BCCD, so the parameters for is_uuid_present are BCCD as the uuid along with BLE_UUID_TYPE_BLE as the type, correct?
1. Yes, it should be possible for DKs to read beacon advertisement packets.
2. Not sure what you mean by BCCD, I assume you mean the 16-bit UUID you put in the base UUID. The parameters for is_uuid_present is:
static bool is_uuid_present(const ble_uuid_t *p_target_uuid,
const ble_gap_evt_adv_report_t *p_adv_report)
In the first parameter, you should have your 16-bit UUID and UUID type(BLE_UUID_TYPE_VENDOR_BEGIN if it your custom UUID and BLE_UUID_TYPE_BLE if it is a UUID from Bluetooth SIG).