This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2640: simple_peripheral_oad_onchip

Part Number: CC2640

Hi. How to add GAPRole_StartDiscovery(DEFAULT_DISCOVERY_MODE, DEFAULT_DISCOVERY_ACTIVE_SCAN, DEFAULT_DISCOVERY_WHITE_LIST) to simple_peripheral_oad_onchip.c?

In simple_peripheral_oad_onchip.c we added:
GAP_SetParamValue(TGAP_GEN_DISC_SCAN, DEFAULT_SCAN_DURATION);
GAP_SetParamValue(TGAP_LIM_DISC_SCAN, DEFAULT_SCAN_DURATION);
GAP_SetParamValue(TGAP_FILTER_ADV_REPORTS, FALSE);
GAPRole_SetParameter(GAPROLE_MAX_SCAN_RES, sizeof(uint8_t), &scanRes);
GAPRole_StartDiscovery(DEFAULT_DISCOVERY_MODE, DEFAULT_DISCOVERY_ACTIVE_SCAN, DEFAULT_DISCOVERY_WHITE_LIST);

In static uint8_t SimplePeripheral_processStackMsg(ICall_Hdr *pMsg)
{
...
case GAP_MSG_EVENT:
role_processRoleEvent((gapMultiRoleEvent_t *)pMsg); //role event processing function
break;
...

In peripheral.c we added:
bStatus_t GAPRole_StartDiscovery(uint8_t mode, uint8_t activeScan, uint8_t whiteList)
{
gapDevDiscReq_t params;
params.taskID = ICall_getLocalMsgEntityId(ICALL_SERVICE_CLASS_BLE_MSG, selfEntity);
params.mode = mode;
params.activeScan = activeScan;
params.whiteList = whiteList;

return GAP_DeviceDiscoveryRequest(&params);
}

static void gapRole_processStackMsg(ICall_Hdr *pMsg)
{
switch (pMsg->event)
{
case GAP_MSG_EVENT:
gapRole_processGAPMsg((gapEventHdr_t *)pMsg);//don't get here when scanning advert packages
break;
...