Skip to the content
2 layers100 × 45 mmDMX PWM LED Driver, the printed circuit board in 3D

DMX PWM LED Driver

tpanajott/DMX512_LedDimmer4

Wireless DMX512 controller with remote LED driver boards

Size
100 × 45 mm
Copper layers
2
Thickness
1.6 mm
Parts
57
Nets
48
Pads
148
Tracks, vias
188, 72
Pours
5
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
19 Jan 2022
Updated
2 Apr 2023

Overview

DMX PWM LED Driver is an open-source printed circuit board by tpanajott, from the tpanajott/DMX512_LedDimmer repository on GitHub. It is a 2-layer board of 100 × 45 mm with 57 parts on 48 nets, routed with 188 tracks and 72 vias.

It is built around the ATMEGA328P-AU, MAX485ED and LM2594HVM-5.0, with the MCP1416-E/OT and IRLZ44N among its other parts. Its parts include 13 capacitors, 9 resistors, 6 connectors, 4 ICs and 4 diodes. It belongs with the AVR (ATmega, ATtiny) boards of this library.

Main components

5

README

README.md

DMX512 Controller with remote LED drivers

This is a wireless DMX512 controller that will accept input of channel data via MQTT, web interface or manual control of a channel via button input. It has built in support for MQTT auto-registration in Home Assistant. The controller can take up to four inputs for buttons that can control 4 channels of DMX data. Each LED Driver board is configured to drive 350mA LEDs and each LED Driver board can be configured for a channel separately.

Features

  • Auto-registration of channels to Home Assistant via MQTT.
  • Setup AP to configure parameters to connect to WiFi.
  • Web interface to dynamically configured all settings without changing the code.
  • Multiple buttons can control the same channel.
  • Many settings for controlling dimming behaviour.
  • Control of up to 4 different channels of lights.

Settings

SettingDescription
Device nameUsed as WiFi hostname, MQTT client name and as "device name" in Home Assistant.
Serial log levelThe desired log level for serial output. Simply leave at "Error" or "None" when installed as no serial monitor will be there to capture it.
Connect to WiFiThe WiFi SSID (WiFi name) to connect to. Bu pressing the "List"-button a list of all available networks can be shown and a network selected.
WiFi PasswordThe password (PSK) for the chosen WiFi.
Minimum button press timeThe time, in milliseconds, a button must have the same state before it is considered a press.
Time before dimmingThe maximum time for a button to be considered a "press". If the button is still held after this amount if time the channel will start dimming.

Channel Settings

SettingDescription
SliderThe slider can be used to control brightness directly from the web interface.
EnabledWether the channel is in use or not.
NameThis is used as the light name in Home Assistant.
ChannelThe DMX channel to send data on. This must match the "slave" card that is connected to the actual LEDs.
Minimum LevelMany LEDs simply don't light below to low a voltage. This setting will force at least the light level as the minimum. By using the slider for the channel and noting the value in "Current Output" this value can be found quiet easily.
Maximum LevelThe maximum light level.
Dimming SpeedThe time, in milliseconds, between each step up/down when dimming via a button input.
Auto-Dimming SpeedThe time, in milliseconds, between each step up/down when dimming via web interface or MQTT.
Hold PeriodThe time, in milliseconds, to wait at min/max positions before switching direction and dimming again.

Button Settings

SettingDescription
EnabledUsed to enabling checking of button input.
ChannelThis must match a configured channel in the "DMX Channels"-section. This is the DMX-channel to control.

MQTT Settings

SettingDescription
MQTT ServerThe address to the MQTT server to be used.
MQTT PortThe port of the MQTT server.
MQTT Base TopicThe configured MQTT topic for Home Assistant to listen on. The default in Home Assistant is "homeassistant/".
Used MQTT authenticaion?Check if using username and password for authentication to MQTT server.
MQTT UsernameThe username to use for login at the MQTT server.
MQTT PasswordThe password to use for login at the MQTT server.

Images

Web Interface

Index WiFi_list

Controller board

Front Back

LED Driver board

Front

Bugs

  • Input for Button 3 does not work. This needs a redesign of the PCB and for it to use an other GPIO input.

Parts

