- Custom Board which has NordicSemi nRF51822-QFAA MCU,
The circuit follows the internal LDO setup.
(Ref. nRF51822_PS v3.1 Section 11.3.1)
-
Softdevice S110 7.1
-
IAR for ARM 7.1
-
SDK 7.2 using experimental_ble_app_multiactivity_beacon example (hrs_advertiser).
-
Testing with iPhone 5S, 6 and iPad air (iOS 8.1.3)
/ Nexus 5 and Galaxy Note 3 (Android 4.4.2).
- Using J-Link Debugger
/**********************************************/
I was trying hrs_advertiser example.
Using the sniffer, my custom board did advertised as a beacon.
However, the packet was weird when I looked through Wireshark.
After I connect the board to my Galaxy Note 3, I recieved heart rate data.
However, the beacon wasn't discovered using the nRF Beacon App.
I turned this App using my Nexus 5.
My custom board worked as a beacon when I tested the ble_app_beacon example.
One suspicious point is about the flag bits.
This is the packet when I test with the beacon example (ble_app_beacon).
Whereas this hrs_advertiser example, shows a bit different.
What could be the problem?
In the code of hrs_advertiser,
static void advertising_init(void)
{
uint32_t err_code;
ble_advdata_t advdata;
uint8_t flags = BLE_GAP_ADV_FLAGS_LE_ONLY_GENERAL_DISC_MODE;
//whereas BLE_GAP_ADV_FLAG_BR_EDR_NOT_SUPPORTED is set at the ble_app_beacon example
ble_uuid_t adv_uuids[] =
{
{BLE_UUID_HEART_RATE_SERVICE, BLE_UUID_TYPE_BLE},
{BLE_UUID_BATTERY_SERVICE, BLE_UUID_TYPE_BLE},
{BLE_UUID_DEVICE_INFORMATION_SERVICE, BLE_UUID_TYPE_BLE}
};
I think the flag causes this problem. Also the length of the packet is longer (1 byte more).
What changes might be needed to work properly?
Changing the flag did not resolved the problem.
I also tested with the PCA10001(V 2.0) board.
It didn't work either, unfortunately.
-Regards, Mango922