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® Cortex®-M4F SoC with an integrated 2.4 GHz transceiver supporting Bluetooth® Low Energy and IEEE® 802.15.4.
For more information about the Particle Xenon board:
On the front of the board are RGB-LED, LED and LIPO circuitry. The RGB-LED is controlled by the nRF52840 via GPIO pins.
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.
The particle_xenon board configuration supports the following hardware features:
|NVIC||on-chip||nested vectored interrupt controller|
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.dtsiexposes TWI1 on labeled Feather SDA1/SCL1 pins
mesh_feather_spi_spi1.dtsiexposes SPI1 on labeled Feather SPI pins
mesh_feather_spi_spi3.dtsiexposes SPI3 on labeled Feather SPI pins
mesh_feather_spi1_spi3.dtsiexposes SPI3 on labeled Feather SPI1 pins
mesh_feather_uart1_rtscts.dtsiadds hardware flow control to labeled Feather UART pins
mesh_xenon_uart2.dtsiexposes UARTE1 on labeled Feather UART2 pins
- LED0 (blue)
- LED1 (red)
- LED2 (green)
- LED3 (blue)
- TWI0 enabled on labeled header (SDA/SCL)
- TWI1 selectable with overlay (SDA1/SCL1)
- 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)
- UARTE0 enabled RX/TX on labeled header (UART1); add RTS/CTS with overlay
- UARTE1 selectable with overlay (UART2)
Programming and Debugging¶
Build and flash an application in the usual way, for example:
# On Linux/macOS cd $ZEPHYR_BASE/samples/basic/blinky mkdir build && cd build # On Windows cd %ZEPHYR_BASE%\samples\basic\blinky mkdir build & cd build # Use cmake to configure a Ninja-based build system: cmake -GNinja -DBOARD=particle_xenon .. # Now run ninja on the generated build system: ninja ninja flash
You can debug an application in the usual way. Here is an example for the Hello World application.
# On Linux/macOS cd $ZEPHYR_BASE/samples/hello_world # If you already made a build directory (build) and ran cmake, just 'cd build' instead. mkdir build && cd build # On Windows cd %ZEPHYR_BASE%\samples\hello_world # If you already made a build directory (build) and ran cmake, just 'cd build' instead. mkdir build & cd build # Use cmake to configure a Ninja-based build system: cmake -GNinja -DBOARD=particle_xenon .. # Now run ninja on the generated build system: ninja debug