Building & Programming

Building

In VSCode you can build a project with the

Zephyr Tools: Build

or

Zephyr Tools: Build Pristine

commands.

You can also build manually by running this in your application root:

west build -b circuitdojo_feather_nrf9161/nrf9161/ns -p -d build/circuitdojo_feather_nrf9161 --sysbuild

Note: the board target name has changed in NCS 2.7 for usage with west it's now: circuitdojo_feather_nrf9161/nrf9161/ns

Programming

You can easily program the nRF9161 Feather with the onboard CMSIS-DAP using:

  • pyocd
  • probe-rs

You can select a runner using

Zephyr Tools: Change Runner

or use the default (pyocd) to flash

Zephyr Tools: Flash

Make sure that pyocd is installed first. See how to install in the next section.

pyocd

pyocd is recommended as it's well tested with the nRF9161 Feather. To install run:

python3 -m pip install -U pyocd
pyocd pack install nRF9160_xxAA

You may need to add the binaries to your path. For instance, if you're using the Zephyr Tools venv, binaries live in:

/home/jaredwolff/.zephyrtools/env/bin/pyocd

More information on installing pyocd can be found on their website.

Usage examples:

The easiest way to use it is by using the --runner flag with west

west flash --runner pyocd

You can run it manually as well:

pyocd reset --target nrf9160_xxaa
pyocd load --target nRF9160_xxAA --format hex /home/jaredwolff/Git/blucloud/app/build/zephyr/merged.hex
pyocd erase --target nrf9160_xxaa --chip

You can also change/upgrade the modem firmware if you need to:

python3 nfed/scripts/modem_firmware_update.py scripts/mfw_nrf91x1_2.0.1.zip

Script is here.

probe-rs

To install use:

cargo install probe-rs-tools --git https://github.com/probe-rs/probe-rs --rev g21a3d98d

Note: Make sure you use the revision indicateda above. There are multiple improvements which makes programming several seconds speedier than pyocd

Then you can program using:

probe-rs download --chip nRF9160_xxAA --binary-format hex path/to/merged.hex --allow-erase-all

And once the probe-rs runner has made its way to NCS:

west flash --runner probe-rs

More info on probe-rs can be found on their website.