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

over the air versus Jlink programming

Hi

I have been reading for a few days now, through the nrf51 documentation, the forum, and getting a bit of a grip on the proposed concepts in the DK. However, what I do not really get yet is the following: is the over the air programming equivalent to programming using a Jlink? And how does the soft device fit into this? Should I see the soft device really as a separate program? Is it programmed to the flash separately?

As an example: If I want to put the blinky example project, on the beacon kit hardware, over the air, will that work? Will the boot loader then be removed, or is it also sitting there separately? Or can I only program the blinky example project to the beacon kit via a Jlink programmer? Does the blinky example use the actual soft device stack? Or is it just a basic single file 'hello world' type of controller project?

Or is it more like I am used to on simple controllers: the soft device is just a piece of flash which is merged into the main flash. But what about the wireless flashing then? Is that really a boot loader in a protected part of the flash? And how is a device put in 'boot loader mode'?

Maybe all obvious or silly questions, but I just did not find an answer. Maybe the confusion is caused partly because of the difference between the nrf51 DK on one hand, and the beacon kit on the other hand. The beacon kit does not give access to the SDK, while for the nrf51 DK, the SDK is the basis. Is the embedded software of the beacon kit example a sub set of the SDK?

Can anyone clarify?

Parents
  • Softdevice (s110, s120, s130) is the Bluetooth/Ants stack. A library or see it as pc bios services.
    There are 2 kind of blinky examples. one without ble which is plain hello world kind of stuff. It does not use softdevice, though require jlink to flash. The other which is BLE need softdevice loaded. The BLE dfu allows you to upload the blinky BLE over the air but not the hello world. You can also use link to flash the blinky ble as well.

    Blinky hello world is located at address 0,

    Blinky ble is located at 0x16000, bellow Softdevice as ~80K starting from address 0

  • Yes, you can use your DK with Jlink to develop and debug your firmware in Eclipse. Only thing you need with nRFgo is to Flash in the Softdevice and that need to be done once only. There are many pages on my Blog. One of which will guide you through setting up Eclipse Environment which include plugins for both JLink & OpenOCD. Since you have JlInk, OpenOCD is not needed. All the DK/EK have JLink builtin.

Reply Children
No Data
Related