57
QtyValueFootprintReferences
4100nFCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC1, C5, C11, C13
310kResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR3, R4, R6
3CONConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP3, JP4, JP5
3G***kibuzzard-63E822E4kibuzzard-63E822E4, kibuzzard-63E822E4, kibuzzard-63E822E4
3R_LEDResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR7, R8, R9
210uFCapacitor_THT:CP_Radial_D4.0mm_P1.50mmC6, C7
222pFCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC3, C4
2G***kibuzzard-63E8236Akibuzzard-63E8236A, kibuzzard-63E8236A
2G***kibuzzard-63E8237Akibuzzard-63E8237A, kibuzzard-63E8237A
2G***kibuzzard-63E8231Dkibuzzard-63E8231D, kibuzzard-63E8231D
1+5VDiode_SMD:D_1206_3216Metric_Pad1.42x1.75mm_HandSolderD2
1100nFCapacitor_SMD:C_0805_2012MetricC2
1100uFCapacitor_THT:CP_Radial_D6.3mm_P2.50mmC8
110KResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR1
110RResistor_SMD:R_0805_2012MetricR2
1120RResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR5
1120uFCapacitor_THT:CP_Radial_D8.0mm_P3.50mmC12
11N5817Diode_SMD:D_SOD-123D6
11nFCapacitor_SMD:C_0603_1608MetricC10
11uFCapacitor_THT:CP_Radial_D5.0mm_P2.00mmC9
1ATmega328P-AUPackage_QFP:TQFP-32_7x7mm_P0.8mmU3
1Conn_LeftConnector_JST:JST_XH_B2B-XH-A_1x02_P2.50mm_VerticalJ5
1Conn_RightConnector_JST:JST_XH_B2B-XH-A_1x02_P2.50mm_VerticalJ6
1Crystal_SmallCrystal:Crystal_HC49-U_VerticalY1
1G***kibuzzard-63E822D9kibuzzard-63E822D9
1G***kibuzzard-63E8252Bkibuzzard-63E8252B
1IRLZ44NPackage_TO_SOT_THT:TO-220-3_VerticalQ1
1Jump_Gate_DriverJumper:SolderJumper-2_P1.3mm_Open_Pad1.0x1.5mmJP1
1LED_OUTTerminalBlock_Phoenix:TerminalBlock_Phoenix_MKDS-1,5-2_1x02_P5.00mm_HorizontalJ4
1LM2594HVM-5.0Package_SO:SOIC-8_3.9x4.9mm_P1.27mmU4
1L_SmallInductor_SMD:L_6.3x6.3_H3L3
1MAX485EPackage_SO:SOIC-8_3.9x4.9mm_P1.27mmU2
1MCP1416Package_TO_SOT_SMD:SOT-23-5U1
1PWR_INTerminalBlock_Phoenix:TerminalBlock_Phoenix_MKDS-1,5-2_1x02_P5.00mm_HorizontalJ3
1PWR_OUTTerminalBlock_Phoenix:TerminalBlock_Phoenix_MKDS-1,5-2_1x02_P5.00mm_HorizontalJ2
1Programming_HeaderConnector_IDC:IDC-Header_2x03_P2.54mm_VerticalJ1
1RS485_ERRORDiode_SMD:D_1206_3216Metric_Pad1.42x1.75mm_HandSolderD4
1SW_DIP_x04Button_Switch_SMD:SW_DIP_SPSTx04_Slide_6.7x11.72mm_W8.61mm_P2.54mm_LowProfileSW2
1SW_SPSTButton_Switch_SMD:SW_Push_SPST_NO_Alps_SKRKSW1
1TERM_RConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP2
1WORKINGDiode_SMD:D_1206_3216Metric_Pad1.42x1.75mm_HandSolderD3

More from tpanajott/DMX512_LedDimmer

2
  • 4 layers100 × 39.4 mmDMX ControllerBoard, the printed circuit board in 3D

    DMX ControllerBoard

    tpanajott/DMX512_LedDimmer

    Wireless DMX512 controller with remote LED driver boards

    49 parts4
  • 2 layers100 × 45 mmDMX CC LED Driver, the printed circuit board in 3D

    DMX CC LED Driver

    tpanajott/DMX512_LedDimmer

    Wireless DMX512 controller with remote LED driver boards

    46 parts4

Similar boards

  • 2 layers87.9 × 65.1 mmLora dual, the printed circuit board in 3D

    Lora dual

    radioelf/Lora

    Lora Radio

    58 parts
  • 2 layers39 × 40 mmMdb bridge esp32s3, the printed circuit board in 3D

    Mdb bridge esp32s3

    nodestark/mdb-esp32-cashless

    ESP32-based MDB cashless device for vending machines, supporting EVA DTS DEX/DDCMP telemetry and payments over the MDB protocol via Bluetooth and MQTT

    53 parts190MIT
  • 4 layers116 × 86.4 mmHighpower controller, the printed circuit board in 3D

    Highpower controller

    pypilot/pypilot_schematics

    kicad schematics for pypilot components

    168 parts3
  • 2 layers171.1 × 185.1 mmMpuled, the printed circuit board in 3D

    Mpuled

    abbounassima2/STM32-PLC-Runtime-Engine-and-PCB

    An STM32F407-based PLC runtime engine developed in Embedded C, together with a custom PLC controller PCB and a Renode-based simulation environment.

    189 parts
  • 2 layers100.3 × 75.5 mmRPU1.1-Controller, the printed circuit board in 3D

    RPU1.1-Controller

    CooperW824/KiCAD-Projects

    A place for me to store my KiCAD Projects

    124 partsMIT
  • 2 layers106.5 × 129.9 mmBasix board, the printed circuit board in 3D

    Basix board

    n-lucas/basix-board

    Open hardware embedded I/O controller for automation and IoT projects.

    99 parts

Questions

How big is the DMX PWM LED Driver PCB?

It measures 100 × 45 mm and has 2 copper layers, 1.6 mm thick.

What parts does the DMX PWM LED Driver use?

57 parts, built around the ATMEGA328P-AU, MAX485ED, LM2594HVM-5.0 and MCP1416-E/OT. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the DMX PWM LED Driver KiCad files?

From the tpanajott/DMX512_LedDimmer repository on GitHub, at the commit this page was made from: the board is PCB/DMX_PWM_LED_Driver/DMX_PWM_LED_Driver.kicad_pcb and its schematic PCB/DMX_CC_LED_Driver/DMX_CC_LED_Driver.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the DMX PWM LED Driver design in my own project?

Its repository states no licence, so its author keeps all rights: ask tpanajott before reusing the design.