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

arm,cortex-m0+

ADC

on-chip

Raspberry Pi Pico ADC1

raspberrypi,pico-adc

Clock control

on-chip

Raspberry Pi Pico clock controller node1

raspberrypi,pico-clock-controller

on-chip

The representation of Raspberry Pi Pico’s clock112

raspberrypi,pico-clock

on-chip

The representation of Raspberry Pi Pico’s PLL2

raspberrypi,pico-pll

on-chip

The representation of Raspberry Pi Pico ring oscillator1

raspberrypi,pico-rosc

on-chip

The representation of Raspberry Pi Pico external oscillator1

raspberrypi,pico-xosc

Counter

on-chip

Raspberry Pi Pico timer1

raspberrypi,pico-timer

DMA

on-chip

Raspberry Pi Pico DMA1

raspberrypi,pico-dma

Flash controller

on-chip

Raspberry Pi Pico flash controller1

raspberrypi,pico-flash-controller

GPIO & Headers

on-chip

Raspberry Pi Pico GPIO1

raspberrypi,pico-gpio

on-chip

Raspberry Pi Pico GPIO Port1

raspberrypi,pico-gpio-port

I2C

on-chip

Raspberry Pi Pico I2C11

raspberrypi,pico-i2c

Input

on-board

Group of GPIO-bound input keys1

gpio-keys

Interrupt controller

on-chip

ARMv6-M NVIC (Nested Vectored Interrupt Controller) controller1

arm,v6m-nvic

Miscellaneous

on-chip

Raspberry Pi Pico PIO2

raspberrypi,pico-pio

MTD

on-chip

Flash node1

soc-nv-flash

on-board

Fixed partitions of a flash (or other non-volatile storage) memory1

fixed-partitions

Pin control

on-chip

Raspberry Pi Pico Pin Controller1

raspberrypi,pico-pinctrl

PWM

on-chip

Raspberry Pi Pico PWM1

raspberrypi,pico-pwm

Regulator

on-chip

Raspberry Pi Pico core supply regurator1

raspberrypi,core-supply-regulator

Reset controller

on-chip

Raspberry Pi Pico Reset Controller1

raspberrypi,pico-reset

RTC

on-chip

Raspberry Pi Pico RTC1

raspberrypi,pico-rtc

Sensors

on-chip

Raspberry Pi Pico family temperature sensor node1

raspberrypi,pico-temp

Serial controller

on-chip

Raspberry Pi Pico UART2

raspberrypi,pico-uart

SPI

on-chip

Raspberry Pi Pico SPI2

raspberrypi,pico-spi

SRAM

on-chip

Generic on-chip SRAM1

mmio-sram

Timer

on-chip

ARMv6-M System Tick1

arm,armv6m-systick

USB

on-chip

Raspberry Pi Pico USB Device Controller1

raspberrypi,pico-usbd

Watchdog

on-chip

Raspberry Pi Pico Watchdog1

raspberrypi,pico-watchdog

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.

References