1.. zephyr:board:: particle_xenon
2
3Overview
4********
5
6The Particle Xenon is a low-cost mesh-enabled development board based on the
7Nordic Semiconductor nRF52840 SoC. The board was developed by Particle
8Industries and has an SWD connector on it for programming.
9
10It is equipped with a onboard LIPO circuit and conforms to the
11Adafruit Feather formfactor.
12
13The Particle Xenon board provides support for the Nordic Semiconductor nRF52840
14ARM |reg| Cortex |reg|-M4F SoC with an integrated 2.4 GHz transceiver supporting
15Bluetooth |reg| Low Energy and IEEE |reg| 802.15.4.
16
17For more information about the Particle Xenon board:
18
19- `Xenon Datasheet`_
20- `Xenon Hardware Files`_
21
22Hardware
23********
24
25On the front of the board are RGB-LED, LED and LIPO circuitry.
26The RGB-LED is controlled by the nRF52840 via GPIO pins.
27
28Power supply
29============
30
31The board is optimized for low power applications and supports two
32power source configurations, battery and micro USB connector.
33
34It contains circuitry for LIPO usage and can be charged via the USB port.
35
36Supported Features
37==================
38
39The particle_xenon board configuration supports the following
40hardware features:
41
42+-----------+------------+----------------------+
43| Interface | Controller | Driver/Component     |
44+===========+============+======================+
45| NVIC      | on-chip    | nested vectored      |
46|           |            | interrupt controller |
47+-----------+------------+----------------------+
48| RTC       | on-chip    | system clock         |
49+-----------+------------+----------------------+
50| UART      | on-chip    | serial port          |
51+-----------+------------+----------------------+
52| I2C       | on-chip    | i2c                  |
53+-----------+------------+----------------------+
54| SPI       | on-chip    | spi                  |
55+-----------+------------+----------------------+
56| GPIO      | on-chip    | gpio                 |
57+-----------+------------+----------------------+
58| FLASH     | on-chip    | flash                |
59+-----------+------------+----------------------+
60| RADIO     | on-chip    | Bluetooth            |
61+-----------+------------+----------------------+
62
63Other hardware features have not been enabled yet for this board.
64
65Connections and IOs
66===================
67
68Please see the `Xenon Datasheet`_ for header pin assignments, which are
69common to all Feather-compatible Particle boards.  Some peripherals are
70available to applications through DTS overlay include directives:
71
72- ``mesh_feather_i2c1_twi1.dtsi`` exposes TWI1 on labeled Feather
73  SDA1/SCL1 pins
74- ``mesh_feather_spi_spi1.dtsi`` exposes SPI1 on labeled Feather
75  SPI pins
76- ``mesh_feather_spi_spi3.dtsi`` exposes SPI3 on labeled Feather
77  SPI pins
78- ``mesh_feather_spi1_spi3.dtsi`` exposes SPI3 on labeled Feather
79  SPI1 pins
80- ``mesh_feather_uart1_rtscts.dtsi`` adds hardware flow control to
81  labeled Feather UART pins
82- ``mesh_xenon_uart2.dtsi`` exposes UARTE1 on labeled Feather
83  UART2 pins
84
85LED
86---
87
88* LED0 (blue)
89* LED1 (red)
90* LED2 (green)
91* LED3 (blue)
92
93Push buttons
94------------
95
96* SW0 via MODE
97* SW1 via RESET
98
99I2C
100---
101
102* TWI0 enabled on labeled header (SDA/SCL)
103* TWI1 selectable with overlay (SDA1/SCL1)
104
105SPI
106---
107
108* SPI0 disabled due to TWI0 conflict
109* SPI1 selectable with overlay (SPI)
110* SPI2 internal to 32 Mb CFI flash chip
111* SPI3 selectable with overlay (SPI or SPI1)
112
113UART
114----
115
116* UARTE0 enabled RX/TX on labeled header (UART1); add RTS/CTS with overlay
117* UARTE1 selectable with overlay (UART2)
118
119Programming and Debugging
120*************************
121
122Applications for the ``particle_xenon`` board configuration can be
123built and flashed in the usual way (see :ref:`build_an_application`
124and :ref:`application_run` for more details).
125
126Flashing
127========
128
129Build and flash an application in the usual way, for example:
130
131.. zephyr-app-commands::
132   :zephyr-app: samples/basic/blinky
133   :board: particle_xenon
134   :goals: build flash
135
136Debugging
137=========
138
139You can debug an application in the usual way.  Here is an example for the
140:zephyr:code-sample:`hello_world` application.
141
142.. zephyr-app-commands::
143   :zephyr-app: samples/hello_world
144   :board: particle_xenon
145   :maybe-skip-config:
146   :goals: debug
147
148
149Testing the LEDs and buttons
150****************************
151
152There are 2 samples that allow you to test that the buttons (switches) and
153LEDs on the board are working properly with Zephyr:
154
155* :zephyr:code-sample:`blinky`
156* :zephyr:code-sample:`button`
157
158You can build and flash the examples to make sure Zephyr is running correctly on
159your board.
160
161.. _Xenon Datasheet:
162   https://docs.particle.io/datasheets/mesh/xenon-datasheet/
163
164.. _Xenon Hardware Files:
165   https://github.com/particle-iot/xenon
166