A poor man DMX

That topic must be discussed hundreds of times, but I haven’t found…

I’m trying to use DIY USB-DMX adapter based on FT232RL-MAX485 сhips. Similar to Enttec Open DMX.Is there any example of vvvv talking to Open DMX or everybody just using Pro versions? Since I’m not using vvvv for commercial projects it’s not possible for me to spend 200$ for interface. Open DMX should be a good option.

That should be simple: just send an ASCII string (looking to West DMX PRO example patch), but what is difference between Open and Pro in terms of protocol? I know that USB PRO version does some buffering before throwing data to RS485 and Open DMX do not obviously.

Any help would be appreciated!

not sure exactly, but this sounds as if it could be useful to you:
littlecat-dmx-engine

Thanks joreg!

It’s working! And it’s a great solution for complex systems with several computers and networking. But do we need an external app running on the same PC just to send ~512 bytes out.

It will be great just have an RS232 node in the end. The main question is how to form proper ASCII string like in West patch for Enttec Pro?

DMX (Devices Enttec_USB_Pro).v4p (20.7 kB)

hey,

there is a c# example on the enttec website for it :)

I quickly put it in a dynamic plugin, but don’t have one here to test it, so I hope it works for you…

I found a ft232 adapter lying around, if someone can confirm that it works on other machines as well, I’ll make a contribution…
updated version attached

@Soriak:

This sounds great, will test it when I get to the office.

@2nz:

I never got the Open to work with rs232, because it isn’t a virtual comport driver.

However, the LittleCat thing Joreg posted, works perfect, you can make vvvv autostart and stop little_cat, you will not even notice it is there.

But if Soriak’s plugin works, you don’t even need that.

WOW! Amazing! Thanks Soriak!

I’ve tested it with real DMX Fixture that I have (simple 30ch Led dimmer). Plugin sends bytes to corresponding channels, but unfortunately LED’s are flickering. For example if LFO gradually increase control signal for 10sec,I can notice peaks from corresponding value to fully open dimmer (like 1 or 255 value). And there are a lot of them (seems like 5-10HZ frequency).

Double checked wiring,hardware,etc. The situation is the same with two different PC (Win XP, Win 8.1). At the same time littlecat-dmx-engine work well, so I suppose it’s not a hardware related problem.

just had a quick look and found a super stupid bug on my side… I was multiplying the incoming values by 255 - twice.

If that would explain your flickering, this version should work now
If not, then I’ll hook it up to a dimmer and see what’s going on…

also, right now there is a 25ms break after each writing process, this might be too much, but that’s what was suggested in the example, if you feel like it should be faster, one could maybe lower that time…

Enttec,DMXOpenDMX.7z (38.4 kB)

Thanks soriak!

Now it’s working great! Super nice contribution.

Just another little dumb question: does Windows COM port speed setting playing any role? Should I set it or just leave by default?

Thanks again!

Seems to work with my Enttec Open DMX USB thingy, so many thnx :)

What does the reset pin do? IF I lower my spreadcount, it seems to remember the previous DMX settings, was thinking reset would fix that. (but I can patch arround so nooo big deal).

Many many thnx!! :)

@2nz
cool, I didn’t touch any comport windows settings, so I’d just leave them like they are (at least that’s not what I meant by the speed improvement) - why would you anyways, are you experiencing weird behaviour?

@Westbam
thanks for testing it, right now the reset button only resets the connection to the device. So it’S not sending all zeros when resetting, but should it? Haven’t thought about it much, might be useful…

edit: read your post again: yeah makes sense. should it maybe even be like in the arnet node, that one input slice = all channels, two input slices = every second channel and so on?

@soriak
About port settings: DMX specifications says that baud rate should be 250kbit/s. I’m not experiencing any problems just want to be sure that I’m doing everything right. Although, led strips lights that I control over DMX not so smooth. I can notice some jitter if changes are slow. I suppose it’s my hardware limitations. Port speed doesn’t affect it.

Continue testing and going to implement optoisolation in my interface next…

Thank you, Soriak!

P.S. Sending zeros might be useful - I think so too. But it’s not that important.

@ Soriak

I cant remember what happens with the artnet nodes, I always make sure I send out 512 values anyways. So the zero’s don’t really mather.

When I unplug the device USB cable, the plugin says it lost connection (cool!) and when I plug it back in, it finds it again (even cooler!).

The only issues it seems to have it doesn’t register the values that are changed in between.

It only detects lost/found connection when I send a fresh DMX value. (when i bang the send pin)

So my only suggestion would be: on connect, bang that change pin, so all DMX values will be set to the current values.

But if we just make sure we don’t loose connection: freaking super sweet work!! :)

@ 2nz

Got a link about you DIY dmx device? I wonder what magic it uses :)

@Westbam

The idea is pretty straightforward: USB/COM adapter(FT232)+ RS485 Driver.
I don’t have schematics, cause it’s dead simple. More or less it’s described here: http://openschemes.com/2011/06/17/homebrew-usb-dmx-interface-with-sparkfun-ft232rl/
Here is Enttec Open schematics:
http://www.enttec.com/dmx_usb/schematic.pdf
I just want to add optoisolation between FT232 and RS485 part (DC/DC converter and optocouplers)

UPD.
Here is photo of my “cheapbox” interface:

now sending zeros and everything faster in general!
see contribution: opendmx-(devices-enttec)

edit: @Westbam I thought about your idea of sending values onConnect, but thought there might be cases when this is unwanted. So it only sends, if you hit send - for now at least.

I’m experiencing strange behavior with my USB-DMX Adapter. The connection is lost after some time of operation. The time is vary from 1/2 hour - 1 hour. Ok, it’s not Enttec, but DIY, so you can suppose it’s hardware problem. But I tried with different PC’s and it’s working great with some and disconnecting with others. I tried Win8.1 desktop PC (fine!), WinXP+Win10 on Thinkpad X220 laptop (loses connection), Win8.1 on Lenovo desktop (loses connection). So situation is vary from PC to PC. FT232 just stop receiving bits from PC.

Mb somebody have some thoughts or ideas to dig for?

just a hunch:

power supply problems?

i myself experienced those quite often.
if you are not experienced in soldering:
few days ago i bought this tiny nice cheap device.
should be precise enough to estimate for go/nogo…

https://www.conrad.de/de/hand-multimeter-digital-voltcraft-pm-37-cat-i-anzeige-counts-999-1299043.html

and never leave the house without:
usbview

Should be power supply…
10+ years smt soldering experience for me, but ft232 side is a breakout board soldered by chinese robot)
Going to continue debugging, thanks @Kalle for useful tools.

about the schematic shown in this therad you can do more and more simpler:
juste use a TTL adaptator with a FTDI chipset to work properly with enttec open: https://moderndevice.com/product/usb-bub-iii/

what you need is just to serialize the serial output with a MAX485 , needs a AMX485 and a resistor.