Thing Plus Matter
Overview
The MGM240P Mighty Sparkfun Think Plus Matter contains a Wireless System-On-Chip from the EFR32MG24 family built on an ARM Cortex®-M33F processor with excellent low power capabilities.
Hardware
Based on the Series 2 EFR32MG24 SoC
CPU core: 32-bit ARM® Cortex®-M33 core at 39 MHz
Flash memory: 1536 kB
RAM: 256 kB
Supports Multiple 802.15.4 Wireless Protocols (Zigbee and OpenThread)
Bluetooth Low Energy 5.3
Crystals for LFXO (32 kHz) and HFXO (39 MHz).
For more information about the EFR32MG24 SoC and BRD2601B board, refer to these documents:
Supported Features
The sparkfun_thing_plus_matter_mgm240p
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 |
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 |
|
Interrupt controller |
on-chip |
ARMv8-M NVIC (Nested Vectored Interrupt Controller)1 |
|
LED |
on-board |
Group of GPIO-controlled LEDs1 |
|
Miscellaneous |
on-board |
GPIO Wake Up Trigger for EFR32BG22/EFR32BG271 |
|
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 |
|
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 |
|
SPI |
on-chip |
||
SRAM |
on-chip |
Generic on-chip SRAM1 |
|
Timer |
on-chip |
ARMv8-M System Tick1 |
|
on-chip |
Silicon Labs Series 2 BURTC1 |
||
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 |
---|---|---|
PA8 |
GPIO |
LED0 |
PA5 |
USART0_TX |
UART Console EFM_BC_TX US0_TX |
PA6 |
USART0_RX |
UART Console EFM_BC_RX US0_RX |
The default configuration can be found in boards/sparkfun/thing_plus_matter_mgm240p/sparkfun_thing_plus_matter_mgm240p_defconfig
System Clock
The EFR32MG24 SoC is configured to use the 39 MHz external oscillator on the board.
Serial Port
The EFR32MG24 SoC has one USART and two EUSARTs. USART0 is connected to the board controller and is used for the console.
Programming and Debugging
The sparkfun_thing_plus_matter_mgm240p
board supports the runners and associated west commands listed below.
flash | debug | rtt | attach | debugserver | |
---|---|---|---|---|---|
jlink | ✅ (default) | ✅ (default) | ✅ | ✅ | ✅ |
Note
Before using the kit the first time, you should update the J-Link firmware in Simplicity Studio.
Flashing
The sample application Hello World is used for this example. Build the Zephyr kernel and application:
# From the root of the zephyr repository
west build -b sparkfun_thing_plus_mgm240p samples/hello_world
Connect the sparkfun_thing_plus_mgm240p to your host computer using the USB port and you should see a USB connection.
Open a serial terminal (minicom, putty, etc.) with the following settings:
Speed: 115200
Data: 8 bits
Parity: None
Stop bits: 1
Reset the board and you’ll see the following message on the corresponding serial port terminal session:
Hello World! _sparkfun_thing_plus_matter_mgm240p
Bluetooth
To use the BLE function, run the command below to retrieve necessary binary blobs from the SiLabs HAL repository.
west blobs fetch silabs
Then build the Zephyr kernel and a Bluetooth sample with the following command. The Observer sample application is used in this example.
# From the root of the zephyr repository
west build -b sparkfun_thing_plus_matter_mgm240p samples/bluetooth/observer