.. _boardname_linkname: SparkFun MicroMod board Processor ################################# Overview ******** MicroMod is a solderless, modular interface ecosystem that uses the M.2 standard to mix and match your choice of processor with specific Function Boards or stand-alone Carrier Boards. A MicroMod processor board is approximately 22x22 mm, and can insert into any MicroMod carrier board. More information can be found in the `Micromod specification website`_. All Micromod board targets support the following hardware features: - USB host mode compliant to 2.0 specification - GPIO - 2 UART - 2 I2C - 2 SPI - 2 ADC - 2 PWM - Watchdog Timer (WDT) .. figure:: img/sparkfun_micromod.webp :align: center :alt: Sparkfun Micromod board Sparkfun Micromod board (Credit: https://www.sparkfun.com) Zephyr currently supports the following SoCs: - ``micromod/nrf52840`` SparkFun MicroMod nRF52840 board Processor ########################################## Overview ******** The ``micromod/nrf52840`` board target features the nRF52840 SoC from Nordic Semiconductor, the SparkFun MicroMod nRF52840 Processor offers a powerful combination of ARM Cortex-M4 CPU and 2.4 GHz Bluetooth transceiver in the MicroMod form-factor. More information can be found in the `Micromod nRF52840 guide`_. Hardware ******** The ``micromod/nrf52840`` board target supports the following hardware features: - ARM Cortex-M4 CPU with floating point unit (FPU) - 1MB internal Flash - 256kB internal RAM - Integrated 2.4GHz radio with support for Bluetooth Low Energy (BLE) and ieee802154 - USB 2.0 full speed (12 Mbps) controller - QSPI with 128Mb flash memory - ARM TrustZone Cryptocell 310 security subsystem - USB host mode compliant to 2.0 specification - GPIO - 2 UART - 2 I2C - 2 SPI - 2 ADC - 2 PWM - Watchdog Timer (WDT) Supported Features ================== The Zephyr ``micromod/nrf52840`` board target supports the following hardware features: +-----------+------------+-------------------------------------+ | Interface | Controller | Driver/Component | +===========+============+=====================================+ | NVIC | on-chip | nested vector interrupt controller | +-----------+------------+-------------------------------------+ | SYSTICK | on-chip | system clock | +-----------+------------+-------------------------------------+ | RADIO | on-chip | Bluetooth, | | | | ieee802154 | +-----------+------------+-------------------------------------+ | UART | on-chip | serial port | +-----------+------------+-------------------------------------+ | GPIO | on-chip | gpio | +-----------+------------+-------------------------------------+ | PINMUX | on-chip | pinmux | +-----------+------------+-------------------------------------+ | FLASH | on-chip | flash | +-----------+------------+-------------------------------------+ | SPI | on-chip | spi | +-----------+------------+-------------------------------------+ | I2C | on-chip | i2c | +-----------+------------+-------------------------------------+ | USB | on-chip | usb | +-----------+------------+-------------------------------------+ | QSPI | on-chip | nordic,nrf-qspi | +-----------+------------+-------------------------------------+ Connections and IOs =================== LED --- * Led0 (blue) = P0.13 Micromod header --------------- * micromod_1_uart = uart0 * micromod_2_uart = uart1 * micromod_0_i2c = i2c0 * micromod_1_i2c = i2c1 * micromod_0_spi = spi2 * micromod_header compatible with ``sparkfun,micromod-gpio`` Programming and Debugging ************************* Applications for the ``micromod/nrf52840`` board target can be built, flashed, and debugged in the usual way. See :ref:`build_an_application` and :ref:`application_run` for more details on building and running. Flashing ======== Follow the instructions in the :ref:`nordic_segger` page to install and configure all the necessary software. Further information can be found in :ref:`nordic_segger_flashing`. Then build and flash applications as usual (see :ref:`build_an_application` and :ref:`application_run` for more details). The flashing tool will depend on the carrier used along with the board. In the case of `Sparkfun asset tracking carrier`_, it is possible to use the SWD interface along with a J-Link. Here is an example for the :zephyr:code-sample:`hello_world` application. First, run your favorite terminal program to listen for output. .. code-block:: console $ minicom -D -b 115200 Replace :code:`` with the port where the board nRF52840 DK can be found. For example, under Linux, :code:`/dev/ttyACM0`. Then build and flash the application in the usual way. .. zephyr-app-commands:: :zephyr-app: samples/hello_world :board: micromod/nrf52840 :goals: build flash Debugging ========= Refer to the :ref:`nordic_segger` page to learn about debugging Nordic boards with a Segger IC. In case of using a Nordic Segger Jlink, it is possible to configure the app to use Segger Real Time Transfer (RTT) for debugging. In this case, build your app with the :ref:`RTT snippet `. Testing the on-board LED ************************ There is a sample that allow you to test the LED on the board is working properly with Zephyr: * :zephyr:code-sample:`blinky` You can build and flash the example to make sure Zephyr is running correctly on your board. The button and LED definitions can be found in :zephyr_file:`boards/sparkfun/micromod/micromod_nrf52840.dts`. Testing the 128Mb qspi memory flash *********************************** The ``micromod/nrf52840`` board target has a built-in NOR flash memory connected to the qspi interface. It can be tested with the samples/drivers/jesd216 app. .. zephyr-app-commands:: :zephyr-app: samples/drivers/jesd216 :board: micromod/nrf52840 :goals: build flash References ********** .. target-notes:: .. _Micromod specification website: https://www.sparkfun.com/micromod .. _Sparkfun asset tracking carrier: https://www.sparkfun.com/products/17272 .. _Micromod nRF52840 guide: https://learn.sparkfun.com/tutorials/micromod-nrf52840-processor-hookup-guide .. _J-Link Software and documentation pack: https://www.segger.com/jlink-software.html .. _nRF52840 Product Specification: http://infocenter.nordicsemi.com/pdf/nRF52840_PS_v1.0.pdf