DMX lighting

A long shot maybe, but did you use a terminator on your DMX line? I didn’t need to myself but in an electrically noisy situation - lots of (high current) wires next to each other - it might make a difference.

I added one; I didn’t notice an immediate impact, though I can’t say it didn’t help when it worked the next day.

1 Like

I feel like this has an obvious yes or no, but I just thought of this right now.

start background
So we’re redoing the first floor and I’m going to put DMX-based lights everywhere with scene controllers. The decoder(s) I’m using (“32 Channel 96A RGBW DMX 512 LED Decoder Controller DMX Dimmer DC5-24V RGBW RGB LED Light 8 Bit/16 Bit” search on amazon because I’m not sure of linking rules) has 8 banks of 4 inputs, 2 each have a power passthrough so you can run +RGBW.

I was watching a video that made a ton of sense about how the next person in your house might not be as techie as you and might want “normal” lights, so running 14/2 along side isn’t the dumbest idea.
end background

So my question is: assuming these all have a common ground, can you just run ROMEX “like normal” and connect it to your mains behind a switch (and not home run everything) and then just use 18/5 for the RGBW and not run the + through the decoder?

Obviously it’s not going to be immediate swap out and it just works, but all the parts would be there to switch back relatively easily (i.e. wouldn’t have to run all new wires or, stupidly, try and push 110V over 18ga wire)

I would think this should work… right?

Yeah that’s the BC-632, from BINCOLOR. I have this one too for testing, but went for a DIN mounted option for the full house wiring.

So my question is: assuming these all have a common ground, can you just run ROMEX “like normal”

Yes, this is what I did as well. Used 3G16 for CW/WW lights, 5G16 for RGBW. Regular cable is cheaper than specially coloured ones, so the colour scheme is not-official. But in principle this should be re-wireable. My switches use the KNX protocol, and a DMX gateway exists for it; that’s my backout plan for if this whole HomeAssistant thing doesn’t take off. :stuck_out_tongue:

I put my dining room light on a regular actuator instead of DMX so that my wife could choose a nice 230V lamp for it. :slight_smile:

You don’t have to care about matching the labels (RGBW) on your controller, it’s all just channels. Just make sure that your power supply is big enough for all of the lights that it controls.

Long DC lines will incur voltage losses, these PSU’s can be configured to slightly overvoltage to compensate for the losses. I’ve put cable spans of similar length on the same PSU. Also there’s a risk that long PWM lines will cause the cable to become an antenna, but I don’t know if this even applies to LED controllers.

(Please ignore the mess on the left hand side, that’s for testing)

I never even thought about (for simple maths) having my power supply do 25V, losing 1V in transit and having 24V at the fixture. I’m still at the “I just barely have a basic understanding of EE” phase, so things like this don’t even occur to me. Definitely much stronger on the software side of things :slight_smile:

Been using HA for a while now and was wondering if there was a way to have HA take in DMX to control entities?

For example if I have a bunch of RGB bulbs, to assign each of them a dmx address and be able to control them from a lighting software or desk over Artnet? And any smart bulbs (non rgb, white only) or smart switches can be used as a desk channel.

I know it sounds silly but would be a pretty cool party trick.

Yes, working on that already currently.

Current implementation is very simple:

image

The new client will have a lot of moving parts, but is able to receive inputs from controllers.

In this case, controllers are subscribed to DMX updates of particular universes of their choice. Your lighting software or desk over ArtNet will, if functioning properly, be able to pick up HA and interface it natively.

1 Like

Big update!

Thanks to @spacemanspiff2007, we now have support for E1.31 sACN and KiNET (in addition to Art-Net).

Besides that, I’ve also merged in the first version of what I’m calling the ArtNet controller, which scans for nodes on the network and generally implements more of the ArtNet protocol.

I’ve released it as a beta currently, as there’s still an issue with fades. I’d appreciate people willing to test the new node-type's. Please find the release notes here:

5 Likes

Spaceman fixed that fading issue, it’s now in the latest release (v0.1.1). This should be stable and I can’t find any more issues.

Doing DMX input up next.


EDIT:

DMX Input is now a thing! :slight_smile:

Quick demo:

Be gentle with it though, updating dozens of light entities at 43 frames per second will bring Home Assistant to its knees.

Also we’re still figuring out how we’ll do reverse output correction, so the values you see may be somewhat off when using that feature.

cc: @peternguyen

2 Likes

Amazing work Breina (and others)… You’ve taken this integration a long way; I appreciate all of the work on it!

1 Like

Hi devs and folks! Thanks for all your work you are putting in!
I am about to renovate a building which was originally built in 1713, with partially very thick walls and in addition with clay plastering which is a kill factor for any wireless solutions. So I started in looking into wired solutions. To be honest I’m not into programming, more into visualization (html, js) - so I have a basic understanding but not deep knowledge of other languages (besides php).
I’m in evaluation what to install in our house. KNX, DMX, DALI? I have a testing environment for Homeassistant already and some DMX luminairs - so maybe I can experiment with that. Is it possible to use an USB connection for experimenting? I saw a mentioning in jnemmo’s git, but can’t get it compiled on my raspi, nor do I know how to install & run it.
Maybe someone can explain on how to get this kind HA->(proxy)->USB->DMX running? Or would you rather recommend starting with a ‘real ethernet-IP’ device right from the beginning?
Thanks in advance, udowsky

