DMX512
DMX512

Ein DMX-Bus zieht sich durch unsere Räume. Die daran angeschlossenen Geräte sind per Home Assistant und über die Taster am Eingang steuerbar.
Vorhandene Hardware
In Gebrauch
- DMX Splitter: Stairville DMX Splitter 2
- Durch Verwendung von 5pol-3pol-Adaptern können wir insgesamt 4 Zweige benutzen. Das sollte bei den kurzen Entfernungen keine Probleme machen.
- Terminator: 2x American DJ DMX terminal resistor
- Im Grunde nur ein XLR-Stecker mit 110Ω Widerstand zwischen +/-
Nicht mehr in Gebrauch
Kanalbelegung
| +0 | +16 | +32 | +48 | +64 | +80 | +96 | +112 | ||
|---|---|---|---|---|---|---|---|---|---|
| 1 | 128 | ||||||||
| 129 | 256 | ||||||||
| 257 | 384 | ||||||||
| 385 | 512 |
Die Scanner-Tasten am Pult sind in einem 16-Kanal-Raster belegt.
Die Lichter im Vortragsbereich und im Gang zu den Werkstätten sind über die Taste 1, die Lichter im Hackcenter sind über die Taste 2 jeweils auf Kanal 1-7 steuerbar. Page Select drücken, um in die jeweils andere Gruppe zu wechseln.
| Gerät | DMX Channel | DIP |
|---|---|---|
| Scheinwerfer Vortragsbereich (Gruppe A) | 1 - 7 | 1 |
| Scheinwerfer Vortragsbereich (Gruppe B) | 9 - 15 | 1,4 |
| Scheinwerfer Hackcenter (Gruppe A) | 17 - 23 | 1,5 |
| Scheinwerfer Hackcenter (Gruppe B) | 25 - 31 | 1,4,5 |
Integration in Home Assistant

Die Scheinwerfer sind wie folgt im Home Assistant eingebunden:
Home Assistant -> ESPHome -> ESP8266 -> Grove-DMX512 -> Scheinwerfer
ESPHome Config
esphome:
name: dmx
esp8266:
board: d1_mini
restore_from_flash: true
[...]
# example: https://github.com/andyboeh/esphome-dmx512/blob/master/example_4x_adj_vbar_pak.yaml
external_components:
- source: github://andyboeh/esphome-dmx512
uart:
id: uart_bus
baud_rate: 250000
tx_pin: GPIO2 # D4
stop_bits: 2
dmx512:
id: dmx
uart_id: uart_bus
#enable_pin: 33
tx_pin: GPIO2 # D4
uart_num: 1
light:
- platform: rgb
name: "Vortrag Scheinwerfer A"
id: light_a
red: dmx_a_red
green: dmx_a_green
blue: dmx_a_blue
on_turn_on:
- lambda: |-
id(dmx_a_macro).set_level(0.0);
id(dmx_a_speed).set_level(0.0);
id(dmx_a_mode).set_level(0.0);
id(dmx_a_dim).set_level(1.0);
on_turn_off:
- lambda: |-
id(dmx_a_dim).set_level(0.0);
effects:
- random
- platform: rgb
name: "Vortrag Scheinwerfer B"
id: light_b
red: dmx_b_red
green: dmx_b_green
blue: dmx_b_blue
on_turn_on:
- lambda: |-
id(dmx_b_macro).set_level(0.0);
id(dmx_b_speed).set_level(0.0);
id(dmx_b_mode).set_level(0.0);
id(dmx_b_dim).set_level(1.0);
on_turn_off:
- lambda: |-
id(dmx_b_dim).set_level(0.0);
effects:
- random
- platform: rgb
name: "Hackcenter Scheinwerfer A"
id: light_c
red: dmx_c_red
green: dmx_c_green
blue: dmx_c_blue
on_turn_on:
- lambda: |-
id(dmx_c_macro).set_level(0.0);
id(dmx_c_speed).set_level(0.0);
id(dmx_c_mode).set_level(0.0);
id(dmx_c_dim).set_level(1.0);
on_turn_off:
- lambda: |-
id(dmx_c_dim).set_level(0.0);
effects:
- random
- platform: rgb
name: "Hackcenter Scheinwerfer B"
id: light_d
red: dmx_d_red
green: dmx_d_green
blue: dmx_d_blue
on_turn_on:
- lambda: |-
id(dmx_d_macro).set_level(0.0);
id(dmx_d_speed).set_level(0.0);
id(dmx_d_mode).set_level(0.0);
id(dmx_d_dim).set_level(1.0);
on_turn_off:
- lambda: |-
id(dmx_d_dim).set_level(0.0);
effects:
- random
output:
# Group A RED
- platform: dmx512
channel: 1
universe: dmx
id: dmx_a_red
# Group A GREEN
- platform: dmx512
channel: 2
universe: dmx
id: dmx_a_green
# Group A BLUE
- platform: dmx512
channel: 3
universe: dmx
id: dmx_a_blue
# Group A MACRO
- platform: dmx512
channel: 4
universe: dmx
id: dmx_a_macro
# Group A SPEED/STROBE
- platform: dmx512
channel: 5
universe: dmx
id: dmx_a_speed
# Group A MODE
- platform: dmx512
channel: 6
universe: dmx
id: dmx_a_mode
# Group A MASTER DIM
- platform: dmx512
channel: 7
universe: dmx
id: dmx_a_dim
# Group B RED
- platform: dmx512
channel: 9
universe: dmx
id: dmx_b_red
# Group B GREEN
- platform: dmx512
channel: 10
universe: dmx
id: dmx_b_green
# Group B BLUE
- platform: dmx512
channel: 11
universe: dmx
id: dmx_b_blue
# Group B MACRO
- platform: dmx512
channel: 12
universe: dmx
id: dmx_b_macro
# Group B SPEED/STROBE
- platform: dmx512
channel: 13
universe: dmx
id: dmx_b_speed
# Group B MODE
- platform: dmx512
channel: 14
universe: dmx
id: dmx_b_mode
# Group B MASTER DIM
- platform: dmx512
channel: 15
universe: dmx
id: dmx_b_dim
# Group C RED
- platform: dmx512
channel: 17
universe: dmx
id: dmx_c_red
# Group C GREEN
- platform: dmx512
channel: 18
universe: dmx
id: dmx_c_green
# Group C BLUE
- platform: dmx512
channel: 19
universe: dmx
id: dmx_c_blue
# Group C MACRO
- platform: dmx512
channel: 20
universe: dmx
id: dmx_c_macro
# Group C SPEED/STROBE
- platform: dmx512
channel: 21
universe: dmx
id: dmx_c_speed
# Group C MODE
- platform: dmx512
channel: 22
universe: dmx
id: dmx_c_mode
# Group C MASTER DIM
- platform: dmx512
channel: 23
universe: dmx
id: dmx_c_dim
# Group D RED
- platform: dmx512
channel: 25
universe: dmx
id: dmx_d_red
# Group D GREEN
- platform: dmx512
channel: 26
universe: dmx
id: dmx_d_green
# Group D BLUE
- platform: dmx512
channel: 27
universe: dmx
id: dmx_d_blue
# Group D MACRO
- platform: dmx512
channel: 28
universe: dmx
id: dmx_d_macro
# Group D SPEED/STROBE
- platform: dmx512
channel: 29
universe: dmx
id: dmx_d_speed
# Group D MODE
- platform: dmx512
channel: 30
universe: dmx
id: dmx_d_mode
# Group D MASTER DIM
- platform: dmx512
channel: 31
universe: dmx
id: dmx_d_dim