-->
Page 1 of 2

E1.31 to DMX512 bridge

PostPosted: Sun Nov 16, 2014 11:32 am
by jussi.kilpelainen
Hello,

I am considering using a ESP8266 instead of a Raspberry Pi for a E1.31 to DMX512 bridge. I have progressed to the stage where I am able to send hand-crafted packets to the module using netcat and verifying the DMX512 output using Saleae logic analyzer. I am going to proceed with building a PCB, but in the meanwhile I want to share my code so that others who want to have a (single-ended) DMX512 output don't need to do as much trial and error as I did.

I have attached the code that I have built on top of the AT example. The tricky bit was generating the START & MAB codes by changing the IO mux. I had to modify the uart.c to support two stop bits, 0x03 seemed to be the right setting (was unable to find it documented anywhere, header file had the same bits for 1.5 and 2 stop bits?).

The code is nowhere near finished, but I hope you find it useful. I am also open to suggestions.

Re: E1.31 to DMX512 bridge

PostPosted: Sun Nov 16, 2014 2:54 pm
by jussi.kilpelainen
I think there has been little success in getting ESP8266 multicast reception working. QLCPlus, which I am using for E1.31 generation, doesn't support unicast. I've solved this problem temporarily by resending them as unicast from my Linux PC with socat:
Code: Select allsocat UDP4-RECVFROM:5568,ip-add-membership=239.255.0.1:0.0.0.0,fork UDP-DATAGRAM:192.168.1.180:8888
where 239.255.0.1:5568 is QLCPlus's multicast IP address for universe 1 and 192.169.1.180:8888 is the address my ESP8266 is listening to.

On another note, here is a screencapture from the DMX512 output.Image

Re: E1.31 to DMX512 bridge

PostPosted: Mon Nov 17, 2014 7:52 pm
by RichardS
So this is not the full E1.31 implementation right? Whats it going to take to do the full implementation?

Richard.

Re: E1.31 to DMX512 bridge

PostPosted: Tue Nov 18, 2014 4:06 am
by h2o
Nice project!
I'm thinking about to build a simple wireless DMX receiver with ESP8266. Maybe I can use your code to do this...
Anyway, is the 250000 baud rate supported by the 0.92 SDK?