1 Like

If you just want to do some testing, you might have a look at The ArtNetominator - Free ArtNet DMX Monitoring and Troubleshooting Software which is a visualization tool that listens to artnet network traffic. If you already made up your mind, I’d go with a real IP-to-DMX device. They aren’t that expensive anyway. In my home, I combined KNX and DMX, with KNX mostly for inputs and blind controllers, and DMX for lights. And of course HA as the link between both ecosystems.

If you want to use that USB, you can install Open Lighting Architecture | onto an embedded device. That in turn will speak ArtNet, which can be accessed by HA.

HA → ha-artnet-led integration → OLA → USB → DMX

But far easier is to get a simple ArtNet (or E1.31 sACN) interface. Then you can go directly.

I’ve got the exact same setup as merijn, using KNX as inputs and blinds, DMX for lights, HA inbetween.

Thank you both for your response! I ordered an interface now, can’t wait to play around with the real stuff! :slight_smile:

Hello, congratulations for the excellent work.
I’ve been using this plugin for a while and it works perfectly.
I used a shelly i3 to turn on lights that are connected to a dmx controller and it works!
I was wondering one thing…
I have lights controlled by shelly, could I do the opposite? From the DMX turn them on and off?
Thank you

Thanks!

I don’t understand how your setup works exactly from your comment. But if you have an ArtNet controller as you say, you can have it send data to HomeAssistant.

Just set node_type to artnet-controller in your config. The light entities can now be updated by your ArtNet controller.

This is a very recent feature though, please be gentle with it.

Hi @Breina ,

Thanks for your amazing work with this plugin!
I am trying to setup the new DMX-input but I can’t get it working :confused:

Maybe you can help me with the following:

  1. When changing the node_type to artnet-controller, which of all the other settings have to be set or removed? (Could you maybe provide an example config?)
  2. Is it possible to assign DMX addresses to entities from other devices? or would I need a “dummy” light and a automation to control existing lights with DMX?

Thanks a lot

Thanks! :slight_smile:

  1. None of the other settings need to be removed. That should be the only change that’s needed.
  2. For now at least, you’d need a dummy light. Our integration can’t alter lights created by other integrations, HA is designed to use automations for that purpose.

As for troubleshooting, can you search the logs for artnet_led and tell me if you see any warnings or even errors?

You can also enable debug logging as such:

logger:
  logs:
    custom_components.artnet_led: debug

oh thanks for the quick reply!

  1. I have added the logger, but the only thing in the logs that shows up is this:
2023-03-12 12:25:08.644 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration artnet_led which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant

My Settings look like this:

- platform: artnet_led
  host: 2.39.2.171                              # IP of Art-Net Node
  max_fps: 25                           # Max 40 per second
  refresh_every: 0                      # Resend values if no fades are running every x seconds, 0 disables automatic refresh
  node_type: artnet-controller          # Which protocol to use
  universes:                            # Support for multiple universes
    1:                                  # Nr of Universe (see configuration of your Art-Net Node)
      send_partial_universe: True       # Only send the universe which contains data
      output_correction: quadratic      # optional: output correction for the whole universe, will be used as default if nothing is set for the channel
      devices:
        # Dimmer
        - channel: 1                    # first channel of dmx dimmer
          name: my_dimmer               # name
          type: dimmer                  # type
          transition: 1                 # default duration of fades in sec. Will be overridden by Transition sent from HA
          output_correction: quadratic  # optional: quadratic, cubic or quadruple. Apply different dimming curves to the output. Default is None which means linear dimming
          channel_size: 16bit           # width of the channel sent to DMX device, default "8bit", "16bit", "24bit" and "32bit" available.
        - channel: 3
          name: my_rgb_lamp
          type: rgb
          transition: 1
          channel_size: 16bit
          output_correction: quadratic
          channel_setup: rbgw           # Auto-calculated white channel
        - channel: 125
          type: color_temp
          name: "my_color_temp_lamp"
          min_temp: 2500K
          max_temp: 6500K
          channel_setup: ch
        - channel: 41
          type: rgbww
          name: my_rgbww_lamp
          transition: 10
        - channel: 50
          name: sp4led_1_dimmer
          type: fixed
          channel_setup:
            - 255
  1. Ok no problem, thought that this would a huge feature request :slight_smile:

EDIT: The IP set is the one of my HA-Pi, as I’ve understand that it acts as an artnet receiver now?

Ah sorry that I didn’t mention it before, but after configuring the logs, a restart is required. You’re showing the logs of yesterday, before the debug option was enabled.

How are you sending DMX data? Make sure you’re sending it to universe 1.

Your IP doesn’t really matter in this mode, it’s mostly ignored. In artnet-controller mode, HA will work with ArtNet in both directions. It will send as well as receive.