boards/others/promicro_nrf52840/doc/index.rst
.. zephyr:board:: promicro_nrf52840
More of a board type than a unique board, It is based on Nice!Nano. Also referred to as Pro Micro, Promicro, SuperMini nRF52840 boards.
Overview
The hardware provides support for the Nordic Semiconductor nRF52840 ARM Cortex-M4F CPU and the following devices:
ADC (Analog to Digital Converter)GPIO (General Purpose Input Output)I2C (Inter-Integrated Circuit)MPU (Memory Protection Unit)NVIC (Nested Vectored Interrupt Controller)PWM (Pulse Width Modulation)RTC (nRF RTC System Clock)SPI (Serial Peripheral Interface)UART (Universal asynchronous receiver-transmitter)USB (Universal Serial Bus)WDT (Watchdog Timer)More information about the original board can be found at the
Nice!Nano website_.
Information about clones can be found at Clone Wiki_.
Pinout and Schematic are available in the Nice!Nano Documentation_
.. zephyr:board-supported-hw::
Programming and Debugging
.. zephyr:board-supported-runners::
Applications for the promicro_nrf52840/nrf52840 board target can be
built in the usual way (see :ref:build_an_application for more details).
The board is factory-programmed with Adafruit's UF2 bootloader
#. Reset the board into the bootloader by bridging ground and RST 2 times quickly
The status LED should start a fade pattern, signalling the bootloader is running.
#. Compile a Zephyr application; we'll use :zephyr:code-sample:blinky.
.. zephyr-app-commands:: :app: zephyr/samples/basic/blinky :board: promicro_nrf52840/nrf52840/uf2 :goals: build
#. Flash it onto the board. You may need to mount the device.
.. code-block:: console
west flash
When this command exits, observe the red LED on the board blinking,
You may debug this board using the broken out pads on the back. PyOCD and openOCD can be used to flash and debug this board.
In case of a error resulting in a board's bootloader becoming inaccessible, it is possible to flash anything directly using openOCD:
#. Setup OpenOCD correctly, here for WCH linkE in ARM mode:
.. code-block:: console
openocd -f interface/cmsis-dap.cfg -f target/nrf52.cfg
Note interface and target folders are from openOCD's tcl folder.
#. Connect to openOCD, for example with telnet or GDB:
.. code-block:: console
telnet localhost 4444
.. code-block:: console
target extended-remote localhost:3333
#. Erase flash:
.. code-block:: console
reset halt
nrf5 mass_erase
or
.. code-block:: console
mon reset halt
mon nrf5 mass_erase
#. Flash Bootloader
.. code-block:: console
flash write_image erase nice_nano_bootloader-0.9.2_s140_6.1.1.hex
or
.. code-block:: console
mon flash write_image erase nice_nano_bootloader-0.9.2_s140_6.1.1.hex
References
.. target-notes::
.. _Nice!Nano website: https://nicekeyboards.com/docs/nice-nano/ .. _Clone Wiki: https://github.com/joric/nrfmicro/wiki/Alternatives .. _Nice!Nano Documentation: https://nicekeyboards.com/docs/nice-nano/pinout-schematic