This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Device is not advertising stuck at SOFTDEVICE_HANDLER_INIT Macro

I have created a customized Services according to nAN36 Document.

  1. SDK using 8.0
  2. Stack S110 8.0
  3. DEV kit PCA10028 nRF51.
  4. J-LInk RTT DEbugger

When the function ble_stack_init(void) get called from main. It stuck somewhere with MACRO

SOFTDEVICE_HANDLER_INIT(NRF_CLOCK_LFCLKSRC_XTAL_20_PPM, NULL); 

This Macro is defined softdevice_handler.h file. Now how to Proceed further to check where I am lagging...

 ble_uuid_t adv_uuids[] =
    {				
				{SOS_BLE_BAS_SERVICE, BLE_UUID_TYPE_VENDOR_BEGIN},
				{SOS_UUID_SERVICE, BLE_UUID_TYPE_VENDOR_BEGIN},
				{FIND_ME_ALERT_SERVICE, BLE_UUID_TYPE_VENDOR_BEGIN}        
    };

This is service I passed for advertising. And these are defined as

/*-------------------------------------------------------------------------------------------------------*/
#define   SOS_UUID_BASE	{0xFA,0xFF,0xBE,0x11,0xA7,0x63,0x1C,0xBB,0x7F,0x48,0x27,0x66,0x00,0x00,0x8C,0xF0}

//-----------------------SERVICES UUID VENDOR
#define   SOS_UUID_SERVICE					0x1602
#define   FIND_ME_ALERT_SERVICE			0x1604
#define	SOS_BLE_BAS_SERVICE				0x1606

//-----------------------SERVICE CHARACTERISTIC UUID
#define	  SOS_UUID_EMR_MSG_CHAR			0x1608
#define 	ALERT_UUID_FIND_ME_CHAR		0x1610
#define		SOS_BLE_BAS_CHAR					0x1612 

______________________________________________________________

Some one if suggest me the step I follow next to know the problem. And please revert on same if any other part of code require here.

Parents
  • One of the default error handler functions does reset the chip, which is why I suggested putting a breakpoint in the function before it does anything to see what the error code is. Or write your own error handler function which loops and you can break into it.

    Usually the error handler is only defined to reset the chip in release code, but I don't know what flags you've built with so it's possible you have the 'reset the chip' error handler.

Reply
  • One of the default error handler functions does reset the chip, which is why I suggested putting a breakpoint in the function before it does anything to see what the error code is. Or write your own error handler function which loops and you can break into it.

    Usually the error handler is only defined to reset the chip in release code, but I don't know what flags you've built with so it's possible you have the 'reset the chip' error handler.

Children
No Data
Related