|  | .. _particle_xenon: | 
|  |  | 
|  | Particle Xenon | 
|  | ############## | 
|  |  | 
|  | Overview | 
|  | ******** | 
|  |  | 
|  | The Particle Xenon is a low-cost mesh-enabled development board based on the | 
|  | Nordic Semiconductor nRF52840 SoC. The board was developed by Particle | 
|  | Industries and has an SWD connector on it for programming. | 
|  |  | 
|  | It is equipped with a onboard LIPO circuit and conforms to the | 
|  | Adafruit Feather formfactor. | 
|  |  | 
|  | The Particle Xenon 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. | 
|  |  | 
|  | For more information about the Particle Xenon board: | 
|  |  | 
|  | - `Xenon Datasheet`_ | 
|  | - `Xenon Hardware Files`_ | 
|  |  | 
|  | Hardware | 
|  | ******** | 
|  |  | 
|  | On the front of the board are RGB-LED, LED and LIPO circuitry. | 
|  | The RGB-LED is controlled by the nRF52840 via GPIO pins. | 
|  |  | 
|  | .. figure:: img/particle_xenon.png | 
|  | :width: 150px | 
|  | :align: center | 
|  | :alt: Particle Xenon | 
|  |  | 
|  | Particle Xenon (Credit: Particle Industries) | 
|  |  | 
|  | Power supply | 
|  | ============ | 
|  |  | 
|  | The board is optimized for low power applications and supports two | 
|  | power source configurations, battery and micro USB connector. | 
|  |  | 
|  | It contains circuitry for LIPO usage and can be charged via the USB port. | 
|  |  | 
|  | Supported Features | 
|  | ================== | 
|  |  | 
|  | The particle_xenon 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            | | 
|  | +-----------+------------+----------------------+ | 
|  |  | 
|  | Other hardware features are not supported by the Zephyr kernel. | 
|  |  | 
|  | Connections and IOs | 
|  | =================== | 
|  |  | 
|  | Please see the `Xenon Datasheet`_ for header pin assignments, which are | 
|  | common to all Feather-compatible Particle boards.  Some peripherals are | 
|  | available to applications through DTS overlay include directives: | 
|  |  | 
|  | - ``mesh_feather_i2c1_twi1.dtsi`` exposes TWI1 on labeled Feather | 
|  | SDA1/SCL1 pins | 
|  | - ``mesh_feather_spi_spi1.dtsi`` exposes SPI1 on labeled Feather | 
|  | SPI pins | 
|  | - ``mesh_feather_spi_spi3.dtsi`` exposes SPI3 on labeled Feather | 
|  | SPI pins | 
|  | - ``mesh_feather_spi1_spi3.dtsi`` exposes SPI3 on labeled Feather | 
|  | SPI1 pins | 
|  | - ``mesh_feather_uart1_rtscts.dtsi`` adds hardware flow control to | 
|  | labeled Feather UART pins | 
|  | - ``mesh_xenon_uart2.dtsi`` exposes UARTE1 on labeled Feather | 
|  | UART2 pins | 
|  |  | 
|  | LED | 
|  | --- | 
|  |  | 
|  | * LED0 (blue) | 
|  | * LED1 (red) | 
|  | * LED2 (green) | 
|  | * LED3 (blue) | 
|  |  | 
|  | Push buttons | 
|  | ------------ | 
|  |  | 
|  | * SW0 via MODE | 
|  | * SW1 via RESET | 
|  |  | 
|  | I2C | 
|  | --- | 
|  |  | 
|  | * TWI0 enabled on labeled header (SDA/SCL) | 
|  | * TWI1 selectable with overlay (SDA1/SCL1) | 
|  |  | 
|  | SPI | 
|  | --- | 
|  |  | 
|  | * SPI0 disabled due to TWI0 conflict | 
|  | * SPI1 selectable with overlay (SPI) | 
|  | * SPI2 internal to 32 Mb CFI flash chip | 
|  | * SPI3 selectable with overlay (SPI or SPI1) | 
|  |  | 
|  | UART | 
|  | ---- | 
|  |  | 
|  | * UARTE0 enabled RX/TX on labeled header (UART1); add RTS/CTS with overlay | 
|  | * UARTE1 selectable with overlay (UART2) | 
|  |  | 
|  | Programming and Debugging | 
|  | ************************* | 
|  |  | 
|  | Applications for the ``particle_xenon`` board configuration can be | 
|  | built and flashed in the usual way (see :ref:`build_an_application` | 
|  | and :ref:`application_run` for more details). | 
|  |  | 
|  | Flashing | 
|  | ======== | 
|  |  | 
|  | Build and flash an application in the usual way, for example: | 
|  |  | 
|  | .. zephyr-app-commands:: | 
|  | :zephyr-app: samples/basic/blinky | 
|  | :board: particle_xenon | 
|  | :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: particle_xenon | 
|  | :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. | 
|  |  | 
|  | .. _Xenon Datasheet: | 
|  | https://docs.particle.io/datasheets/mesh/xenon-datasheet/ | 
|  |  | 
|  | .. _Xenon Hardware Files: | 
|  | https://github.com/particle-iot/xenon |