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

New Tools for OSX

I just posted a package of simple tools I wrote for OSX over on Sourceforge. The main app is a Cocoa app which lets you choose code, softdevice and bootloader (last two optional) as HEX files and uploads them to a connected device. It does some very minimal error checking that the code starts in the correct place etc. I've been using it for a few weeks and find it quite useful.

There are also two optional command line installs, a command line programmer which does the same thing the GUI does and a utility to enable and disable the CDC USB drivers which interfere with JLink. The GUI version also detects when the CDC drivers are loaded and warns you JLinkExe won't work until they are disabled.

Under the hood these all use JLinkExe (J-Link Commander) to do the work, so that still needs to be installed on the system.

Comments and questions on SourceForge please, don't want to clutter up the Nordic boards with it. It works fine for the three different development boards I have (NRF51, PCA10000 and PCA100001) but I can't say it's had a huge amount of testing.

Still to come, an Eclipse plug-in which sets up a minimal native Eclipse C-project to develop for the nrf51822 with all the settings correct etc.

---- UPDATE 4 August 2014 ----

RKNRFGO has now been updated to support S110 v7. If the image no-longer has a UICR region it tries to guess what version of the softdevice you have and also displays a dropdown box for you to select it if it's incorrect. It now checks code position vs an internal table instead of reading from the softdevice which no-longer contains this information.

Other additions. You can now just upload a softdevice or just upload code instead of doing both, for faster setups. If you are only uploading code and the code is not at 0x00000000 you have the option of an upload without erasing the chip first, this is intended for quick testing of new code without having to write the softdevice every time. If you upload a softdevice, or upload code at 0x0000000, the only option is for a full chip erase first, mostly because that's the safest option and not doing it often fails.

You can elect to protect the softdevice even if it doesn't have the UICR section. This writes into the UICR to prevent code in region 1 from accessing code in region 0. Useful for development.

nrfjprog, the command line version, has been updated so you can specify the softdevice version you are uploading (nrfjprog -V shows all the softdevices it knows about) and a --protect flag.

Not the best-tested release, bug reports on Sourceforge please.

---- Update 20th Jan 2015 ----

I put version 1.0.7 up today. That has support for the Nordic nrf51-DK and nrf51-dongle, they use a different version of Jlink, JLink OB, and the USB code wasn't detecting them, it does now.

I fixed a couple of bugs which made JLinkExe fail occasionally, especially when the app was started with a dev board already plugged in.

The old code which checked whether the CDC drivers are active only runs if the version of JLink is less than 4.88, which is the revision Segger fixed that bug. If you are on anything that old, you probably should upgrade anyway.

Finally the GUI version monitors the code file path for changes to the binary and lets you reload it, or reloads it automatically for you. This should make for a faster change-build-upload cycle as you don't have to re-browse to the file every time to reload it which was annoying, you can either hit the reload button, or check auto-reload, and then press the program button to put the new code on the device.

Parents Reply Children
No Data
Related