DIY DMX USB adapter for the Z

I managed to make a DIY USB DMX adapter that’s compatible with the OP-Z. DIY DMX output to addressable LEDS from the Z using an Arduino, some code and couple LEDs that I had lying around :grinning: Uses code that emulates the enttec DMX USB protocol and then converts the DMX to work with the addressable LEDS. This is super easy to convert to a conventional 3 pin DMX Adapter which will function pretty much exactly like the enttec USB pro which is Already compatible with the Z. It’s going to be surprisingly easy to build a DIY USB DMX adapter that works with the Z and can potentially connect to non traditionally DMX lights too if you have a little bit of coding knowledge. This is just a first little test. I have a lot of addressable LEDs lying around so planning to make my own lights and will put a tutorial up eventually if anyone wants to build their own USB DMX adapter.


Wow that’s really great! Keep up the work and keep us updated :grinning:

Super project!
Please keep us informed!
Can’t wait for your tutorial…

@Multi_Sensor that’s wicked. Any chance you could share the code? We’re using teensy ATM , but via DMX not USB DMX, happy to share back what I come up with, using pixel grids to make features.
Here’s some vids of me using DMX fixtures/DIY analogue fixtures/DMX and the OPZ!


1 Like

Sure thing. Just going to fix my code up a little but it uses the enttec DMXUSB Repository on
I found that the Arduino/teensy needed to use the ftdi USB serial chip for comms for it to work with the Z. Managed to get it to work with an Arduino Nano this morning

1 Like

This is awesome. Were you using the teensy for custom lights and DMX while interacting the Z with the enttec Usb pro?

1 Like

New DMX test using arduino and neopixels connected directly to the OP-Z.


@Multi_Sensor cheers. All lights were with the Enttec. I used DMX>PWM boxes for the dimming of the custom fixtures.
We’re not there with the teensy yet, TBH we were taking in DMX to the Teensy after the Enttec. Hopefully this work from yourself and the DMXUSB GH will get us closer. I want to make custom DMX fixtures within a pixel grid.
Do you think this might work with Teensy, or do I need an FDTI Arduino?


1 Like

I started off using a teensy but getting it to be detected by the Z natively was a bit of a problem. I think the Z only recognises certain FTDI serial devices which is why the Arduino with ftdi serial chip worked. The enttec DMX devices that currently work on the Z all Use ftdi chips from what I can tell.


Just a little bit of progress. Controlling more LEDS than before. Waiting for parts to arrive so that I can connect a 3 pin DMX port to this and test it on the big lights at a local music venue. Pretty confident it will work larger scale if it works here.


Superb!that looks amazing my friend…
My experience so far is only enttec usb pro works! I guess that is a ftdi chip as you said
Before i had the Enttec open usb widget, but I can confirm that it does nothing to the op-z

However mine stops working properly after a few seconds to 1 minute and it only stops working if I press play on the sequencer…
If I dont press play I can change color mix and it works just fine/ would be great if it would work when the seq runs
Send an email to TE, no response so far :frowning:
If you like to check out my topic:
“Dmx on op-z ( json question)”
There is also more info on other things related to dmx on op-z
Always interested in your opinion…
Goid luck with yr project!

@guyken1 are you using a powered hub, I had that problem when powering the Enttec directly from the Z.
People have also reported problems with older firmware on the Enttec.

Thanks for yor reply , very kind!
I have the kingston Nucleum and it is not stable, to be more precise , the sequencer still works but at an unusable 10bpm or something no possibilities to alter anything?
Cheers mate

Are you powering the Kingston nucleam or plugging it directly into the enttec without additional power? From what I’ve seen, the enttec pros have been working pretty seamlessly for most, minus some apparent slow downs in playback and tempo on the Z that some people seem to have been reporting

The kingston Nucleum is powered by a ipad power plug(+2.1A) and then my dmx fixture is connected with the Enttec usb pro and that is connected directly to the Nucleum usb hub(with a Usb B(from enttec usb pro) to usb A(to Nucleum hub 3.1 usb) cable… correct I assume?
If I plug the Nucleum in the op-z direct without ext power it makes a weird buzz(not enough current from the op-z I suppose…), I m convinced that this usb hub always needs power, or from a macbook(with usb c) or from a high Amp power plug…

@Multi_Sensor What is the name/brand from the led strip(the big ones) you are using and what is the price range for this… very interested in this led pixel stuff ;-))

Really cool! Thanks for showing this.

I was not able to find actual instructions in the thread, but it is suprisingly easy to do: simply run the default example for the “DMXUSB” Arduino library called “DMXUSB_FastLED”, adjust the “NUM_LEDS” to the number of LEDs you want to drive (16 works fine), and connect any LED strip supported by the FastLED library to an Arduino nano - Adafruit Neopixels, generic WS2812, the new APA102/Dotstar LEDs, take your pick!

The trick, as @Multi_Sensor hinted at, is that you need an Arduino with a FTDI chip, since this is the kind of serial-to-USB chip the OP-Z expects. The Arduino nano works great for that.

1 Like

@Multi_Sensor Can I ask you a little question?
what did you change in the arduino file to let the op-z adress 4 leds at once?
Meanwhile I got so inspired by your setup that I tried to make a similar setup, it works really good,
except that I can only adress 16 leds from my 144 leds on my strip?
Any small help or a nudge in the good direction would be fantastic…
If you find the time
Thanks in advance

Sure thing. I defined “blocks” in the code and then created some for loops that repeat the leds. I’ll link my messy code below but what it essentially does is use “NUM_BLOCKS” to define how many leds you want in each grouping. I’m currently using a ftdi chip connected to a teensy3.2 board driving a strip of about 150 WS2812b leds and have gotten nice long strings to work.

A video showing my little setup