When I try to connect for the first time a Wiced device (custom board) with an own App on Android/iOS I can not read UUID values.
After the first connection I must shut down the device and restart the App to get data.
That's a work around, but it is not so nice to tell every user that the first ever connection would not function.
Here is the callback where the issue started:
// Connection up callback function is called on every connection establishment
mydevice_connection_handle = (UINT16)emconinfo_getConnHandle();
UINT8 *bda = (UINT8 *)emconninfo_getPeerPubAddr();
// Save address of the connected device and print it out.
memcpy(mydevice_remote_addr, bda, sizeof(mydevice_remote_addr));
// Stop advertising
// as we require security for every connection, we will not send any notificationss until encryption is done.
if (bleprofile_p_cfg->encr_required != 0)
ble_trace0("device not bonded");
I activated the encryption because I integrated the Secure OTA functionality, but the data for my device is not sensitive.
So my question: Can I ignore in some way the security request or is there another solution to get instantly data without restart my device ?????
Encryption is recommended but not required for Secure OTA implementation. You can disable security if you choose.