Nordic Semi nRF5340 DK

The Nordic Semiconductor nRF5340 DK is a development board with dual Cortex-M33 microcontrollers, QSPI flash, and an integrated BLE radio - and it's fully supported by Edge Impulse. You'll be able to sample raw data, build models, and deploy trained machine learning models directly from the studio. As the nRF5340 DK does not have any built-in sensors we recommend you to pair this development board with the X-NUCLEO-IKS02A1 shield (with a MEMS accelerometer and a MEMS microphone).

If you don't have the X-NUCLEO-IKS02A1 shield you can use the Data forwarder to capture data from any other sensor, and then follow the Running your impulse locally: On your Zephyr-based Nordic Semiconductor development board tutorial to run your impulse. Or, you can modify the example firmware (based on nRF Connect) to interact with other accelerometers or PDM microphones that are supported by Zephyr.

The Edge Impulse firmware for this development board is open source and hosted on GitHub: edgeimpulse/firmware-nrf52840-5340.

Nordic Semiconductors nRF5340 DK development board

Installing dependencies

To set this device up in Edge Impulse, you will need to install the following software:

  1. On Linux:

    • GNU Screen: install for example via sudo apt install screen.

Problems installing the CLI?

See the Installation and troubleshooting guide.

Connecting to Edge Impulse

With all the software in place it's time to connect the development board to Edge Impulse.

1. Plugging in the X-NUCLEO-IKS02A1 MEMS expansion shield

Remove the pin header protectors on the nRF5340 DK and plug the X-NUCLEO-IKS02A1 shield into the development board.

X-NUCLEO-IKS02A1 shield plugged in to the nRF5340 DK

Note: Make sure that the shield does not touch any of the pins in the middle of the development board. This might cause issues when flashing the board or running applications.

Make sure the shield does not touch any of the pins in the middle of the development board.

2. Connect the development board to your computer

Use a micro-USB cable to connect the development board to your computer. There are two USB ports on the development board, use the one on the short side of the board. Then, set the power switch to 'on'.

Connect a micro USB cable to the short USB port on the short side of the board (red). Make sure the power switch is toggled on.

3. Update the firmware

The development board does not come with the right firmware yet. To update the Firmware + Networking Component:

Firmware + Networking Component This firmware contains both the application and the networking core firmware component.

  1. The development board is mounted as a USB mass-storage device (like a USB flash drive), with the name JLINK. Make sure you can see this drive.

  2. Install and open the nRF Connect for Desktop and go to the Programmer application

  3. Drag and drop the nrf5340-dk-full.hex firmware from the downloaded zip in this Programmer application (this firmware contains both application and networking core firmware).

  4. Click “Erase & Write” and wait for device to boot up.

4. Setting keys

From a command prompt or terminal, run:

edge-impulse-daemon

This starts a wizard which asks you to log in and choose an Edge Impulse project. If you want to switch projects run the command with --clean.

The nRF5340 DK exposes multiple UARTs. If prompted, choose the bottom one:

? Which device do you want to connect to? (Use arrow keys)
  /dev/tty.usbmodem0009601707953 (SEGGER)
  /dev/tty.usbmodem0009601707951 (SEGGER)
❯ /dev/tty.usbmodem0009601707955 (SEGGER)

Alternatively, recent versions of Google Chrome and Microsoft Edge can collect data directly from your development board, without the need for the Edge Impulse CLI. See this blog post for more information.

5. Verifying that the device is connected

That's all! Your device is now connected to Edge Impulse. To verify this, go to your Edge Impulse project, and click Devices. The device will be listed here.

Device connected to Edge Impulse.

Next steps: building a machine learning model

With everything set up you can now build your first machine learning model with these tutorials:

Looking to connect different sensors? The Data forwarder lets you easily send data from any sensor into Edge Impulse.

Troubleshooting

Failed to flash

If your board fails to flash new firmware (a FAIL.txt file might appear on the JLINK drive) you can also flash using nrfjprog.

  1. Flash new firmware via:

nrfjprog --program path-to-your.bin -f NRF53 --sectoranduicrerase

Last updated

Revision created

fix