This application note explains how to install the Zephyr images to the Emcraft SOM-NRF9151 hardware platform (refer to https://voxelbotics.atlassian.net/wiki/spaces/SOMnRF9151/pages/709328900/Setting+Up+Emcraft+SOM-NRF9151+Hardware+Platform?atlOrigin=eyJpIjoiYTUyNTFhYTBlMjcwNGIwODlmMTkwZTI3YmE2NTI4YmQiLCJwIjoiYyJ9 for a description of the hardware platform).
The Zephyr images to be installed onto the SOM-NRF9151 platform can be obtained using one of the two approaches, as follows:
Use latest release images provided in recent Release Notes.
Build the images from the sources, as documented in Building SOM-NRF9151 Software .
The nRF91x1 Modem Firmware images to be installed onto the SOM-NRF9151 platform can be obtained from the Nordic website.
nRF91x1 Modem Firmware update is required to make the modem compatible with the newer versions of nRF Connect SDK. Currently, there are two versions available for download:
|
Download and install the SEGGER J-Link Software from https://www.segger.com/downloads/jlink/:
sudo dpkg -i JLink_Linux_V794e_x86_64.deb |
Install the libusb-1.0
package:
sudo apt install libusb-1.0-0 |
Download and install the nrf-udev
package from https://github.com/NordicSemiconductor/nrf-udev/releases:
sudo dpkg -i nrf-udev_1.0.1-all.deb |
Download the latest nrfutil
executable from https://www.nordicsemi.com/Products/Development-tools/nRF-Util, give it the execute permission, and move it to a folder that is in the system's PATH
:
chmod +x nrfutil sudo mv nrfutil /usr/local/bin |
Install the nrfutill device
command:
nrfutil install device |
Use nrfutil
to list all connected SOM-NRF9151 boards, their serial numbers and associated serial ports:
$ nrfutil device list 801057368 product J-Link traits jlink, seggerUsb, usb ... |
Use nrfutil
to identify the specific devices:
$ nrfutil device device-info --serial-number 801057368 serial_number: 000801057368 boardVersion: null deviceFamily: NRF91_FAMILY deviceVersion: NRF9151_xxAA_REV3 jlinkObFirmwareVersion: J-Link EDU Mini V1 compiled Oct 9 2024 10:54:30 protectionStatus: NRFDL_PROTECTION_STATUS_NONE |
In this example, the nRF9151 serial number is 000801057368
, which should be used to program the corresponding device.
If needed, disable access protection on nRF9151:
nrfutil device recover --serial-number <serial number> |
Program the modem firmware image to nRF9151:
nrfutil device program --serial-number <serial number> --firmware mfw_nrf91x1_<fw version>.zip |
Reset the board:
nrfutil device reset --serial-number <serial number> |
If needed, disable access protection on nRF9151:
nrfutil device recover --serial-number <serial number> |
Program the release image to nRF9151:
nrfutil device program --serial-number <serial number> --firmware asset_tracker_v2_on_nrf9151som_*_release.hex |
Alternatively, program the application image from the build tree:
nrfutil device program --serial-number <serial number> --firmware som-nrf9151-app/asset_tracker_v2/build/zephyr/merged.hex |
Reset the board:
nrfutil device reset --serial-number <serial number> |