LED DYNAMO · LEDDY

DISPLAY SYSTEM / LDY-01

From message
to matrix,
one connected system.

Publish from web, API, or CLI. Stream commands and telemetry over WebSockets. Render deterministic scrolling text on Arduino, ESP32-S3, STM32F4, or Raspberry Pi.

HELLO ↗
192 × 8 ONLINE42 FPS
01PUBLISHweb · API · CLI
02COMMANDWebSocket
03RENDERframebuffer
INPUTMessage + display policy
CONTROL PLANEDesired state + telemetry
DEVICEDeterministic pixels

THE SYSTEM

Every layer has a contract.

Compose, deliver, and render messages without burying device behavior inside the control plane.

01

Compose & publish

Preview and send through the Rust web surface, JSON API, command-line client, or a generated SDK.

HTTP
02

Command & observe

The WebSocket command plane carries desired display state and receives device telemetry.

WS
03

Render predictably

A shared Rust framebuffer, 5×7 font, layout engine, and serpentine addressing turn state into physical pixels.

RGB
04

Recover current state

Reconnecting devices receive the latest desired state without duplicate replay.

REV

DEVICE RANGE

Small ticker.
Long wall.
Same message model.

Board dimensions are configuration, not a product fork. The software targets compact five-row tickers through installations hundreds of pixels wide; physical readiness remains tied to repository-specific smoke-test evidence.

100 × 5recommended working range300 × 20
CONTROLLERS / TRANSPORTSSOFTWARE TARGETS
  • Arduino / ESP32Wi-Fi · serial adapterssoftware
  • ESP32-S3connected matrix firmwaresoftware
  • STM32F4embedded display targetsoftware
  • Raspberry PiRust agent · hardware adapterssoftware
  • Virtual devicesoftware-only E2E certificationtest

PORTABLE CONTRACTS

OpenAPI, AsyncAPI, and JSON Schema keep the fleet legible.

Official clients span native, browser, edge, BEAM, JVM, mobile, and scripting runtimes. The same typed display and telemetry model reaches each surface.

C / C++ / ZigRust / WASMTypeScriptGoDart / SwiftJava / KotlinErlang / Elixir / GleamPython / Ruby / PHP

REPOSITORY MAP

Follow one message through the stack.

Each repository owns a bounded layer. The monorepo coordinates versions and the end-to-end project certifies the whole route.