Skip to main content

Framework Deck

Framework Deck is an open-source, all-in-one desktop companion application for Framework laptops, developed by community member ToySnail (GitHub: enkode). It evolved from the earlier Input Architect project — a keyboard and macropad configurator — into a unified tool that combines keyboard customization with real-time hardware telemetry, fan control, power management, battery health monitoring, and LED matrix editing1.

Built with Tauri 2, the application uses a lightweight native window rather than Electron, resulting in an approximately 2 MB installer1.

Features

Live Oscilloscope Dashboard

Real-time multi-channel waveform display showing sensor data for APU, CPU-EC, DDR, EC, dGPU, GPU-AMB, GPU-VR, VRAM temperatures, and both fan RPM channels. The time window is configurable (1 m / 5 m / 10 m / 30 m) with hover-to-inspect exact values1.

Keyboard & Macropad Configurator

Full VIA key remapping with support for 6 layers and over 100 QMK keycodes, including layer switching (MO/TG/TO). Per-key RGB lighting control is available when using the nucleardog firmware. Additional features include shift+click range select, Ctrl+click multi-select, key group presets (WASD, FPS, MOBA, etc.), config snapshots with export/import as JSON, multi-device switching, and auto-reconnect after sleep/wake1.

Fan Control

Three modes are available: AUTO, MANUAL (with a duty % slider and live RPM readout), and CURVE. Separate profiles for AC and battery power1.

Power Management

TDP slider from 5 W to 145 W in 5 W steps with live readout. Thermal limit control and AC/battery profile switching1.

Battery Health

Displays state of charge with a segmented bar, battery health percentage (current max vs. design capacity), live voltage, current, remaining mAh, and cycle count. A charge limit control allows capping the battery at 80% or 95% to extend lifespan1.

LED Matrix Editor (Framework 16)

Click or drag to paint individual LEDs on the 306-LED display panel. A live indicator shows the active LED count (X/306), and a module slot inventory shows what is physically installed in each slot (expansion cards, LED matrix, spacers)1.

Built-in pattern presets include CLEAR, FILL, CHECKER, BORDER, CROSS, and WAVE, plus six additional patterns added in v2.1.0 (DIAGONAL, STRIPES, VERTICAL STRIPES, DIAMOND, RAIN, and FW logo). Transform operations (flip horizontal/vertical, invert, shift left/right), full undo/redo with Ctrl+Z/Ctrl+Y (30-step history), and named custom-pattern save/load to localStorage with clipboard export/import (compact hex encoding) round out the editor2.

Graphics Module (Windows only)

Added in v2.2.0, the Graphics module exposes cross-vendor (NVIDIA + AMD) GPU diagnostics and recovery tools. As of v2.3.0, the Graphics module is hidden from the nav on Linux, where it has no applicable functionality2:

  • GPU Adapters panel — every display-class PnP device with status, problem code, driver INF/version, PCIe link state, and last-arrival timestamp
  • RECOVER (UAC) — one-click pnputil /remove-device + /scan-devices cycle via elevated PowerShell to recover adapters stuck in a Code 43 or similar error state
  • Diagnostics · DXGKRNL-ADMIN — surfaces Microsoft-Windows-DxgKrnl-Admin event-log entries (errors, warnings) so failures like StartAdapter_AddAdapterFailed are visible
  • Per-app GPU preferences — read/write HKCU\SOFTWARE\Microsoft\DirectX\UserGpuPreferences (AUTO / POWER SAVING / HIGH PERFORMANCE), with an auto-discover scan of common install roots for known games
  • Quick actions — deep-links to AMD Adrenalin (SmartAccess Graphics), NVIDIA Control Panel / NVIDIA App, and Windows graphics settings (the GUI-only paths that actually flip the Framework 16 MUX)
  • NVIDIA-SMI — raw output capture when the driver is healthy

All Graphics commands are config-gated to Windows; the non-Tauri runtime renders a graceful fallback on other platforms2.

