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

nrf52840 Dongle - clarification on installing apps (v1.6.1 nrf Connect Toolchain & nrf Connect Programmer)

I have successfully installed the blinky example app on my new Nordic nrf 52840 Dongle - so that's good! :) 

However, some things are not clear to me - so I would like some clarification on things like installing "with & without Softdevice" & "Softdevice Version" (required by app).

I installed blinky example as follows:

1. "Build & Run" it using nrfConnect & ToolChain v1.6.1 --> Segger Studio (on latest version of MacOS)

2. Segger Studio then gave me the error "Cannot connect to J-Link.". So I then located the file "zephyr.hex" built by Segger Studio and dragged that file into the nrfConnect "Programmer" and clicked the "write" button. That all worked & blinky was correctly installed on the dongle (flashing green LED)!

So now that I have "mastered" the "process" for programming the Dongle, I have some questions:

A) I assume the above "procedure" is the correct/best way to program the Nordic nrf52840 Dongle? Please confirm.

B) I am confused whether or not the above procedure also installs (or updates) the BLE "SoftDevice" (which is in theory not required by Blinky example)? Please clarify this for me.

C) How do I determine whether or not a SoftDevice is installed on the Dongle? 

D) If a SoftDevice is installed on the Dongle, how do I determine which version of the Softdevice is installed on the Dongle?

E) In some of the examples/blinky tutorials it states that blinky can be installed with & without the SoftDevice. BUT the tutorialss are quite old and do not relate clearly to ToolChain v1.6.1. Can you explain how I need to configure blinky on Segger Studio (or Programmer!?) to install with & without the BLE Softdevice and where (& how) the Softdevice version is selected & configured?

F) Once a SoftDevice is installed on the Dongle and I want to build another example/app (or a custom app), can I use the BLE SoftDevice already installed on the dongle, or must the install of the new app ALWAYS be done with BOTH the new app & a new copy of the selected Softdevice? This is not clear to me, for example, how does one make sure the new app will work with the particular version of the SoftDevice already installed on the Dongle?   Please clarify.

G) If I need to install a new Softdevice version with a new custom app, will the Segger Studio automatically create a .hex file that contains BOTH the SoftDevice and the new application code? Or must one drag two different files into the nrf Programmer before writing/updating the Dongle flash.

Thanks!

Gerard

Parents
  • Hi Gerard, 

    I assume the above "procedure" is the correct/best way to program the Nordic nrf52840 Dongle? Please confirm.

    Yes, if you are able to program the dongle, then it is the correct method. Have a look at this blog post. It is a little outdated, but it's the same principals. The programming method is described in the board product page in the Zephyr repo.

    I am confused whether or not the above procedure also installs (or updates) the BLE "SoftDevice" (which is in theory not required by Blinky example)? Please clarify this for me.

    When working with the SoftDevice Controller I recommend looking at the official NCS Bluetooth samples found in nrf\samples\bluetooth\ and the nRF Desktop application. The Blinky sample is a simple LED blinking sample which does not require any Bluetooth stack, but it can be included. 

    I recommend reading the documentation on the SoftDevice Controller found here. The SDC is not the same as in the nRF5 SDK, as that was a full BLE stack, while SDC is just the controller part of Bluetooth software pack. Please see Working with nRF52 series in the NCS documentation, and the Bluetooth LE Controller user guide 

    Once a SoftDevice is installed on the Dongle and I want to build another example/app (or a custom app), can I use the BLE SoftDevice already installed on the dongle, or must the install of the new app ALWAYS be done with BOTH the new app & a new copy of the selected Softdevice? This is not clear to me, for example, how does one make sure the new app will work with the particular version of the SoftDevice already installed on the Dongle?   Please clarify.

     This does not work the same way in NCS as it did in nRF5 SDK. When compiling a project, everything will be combined into one binary installing everything in one go.

    If I need to install a new Softdevice version with a new custom app, will the Segger Studio automatically create a .hex file that contains BOTH the SoftDevice and the new application code? Or must one drag two different files into the nrf Programmer before writing/updating the Dongle flash.

     See answer above(s).

    Kind regards,
    Øyvind

Reply
  • Hi Gerard, 

    I assume the above "procedure" is the correct/best way to program the Nordic nrf52840 Dongle? Please confirm.

    Yes, if you are able to program the dongle, then it is the correct method. Have a look at this blog post. It is a little outdated, but it's the same principals. The programming method is described in the board product page in the Zephyr repo.

    I am confused whether or not the above procedure also installs (or updates) the BLE "SoftDevice" (which is in theory not required by Blinky example)? Please clarify this for me.

    When working with the SoftDevice Controller I recommend looking at the official NCS Bluetooth samples found in nrf\samples\bluetooth\ and the nRF Desktop application. The Blinky sample is a simple LED blinking sample which does not require any Bluetooth stack, but it can be included. 

    I recommend reading the documentation on the SoftDevice Controller found here. The SDC is not the same as in the nRF5 SDK, as that was a full BLE stack, while SDC is just the controller part of Bluetooth software pack. Please see Working with nRF52 series in the NCS documentation, and the Bluetooth LE Controller user guide 

    Once a SoftDevice is installed on the Dongle and I want to build another example/app (or a custom app), can I use the BLE SoftDevice already installed on the dongle, or must the install of the new app ALWAYS be done with BOTH the new app & a new copy of the selected Softdevice? This is not clear to me, for example, how does one make sure the new app will work with the particular version of the SoftDevice already installed on the Dongle?   Please clarify.

     This does not work the same way in NCS as it did in nRF5 SDK. When compiling a project, everything will be combined into one binary installing everything in one go.

    If I need to install a new Softdevice version with a new custom app, will the Segger Studio automatically create a .hex file that contains BOTH the SoftDevice and the new application code? Or must one drag two different files into the nrf Programmer before writing/updating the Dongle flash.

     See answer above(s).

    Kind regards,
    Øyvind

Children
No Data
Related