Emulate USB DMX from ArtNet

1,085 views
Skip to first unread message

Benjamin Kesselring

unread,
Nov 20, 2013, 10:05:01 PM11/20/13
to open-l...@googlegroups.com
Hello, all! I just discovered OLA, and am trying to figure out if it can solve a problem I have: I need to get DMX data to a Mac program that only receives data from the Enttec DMX USB PRO, but I don't want to run a DMX cable all the way to the computer However, my lighting console supports ArtNet, and I know that OLA can translate between different protocol.

Background out of the way, here's my question: Is there a way I can use OLA to receive DMX signals over ArtNet, then emulate an Enttec DMX USB PRO and convert the ArtNet signal into whatever the Enttec adapter would send to the computer? Or, if OLA can't do this, does anyone have any other suggestions for an application that can do something along these lines?

Sorry for the totally newbie question, and thanks in advance for any help,
- Ben

Simon Newton

unread,
Nov 20, 2013, 10:15:09 PM11/20/13
to open-lighting
OLA can't emulate an USB Pro, but if you're happy to attach one to
your mac you could do the following:


Lighting Console >---- (ArtNet) -----> Computer* running OLA ----->
USB Device >--- (DMX) ----> USB Pro ----> Mac.

It's a bit hacky but it'll work.

* For the computer you can use a normal PC if you have one spare, or
alternatively an embedded PC like a Raspberry Pi or Beaglebone.

Simon


> - Ben
>
> --
> The Open Lighting Group: open-l...@googlegroups.com, #openlighting (irc.freenode.org)
> To unsubscribe from this group, send email to open-lightin...@googlegroups.com
> For more options, visit https://groups.google.com/groups/opt_out?hl=en

Peter Stuge

unread,
Nov 21, 2013, 10:25:36 PM11/21/13
to open-l...@googlegroups.com
Benjamin,

Benjamin Kesselring wrote:
> does anyone have any other suggestions for an application that can
> do something along these lines?

A USB device requires a kernel driver. If you are capable of kernel
driver development you could develop your own kernel driver which
creates a fake EntTEC USB device. No application can ever do that.


Simon Newton wrote:
> alternatively an embedded PC like a Raspberry Pi or Beaglebone.

A Beaglebone could be used to create a fake EntTEC USB device,
doesn't require kernel development, but does require strong USB
competence to develop software which looks like the EntTEC device.


I think you need to pay someone or take a different approach.

//Peter

Hippy

unread,
Nov 21, 2013, 10:33:20 PM11/21/13
to open-l...@googlegroups.com

First of all, forget about making a ENTTEC device emulator, make a dmxking emulator instead... Secondly it's a serial port, making a tty serial port wouldn't require kernel driver development I believe, but would require some development since OLA works the other way around.

Jason Kyle

unread,
Nov 21, 2013, 10:41:13 PM11/21/13
to open-l...@googlegroups.com

Depending on the software package it could be VCP or D2XX. The later requires way too much effort to emulate.

We’ve actually had customers with this exact scenario purchase 1x eDMX1 and 1x ultraDMX Micro. Job done and < $200.

 

Best Regards,

 

Jason Kyle

DMXking.com / JPK Systems Limited

Benjamin Kesselring

unread,
Nov 21, 2013, 10:59:32 PM11/21/13
to open-l...@googlegroups.com
Hmmm. If I have to buy hardware, I may as well just run a DMX cable to the Mac.

Thanks, all! Lots of good suggestions. I'll definitely keep them in mind.

Simon Newton

unread,
Nov 22, 2013, 12:16:12 AM11/22/13
to open-lighting
On Thu, Nov 21, 2013 at 7:59 PM, Benjamin Kesselring
<bskess...@gmail.com> wrote:
> Hmmm. If I have to buy hardware, I may as well just run a DMX cable to the Mac.

Does your software allow you to select the serial port it uses?
https://code.google.com/p/macosxvirtualserialport/ in combination
with some code in OLA may do what you want and keep it all on one
machine.



Simon


>
> Thanks, all! Lots of good suggestions. I'll definitely keep them in mind.
>

Simon Newton

unread,
Nov 22, 2013, 12:13:57 PM11/22/13
to open-lighting
On Thu, Nov 21, 2013 at 9:16 PM, Simon Newton <nom...@gmail.com> wrote:
> On Thu, Nov 21, 2013 at 7:59 PM, Benjamin Kesselring
> <bskess...@gmail.com> wrote:
>> Hmmm. If I have to buy hardware, I may as well just run a DMX cable to the Mac.
>
> Does your software allow you to select the serial port it uses?
> https://code.google.com/p/macosxvirtualserialport/ in combination
> with some code in OLA may do what you want and keep it all on one
> machine.

