Keil flash requires BOOT/RESET on nRF51 DK in one case but not in another

I have two versions of generic health devices. One uses GATT just as a tunnel, so the BLE part is quite simple (one service, two characteristics). The second is the up and coming BT SIG Generic Health Sensor (GHS) profile which requires multiple services each having numerous characteristics. However, the core operation of transferring measurements involves sending fragmented packets over a single characteristic. The measurement characteristics are almost identical.

So if I set an option to create a blood pressure cuff in each model, when I build and flash the tunnel model onto the nRF51 DK, the program starts. If I press a button to start advertising, the client sees it, it connects, pairs, and transfers data.

However, when I build and flash the GHS model, I have to press the BOOT/RESET button for the program to start. From then on, it works fine, just like the tunnel model. A power cycle also requires no RESET. Just post-flash.

In debug mode, there is no need to press the BOOT/RESET button.

Any idea what I might be doing wrong in the GHS model? What would cause the flash not to start such that a RESET would solve all the problems.

Parents Reply Children
Related