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

How do I configure s110, bootloader, app launching?

So, how do I control where my app is going when gdb pushes it to the device?

I'm using s110 6.0.0, no boot loader. How do I make sure my app is going to where the SD will launch it?

If/when I add a boot loader, how do I make sure the boot loader goes there, and gdb will put my app where the boot loader wants it to be?

I don't see where the controls are for this right now. With no soft device, gdb is able to push my non-sd app down and run it. With a soft device, I am able (I think) to push the soft device down, but when I try to debug my app it's not clear its even getting launched.

It occurs to me that I don't know where in my environment I would tell gdb to put the app in the right place. Is it implicit in the linker output? If so, how does the SD know my app is there?

I need to know where these things get (or should get) configured.

  • gdb will load the app based on where the linker script puts the different sections. The default linker scripts will place the application based on the existence and value of the USE_SOFTDEVICE Makefile define.

    There are currently no linker scripts or Makefiles for the bootloader in the SDK, but it should be fairly easy to modify the existing ones to put the bootloader at the correct address.

    Be aware that flashing the softdevice is a separate step from compiling and downloading the application. After having flashed a softdevice, you can download and erase an application as many times you want, without erasing or flashing the softdevice again.

    Have you seen nAN-29? That explains how to set up Eclipse to work with a softdevice project. Also, you may have use in taking a look at this repository, especially if you're on Linux or OS X.

  • Thanks, this helps. I was running into the problem where I needed a mon sleep 1000 after the mon reset 0.

    An update to nan-29 would be helpful, especially if you go through the process using eclipse on the mac.

Related