Back to Zephyr

Overview

boards/adafruit/nrf52_adafruit_feather/doc/index.rst

4.4.05.1 KB
Original Source

.. zephyr:board:: nrf52_adafruit_feather

Overview


The nRF52 Adafruit Bluefruit Feather hardware provides support for the Nordic Semiconductor nRF52832 ARM Cortex-M4F CPU and the following devices:

  • :abbr:NVIC (Nested Vectored Interrupt Controller)
  • :abbr:RTC (nRF RTC System Clock)
  • UART
  • GPIO
  • FLASH
  • RADIO (Bluetooth Low Energy)
  • Segger RTT (RTT Console)

More information about the board and its features can be found at the Adafruit Feather nRF52 Bluefruit Learning Guide. The Nordic Semiconductor Infocenter contains the processor's information and the datasheet.

Hardware


  • nRF52832 ARM Cortex-M4F processor at 64 MHz
  • 32.768 kHz crystal oscillator
  • 512 KiB flash memory and 64 KiB of SRAM
  • Battery connector and charger for 3.7 V lithium polymer batteries
  • Charging indicator LED
  • 2 User LEDs
  • Reset button
  • SWD connector
  • USB serial converter

Supported Features

.. zephyr:board-supported-hw::

Connections and IOs

The Adafruit Feather nRF52 Bluefruit Learning Guide_ has detailed information about the board including pinouts_ and the schematic_.

LED

  • LED0 (red) = P0.17
  • LED1 (blue) = P0.19

Push buttons

  • DFU = SW0 = P0.20
  • RESET = SW1 = P0.21/reset

Programming and Debugging


.. zephyr:board-supported-runners::

The nrf52_adafruit_feather board is available in two different versions:

Adafruit Feather nRF52 Pro with myNewt Bootloader_ This board version is the recommended one to use. It has the SWD header already populated and comes with the Mynewt serial bootloader installed by default.

Adafruit Feather nRF52 Bluefruit LE_ This board is identical to the board above, but the SWD header is not populated and ships with an Arduino friendly bootloader. To be able to work with this version a 2*5pin 0.5" SWD header (e.g. Adafruit SWD connector_) needs to be soldered.

Applications for the nrf52_adafruit_feather board configuration can be built, flashed, and debugged in the usual way. See :ref:build_an_application and :ref:application_run for more details on building and running.

Flashing

Flashing Zephyr onto the nrf52_adafruit_feather board requires an external J-Link programmer. The programmer is attached to the X1 SWD header.

Follow the instructions in the :ref:nordic_segger page to install and configure all the necessary software. Further information can be found in :ref:nordic_segger_flashing. Then build and flash applications as usual (see :ref:build_an_application and :ref:application_run for more details).

Here is an example for the :zephyr:code-sample:hello_world application.

#. Build the Zephyr kernel and the :zephyr:code-sample:hello_world sample application:

.. zephyr-app-commands:: :zephyr-app: samples/hello_world :board: nrf52_adafruit_feather :goals: build :compact:

#. Connect the Adafruit nRF52 Feather to your host computer using USB

#. 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 nRF52 Adafruit Feather board can be found. For example, under Linux, :code:/dev/ttyUSB0.

#. Flash the image:

.. zephyr-app-commands:: :zephyr-app: samples/hello_world :board: nrf52_adafruit_feather :goals: flash :compact:

You should see "Hello World! nrf52_adafruit_feather" in your terminal.

Debugging

The nrf52_adafruit_feather board does not have an on-board J-Link debug IC as some nRF5x development boards, however, instructions from the :ref:nordic_segger page also apply to this board, with the additional step of connecting an external debugger.

Testing the LEDs and buttons on the nRF52 Adafruit Feather


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

  • :zephyr:code-sample:blinky
  • :zephyr:code-sample:button
  • :zephyr:code-sample:fade-led
  • :zephyr:code-sample:pwm-blinky
  • :zephyr:code-sample:multi-thread-blinky

You can build and flash the examples to make sure Zephyr is running correctly on your board. The button and LED definitions can be found in :zephyr_file:boards/adafruit/nrf52_adafruit_feather/board.h.

References


.. target-notes::

.. _Adafruit Feather nRF52 Bluefruit Learning Guide: https://learn.adafruit.com/bluefruit-nrf52-feather-learning-guide/introduction .. _schematic: https://learn.adafruit.com/assets/39913 .. _pinouts: https://cdn-learn.adafruit.com/assets/assets/000/046/210/original/Feather_NRF52_Pinout_v1.2.pdf?1504807075 .. _Nordic Semiconductor Infocenter: https://infocenter.nordicsemi.com .. _J-Link Software and documentation pack: https://www.segger.com/jlink-software.html .. _Adafruit Feather nRF52 Bluefruit LE: https://www.adafruit.com/product/3406 .. _Adafruit Feather nRF52 Pro with myNewt Bootloader: https://www.adafruit.com/product/3574 .. _Adafruit SWD connector: https://www.adafruit.com/product/752