This E13 module implements a 12 channel WS2811 emulator with compatible bus timing to drive multiplex (charlieplexing) LEDs. The E13 may be cascaded with regular WS28xx chips. The number of LEDs attached is automatically detected (0-12). This module allows the common LED voltage be dynamically adjusted via the bus protocol. The intended use is to drive Multiplex Signals on Model Railway layouts via the WS28xx bus.
Note: The RTB_E13 is nearly identical to the RTB_E15 but allows for variable LED voltage.
User Guides
- User Guide - DE
- User Guide - EN
The decoder has the following features,
- Protocol
- WS2811 compatible timing
- LED ports
- 12 channel output
- Charlieplexing (Multiplexing) output
- 128 step PWM (300Hz)
- Software adjustable LED voltage 0..5V (see also RTB_E15)
- gamma correction (optional)
- firmware update via V24 debug interface
My current PCB layout uses SMD footprints with 0.5mm pitch and 0603 parts. Reflow soldering is my recommendation, but with some experience handsoldering is also possible.
- 2-layer PCB, FR4, 1.6mm
- CPU: AVR64DB32
- BUS: WS28xx
- LED: Charlieplexing
Filename structure: { pcb }{ code }{ version }.hex
Example: E13F0001.hex
Description | |
---|---|
pcb | Name of matching hardware (E13) |
code | Type of code contained (R=rom, B=bootloader, F=flash, U=bld update, P=UPDI factory code) |
version | Release version (####) |
The fuse settings as well as the P-code (E13Pxxxx.hex) has to be installed by using UPDI.
Subsequent code updates can be done via the built-in serial debug interface.
Details
The LED common voltage must be sent as the first byte (virtual LED) over the bus followed by the intensity values for the individual LEDs, with N being the number of configured LEDs.
Byte order: {voltage} {led_0} ... {led_N}
Led Voltage: 5V * {voltage} / 255
This project is intended for hobby use only and is distributed in accordance with the Apache License 2.0 agreement.