.. _reel_board:

reel board
##########

Overview
********

`reel board`_ is a evaluation board based on the Nordic Semiconductor
nRF52840 SoC. The board was developed by PHYTEC Messtechnik GmbH in
cooperation with Zephyr Project for the Hackathon - "Get Connected".
The board has a built-in debug adapter based on the DAPLink interface
firmware and NXP MK20DX128VFM5 SoC.

It is equipped with the Electrophoretic (electronic ink) Display (EPD),
environmental (temperature, humidity, light, accelerometer) sensors, and
Bluetooth connectivity making it easy to experiment and evaluate the
Zephyr OS in these kinds of use cases:

* battery powered sensor node
* low-power, low-cost human-machine interface (HMI) for remote
  control and environmental sensor monitoring
* temperature and humidity monitor on your table
* product, name or price tag
* interactive badge for meetings and conferences

The board provides support for the Nordic Semiconductor nRF52840 ARM |reg|
Cortex |reg|-M4F SoC with an integrated 2.4 GHz transceiver supporting Bluetooth
|reg| Low Energy and IEEE |reg| 802.15.4.

The schematic can be found on the `reel board website`_.

Hardware
********

On the front of the board are RGB-LED, ADPS9960 and HDC1010 sensors,
and Electrophoretic Display.
The RGB-LED is controlled by the nRF52840 via GPIO pins.
Display is controlled by the nRF52840 via SPI and 3 GPIOs.

On the back side of the board are all other components such as nRF52840,
circuit for the Debug Adapter, On/Off and power source switch, battery holder,
buttons and MMA8652FC (accelerometer) sensor.

ADPS9960 is Digital Proximity, Ambient Light, RGB and Gesture sensor.
HDC1010 is a digital humidity and temperature sensor.
MMA8652FC is a 12-bit Digital Accelerometer.
All sensors are connected to the I2C bus and one GPIO pin each,
which can be used as an interrupt source.

.. figure:: img/reel_board.png
     :width: 442px
     :align: center
     :alt: reel board front

     reel board front (Credit: PHYTEC)

.. figure:: img/reel_board_descr_back.png
     :width: 442px
     :align: center
     :alt: reel board back

     reel board back (Credit: PHYTEC)

Power supply
============

The board is optimized for low power applications and supports two
power source configurations, battery and micro USB connector.

The On/Off switch can choose which power source is used.

reel board uses TPS610981 boost converter to generate supply voltage
for nRF52840 and peripherals (sensors and EPD).
The boost converter has two modes:

* Active mode - supply voltages for nRF52840 and peripherals are on
* Low Power mode - only supply voltage for nRF52840 is on

The mode is controlled by MODE pin (P1.00).

.. note::
   Actually there is no possibility to reduce energy consumption by the
   Low Power mode. Both voltages are always on, see:
   :zephyr_file:`boards/arm/reel_board/board.c`

Supported Features
==================

The reel_board board configuration supports the following
hardware features:

+-----------+------------+----------------------+
| Interface | Controller | Driver/Component     |
+===========+============+======================+
| NVIC      | on-chip    | nested vectored      |
|           |            | interrupt controller |
+-----------+------------+----------------------+
| RTC       | on-chip    | system clock         |
+-----------+------------+----------------------+
| UART      | on-chip    | serial port          |
+-----------+------------+----------------------+
| I2C       | on-chip    | i2c                  |
+-----------+------------+----------------------+
| SPI       | on-chip    | spi                  |
+-----------+------------+----------------------+
| GPIO      | on-chip    | gpio                 |
+-----------+------------+----------------------+
| FLASH     | on-chip    | flash                |
+-----------+------------+----------------------+
| RADIO     | on-chip    | Bluetooth            |
+-----------+------------+----------------------+
| SENSOR    | off-chip   | MMA8652FC polling:   |
|           |            | ADPS9960 polling:    |
|           |            | HDC1010 polling      |
+-----------+------------+----------------------+

Other hardware features are not supported by the Zephyr kernel.

Connections and IOs
===================

Port P0
-------