I've got it working. I just need to add the code into OLA now.

The caveat is this will only work if your software uses the VCP
driver, if it uses D2XX you're out of luck.

Simon

Benjamin Kesselring

unread,
Nov 24, 2013, 1:47:22 AM11/24/13
to open-l...@googlegroups.com
Simon,
Part of the troubleshooting for this software is to make sure no FTDI or D2XX drivers are installed, so if VCP is the default driver for the Enttec DMX USB PRO, then your idea could definitely work. Would you mind sharing how you got it to work? I'm a total newbie at serial port emulation and interfacing, so a step-by-step outline would be greatly appreciated.

Simon Newton

unread,
Nov 24, 2013, 12:48:07 PM11/24/13
to open-lighting
You can test it out like this:

Install socat (port install socat)
In one window run: nc -kl 10002
In another window, as root run:

socat -d -d -d PTY,link=/dev/cu.usbserial-1234,raw,echo=0,ignoreeof
TCP4:127.0.0.1:10002

In the output you should see something like:

2013/11/24 09:44:49 socat[92517] N PTY is /dev/ttys017

Fix the permissions (as root):

chmod a+rw /dev/ttys017


Then startup your app. See if it finds a device and if you see
anything in the terminal running nc or socat.

In my testing socat shows:

2013/11/24 09:44:49 socat[92517] N starting data transfer loop with
FDs [3,3] and [5,5]
2013/11/24 09:45:36 socat[92517] I transferred 5 bytes from 3 to 5
2013/11/24 09:45:36 socat[92517] I transferred 5 bytes from 3 to 5
2013/11/24 09:45:36 socat[92517] I transferred 5 bytes from 3 to 5
2013/11/24 09:45:36 socat[92517] I transferred 6 bytes from 3 to 5

As the app tries to communicate with the device.


Simon

Jannis Achstetter

unread,
Nov 24, 2013, 3:33:48 PM11/24/13
to open-l...@googlegroups.com
So you basically relay serial data over network?
There's a software / kernel driver for linux that allows you to redirect
USB devices over TCP/IP: http://usbip.sourceforge.net/

That way you could attach a remote enttec usb device to the mac via your
existing network.

Don't know if this might help (works on Mac OS X?) or if the original
poster doesn't have an Enttec device at all (didn't get clear to me).

Best regards,
Jannis

Simon Newton

unread,
Nov 24, 2013, 10:40:31 PM11/24/13
to open-lighting
On Sun, Nov 24, 2013 at 12:33 PM, Jannis Achstetter <kri...@gmail.com> wrote:
> So you basically relay serial data over network?

Not long term, that's just to see if Ben's app is going to work. If it
does olad will listen on the other end of the pty directly rather than
doing any network traffic.


> There's a software / kernel driver for linux that allows you to redirect
> USB devices over TCP/IP: http://usbip.sourceforge.net/
>
> That way you could attach a remote enttec usb device to the mac via your
> existing network.
>
> Don't know if this might help (works on Mac OS X?) or if the original
> poster doesn't have an Enttec device at all (didn't get clear to me).

Thanks for the link, that's an interesting project.

Simon

Benjamin Kesselring

unread,
Nov 24, 2013, 11:29:52 PM11/24/13
to open-l...@googlegroups.com
I won't be back at work where I can test this until Wednesday. But I'll definitely give it a shot when I can. Thanks a ton!

Also, for the record, I do have an Enttec USB DMX PRO, but it's given me nothing but trouble - half the time it doesn't work, and the other half it's incredibly laggy. . . So I thought maybe I could use some software workaround to skip the asleep of using the Enttec device.

Hippy

unread,
Nov 24, 2013, 11:33:12 PM11/24/13
to open-l...@googlegroups.com

Amen!

On 25/11/2013 2:29 PM, "Benjamin Kesselring" <bskess...@gmail.com> wrote:
I won't be back at work where I can test this until Wednesday. But I'll definitely give it a shot when I can. Thanks a ton!

Also, for the record, I do have an Enttec USB DMX PRO, but it's given me nothing but trouble - half the time it doesn't work, and the other half it's incredibly laggy. . . So I thought maybe I could use some software workaround to skip the asleep of using the Enttec device.

Jason Kyle

unread,
Nov 24, 2013, 11:45:00 PM11/24/13
to open-l...@googlegroups.com
Is the enttec box used for DMX in? I know of some issues in that scenario
that would explain your observations.

-----Original Message-----
From: open-l...@googlegroups.com [mailto:open-l...@googlegroups.com]
On Behalf Of Benjamin Kesselring
Sent: Monday, 25 November 2013 17:30
To: open-l...@googlegroups.com
Subject: Re: [open-lighting] Emulate USB DMX from ArtNet

