Alpha

Under active development. Breaking changes expected. APIs, installers, and UI may shift between releases.

DISPLAYAvailable

A 480 by 320 panel. Touch native.

The carousel is fine for a glance. The dashboard is for everything else. Touch handles tap, swipe, long-press, and drag, and the same install command that provisions the radio provisions the panel.
Available

Usable today. Early access — some pieces run behind a feature flag and APIs may shift between releases.

480×320
Panel resolution
4
Touch gestures
3
Reference boards
ADOS ground station dashboard rendered on the touch panel

WHY

More pixels. Less typing.

The OLED is the always-on glance. The LCD is what you reach for when you need to do something. Color, fonts that read at a distance, and gestures that mean what they mean on every other touchscreen.

Looking for the OLED and four buttons? That is the Physical UI page.

INSTALL

Plug it in. Reboot. It works.

One install command picks the panel up from the board profile, compiles and installs the device-tree overlay, registers the kernel modules, and primes touch. No dtoverlay edits, no kernel rebuild.

1. Detect

The board fingerprint resolves a hardware profile. The profile lists one or more supported displays. The installer picks the first match, or honors a flag when the operator wants a different one.

2. Provision

The overlay source compiles to a device-tree binary. Modules load on every boot. Resolution, rotation, and touch state land in a single config file the renderer reads at startup.

3. Bind

First boot brings up the panel. The renderer probes the framebuffer, the touch bridge attaches to the input device, and the Hardware tab populates with live state. No follow-up commands.

DASHBOARD

Native 480 by 320. Four tiles. One tap to drill in.

The dashboard is purpose-built for the LCD: bigger fonts and four stat tiles for the radio link, the drone, the mesh, and the uplink. Each one is a tap target.

Ground station dashboard with tiles for the radio link, drone, mesh, and uplink

Tap a tile to drill into that subsystem.

STATUS

Five screens. Five-second cycle.

The same five screens that cycle on the OLED are upscaled onto the LCD. Glance behavior stays identical across hardware. Tap to freeze on the active screen.

Link screen

Link

RSSI, bitrate, FEC repaired and lost, channel, TX power.

Drone screen

Drone

Paired device id, flight mode, battery, GPS satellite count.

GCS screen

GCS

Connected client list with the pilot-in-command badge.

Net screen

Net

Access point SSID and IP, tether IP, current uplink and reach.

System screen

System

CPU, RAM, temperature, uptime, agent version.

MESH PAIRING

Two devices. No laptop. Under two minutes.

The mesh-pairing flow on the touch surface. Each step has its own screen. No silent transitions, no modal dead ends.

First boot. Role unset. A hint is shown.
01

First boot. Role unset. A hint is shown.

Pick a role. Tap apply to commit.
02

Pick a role. Tap apply to commit.

On the receiver, open a 60-second window.
03

On the receiver, open a 60-second window.

On the relay, scan for the receiver.
04

On the relay, scan for the receiver.

Mesh up. Confirmed on both ends.
05

Mesh up. Confirmed on both ends.

OVERLAYS

Every transition has its own screen.

Recovery, confirmation, and list views. A node without a second WiFi adapter shows a hint screen instead of a silent empty menu, so the operator knows the feature exists and how to unlock it.

Neighbors with link quality

Neighbors with link quality

Receiver lost, grace period

Receiver lost, grace period

Confirm before leaving the mesh

Confirm before leaving the mesh

Unified error overlay

Unified error overlay

TOUCH

Tap. Swipe. Long-press. Drag.

Gesture classification is shared across every screen with the same thresholds and behavior. Hit zones are page-local so a tile tap maps to the right detail page regardless of theme.

Tap< 400 ms, < 12 pxDrill into a tile or select an item.
Long-press≥ 400 ms, < 12 pxOpen a context menu or start calibration.
Swipe< 250 ms, ≥ 24 pxNavigate between pages.
Drag≥ 250 ms, ≥ 12 pxScroll a list or pan content.

HARDWARE

Three boards today. The profile system takes more.

A new board adds a displays block to its profile and the installer picks it up. No code change in the renderer.

SoC

Cubie A7ZAllwinner A733
Rock 5C LiteRK3582
Raspberry Pi 4BBCM2711

Panel

Cubie A7ZWaveshare 3.5" RPi LCD (A)
Rock 5C LiteWaveshare 3.5" RPi LCD (A)
Raspberry Pi 4BWaveshare 3.5" RPi LCD (A)

Display driver

Cubie A7ZILI9486
Rock 5C LiteILI9486
Raspberry Pi 4BILI9486

Touch

Cubie A7ZADS7846
Rock 5C LiteADS7846
Raspberry Pi 4BADS7846

Resolution

Cubie A7Z480 × 320
Rock 5C Lite480 × 320
Raspberry Pi 4B480 × 320

Display profiles live in each board profile. Adding a new pair is a profile change plus an overlay file.

MISSION CONTROL

The GCS sees what the panel sees.

The Hardware tab mirrors the on-device display state: type, controller, resolution, rotation, last-touch age, current page, and calibration. Calibrate from the desk before the operator walks out the door.

Live mirror

The local-display card shows up the moment the panel binds. If the panel goes dark, the card flips to a degraded state without taking down the rest of the Hardware tab.

Calibrate from the desk

The five-point calibration wizard runs from Mission Control as well as from a long-press on the panel. Calibration data persists across reboots, so the field operator never picks up a drifting surface.

A panel for the field. A tab for the desk.

Wiring, calibration, and supported displays are in the public docs.

Display docs
Get Early Access