This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

S130 V0.9 advertises with significant interrupts

We are developing an application based on S130 V0.9 (orignially S130 V0.5 was used) SoftDevice using development boards PCA10001/PCA10000/Beacon. Main activities of the application are:

a) periodically (this is triggered by commands received from the host which periodically establishes a connection with the device to write configuration data) update Advertisement Data

b) Scan for Advertisement Packets from identical devices

c) If the device receives certain advertisement packet from another device - it will trigger certain actions by using connected LEDs.

This setup more or less (there were some issues in 0.5 I reported earlier and they seem to be fixed in 0.9) worked with S130 v0.5 but once we migrated to S130 v0.9 we are seeing that devices some times unexpectedly stop advertising and after some time ( it can be few minutes ) the advertisement is resumed. I can also see that (the fact that the device stops advertising) by using USB-Dongle and Master Control Panel. Sometimes advertising is not even resumed at all (and I have to reset my device) or I have to wait really long period of time.

Is this known issue? I want to re-iterate - we didn't experience this issue in S130 v0.5 at all but it is very consistent in S130 v0.9. Do you have any hints to solve/workaround it? Our design is pretty much depends on S130 (because we need to simultaneously scan, advertise and be able to be in a connection for very short period of time) so I would appreciate if someone could respond.

Scan parameters:

	scan_param.active		= 0;
	scan_param.selective	= 0;
	scan_param.p_whitelist	= NULL;
	scan_param.timeout		= 0;
	scan_param.interval		= 0x00A0;	// 100 ms
	scan_param.window		= 0x009C;	// <100 ms

Advertising, Connectable:

	adv_params.type        = BLE_GAP_ADV_TYPE_ADV_IND;
	adv_params.p_peer_addr = NULL;
	adv_params.fp          = BLE_GAP_ADV_FP_ANY;
	adv_params.interval    = BLE_GAP_ADV_INTERVAL_MIN * 2;
	adv_params.timeout     = BLE_GAP_ADV_TIMEOUT_GENERAL_UNLIMITED

Advertising, Non-Connectable:

	adv_params.type			= BLE_GAP_ADV_TYPE_ADV_NONCONN_IND;
	adv_params.p_peer_addr	= NULL;
	adv_params.fp			= BLE_GAP_ADV_FP_ANY;
	adv_params.interval		= BLE_GAP_ADV_NONCON_INTERVAL_MIN;
	adv_params.timeout		= BLE_GAP_ADV_TIMEOUT_GENERAL_UNLIMITED
Related