I have modified the ble_app_hrs_c_s130_pca10031 example to run without external RTC and collect only battery status data from BLE peripherals that have a service with UUID 0xFF00 rather than 0x180D.
- IDE: IAR ARM 7.2
- Softdevice: s130_nrf51_1.0.0_softdevice.hex
- SDK : nRF51_SDK_10.0.0_dc26b5e
- No external RTC clock
- nrf51822-QFAA-R7
- No uart interface
- Modifications to the original ble_app_hrs_c_s130_pca10031 code
- General Options -> Device: NordicSemi nRF51822-QFAA
- Symbols defined:
- NRF_LOG_USES_RTT
- General Options -> Semihosted: Enabled
- Commented following line:
//buttons_leds_init(&erase_bonds);
//uart_init();
//hrs_c_init();
- Changed the following defines:
#define TARGET_UUID 0xFF00
- Changed the following lines:
SOFTDEVICE_HANDLER_INIT(NRF_CLOCK_LFCLKSRC_SYNTH_250_PPM, NULL);
When the application is downloaded, it prints the following output to the terminal windows:
Heart rate collector example
Battery = 62 %
and then a softdevice assertion is raised with the following parameters
- file: rem.c
- line: 1376
- pc: 0x0000D82A
This behaviour is consistently repeated every time that the application is execute.
The same happens if Softdevice S120 is used, but the assert is raised with the following parameters:
- file: rem.c
- line: 1375
- pc: 0x0000D852
Do you have any insight on the nature of the problem?