dmx

For a few years now I’ve been developing an interactive army of delta robots. This ongoing project is fueled by my desire to control many mechanical extremities like an extension of my body (I’m assuming I’m not the only one who fantasizes about robots here).

Since my army doesn’t have a practical application… other than producing pretty light patterns and making the user feel extremely cool for a minute, I guess you’d call it art. In the past I’ve held a Kickstarter to fund the production of my art which I can now happily show at cool events with interesting people; Maker Faire being one of them.

Interactivity and Sprawling Crowds

Last year, for our debut at the big Bay Area Maker Faire, my collaborator, [Mark], and I displayed a smaller sampling of 30 robots for our installation. We also decided to create an interactive aspect for others to experience. After the end of our crowdfunding period last March, we had a little over a month to do any development before the big event, so our options were slim. The easy solution was to jam our delta code into the hand tracking demo which comes with the Xbox Kinect’s Open NI within Processing. This was cool enough to exhibit, but we hadn’t really anticipated how it would go over in an environment as densely packed as the dark room at Maker Faire.

We should have known better. Both of us were aware that there would be many, many children… all with micro hands to confuse and bewilder the Kinect, but we did it anyway. Our only resolve was to implement the feature that would force the Kinect to track one hand at a time, only after being waved at in a very particular fashion. After needing to explain this stipulation to every person who stopped by our booth over the course of the weekend, we decided never to use the Kinect for crowds ever again; lesson learned.

Delta Robots and DMX

Over the past year since that experience, we’ve tripled the size of the installation and brainstormed some better demo ideas. As of now, the robots are all individually addressable over an RS485 bus, and we use the DMX protocol over a CAT5 cable to send commands. If you aren’t familiar with it, DMX is used in show production to control stage lighting… to which there is a super neat and free application called QLC+ that allows you to effectively orchestrate the motion and color of many individual light units; perfect for our cause.

Functionally, each of the 84 delta robots in the installation believes that it is a stage light (robots with identity issues). We mapped the X and Y axis of the end effector to the existing pan and tilt values, and the z axis to the beam focus value. The RGB of the LED mounted in the end effector of each delta maps directly to the RGB value of the stage light.

By using the sliders in the QLC+ GUI, I could select groups of robots and create presets for position and color. This was great, someone like me who doesn’t really write a lot of code could whip up impressive choreography with little sweat. Additionally, the program comes with a nice visualizer, where you can layout virtual nodes and view your effects as you develop them.

This is the layout of our installation mapped in QLC+. The teal and purple sliders around each light represent pan and tilt (or in our case X and Y):

Lighting control was an interesting solution. Having autonomous robots this year changed how people responded to them, as they were less like an army you’d command and more of a hypnotic field of glowing grass.

[Mark] and I are considering picking up some flex sensors and maybe playing with the Leap or an EEG headset as a means to reintroduce the interactive aspect. Bottom line, I have this cool new toy that I can’t wait to play with over the summer!

Theatrical lighting usually runs with the help of DMX, a protocol that’s basically MIDI for lights; small, lightweight, ancient, and able to run on the lowest spec computers imaginable. For his Hackaday Prize entry, [Alex] figured a regular ‘ol graphing calculator was sufficient to run a complete DMX controller, and with the help of an Arduino, figured out a way to do it.

The hardware for the system consists of a TI-84 graphing calculator, a few bits and bobs in the way of components, and an Arduino Pro Mini powered from the USB port on the calculator. The Arduino handles the transmitting of DMX packets at 250 kbaud using the DMXSimple library over a 5-pin XLR jack.

The software running on the calculator is where the novel part of the project begins. The software is designed to be extremely lightweight, sending packets to the Arduino using the 2-wire link cable. DMX Commands are wrapped up and transferred using the TI-83/84 link protocol, decoded on the Arduino, and sent out to the lighting rig.

While this probably won’t replace the multi-thousand dollar lighting consoles found in theatres, it’s still a very handy and portable tool for debugging lights. It’s also [Alex]’s My First Electronics Project™, and a pretty good one at that.

The project featured in this post is an entry in The Hackaday Prize. Build something awesome and win a trip to space or hundreds of other prizes.

Despite being around for about as long as MIDI, DMX, the industry standard for controlling stage lighting and smoke machines, is still an astonishing expensive protocol to work with. Where MIDI can be banged out with a simple microcontroller – with odd bit rate requirements, no less, DMX testers cost hundreds of dollars. Of course this means the market is wide open for a DIY DMX tester, and over on the projects site [Tony] has just the thing.