Updates Module (v2.3.0)

Added in v2.3.0, the Updates module detects the connected Framework device and checks the Framework Knowledge Base for the latest BIOS and Driver Bundle, with a daily auto-check and notification badge when an update is available. On Windows it inventories installed drivers; on Linux it uses fwupd/LVFS inventory2.

System Information

Displays CPU, GPU, mainboard, memory, OS, BIOS version, EC firmware build, power state capabilities, and current TDP1.

Settings & Accessibility

Four color themes (REEL, PHOS, AMBR, FW), independent text size and UI zoom sliders, high contrast mode, reduced motion option, temperature unit switching (°C/°F), and configurable warning thresholds1.

Supported Hardware

Telemetry

DeviceSupported
Framework Laptop 12Yes (telemetry, power, battery, and Graphics via framework-control; input-module features N/A — no detachable input modules)2
Framework Laptop 13 (AMD)Yes
Framework Laptop 13 (Intel)Yes
Framework Laptop 16 (AMD Ryzen 7040)Yes
Framework Laptop 16 (Ryzen AI 300)Yes

Keyboard Configurator

ModulePer-Key RGB
Framework 16 ANSI Keyboard (0x0012)With nucleardog firmware
Framework 16 RGB Macropad (0x0013)With nucleardog firmware

Download & Installation

PlatformPackage
Windows 11/10.exe installer (NSIS) or .msi
Linux (any distro).AppImage — make executable and run
Debian / Ubuntu.deb
Fedora / RHEL.rpm

Downloads are available from the GitHub releases page1.

For telemetry features (oscilloscope, fan control, power management, battery health, system info), the framework-control service by ozturkkl is required. The keyboard configurator works standalone via WebHID with no backend needed. On Linux, v2.3.0 also provides a one-click framework-control service installer from the "SERVICE OFFLINE" screen (polkit/pkexec); on Windows it offers an MSI download. The keyboard configurator on Linux falls back to the VIA web configurator with udev rule instructions when the in-app configurator is unavailable2.

Roadmap

FeatureStatus
LED Matrix animations / pattern editorDone (v2.1.0 overhaul)
Fan curve visual editorPlanned
Floating desktop widgetPlanned
System tray modePlanned
Alert thresholdsPlanned
CSV/JSON telemetry exportPlanned
Light mode themePlanned

Technical Details

DetailValue
Latest releasev2.3.0 (July 15, 2026)2
Total releases5 (v2.0.0 → v2.3.0)
StackTauri 2, React, TypeScript
Installer size~2 MB
LicenseMIT
Linux Wayland workaround

Framework Deck auto-sets WEBKIT_DISABLE_DMABUF_RENDERER=1 at process start on Linux to work around a webkit2gtk-4.1 / Mesa EGL_BAD_PARAMETER failure reported on KDE Wayland (e.g., CachyOS). This is a no-op on X11 and can be overridden. v2.3.0 also fixed a Linux launch crash where navigator.hid was accessed unguarded — webkit2gtk has no WebHID support, so the call now short-circuits on Linux2.

Source Code

Framework Deck is MIT licensed and open to issues, pull requests, and hardware testing reports1.

  • Input Architect — Predecessor app for keyboard & macropad configuration, merged into Framework Deck
  • fw-fanctrl — Fan control daemon for Framework laptops
  • YAFI — Cross-platform GTK4/Adwaita GUI for Framework EC
  • Framework Tool TUI — Terminal-based dashboard for Framework hardware
  • Framework Hub — C# control center for Framework laptops

It builds on several open-source projects:

Footnotes

  1. Framework Deck — All-In-One Desktop Companion for Framework Laptops (Windows + Linux) — Framework Community (ToySnail, March 2026) 2 3 4 5 6 7 8 9 10 11 12

  2. Framework Deck CHANGELOG — GitHub (enkode, March–May 2026) 2 3 4 5 6 7 8