Showing posts with label DMX. Show all posts
Showing posts with label DMX. Show all posts

Saturday, 11 April 2015

Bluetooth DMX controller update

After a couple of queries from people interested in this project i have decided to post an update to what we have been working on. We have produced a production prototype of the Bluetooth DMX controller to bring it a step closer to being ready for a small run production sample. I also threw together a very basic Android application using MITs application inventor, this let us test the first prototype as well as show off the proof of concept to friends.


The hardware

There were a couple of design iterations building up to the construction of the first production prototype. The production prototype boards are based around an Arduino mini controller and a Roving Networks RN-42 SMD bluetooth module.

The component list in full:
  • Arduino mini
  • RN-42 SMD bluetooth module
  • MAX485 RS-485 serial interface
  • 5V TO-220 regulator
  • 3.3V TO-220 regulator
  • 3 * 10µF electrolytic capacitors
  • 2.5mm barrel jack power connector

You can see the component layout in this early design revision. from the right most side we have the XLR connector, the 8 pin MAX485 IC, the 5v regulator with capacitor above, socket layout for the arduino mini, surface mount pad layout for the RN-42 bluetooth module, 3.3v regulator, two capacitors and the 2.5mm barrel jack power connector. Note that all the thru-hole components are on the non copper side and the bluetooth SMD module is soldered straight onto the copper side of the printed circuit board.




The following is the layout of the first unit built, it has the power components all to the right hand side of the board to simplify the track layout, and have both power and DMX connectors coming out the one end.


For production the design is transferred to a Kinsten positive photo resist board by covering the bare circuit board with the printed design (printed on transparency paper) and exposing it to UV light, in our case using a specially designed UV flruo lightbox. After exposure the baord is still sensitive to light so it must be quickly developed in the Kinsten developer solution. Finally it is ready to etch, I did this using Ferric chloride and an old electric stove in an open area (the fumes can be quite noxious). Last two steps are to give the etched board a coat of circuit board lacquer to prevent the copper oxidising in the air and drilling out the holes for components.

You can just see 4 identical circuits laid out on the large circuit board on the table.


The first constructed prototype.


The current hardware plan is to make a small production run of units with 3d printed cases. We will give these units out to friends so we can get some feedback on what could be changed.

The Android software

The Android software is currently very basic, being able to only address 5 DMX channels via sliders on the touch screen. I built this quickly using the MIT app inventor, a very useful tool for quickly and easily making android applications.
I set up the first 2 channels to be able to strobe between 0 and the selected value on the slider (maximum 255).





I plan on re-writing the application from scratch and will be working to add the ability to assign a group of DMX channels to individual devices (like multi colour LED lights or moving heads). This will allow for a simple and intuitive interface for any screen size.
Following that I will work on enabling the ability to pre-set scenes and animations to be enabled on cue or run on a pre-set timeline.This will bring the functionality of the control software to be on par or better than low end dedicated DMX lighting desks.


Stay tuned.
Matt

Saturday, 1 June 2013

Bluetooth DMX512 controller

DMX512 (Digital MultipleX) is a standard for digital communication networks that are commonly used to control stage lighting and effects. It was originally intended as a standardized method for controlling light dimmers, which, prior to DMX512, had employed various incompatible proprietary protocols. It soon became the primary method for linking controllers to dimmers and special effects devices such as fog machines and intelligent lights. DMX has also expanded to uses in non-theatrical interior and architectural lighting, at scales ranging from strings of Christmas lights to electronic billboards.




The need for a DMX lighting controller came about after I bought my first piece of lighting equipment, a DUNE 3 colour laser projector. This unit has automatic show functions and a sound reactive function, but it isn't enough, I wanted to be able to control the functions of my laser. 
After doing a bit of research into current products available on the market, I found they were either based on a physical lighting desk (expensive hardware), or propriety software systems based on a computer communicating with a usb DMX controller (expensive software/hardware).  In my research I also came across an Arduino software library capable of driving DMX signals, the hardware side of things is very simple, it is based around an RS485 serial communication IC with some supporting circuitry. 

The use of an Arduino microcontroller means that any manner of control could be used, anything from push buttons, to variable resistors, to accelerometer or the idea I had, which was to connect via Bluetooth to my phone. Okay, so it isn't a particularly new idea, but so far I cannot find anyone who has tried doing this open source. I want to be able to drop all of my gear down at an event, plug the power in, and immediately be able to control everything via a wireless connection from my phone. DMX512 supports daisy chaining devices along the same DMX bus, this removes the hassle of wiring back to central location, this plus wireless control should mean a very quick and pain free set up.



This is at the breadboard stage, I have a power supply in the background there supplying 3.3v to the Arduino and Bluetooth module.


I was testing out the functionality with my RGB LED strobe.


 I have changed to a different Arduino module here. The prototype board seen holds the two voltage regulators, a MAX485 chip and all the wiring to go between the Bluetooth and Arduino.


This is how the first prototype looks. My next two steps with the hardware is to design a custom PCB and a 3D printed case to hold everything together a bit more securely.
Looking at the software side of things and it is non existent, the phone and Arduino are currently just communicating via a Bluetooth serial terminal, the DMX library on the Arduino interprets commands and applies them to the DMX bus. The mobile device software side will be something relatively simple and allow for basic control of the DMX channels with possibly some programmable functions.


Just to share, this is my road case of stage equipment, it includes an RGB LED strobe, Dune red, green and cyan laser projector, and a Dune 400 smoke machine.