Framework Laptop 16 Keyboard

Overview

The Framework Laptop 16 compatible Keyboard modules, based on RP2040 MCU, come in different sizes and with per-key RGB or white backlight:

  • RGB backlight

    • ANSI Keyboard

    • Macropad

  • White backlight

    • ANSI Keyboard

    • ISO Keyboard

    • Numpad

Hardware

  • Dual core Arm Cortex-M0+ processor running up to 133MHz

  • 264KB on-chip SRAM

  • 1MB on-board QSPI flash with XIP capabilities

  • Backlight

    • 1 PWM channel controlling the backlight

    • Per-key RGB backlight

  • Numpad/Macropad: 8x4 keyboard matrix, with 21/24 keys

  • Keyboard: 16x8 keyboard matrix

  • 1 Analog input for key scanning

  • 1 SGM48751 Mux for connecting any of the 8 KSI to the ADC input

  • USB 1.1 controller (host/device)

  • 8 Programmable I/O (PIO) for custom peripherals

  • 1 Watchdog timer peripheral

Supported Features

The framework_laptop16_keyboard 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.

Programming and Debugging

The framework_laptop16_keyboard board supports the runners and associated west commands listed below.

flash debug

Flashing

Using UF2

Here is an example of building the sample for driving the built-in led.

west build -b rp2040_plus samples/basic/blinky_pwm

You must flash the keyboard with an UF2 file. One option is to use West (Zephyr’s meta-tool). To enter the UF2 flashing mode, remove the module and hold down the both ALT keys (or 1 and 6 on the numpad) while assembling (powering) 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

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