Arduino Nano Matter
Overview
The Nano Matter merges the well-known Arduino way of making complex technology more accessible with the powerful MGM240S from Silicon Labs, to bring Matter closer to the maker world, in one of the smallest form factors in the market.
It enables 802.15.4 (Thread®) and Bluetooth® Low Energy connectivity, to interact with Matter-compatible devices with a user-friendly software layer ready for quick prototyping.
The Nano Matter features a compact and efficient architecture powered by the MGM240S (32-bit Arm® Cortex®-M33) from Silicon Labs, a high-performance wireless module optimized for the needs of battery and line-powered IoT devices for 2.4 GHz mesh networks.
Hardware
MGM240SD22VNA2 Mighty Gecko SiP
CPU core: ARM Cortex®-M33 with FPU
Flash memory: 1536 kB
RAM: 256 kB
Transmit power: up to +20 dBm
Operation frequency: 2.4 GHz
Crystals for LFXO (32.768 kHz) and HFXO (39 MHz).
User RGB LED
User button
For more information about the EFR32MG24 SoC and the Arduino Nano Matter, refer to these documents:
Supported Features
The arduino_nano_matter
board supports the hardware features listed below.
- on-chip / on-board
- Feature integrated in the SoC / present on the board.
- 2 / 2
-
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files. -
vnd,foo
-
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.
Type |
Location |
Description |
Compatible |
---|---|---|---|
CPU |
on-chip |
ARM Cortex-M33 CPU1 |
|
ADC |
on-chip |
Silicon Labs Series 2 IADC1 |
|
Bluetooth |
on-chip |
Silicon Labs Series 2 Bluetooth HCI1 |
|
Clock control |
on-chip |
Silicon Labs Series 2 CMU1 |
|
on-chip |
Generic fixed-rate clock provider3 |
||
on-chip |
Silicon Labs Series 2 HFXO1 |
||
on-chip |
Silicon Labs Series 2 LFXO1 |
||
on-chip |
Silicon Labs Series 2 HFRCODPLL1 |
||
on-chip |
Silicon Labs Series 2 HFRCOEM231 |
||
on-chip |
Silicon Labs Series 2 LFRCO1 |
||
on-chip |
Generic fixed factor clock provider20 |
||
Comparator |
on-chip |
Silicon Labs Series 2 ACMP1 |
|
Cryptographic accelerator |
on-chip |
Silicon Labs Series 2 SE Mailbox1 |
|
Debug |
on-chip |
Silicon Labs Packet Trace Interface1 |
|
on-chip |
ARMv8 instrumentation trace macrocell1 |
||
DMA |
on-chip |
Silicon Labs Series 2 LDMA1 |
|
Flash controller |
on-chip |
Silicon Labs Series 2 MSC1 |
|
GPIO & Headers |
on-chip |
Silicon Labs Series 0-2 GPIO Peripheral1 |
|
on-chip |
Silicon Labs Series 0-2 GPIO Port4 |
||
I2C |
on-chip |
Silicon Labs Series 0-2 I2C1 |
|
Input |
on-board |
Group of GPIO-bound input keys1 |
|
Interrupt controller |
on-chip |
ARMv8-M NVIC (Nested Vectored Interrupt Controller)1 |
|
LED |
on-board |
Group of GPIO-controlled LEDs1 |
|
on-board |
Group of PWM-controlled LEDs1 |
||
MTD |
on-chip |
Flash node1 |
|
on-board |
Fixed partitions of a flash (or other non-volatile storage) memory1 |
||
Networking |
on-chip |
Silicon Labs Series 2 Radio Interface1 |
|
Pin control |
on-chip |
Silicon Labs Series 2 DBUS Pin Controller1 |
|
PWM |
on-chip |
||
on-chip |
Silicon Labs LETIMER PWM1 |
||
Regulator |
on-chip |
Silicon Labs Series 2 DC-DC converter1 |
|
RTC |
on-chip |
Silicon Labs Series 2 Sleeptimer1 |
|
Serial controller |
on-chip |
Silicon Labs Series 2 USART1 |
|
on-chip |
Silicon Labs Series 2 EUSART 1 |
||
SPI |
on-chip |
Silicon Labs Series 2 EUSART 1 |
|
SRAM |
on-chip |
Generic on-chip SRAM1 |
|
Timer |
on-chip |
ARMv8-M System Tick1 |
|
on-chip |
|||
on-chip |
Silicon Labs Series 2 BURTC1 |
||
on-chip |
Silicon Labs LETIMER1 |
||
Watchdog |
on-chip |
Connections and IOs
In the following table, the column Name contains Pin names. For example, PA2 means Pin number 2 on PORTA, as used in the board’s datasheets and manuals.
Name |
Function |
Usage |
---|---|---|
PC1 |
GPIO |
LED0 |
PC2 |
GPIO |
LED1 |
PC3 |
GPIO |
LED2 |
PA0 |
GPIO |
Button |
PC4 |
USART0_TX |
UART Console TX |
PC5 |
USART0_RX |
UART Console RX |
System Clock
The MGM240S SiP is configured to run at 78 MHz using DPLL and the 39 MHz internal oscillator.
Serial Port
The MGM240S SiP has one USART and two EUSARTs. USART0 is connected to the board controller and is used for the console.
Programming and Debugging
The Arduino Nano Matter contains an SAMD11 with CMSIS-DAP, allowing flashing, debugging, logging, etc. over
the USB port. Doing so requires a version of OpenOCD that includes support for the flash on the MG24
MCU. Until those changes are included in stock OpenOCD, the version bundled with Arduino can be
used, or can be installed from the OpenOCD Arduino Fork. When flashing, debugging, etc. you may
need to include --openocd=/usr/local/bin/openocd
--openocd-search=/usr/local/share/openocd/scripts/
options to the command.
Flashing
Connect the Arduino Nano Matter board to your host computer using the USB port. A USB CDC ACM serial port should appear on the host, that can be used to view logs from the flashed application.
Here is an example for the Hello World application.
# From the root of the zephyr repository
west build -b arduino_nano_matter samples/hello_world
west flash
Open a serial terminal (minicom, putty, etc.) connecting to the UCB CDC ACM serial port.
Reset the board and you should see the following message in the terminal:
Hello World! arduino_nano_matter