+-------+-----------------------+---------------------------+
| Name  | Function              | Usage                     |
+=======+=======================+===========================+
| P0.00 | XL1                   | 32.768 kHz oscillator     |
+-------+-----------------------+---------------------------+
| P0.01 | XL2                   | 32.768 kHz oscillator     |
+-------+-----------------------+---------------------------+
| P0.02 | edge connector pin 30 | None                      |
+-------+-----------------------+---------------------------+
| P0.03 | edge connector pin 31 | None                      |
+-------+-----------------------+---------------------------+
| P0.04 | edge connector pin 19 | None                      |
+-------+-----------------------+---------------------------+
| P0.05 | edge connector pin 11 | None                      |
+-------+-----------------------+---------------------------+
| P0.06 | UART0_TX              | UART Console over USB     |
+-------+-----------------------+---------------------------+
| P0.07 | Button                | user button (S5)          |
+-------+-----------------------+---------------------------+
| P0.08 | UART0_RX              | UART Console over USB     |
+-------+-----------------------+---------------------------+
| P0.09 | edge connector pin 27 | None                      |
+-------+-----------------------+---------------------------+
| P0.10 | edge connector pin 29 | None                      |
+-------+-----------------------+---------------------------+
| P0.11 | RGB LED (red)         | GPIO                      |
+-------+-----------------------+---------------------------+
| P0.12 | RGB LED (green)       | GPIO                      |
+-------+-----------------------+---------------------------+
| P0.13 | LED1 (yellow)         | GPIO                      |
+-------+-----------------------+---------------------------+
| P0.14 | EPD Busy output       | GPIO                      |
+-------+-----------------------+---------------------------+
| P0.15 | EPD Reset input       | GPIO                      |
+-------+-----------------------+---------------------------+
| P0.16 | EPD DC input          | GPIO                      |
+-------+-----------------------+---------------------------+
| P0.17 | EPD SPI3_CS           | SPI                       |
+-------+-----------------------+---------------------------+
| P0.18 | CPU Reset             | Reset (S4)                |
+-------+-----------------------+---------------------------+
| P0.19 | EPD SPI3_CLK          | SPI                       |
+-------+-----------------------+---------------------------+
| P0.20 | EPD SPI3_MOSI         | SPI                       |
+-------+-----------------------+---------------------------+
| P0.21 | SPI3_MISO             | SPI (not connected)       |
+-------+-----------------------+---------------------------+
| P0.22 | HDC1010 DRDYn         | GPIO                      |
+-------+-----------------------+---------------------------+
| P0.23 | APDS9960 INT          | GPIO                      |
+-------+-----------------------+---------------------------+
| P0.24 | MMA8652FC INT1        | GPIO                      |
+-------+-----------------------+---------------------------+
| P0.25 | MMA8652FC INT2        | GPIO                      |
+-------+-----------------------+---------------------------+
| P0.26 | I2C_0                 | I2C                       |
+-------+-----------------------+---------------------------+
| P0.27 | I2C_0                 | I2C                       |
+-------+-----------------------+---------------------------+
| P0.28 | edge connector pin 3  | None                      |
+-------+-----------------------+---------------------------+
| P0.29 | edge connector pin 52 | None                      |
+-------+-----------------------+---------------------------+
| P0.30 | edge connector pin 1  | None                      |
+-------+-----------------------+---------------------------+
| P0.31 | edge connector pin 37 | None                      |
+-------+-----------------------+---------------------------+

Port P1
-------

