1.. zephyr:board:: nrf52_adafruit_feather
2
3Overview
4********
5
6The nRF52 Adafruit Bluefruit Feather hardware provides
7support for the Nordic Semiconductor nRF52832 ARM Cortex-M4F CPU and
8the following devices:
9
10* :abbr:`NVIC (Nested Vectored Interrupt Controller)`
11* :abbr:`RTC (nRF RTC System Clock)`
12* UART
13* GPIO
14* FLASH
15* RADIO (Bluetooth Low Energy)
16* Segger RTT (RTT Console)
17
18More information about the board and its features can be found at the
19`Adafruit Feather nRF52 Bluefruit Learning Guide`_. The `Nordic Semiconductor Infocenter`_
20contains the processor's information and the datasheet.
21
22Hardware
23********
24
25- nRF52832 ARM Cortex-M4F processor at 64 MHz
26- 32.768 kHz crystal oscillator
27- 512 KiB flash memory and 64 KiB of SRAM
28- Battery connector and charger for 3.7 V lithium polymer batteries
29- Charging indicator LED
30- 2 User LEDs
31- Reset button
32- SWD connector
33- USB serial converter
34
35Supported Features
36==================
37
38The nRF52 Adafruit Feather board configuration supports the following
39hardware features:
40
41+-----------+------------+----------------------+
42| Interface | Controller | Driver/Component     |
43+===========+============+======================+
44| NVIC      | on-chip    | nested vectored      |
45|           |            | interrupt controller |
46+-----------+------------+----------------------+
47| RTC       | on-chip    | system clock         |
48+-----------+------------+----------------------+
49| UART      | on-chip    | serial port          |
50+-----------+------------+----------------------+
51| GPIO      | on-chip    | gpio                 |
52+-----------+------------+----------------------+
53| FLASH     | on-chip    | flash                |
54+-----------+------------+----------------------+
55| RADIO     | on-chip    | Bluetooth            |
56+-----------+------------+----------------------+
57| RTT       | on-chip    | console              |
58+-----------+------------+----------------------+
59
60Other hardware features have not been enabled yet for this board.
61
62Connections and IOs
63===================
64
65The `Adafruit Feather nRF52 Bluefruit Learning Guide`_ has detailed
66information about the board including `pinouts`_ and the `schematic`_.
67
68LED
69---
70
71* LED0 (red) = P0.17
72* LED1 (blue) = P0.19
73
74Push buttons
75------------
76
77* DFU = SW0 = P0.20
78* RESET = SW1 = P0.21/reset
79
80Programming and Debugging
81*************************
82
83The ``nrf52_adafruit_feather`` board is available in two different versions:
84
85- `Adafruit Feather nRF52 Pro with myNewt Bootloader`_
86   This board version is the recommended one to use. It has the SWD header
87   already populated and comes with the  Mynewt serial bootloader installed by
88   default.
89
90- `Adafruit Feather nRF52 Bluefruit LE`_
91   This board is identical to the board above, but the SWD header is not
92   populated and ships with an Arduino friendly bootloader. To be able to work
93   with this version a 2*5pin 0.5" SWD header (e.g. `Adafruit SWD connector`_)
94   needs to be soldered.
95
96Applications for the ``nrf52_adafruit_feather`` board configuration can be
97built, flashed, and debugged in the usual way. See :ref:`build_an_application`
98and :ref:`application_run` for more details on building and running.
99
100Flashing
101========
102
103Flashing Zephyr onto the ``nrf52_adafruit_feather`` board requires an external
104J-Link programmer. The programmer is attached to the X1 SWD header.
105
106Follow the instructions in the :ref:`nordic_segger` page to install
107and configure all the necessary software. Further information can be
108found in :ref:`nordic_segger_flashing`. Then build and flash
109applications as usual (see :ref:`build_an_application` and
110:ref:`application_run` for more details).
111
112Here is an example for the :zephyr:code-sample:`hello_world` application.
113
114
115#. Build the Zephyr kernel and the :zephyr:code-sample:`hello_world` sample application:
116
117   .. zephyr-app-commands::
118      :zephyr-app: samples/hello_world
119      :board: nrf52_adafruit_feather
120      :goals: build
121      :compact:
122
123#. Connect the Adafruit nRF52 Feather to your host computer using USB
124
125#. Run your favorite terminal program to listen for output.
126
127   .. code-block:: console
128
129      $ minicom -D <tty_device> -b 115200
130
131   Replace :code:`<tty_device>` with the port where the nRF52 Adafruit Feather
132   board can be found. For example, under Linux, :code:`/dev/ttyUSB0`.
133
134#. Flash the image:
135
136   .. zephyr-app-commands::
137      :zephyr-app: samples/hello_world
138      :board: nrf52_adafruit_feather
139      :goals: flash
140      :compact:
141
142   You should see "Hello World! nrf52_adafruit_feather" in your terminal.
143
144
145Debugging
146=========
147
148The ``nrf52_adafruit_feather`` board does not have an on-board J-Link debug IC
149as some nRF5x development boards, however, instructions from the
150:ref:`nordic_segger` page also apply to this board, with the additional step
151of connecting an external debugger.
152
153
154Testing the LEDs and buttons on the nRF52 Adafruit Feather
155**********************************************************
156
157There are several samples that allow you to test that the buttons (switches) and LEDs on
158the board are working properly with Zephyr:
159
160- :zephyr:code-sample:`blinky`
161- :zephyr:code-sample:`button`
162- :zephyr:code-sample:`fade-led`
163- :zephyr:code-sample:`pwm-blinky`
164- :zephyr:code-sample:`multi-thread-blinky`
165
166You can build and flash the examples to make sure Zephyr is running correctly on
167your board. The button and LED definitions can be found in
168:zephyr_file:`boards/adafruit/nrf52_adafruit_feather/board.h`.
169
170
171References
172**********
173
174.. target-notes::
175
176.. _Adafruit Feather nRF52 Bluefruit Learning Guide: https://learn.adafruit.com/bluefruit-nrf52-feather-learning-guide/introduction
177.. _schematic: https://learn.adafruit.com/assets/39913
178.. _pinouts: https://cdn-learn.adafruit.com/assets/assets/000/046/210/original/Feather_NRF52_Pinout_v1.2.pdf?1504807075
179.. _Nordic Semiconductor Infocenter: https://infocenter.nordicsemi.com
180.. _J-Link Software and documentation pack: https://www.segger.com/jlink-software.html
181.. _Adafruit Feather nRF52 Bluefruit LE: https://www.adafruit.com/product/3406
182.. _Adafruit Feather nRF52 Pro with myNewt Bootloader: https://www.adafruit.com/product/3574
183.. _Adafruit SWD connector: https://www.adafruit.com/product/752
184