-
Notifications
You must be signed in to change notification settings - Fork 13.3k
ESP and DMX Library #712
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
DMX512 is just Asynchronous serial at 250,000 baud, 8 bits, no parity and 2 stop bits. 8n1 also works on the receive (don't try it on a sender). There's a short pause between packets. You can use any serial library capable of those specs.
|
Thanks for responding Can you tell me specifically which library I could use or a project that uses such a library ?. |
The esp8266 serial library can do this. Check the arduino website for docs on how it works.
|
Hi In my case I need a DMX signal to send, here is the code which I tried but it did not work properly like I could do to make it work properly ?. #include <ESP8266WiFi.h> char ssid[] = "SSID"; #define E131_BUFFER_SIZE 638 unsigned char E131Buffer[E131_BUFFER_SIZE]; void setup() int checkE131Headers(unsigned char* messagein, int messagelength) void loop()
} |
Hi, I am currently working on a DMX library. I haven't been able to test it because I lack the FTDI programmer, but by logic it should work. |
FYI I have run some basic tests on Rickgg's DMX library (which he linked to above) using a NodeMCU ESP8266-12E based board and a TI SN75176BP RS485 driver chip. The library seems to work for DMX transmission from the ESP8266 using UART1, only tested with three DMX channels for right now. |
Anyone who ever tried to run DMXSimple on the ESP8266? |
FYI There's nothing magical about the SN75176 that makes communication easier, it's a regular serial to RS-485 transceiver. If someone is using it with a regular digital I/O that's because they're using software serial instead of hardware serial, you could do the same thing with other DMX libraries as well. A disadvantage though is that DMX is fairly timing sensitive and you're likely to get better timing from a real UART interface than from bit-banging on a digital line. As far as using just one pin, that's simply a case of creating a transmit only interface, again other libraries can do the same thing if you're only transmitting DMX and don't need to receive DMX, the chip is just hardwired into always transmit mode. |
The only tricky part is getting the DMX BREAK and MAB. The ESP has native break support though so it makes it easy. Just do the following before starting your 250k 8n2 stream:
Full implementation here - https://github.com/forkineye/ESPixelStick. You'll want to look at SerialDriver.* |
Closing per #3655 . |
Hi
Someone worked with libraries to transfer DMX with Arduino ESP8266 example Conceptinetics, DMXSerial or DmxSimple or know someone how I could edit this library to run under the ESP https://github.com/mathertel/DmxSerial ?.
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
The text was updated successfully, but these errors were encountered: