Electronut Labs Papyr¶
Zephyr applications use the nrf52840_papyr board configuration to run on Electronut Labs Papyr hardware. It provides support for the Nordic Semiconductor nRF52840 ARM Cortex-M4F CPU and the following devices:
- RADIO (Bluetooth Low Energy and 802.15.4)
More information about the board is available at https://docs.electronut.in/papyr/.
Papyr has two external oscillators. The frequency of the slow clock is 32.768 kHz. The frequency of the main clock is 32 MHz.
The nrf52840_papyr board configuration supports the following hardware features currently:
Connections and IOs¶
- LED1 (green) = P0.13
- LED2 (blue) = P0.15
- LED3 (red) = P0.14
- TX = P0.8
- RX = P0.7
I2C pins connected to onboard sensors (I2C_0):
- SDA = P0.5
- SCL = P0.6
The e-paper display is connected to the chip via SPI on the following pins (SPI_1):
- SCK = P0.31
- MOSI = P0.29
- MISO = P1.1 (not used by the display)
NOTE: P1.1 is pin 33 in absolute enumeration.
Other pins used by the e-paper display are:
- E-ink enable = P0.11 (cuts off power to the display with MOSFET)
- CS = P0.30
- BUSY = P0.3
- D/C = P0.28
- RES = P0.2
Programming and Debugging¶
Applications for the
nrf52840_papyr board configuration can be
built and flashed in the usual way (see Build an Application
and Run an Application for more details); Black Magic
Probe debugger presents itself as two USB-serial ports. On Linux,
they may come up as
/dev/ttyACM1. The first
one of these (
/dev/ttyACM0 here) is the debugger port.
GDB can directly connect to this port without requiring a GDB server by specifying
target external /dev/ttyACM0. The second port acts as a
serial port, connected to the SoC.
By default, papyr is configured to be used with a blackmagicprobe compatible debugger (see _Bumpy).
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
<tty_device> with the serial port of Black Magic Probe.
For example, under Linux,
Then build and flash the application in the usual way.
# From the root of the zephyr repository west build -b nrf52840_papyr samples/hello_world west flash
Using CMake and ninja:
# From the root of the zephyr repository # Use cmake to configure a Ninja-based buildsystem: cmake -B build -GNinja -DBOARD=nrf52840_papyr samples/hello_world # Now run ninja on the generated build system: ninja -C build ninja -C build flash
Debug and attach configurations are available using Black Magic Probe, and
ninja debug, or
ninja attach (or with
make) are available.
NOTE: You may need to press the reset button once after using
to start executing the code. (not required with