DMX control with teensy3.6 or External software (Max)

Status
Not open for further replies.

obbligato

Member
Hello,

I am looking for general guidance on how best to implement my project idea. I currently have a MIDI controller built on top of a teensy3.6 where I'm sending MIDI data into Max/MSP for sound. I am interested in expanding this to be able to control DMX lighting however I don't have much experience with it. It seems to me that the two most straight forward options are to:

a) integrate some sort of DMX shield into my hardware and use a library for being able to send DMX data directly

b) leave my hardware unchanged and handle DMX data routing within my Max patch, and then use a USB --> DMX piece of hardware from my laptop.

Option b seems like a simpler solution and since I am already attached to a computer for my sound production I'm not sure how having the DMX aspect of the project more standalone would benefit me.

Any guidance is greatly appreciated! Please let me know if I need to clarify anything or if perhaps there's a better option than what I laid out above.

Thank you
 
I'm curious, how are you getting MIDI from the Teensy into Max/MSP? Do you have a piece of hardware or are you using the USB-as-MIDI feature?

It's also sounding like you're doing sound processing in the program, so that might be the best place to generate what you want for DMX, but then to get it to the outside world, you could either: A) Send the data over USB (assuming it's already connected) to the Teensy and have the Teensy send the DMX, or B) Send it over some USB-DMX dongle. The advantage of A is minimal connections to your computer, not that that's necessarily an advantage. The advantage of B is as you say, you don't need to develop some attachment for the Teensy. Although, I've used the RS485 backpacks from bolderflight.com and they basically just plug-and-play with a Teensy as a little shield you can just plug on; you'd need to connect three pins to a DMX plug, though.
 
I have looked into using Teensy and other MCU devices as a USB to DMX controller and in general found it wasn't worth doing.

By "in general" I mean if you are looking to just control existing DMX devices from a PC. It is quicker and probably cheaper to buy a decent off the shelf solution, like an Enttec Open DMX, and use existing software to generate the DMX output. By the time you build everything out correctly to get a reliable USB to DMX converter you are close to the cost of the off the shelf devices. For example the Enttec Open DMX can be bought for $60-$70, works well with tons of software and is pretty robust.

On the other hand there are cases where it could make sense to "roll your own". If you want to create a device that generates DMX commands on its own without going through a PC. Or you are limited in the number of connections you can have between deceives and you need to create a multi-function converter. Or if you need to convert inputs other than USB to DMX. Or you just want to do it as a learning exercise.

From what I could tell there are already plenty of examples and libraries out there to get a Teensy to output DMX. The biggest potential issue is getting the software on the PC to talk to your device.
 
All good points.

I'd like to add, for those finding this thread, that it is possible to get a Teensy to behave as an Enttec controller. There are additions and other devices you can emulate, but the base protocol is here: https://dol2kh495zr52.cloudfront.net/pdf/misc/dmx_usb_pro_api_spec.pdf (linked from https://www.enttec.com/product/controls/dmx-usb-interfaces/dmx-usb-interface/)

Depending on how the software you're using finds USB serial devices, you may have to type the port name in, eg. `cu.usbserial-` prefix vs. `cu.usbmodem` prefix on the Mac (for Teensys).
 
Status
Not open for further replies.
Back
Top