Machines › Computers › Adafruit › Adafruit Feather nRF52840 Express
Adafruit Feather nRF52840 Express
2019
Adafruit's Feather nRF52840 Express (2019) is a Feather-format development board built around the Nordic nRF52840: a 64MHz ARM Cortex-M4F (ARMv7E-M, with a single-precision FPU) with 1MB of flash, 256KB of RAM and a 2.4GHz Bluetooth Low Energy radio. On board are a NeoPixel, red and blue user LEDs, a user button and a USB serial console; there is no display or audio on the bare board, so it is silent.
Adafruit Feather nRF52840 Express Online Emulator
Play Adafruit Feather nRF52840 Express using JavaScript directly in your browser.
Controls
Runs real compiled Adafruit Feather nRF52840 Express firmware on an in-browser Nordic nRF52840 (ARM Cortex-M4F, 64 MHz). The default "NeoPixel Rainbow" is a bare-metal C program that cycles a smooth rainbow on the single on-board WS2812 NeoPixel (P0.16), blinks the red user LED (P1.15) as a heartbeat, and announces each colour over the UARTE0 serial console — so the board lights AND prints out of the box. The NeoPixel colour is REAL: the program bit-bangs the 800 kHz WS2812 one-wire protocol on P0.16 and the board decodes the HIGH-pulse widths into a live RGB value (a long LOW latches the frame). "Blink" alternates the red (P1.15) and blue CONN (P1.10) LEDs with the nRF52 GPIO OUTSET/OUTCLR registers. "UART Hello + Counter" brings up UARTE0 (TX on P0.25) and prints a greeting and an incrementing four-digit counter to the serial console using a real EasyDMA transfer, blinking the LED each line. "Button" reads the on-board USER switch (SW1, P1.02, active-low): press it (the SW1 button in the shared Controller panel) to turn the NeoPixel green and light the blue LED, release for dim red and the red LED — each edge prints over the console. Open the debugger, or add ?debug, to single-STEP real Thumb instructions from flash at 0x00000000, set PC breakpoints and write watchpoints, and read the ARM registers (r0-r15, xPSR, N/Z/C/V) and the real nRF52840 memory map live (FLASH 0, RAM 0x20000000, APB 0x40000000, GPIO 0x50000000). A bare Feather has no on-board speaker, so it is honestly silent.
Runs real compiled Adafruit Feather nRF52840 Express firmware on an in-browser Nordic nRF52840 (ARM Cortex-M4F, 64 MHz). The default "NeoPixel Rainbow" is a bare-metal C program that cycles a smooth rainbow on the single on-board WS2812 NeoPixel (P0.16), blinks the red user LED (P1.15) as a heartbeat, and announces each colour over the UARTE0 serial console — so the board lights AND prints out of the box. The NeoPixel colour is REAL: the program bit-bangs the 800 kHz WS2812 one-wire protocol on P0.16 and the board decodes the HIGH-pulse widths into a live RGB value (a long LOW latches the frame). "Blink" alternates the red (P1.15) and blue CONN (P1.10) LEDs with the nRF52 GPIO OUTSET/OUTCLR registers. "UART Hello + Counter" brings up UARTE0 (TX on P0.25) and prints a greeting and an incrementing four-digit counter to the serial console using a real EasyDMA transfer, blinking the LED each line. "Button" reads the on-board USER switch (SW1, P1.02, active-low): press it (the SW1 button in the shared Controller panel) to turn the NeoPixel green and light the blue LED, release for dim red and the red LED — each edge prints over the console. Open the debugger, or add ?debug, to single-STEP real Thumb instructions from flash at 0x00000000, set PC breakpoints and write watchpoints, and read the ARM registers (r0-r15, xPSR, N/Z/C/V) and the real nRF52840 memory map live (FLASH 0, RAM 0x20000000, APB 0x40000000, GPIO 0x50000000). A bare Feather has no on-board speaker, so it is honestly silent.
Runs real compiled Adafruit Feather nRF52840 Express firmware on an in-browser Nordic nRF52840 (ARM Cortex-M4F, 64 MHz). The default "NeoPixel Rainbow" is a bare-metal C program that cycles a smooth rainbow on the single on-board WS2812 NeoPixel (P0.16), blinks the red user LED (P1.15) as a heartbeat, and announces each colour over the UARTE0 serial console — so the board lights AND prints out of the box. The NeoPixel colour is REAL: the program bit-bangs the 800 kHz WS2812 one-wire protocol on P0.16 and the board decodes the HIGH-pulse widths into a live RGB value (a long LOW latches the frame). "Blink" alternates the red (P1.15) and blue CONN (P1.10) LEDs with the nRF52 GPIO OUTSET/OUTCLR registers. "UART Hello + Counter" brings up UARTE0 (TX on P0.25) and prints a greeting and an incrementing four-digit counter to the serial console using a real EasyDMA transfer, blinking the LED each line. "Button" reads the on-board USER switch (SW1, P1.02, active-low): press it (the SW1 button in the shared Controller panel) to turn the NeoPixel green and light the blue LED, release for dim red and the red LED — each edge prints over the console. Open the debugger, or add ?debug, to single-STEP real Thumb instructions from flash at 0x00000000, set PC breakpoints and write watchpoints, and read the ARM registers (r0-r15, xPSR, N/Z/C/V) and the real nRF52840 memory map live (FLASH 0, RAM 0x20000000, APB 0x40000000, GPIO 0x50000000). A bare Feather has no on-board speaker, so it is honestly silent.
Runs real compiled Adafruit Feather nRF52840 Express firmware on an in-browser Nordic nRF52840 (ARM Cortex-M4F, 64 MHz). The default "NeoPixel Rainbow" is a bare-metal C program that cycles a smooth rainbow on the single on-board WS2812 NeoPixel (P0.16), blinks the red user LED (P1.15) as a heartbeat, and announces each colour over the UARTE0 serial console — so the board lights AND prints out of the box. The NeoPixel colour is REAL: the program bit-bangs the 800 kHz WS2812 one-wire protocol on P0.16 and the board decodes the HIGH-pulse widths into a live RGB value (a long LOW latches the frame). "Blink" alternates the red (P1.15) and blue CONN (P1.10) LEDs with the nRF52 GPIO OUTSET/OUTCLR registers. "UART Hello + Counter" brings up UARTE0 (TX on P0.25) and prints a greeting and an incrementing four-digit counter to the serial console using a real EasyDMA transfer, blinking the LED each line. "Button" reads the on-board USER switch (SW1, P1.02, active-low): press it (the SW1 button in the shared Controller panel) to turn the NeoPixel green and light the blue LED, release for dim red and the red LED — each edge prints over the console. Open the debugger, or add ?debug, to single-STEP real Thumb instructions from flash at 0x00000000, set PC breakpoints and write watchpoints, and read the ARM registers (r0-r15, xPSR, N/Z/C/V) and the real nRF52840 memory map live (FLASH 0, RAM 0x20000000, APB 0x40000000, GPIO 0x50000000). A bare Feather has no on-board speaker, so it is honestly silent.
Configurations
| Configuration | Emulator | Machine | OS | Legal | |
|---|---|---|---|---|---|
| Blink (red + blue LEDs) | Adafruit Feather nRF52840 Express | Adafruit Feather nRF52840 Express | open | Open ⛶ | |
| NeoPixel Rainbow | Adafruit Feather nRF52840 Express | Adafruit Feather nRF52840 Express | open | Open ⛶ | |
| UART Hello + Counter | Adafruit Feather nRF52840 Express | Adafruit Feather nRF52840 Express | open | Open ⛶ | |
| Button | Adafruit Feather nRF52840 Express | Adafruit Feather nRF52840 Express | open | Open ⛶ |
Downloads — ROMs & software
| Title | Type | Size (bytes) | Legal | |
|---|---|---|---|---|
| Blink (red + blue LEDs) | demo | 0 | open | Download ↓ |
| Button | demo | 0 | open | Download ↓ |
| UART Hello + Counter | demo | 0 | open | Download ↓ |
| NeoPixel Rainbow | demo | 0 | open | Download ↓ |
Downloads — ROMs & software
| Title | Type | Size (bytes) | Legal | |
|---|---|---|---|---|
| Blink (red + blue LEDs) | demo | 0 | open | Download ↓ |
| Button | demo | 0 | open | Download ↓ |
| UART Hello + Counter | demo | 0 | open | Download ↓ |
| NeoPixel Rainbow | demo | 0 | open | Download ↓ |
Chips
Emulators
| Emulator | Type | License | Site |
|---|---|---|---|
| Adafruit Feather nRF52840 Express | online | CC0 | Website ↗ |