Quill nRF52840 Mesh

Overview

The FoBE Quill nRF52840 Mesh is a development kit featuring the nRF52840 SoC and an integrated SX1262 LoRa® transceiver.

For more details see the FoBE Quill nRF52840 Mesh [1] documentation page.

Hardware

The FoBE Quill nRF52840 Mesh is a compact and versatile development platform for IoT solutions. It combines Nordic’s high-end multiprotocol SoC, the nRF52840, with Semtech’s ultra-low-power sub-GHz radio transceiver, the SX1262 (packaged using SiP technology). Designed for IoT applications, it offers a comprehensive wireless connectivity solution, supporting protocols such as Bluetooth 5, Thread, Zigbee, IEEE 802.15.4, and LoRa®.

This development board is feature-rich, including a battery charger, dedicated power path management, an ultra-low quiescent current DC-DC converter, a 1.14-inch color IPS display, user-programmable LEDs and buttons, an MFP expansion connector, a reversible USB-C connector, and header sockets for easy expansion.

Supported Features

The quill_nrf52840_mesh board supports the hardware features listed below.

on-chip / on-board
Feature integrated in the SoC / present on the board.
2 / 2
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files.
vnd,foo
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.

Connections and IOs

The FoBE Quill nRF52840 Mesh [1] Documentation has detailed information about board connections.

Programming and Debugging

The quill_nrf52840_mesh board supports the runners and associated west commands listed below.

flash debug

The Quill nRF52840 Mesh ships with the FoBE nRF52 Bootloader [2] which supports flashing using UF2 [3]. Doing so allows easy flashing of new images, but does not support debugging the device. For debugging please use External Debugger.

UF2 Flashing

To enter the bootloader, connect the USB port of the Quill nRF52840 Mesh to your host, and double tap the reset button. A mass storage device named FOBEBOOT should appear on the host. Using the command line, or your file manager copy the zephyr/zephyr.uf2 file from your build to the base of the FOBEBOOT mass storage device. The board will automatically reset and launch the newly flashed application.

External Debugger

In order to support debugging the device, instead of using the bootloader, you can use an External Debug Probe. To flash and debug Zephyr applications you need to connect an SWD debugger to the SWD pins on the board.

For Segger J-Link debug probes, follow the instructions in the J-Link External Debug Probe page to install and configure all the necessary software.

Building & Flashing

Simple build and flash

Build and flash applications as usual (see Building an Application and Run an Application for more details).

# From the root of the zephyr repository
west build -b quill_nrf52840_mesh samples/hello_world

The usual flash target will work with the quill_nrf52840_mesh board configuration. Here is an example for the Hello World application.

# From the root of the zephyr repository
west build -b quill_nrf52840_mesh samples/hello_world
west flash

Flashing with External Debugger

Setup and connect a supported debug probe (JLink, instructions at J-Link External Debug Probe or BlackMagic Probe). Then build and flash applications as usual.

Here is an example for the Hello World application.

First, run your favorite terminal program to listen for output.

$ minicom -D <tty_device> -b 115200

Replace <tty_device> with the port where the board can be found. For example, under Linux, /dev/ttyACM0.

Then build and flash the application. Just add CONFIG_BOOT_DELAY=5000 to the configuration, so that USB CDC ACM is initialized before any text is printed:

# From the root of the zephyr repository
west build -b quill_nrf52840_mesh samples/hello_world -- -DCONFIG_BOOT_DELAY=5000
west flash

Debugging

Refer to the J-Link External Debug Probe page to learn about debugging boards with a Segger IC.

Debugging using a BlackMagic Probe is also supported.

Here is an example for building and debugging the Hello World application.

# From the root of the zephyr repository
west build -b quill_nrf52840_mesh samples/hello_world
west debug

Testing the LEDs

There is a sample that allows to test that LEDs on the board are working properly with Zephyr:

# From the root of the zephyr repository
west build -b quill_nrf52840_mesh samples/basic/blinky
west flash

You can build and flash the examples to make sure Zephyr is running correctly on your board.

Testing shell over USB

There is a sample that allows to test shell interface over USB CDC ACM interface with Zephyr:

# From the root of the zephyr repository
west build -b quill_nrf52840_mesh samples/subsys/shell/shell_module
west flash

References