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

Why isn't the app location blank?

Hi:

I just got an nRF52832 development board, I have ran the tutorials using Eclipse and I was able to run the blinky example.

I am now trying to get a BLE application to run. I am using SDK12.2, is this the latest one recommended for development on the nRF52832 with Eclipse by the way?

I flashed a soft device and application as follows:

>nrfjprog --family nRF52 --eraseall
Erasing code and UICR flash areas.
Applying system reset.

>nrfjprog --family nRF52 --program s132_nrf52_3.0.0_softdevice.hex
Parsing hex file.
Reading flash area to program to guarantee it is erased.
Checking that the area to write is not protected.
Programing device.

>nrfjprog --family nRF52 --program ble_app_hids_mouse_pca10040_s132.hex
Parsing hex file.
Reading flash area to program to guarantee it is erased.
ERROR: The area to write is not erased.

I don't understand how the flash location is not erased, unless the softdevice and the application overlap. It is my understanding that the application runs in the user space which is separate from the softdevice.

Further to this: I tried using nRF studio to program the softdevice and the app. Programming the soft device went ok, similar to the command line tool. I got the following error while tying to program the aplication: image description

So this made me think that the application was actually bundled with a softdevice.

When I tried to program the application as if it was a softdevice I got this: image description

So what is it? I assume the hex files provided with the SDK are correct.

Regards, JS

Parents
  • Hi,

    If you are testing with the pre-compiled hex, you shouldn't flash the softdevice prior to that. The reason is the pre-compiled hex (in the "hex" folder) already include a softdevice.

    You can try to compile the application code your self and you can find the hex file generated in _build folder, it usually named "nrf52832_xxaa.hex"

  • Ok I got this sorted out. Once compiled the hex in the example folder can actually run on top of the s132 softdevice. It requires a reset of the board once it is programmed. I had provided a link to the tutorial I was following in the documentation, though it doesn't look like it actually points to the example I was referring to. Somehow the tutorial is not directly linkable.

    Regardless, I got it to work, thanks for your help.

Reply
  • Ok I got this sorted out. Once compiled the hex in the example folder can actually run on top of the s132 softdevice. It requires a reset of the board once it is programmed. I had provided a link to the tutorial I was following in the documentation, though it doesn't look like it actually points to the example I was referring to. Somehow the tutorial is not directly linkable.

    Regardless, I got it to work, thanks for your help.

Children
No Data
Related