For the hardware, [Tony] is using few 4×4 matrix keypads for user input, and a character LCD for the display. With this, he can set any of the 512 lighting channels in a DMX setup to any one of the 256 intensity values. Setting a range of channels to any intensity is a snap, with an extremely cut down command protocol. All the processing is handled by an Arduino, which seems more than capable of handling the DMX protocol thanks to the Conceptionetics DMX library.

While it’s not a full-blown lighting console you’d find in the back of a theatre, it’s more than sufficient to test a lighting rig. It also seems pretty simple to use, just the thing if you’re trying to wrap your brain around some theatrical lighting.

When [Robert] is presented with a challenge, he doesn’t back down. His friend dreamed of reusing some old LED panels by mounting them to the ceiling of the friend’s night club. Each panel consists of a grid of five by five red, green, and blue LEDs for a total of 75 LEDs per panel. It sounded like a relatively simple task but there were a few caveats. First, the controller box that came with the panels could only handle 16 panels and the friend wanted to control 24 of them. Second, the only input device for the controller was an infrared remote. The friend wanted an easy way for DJ’s to control the color of the panels and the infrared remote was not going to cut it. Oh yea, he also gave [Robert] just three weeks to make this happen.

[Robert] started out by building a circuit that could be duplicated to control each panel. The brain of this circuit is an ATtiny2313. For communication between panels, [Robert] chose to go with the DMX protocol. This was a good choice considering DMX is commonly used to control stage lighting effects. The SN75176 IC was chosen to handle this communication. In his haste to get this PCB manufactured [Robert] failed to realize that the LED panels were designed common cathode, as opposed to his 25 shiny new PCB’s which were designed to work with a common anode design. To remedy this, he switched out all of the n-channel MOSFET with p-channel MOSFET. He also spent a couple of hours manually cutting through traces and rewiring the board. After all of this, he discovered yet another problem. The LED’s were being powered from the same 5V source as the microcontroller. This lead to power supply issues resulting in the ATtiny constantly resetting. The solution was to add some capacitors.

[Chris] and his friends were kicking around ideas for a Burning Man project, and this is the one that stuck: a rock climbing wall with RGB LEDs embedded in the holds. The holds themselves were custom made; the group started by making silicone molds of varying shapes and sizes, then added the electronics and poured in polyurethane resin to create the casting. The boards for these LEDs are equipped with a central hole that pairs up with a peg in the silicone mold. [Chris] also solved an annoying spinning problem by affixing a bolt to the far end of the LED board: once embedded in the polyurethane, the bolt provides resistance that the thin board cannot. The finished holds bolt onto the wall with all their wires neatly sticking out of the back to be hooked up to a central controller.

The Instrucables page suggests a few ways to get the lights working, including grabbing the nearest Arduino and relying on the Neopixel Library from Adafruit. [Chris] went the extra mile for Burning Man, however, designing Arduino-software-compatible controller boards capable of communicating via DMX, which expanded the system from a simple display to one capable of more complex lighting control. Stop by the Github for schematics and PCB layouts, and stick around for a video of the wall after the break. If the thrill-seeking outdoorsman inside you yearns for more, check out WALL-O-TRON from earlier this summer.

The choreography for the lighting was planned out using a program called Vixen 2. There is one newer version of the software, but [Paul] needed to translate the output file for use with a microcontroller and version 2 makes this a bit easier than version 3. Speaking of conversion, he didn’t want to start from square one and a bit of searching led to a tutorial which [Bill Porter] posted last year on converting Vixen files for use with Arduino. It wasn’t exactly what he had in mind, but most of the ground work was there.

A few code tweaks bent the script to [Paul’s] will. He changed the XML parsing function to ignore all but the main channels in the file. He also had it output a text file which can be stored on the SD card. Because the output is not being flashed to a chip this greatly increases the storage available paving the way for much longer and more complex shows.

So Halloween finally arrived, we hope you had enough time to pull off your frightening feats in the way you had originally envisioned. Now it’s time again to look to the future and start planning this year’s Christmas decorations. Lights are always a popular theme, and this year you might want to look into DMX lighting controls and decide if that’s a route you want to take. [Akiba] has your back, he just put together a set of videos explaining the DMX lighting protocol and how to use it with an Arduino.

The thought here is that the Arduino can be used as a sort of DMX hub that is connected directly to a computer running open source controller hardware. It can send commands which the Arduino decodes, deciding whether to just pass them on to DMX compatible devices, or to do what it does best and control other hardware that is not normally accessible through the lighting command protocol. To the control program your four-dollar strand of LED lights looks no different from a thousand dollar stage light, making it cheap and easy to build your own entertaining holiday show right in your front yard. See the second video in this series after the break where [Akibo] details the hardware setup for his system. The other parts are available at the link above.