+-------+-----------------------+---------------------------+
| Name  | Function              | Usage                     |
+=======+=======================+===========================+
| P1.00 | peripheral power on   | GPIO                      |
+-------+-----------------------+---------------------------+
| P1.01 | edge connector pin 32 | None                      |
+-------+-----------------------+---------------------------+
| P1.02 | edge connector pin 34 | None                      |
+-------+-----------------------+---------------------------+
| P1.03 | edge connector pin 17 | None                      |
+-------+-----------------------+---------------------------+
| P1.04 | edge connector pin 15 | None                      |
+-------+-----------------------+---------------------------+
| P1.05 | edge connector pin 13 | None                      |
+-------+-----------------------+---------------------------+
| P1.06 | edge connector pin 33 | None                      |
+-------+-----------------------+---------------------------+
| P1.07 | edge connector pin 35 | None                      |
+-------+-----------------------+---------------------------+
| P1.08 | edge connector pin 45 | None                      |
+-------+-----------------------+---------------------------+
| P1.09 | RGB LED (blue)        | GPIO                      |
+-------+-----------------------+---------------------------+
| P1.10 | edge connector pin 47 | None                      |
+-------+-----------------------+---------------------------+
| P1.11 | edge connector pin 49 | None                      |
+-------+-----------------------+---------------------------+
| P1.12 | edge connector pin 51 | None                      |
+-------+-----------------------+---------------------------+
| P1.13 | edge connector pin 36 | None                      |
+-------+-----------------------+---------------------------+
| P1.14 | edge connector pin 48 | None                      |
+-------+-----------------------+---------------------------+
| P1.15 | edge connector pin 50 | None                      |
+-------+-----------------------+---------------------------+

Edge Connector
--------------

.. figure:: img/reel_board_excon.png
     :width: 442px
     :align: center
     :alt: reel board edge connector

     reel board edge connector (Credit: PHYTEC)

Solder Jumper and Testpoints
============================

There are several labeled solder jumpers on the board.
These can be used to connect a logic analyzer to check the behavior of a
driver or to measure the voltage of a signal.

.. figure:: img/reel_board_tp.png
     :width: 442px
     :align: center
     :alt: reel board Jumper and Testpoints

     reel board testpoints (Credit: PHYTEC)

I2C bus and sensors testpoints
------------------------------

+-------+-----------------------+---------------------------+
| Name  | Type                  | Usage                     |
+=======+=======================+===========================+
| J19   | closed solder jumper  | testpoint I2C SDA         |
+-------+-----------------------+---------------------------+
| J20   | closed solder jumper  | testpoint I2C SCL         |
+-------+-----------------------+---------------------------+
| J7    | closed solder jumper  | testpoint INT1 MMA8652FC  |
+-------+-----------------------+---------------------------+
| J24   | closed solder jumper  | testpoint INT2 MMA8652FC  |
+-------+-----------------------+---------------------------+
| J11   | closed solder jumper  | testpoint INT APDS9960    |
+-------+-----------------------+---------------------------+
| J12   | closed solder jumper  | testpoint DRDYn HDC1010   |
+-------+-----------------------+---------------------------+

EPD testpoints
--------------

+-------+-----------------------+---------------------------+
| Name  | Type                  | Usage                     |
+=======+=======================+===========================+
| J13   | closed solder jumper  | testpoint EPD Busy        |
+-------+-----------------------+---------------------------+
| J14   | closed solder jumper  | testpoint EPD Reset       |
+-------+-----------------------+---------------------------+
| J15   | closed solder jumper  | testpoint EPD DC          |
+-------+-----------------------+---------------------------+
| J16   | closed solder jumper  | testpoint EPD SPI_CS      |
+-------+-----------------------+---------------------------+
| J17   | closed solder jumper  | testpoint EPD SPI_CLK     |
+-------+-----------------------+---------------------------+
| J18   | closed solder jumper  | testpoint EPD SPI_MOSI    |
+-------+-----------------------+---------------------------+

Power supply testpoint
----------------------

+-------+-----------------------+-------------------------------------------+
| Name  | Type                  | Usage                                     |
+=======+=======================+===========================================+
| J21   | closed solder jumper  | testpoint peripheral voltage on/off       |
+-------+-----------------------+-------------------------------------------+
| TP11  | testpoint             | testpoint peripheral voltage              |
+-------+-----------------------+-------------------------------------------+
| TP12  | testpoint             | testpoint nRF52840 supply voltage VDD_nRF |
+-------+-----------------------+-------------------------------------------+
| TP13  | testpoint             | testpoint boost converter input voltage   |
+-------+-----------------------+-------------------------------------------+

Build-in Debug Adapter
======================

