Avinash Kumar
HomeAboutSkillsProjectsServicesContact
Let's talk
AV

Avinash Kumar

Multi-Stack Software Engineer

Engineering software, systems, and sound into polished technical experiences.

Available for selective work

Explore

HomeAboutSkillsProjectsServicesContact

Connect

EmailGitHubLinkedIn

© 2026 Avinash Kumar. All rights reserved.

A portfolio built around practical engineering and thoughtful design.

Avinash Kumar
HomeAboutSkillsProjectsServicesContact
Let's talk
Avinash Kumar
HomeAboutSkillsProjectsServicesContact
Let's talk
Back to projectsEmbedded Projects

BS DMX Master Controller

A real-time embedded DMX master controller that can run offline sequences, receive live network lighting data, drive dual DMX universes, schedule automatic playback, and safely control DMX-compatible hardware.

BS DMX Master Controller firmware cover frame

DMX master

Year

2022

Role

Embedded firmware development, DMX master control logic, real-time output handling, SD-card sequence playback, live E1.31-to-DMX workflow, RTC scheduling, serial diagnostics, and firmware activation implementation

Problem

DMX-based systems such as fountains, lights, relays, effects, and automation panels often need a compact controller that can work as a standalone master, receive live network control, and run scheduled shows without requiring a full computer or industrial controller. The controller also needs safe output handling and controlled firmware access for authorized hardware.

Solution

The firmware uses an ESP32-S3 as a standalone DMX master controller. It can play FSEQ sequence files and optional audio from an SD card, output two DMX512 universes through RS485, receive E1.31/sACN lighting data over Wi-Fi, and convert live network data into DMX output. A DS3231 RTC enables automatic scheduled playback, while settings.json on the SD card controls runtime configuration. The firmware also includes device-bound activation using the ESP32 chip identity, serial license-key entry, remote HTTP validation, local SHA-256 hash verification, and non-volatile activation storage for offline use after activation.

Outcome

The project creates a reusable embedded controller platform for fountain shows and other DMX-based applications. It can operate as a standalone DMX master, live E1.31-to-DMX receiver, scheduled show player, and safety-focused automation controller. After activation, the firmware remains tied to the authorized ESP32 device and can continue operating offline.

Visual archive

Project frames from the build.

A closer look at the real interfaces, states, and build details behind BS DMX Master Controller.

Circuit diagram for the ESP32-S3 based DMX master controller, showing the dual DMX512 output workflow, RS485 interface wiring, and connections used to drive fountains, lighting fixtures, relay boards, and other DMX-compatible hardware.
Standalone SD-card playback pipeline using FSEQ sequence data with optional synchronized audio output.
Device-bound firmware activation for authorized controller operation.
Prototype hardware build of the ESP32-S3 DMX master controller, showing the controller board, wiring, and connected interface hardware used for testing dual DMX512 output, show playback, and live control workflows.

Build notes

What this project demonstrates.

ESP32-S3 based standalone DMX master controller
Designed for fountains but usable with general DMX-compatible hardware
Dual-universe DMX512 output through RS485
SD-card show playback using FSEQ sequence files
Optional synchronized audio playback for musical shows
Live E1.31/sACN input over Wi-Fi
Can work as an E1.31-to-DMX bridge/controller
Supports multicast and unicast live-control modes
AP, client, and dual Wi-Fi mode support
DS3231 RTC-based automatic show scheduling
JSON-based runtime configuration from SD card
Device-bound firmware activation using ESP32 chip identity
License-key validation through a remote HTTP activation API
SHA-256 based activation hash verification
Activation status stored in ESP32 non-volatile Preferences memory
Offline operation after successful activation
Serial command support for diagnostics, settings inspection, time setup, restart, and deactivation
Safety-off DMX behavior during boot, timeout, playback stop, and error paths
Separate runtime paths for player mode, live mode, scheduler mode, and activation flow

Technologies

ESP32-S3C++PlatformIOArduino FrameworkDMX512E1.31/sACNWi-FiSD CardI2S AudioDS3231 RTCJSON ConfigurationFreeRTOS TasksHTTP Activation APISHA-256ESP32 Preferences