Teensy 3.2 DMX no 485 needed

Status
Not open for further replies.

isdale

Active member
I;m working on a DMX device using a Teensy 3.2. I have not found a project (forum post or elsewhere) that discusses the wiring, etc. for this setup, so I figured I'd drop notes here.

Currently I have a Win10 PC running DMXControl3, an inexpensive (amazon) usb-dmx cable, an inexpensive DMX 12 led light, dmx out cable to xlr3 breakout from amazon and then into the Teensy 3.2 Serial 1 (RX1 pin 0). Using a modified version of TeensyDMX/examples/BasicReceive (mod to show rgb on 2,3,4 for the simple light.
The light works fine with DMXControl3, setting the DMX interface as "Elector USBtoDMXConverter", and defining a 7 channel device (dim, r,g,b,w, strobe, patterns)...

I had thought that a MAX485 would be needed to interface to the DMX line, but was surprised to find it isn't needed. Actually, if i wire in the Max485 i got from amazon, the moment I connect 5vdc to lights shut down.

DMXControl3: https://dmxcontrol.de/en/dmxcontrol-3
usb-dmx: https://www.amazon.com/gp/product/B07D6LNXF9
xlr3 breakout: https://www.amazon.com/gp/product/B00Q32V2JC
unused Max485 boards: https://www.amazon.com/gp/product/B00NIOLNAG

Next up will be working in control of several strips using the OctoWS2811 board and the Adafruilt NeoPixel library... or my NeoEffects variant that provides not blocking effects on multiple windows/strips. The OctoWS2811 library is not useful here as it expects all the strips have the same length, which is not the case for my next setup.
Aside from some RGBW strips and NeoPixel circles, i have some 12v Led Neon, which i have verified works with the Teensy/Octo setup if i connect the +- for strip to the 12v supply (shared ground via 2 channel bench supply) (https://www.amazon.com/gp/product/B08N9X4PC9)

My DMX notes are being documented at https://hackaday.io/project/179722-dmx-artnet-explorations
more later
 
Note that if you need to use DMX from the computer side via the USB Pro protocol, TeensyDMX has an example that can function as a USB Pro. While the example actually converts the serial commands to DMX signals, you could modify it to control lights instead of sending out DMX. That would save a step or two in the chain.

After that, you could use some USB serial-only protocol and eliminate DMX altogether, unless the software you’re using prefers to output DMX via the USB Pro protocol.

One caveat is that there’s a small chance that the serial port name, depending on which OS you’re using, won’t be picked up by the software. It’s a try-it-and-see thing when using the USBProWidget example.
 
Thanks Shawn.
I enjoyed spelunking thru the TeensyDMX library to see how it all worked. Lots of code to deal with error cases, status, etc.... which is excellent and rarely seen well in FOSS. I was gonna do some more but have run out of time - I have a 2mo gig installing led neon/dmx/artnet starting this week.

Getting rid of DMX entirely is definitely a good direction. No reason we should be stuck with 512 channels and only one universe. DMX is terrible for pixel mapping, but there are alternatives out there. It would be fairly simple (100k linesOfCode) to do artNet/sANC over usb, and with new usb3, as fast as older ethernet ;-)

After hanging neon with Real Production Pros on this gig, I'll be back to do some more work on this project.
 
Status
Not open for further replies.
Back
Top