Benjamin Kesselring

unread,
Nov 25, 2013, 9:44:16 AM11/25/13
to open-l...@googlegroups.com
Jpk,
Yes, it's used solely for DMX in. It worked for a day, broke, I did a restore, it worked for a week, and then I couldn't get it to work again and it kept telling me the device was corrupted and needed to be restored.
Support said it either needed to be reset in some special way or the DMX run was too long, but I know the DMX worked because I tested an LED TriPar with the same cable.

So yeah, I'd rather hack together a software solution than deal with how buggy the Enttec device has been.

Jason Kyle

unread,
Nov 25, 2013, 11:36:33 AM11/25/13
to open-l...@googlegroups.com
Okay so I've spent a long time analysing how this device works in receive
mode because I make a drop in replacement. In essence the enttec unit cannot
actually keep up with full rate incoming DMX512 which results in some odd
behaviour including dropping the effective rate to around 5fps which is
where your lag comes from. If you use the send on change mode and start
fading large or spread ranges of channels things go wrong pretty quick too.
We've had a range of issues to deal with because people have written
software that never expected to see *all* the DMX frames actually arrive
over USB, probably the most amusing being Pangolin Quick Show which bombs
above a certain frame rate but not with the enttec pro because it's broken
too! In this case 2 broken parts almost make a working system but many end
users need to add a DMX decelerator ahead of the enttec pro to achieve
stability since under some circumstances you do get higher frame rates.
So if you want all the DMX frames over USB get rid of the pro unit and use
an ultraDMX. For software like Quick Show we've also built in DMX
decelerator functionality so you can set how many frames per second are
forwarded over USB. Not trying to advertise, just making sure you know it's
a common problem and there's a real solution out there.

Best Regards,

Jason Kyle
DMXking.com / JPK Systems Limited

-----Original Message-----
From: open-l...@googlegroups.com [mailto:open-l...@googlegroups.com]
On Behalf Of Benjamin Kesselring

Benjamin Kesselring

unread,
Nov 25, 2013, 12:33:41 PM11/25/13
to open-l...@googlegroups.com
Jason,
I've considered purchasing a DMXKing adapter, but I want to see if there's a way to do this with software via network instead, partially because of not wanting to use a long DMX run and partially because I'm not particularly keen on spending more money on this project.

That said, I'll definitely keep getting an ultraDMX in mind. Thanks for the suggestion.

Jason Kyle

unread,
Nov 26, 2013, 5:45:06 PM11/26/13
to open-l...@googlegroups.com
I'm also curious to see if this emulation works out since it would be a neat
solution.

-----Original Message-----
From: open-l...@googlegroups.com [mailto:open-l...@googlegroups.com]
On Behalf Of Benjamin Kesselring
Sent: Tuesday, 26 November 2013 06:34
To: open-l...@googlegroups.com
Subject: RE: [open-lighting] Emulate USB DMX from ArtNet

Simon Newton

unread,
Nov 30, 2013, 9:18:28 PM11/30/13
to open-lighting
Any luck? I'm trying to decide if I spent the time to add this.

Simon

Benjamin Kesselring

unread,
Dec 3, 2013, 7:40:27 PM12/3/13
to open-l...@googlegroups.com
I haven't got a chance to test yet, I've been busy setting up for a children's choir event at my church. It's this Wednesday, so I should be able to give it a shot in a week or so. Sorry for the delay.

Simon Newton

unread,
Dec 11, 2013, 10:52:04 PM12/11/13
to open-lighting
Did you ever get a chance to test this?

On Tue, Dec 3, 2013 at 4:40 PM, Benjamin Kesselring
<bskess...@gmail.com> wrote:
> I haven't got a chance to test yet, I've been busy setting up for a children's choir event at my church. It's this Wednesday, so I should be able to give it a shot in a week or so. Sorry for the delay.
>

Benjamin Kesselring

unread,
Dec 15, 2013, 6:27:34 PM12/15/13
to open-l...@googlegroups.com
Is there a binary version of socat? I tried to test using the VSP app, but I don't have access to a Mac with the developer tools.

Simon Newton

unread,
Dec 15, 2013, 10:42:33 PM12/15/13
to open-lighting
Try this: http://nomis52.net/data/socat


Simon

On Sun, Dec 15, 2013 at 3:27 PM, Benjamin Kesselring
<bskess...@gmail.com> wrote:
> Is there a binary version of socat? I tried to test using the VSP app, but I don't have access to a Mac with the developer tools.
>
Reply all
Reply to author
Forward
0 new messages