Framework LED Matrix
Overview
The Framework Laptop 16 compatible LED Matrix module is based on an RP2040 MCU and has an array of 9x36 white PWM LEDs controlled by a Lumissil IS31FL3741A.
Hardware
Dual core Arm Cortex-M0+ processor running up to 133MHz
264KB on-chip SRAM
1MB on-board QSPI flash with XIP capabilities
Built-in 9x36 white LED matrix
2 way DIP Switch - one for user control, one to stay in bootloader
USB 1.1 controller (host/device)
8 Programmable I/O (PIO) for custom peripherals
1 Watchdog timer peripheral
Supported Features
The framework_ledmatrix 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.
framework_ledmatrix/rp2040 target
Type |
Location |
Description |
Compatible |
|---|---|---|---|
CPU |
on-chip |
ARM Cortex-M0+ CPU2 |
|
ADC |
on-chip |
Raspberry Pi Pico ADC1 |
|
Clock control |
on-chip |
Raspberry Pi Pico clock controller node1 |
|
on-chip |
|||
on-chip |
The representation of Raspberry Pi Pico’s PLL2 |
||
on-chip |
The representation of Raspberry Pi Pico ring oscillator1 |
||
on-chip |
The representation of Raspberry Pi Pico external oscillator1 |
||
Counter |
on-chip |
Raspberry Pi Pico timer1 |
|
DMA |
on-chip |
Raspberry Pi Pico DMA1 |
|
Flash controller |
on-chip |
Raspberry Pi Pico flash controller1 |
|
GPIO & Headers |
on-chip |
Raspberry Pi Pico GPIO1 |
|
on-chip |
Raspberry Pi Pico GPIO Port1 |
||
I2C |
on-chip |
||
Input |
on-board |
Group of GPIO-bound input keys1 |
|
Interrupt controller |
on-chip |
ARMv6-M NVIC (Nested Vectored Interrupt Controller) controller1 |
|
Miscellaneous |
on-chip |
Raspberry Pi Pico PIO2 |
|
MTD |
on-chip |
Flash node1 |
|
on-board |
Fixed partitions of a flash (or other non-volatile storage) memory1 |
||
Pin control |
on-chip |
Raspberry Pi Pico Pin Controller1 |
|
PWM |
on-chip |
Raspberry Pi Pico PWM1 |
|
Regulator |
on-chip |
Raspberry Pi Pico core supply regurator1 |
|
Reset controller |
on-chip |
Raspberry Pi Pico Reset Controller1 |
|
RTC |
on-chip |
Raspberry Pi Pico RTC1 |
|
Sensors |
on-chip |
Raspberry Pi Pico family temperature sensor node1 |
|
Serial controller |
on-chip |
Raspberry Pi Pico UART2 |
|
SPI |
on-chip |
Raspberry Pi Pico SPI2 |
|
SRAM |
on-chip |
Generic on-chip SRAM1 |
|
Timer |
on-chip |
ARMv6-M System Tick1 |
|
USB |
on-chip |
Raspberry Pi Pico USB Device Controller1 |
|
Watchdog |
on-chip |
Raspberry Pi Pico Watchdog1 |
Programming and Debugging
The framework_ledmatrix board supports the runners and associated west commands listed below.
| flash | debug | |
|---|---|---|
| uf2 | ✅ (default) |
Flashing
Using UF2
Here is an example of building the sample for enabling USB console.
west build -b framework_ledmatrix samples/subsys/usb/console
You must flash the LED Matrix with an UF2 file. One option is to use West (Zephyr’s meta-tool). To enter the UF2 flashing mode, remove the module flip the dip switch 2 and assemble it again. It will appear on the host as a mass storage device. At this point you can flash the image file by running:
west flash
After flashing, switch the DIP switch back again to run the firmware.
Alternatively, you can locate the generated build/zephyr/zephyr.uf2 file and simply
drag-and-drop to the device after entering the UF2 flashing mode.