Debug Adapter is based on the DAPLink interface firmware and
NXP MK20DX128VFM5 SoC. The adapter is powered via micro USB connector and
is always on when the board is connected to the USB host.
reel board can be flashed and debugged, powered either from battery or USB.
If the Adapter is powered via USB, the Adapter circuit heats the board
slightly and the temperature sensor can output values up to 1.5 degrees higher.

.. figure:: img/reel_board_debug.png
     :width: 442px
     :align: center
     :alt: reel board Debug Adapter

     reel board Debug Adapter overview (Credit: PHYTEC)

Debug Adapter Firmware
----------------------

DAPLink firmware for the adapter can be found at `DAPLink reel board Firmware`_.
To update the firmware (if necessary), the adapter must be started in bootloader
mode. For this, the board should be disconnected from the USB host,
the J22 should be closed (use tweezers for this) and the board reconnected to
the USB host.

Debug Adapter Jumper
--------------------

+-------+-----------------------+----------------------------------------------+
| Name  | Type                  | Usage                                        |
+=======+=======================+==============================================+
| J1    | closed solder jumper  | open to use adapter for external target      |
+-------+-----------------------+----------------------------------------------+
| J2    | closed solder jumper  | open to use adapter for external target      |
+-------+-----------------------+----------------------------------------------+
| J3    | open solder jumper    | close to pass UART TX to external adapter    |
+-------+-----------------------+----------------------------------------------+
| J4    | open solder jumper    | close to pass UART RX to external adapter    |
+-------+-----------------------+----------------------------------------------+
| J5    | closed solder jumper  | open to connect external adapter to nRF52840 |
+-------+-----------------------+----------------------------------------------+
| J6    | closed solder jumper  | open to connect external adapter to nRF52840 |
+-------+-----------------------+----------------------------------------------+
| J22   | open solder jumper    | close to start adapter in bootloader mode    |
+-------+-----------------------+----------------------------------------------+

Adapter LEDs
------------

+-------+-----------------------+--------------------------------+
| Name  | Type                  | Usage                          |
+=======+=======================+================================+
| D11   | green                 | flashes when adapter is active |
+-------+-----------------------+--------------------------------+
| D14   | red                   | reserved                       |
+-------+-----------------------+--------------------------------+
| D15   | yellow                | reserved                       |
+-------+-----------------------+--------------------------------+

Programming and Debugging
*************************

Applications for the ``reel_board`` board configuration can be
built and flashed in the usual way (see :ref:`build_an_application`
and :ref:`application_run` for more details).

Flashing
========

If you use Linux, create a udev rule (as ``root``) to fix a permission issue
when not using root for flashing.

.. code-block:: console

   # echo 'ATTR{idProduct}=="0204", ATTR{idVendor}=="0d28", MODE="0666", GROUP="plugdev"' > /etc/udev/rules.d/50-cmsis-dap.rules

Reload the rules and replug the device.

.. code-block:: console

   $ sudo udevadm control --reload-rules

Finally, unplug and plug the board again for the rules to take effect.

Build and flash
applications as usual (see :ref:`build_an_application` and
:ref:`application_run` for more details).

Here is an example for the :ref:`hello_world` application.

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

.. code-block:: console

   $ minicom -D <tty_device> -b 115200

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

Then build and flash the application in the usual way.

.. zephyr-app-commands::
   :zephyr-app: samples/hello_world
   :board: reel_board
   :goals: build flash

Debugging
=========

You can debug an application in the usual way.  Here is an example for the
:ref:`hello_world` application.

.. zephyr-app-commands::
   :zephyr-app: samples/hello_world
   :board: reel_board
   :maybe-skip-config:
   :goals: debug


Testing the LEDs and buttons
****************************

There are 2 samples that allow you to test that the buttons (switches) and
LEDs on the board are working properly with Zephyr:

* :ref:`blinky-sample`
* :ref:`button-sample`

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

References
**********

.. _reel board Website:
   https://www.phytec.de/reelboard/

.. target-notes::

.. _reel board:
   https://www.phytec.de/reelboard/

.. _DAPLink reel board Firmware:
   https://github.com/jfischer-phytec-iot/DAPLink/tree/reel-board
