Pick-to-Light (PTL)

Industrial-grade RGBW LED guidance system — from custom PCBs to cloud diagnostics.

Hardware Overview

PTL Driver Board

Custom-designed driver board with 28 individually addressable outputs, operating at 12 V. Supports chained LED modules for high-density shelf labelling in warehouse and production environments.

PTL driver board schematic

60 mm Round LED Module

Compact 60 mm circular PCB equipped with 12 V RGBW LEDs. Each module provides full-colour indication with a dedicated white channel for maximum visibility under varying lighting conditions.

PTL LED ring module

Signal Amplifier

External signal amplifier module extends the cable run between the controller and remote LED modules, ensuring clean signal integrity over distances exceeding 25 metres.

Software Overview

ERD Runtime Application Layer

The PTL application logic is written entirely in TypeScript, compiled to ERD bytecode, and executed on the ESP32-based controller via the ERD-TSVM runtime. This enables rapid iteration, type-safe development, and over-the-air updates without recompiling native firmware.

DocStore & Telemetry Integration

Each pick event is recorded in the on-device DocStore database, providing local analytics and enabling synchronisation with a central telemetry backend. Aggregation pipelines support real-time KPI dashboards and historical analysis.

OTA & Diagnostics

Firmware and application updates are delivered over-the-air with signature verification. A built-in diagnostics mode exposes device health, LED channel status, and network connectivity through a local REST endpoint.

Demo Setup

The demonstration rig consists of a single PTL driver board connected to four 60 mm LED modules mounted on a mock warehouse shelf. A laptop running the VS Code extension provides live control, debugging, and telemetry visualisation. The system can be replicated with off-the-shelf components and the ERD toolchain.

Try It Online

Explore the ERD Playground to write and compile TypeScript code that targets the PTL hardware. Compile your programs server-side and inspect the generated bytecode.

Open Playground