PaulStoffregen / DmxSimple

99 stars 21 forks source link

DMX frame tweak needed ! #26

Open damienrivoal opened 2 years ago

damienrivoal commented 2 years ago

Description

I'm sharing my experience with you about a problem I faced and solved to suggest a small tweak in the library.

I experienced a loss of DMX frames on some receivers like the MDG Atmosphere APS (haze machine).

I figured out that it was because of the format of the DMX frame. The break time of 88µs was actually too short for that receiver (even if it's theoretically OK). I changed it to 92µs and it solved the problem (which is also OK with the DMX norm).

Steps To Reproduce Problem

I used an MDG Atmosphere haze machine with an Arduino Mega 2560 connected to a Max485 module generating DMX frames (I built an homemade Artnet Node). When I tried to level up the first DMX parameter of my haze generator to make the yellow LED turn ON (indicating “HEAT ON”), I saw it blinking randomly instead of staying lit, like it didn't receive a consistant DMX signal.

The red DMX presence LED indicator stayed lit correctly and wasn't blinking, only the yellow HEAT LED was acting oddly. I tried to monitor the DMX frame (DMX channel address and value) and it was good. Moreover the signal was correctly interpreted by other hardware connected to the same DMX line.

The problem was really about the timing of the BREAK period in the DMX frame which leaded to problems on some hardware and worked perfectly on others.

Hope this can help some of you who might be experiencing odd behaviors on some DMX receivers !

Damien Rivoal

Hardware & Software

Board : Arduino MEGA 2560 Clone Shields / modules used : Ethernet shield V1, Max485 Module Arduino IDE version : 1.8.13 Version info & package name (from Tools > Boards > Board Manager) : 3.1.0 Operating system & version : macOS : 11.3