30 fader 12 button arduino midi controller
Posted: Thu Mar 02, 2017 2:23 pm
Here is a short presentation of my 42 control (30 faders and 12 buttons) arduino based midi interface to use with QLC+ or any soft that integrate midi control.
It is based on Notes and Volts blog tutorial for an “arduino midi controller: multiplexer” page that you will find here:
http://www.notesandvolts.com/2016/07/ar ... exers.html
Thanks to http://www.notesandvolts.com/ to let me publish his work here.
The video on the page is very clear and there is nothing more to add.
The wiring is very well explained also.
You will be able to make it work easily and the arduino code (call it “sketch”) works well if you follow the explanation on the youtube video.
My controller use 3 cd74hc4067 multiplexer module, called MUX board, wired in //.
PIN S0, S1, S2 and S3 of each MUX board are wired together, PIN SIG 1 and 2 from 2 MUX (fader) board goes to A0 and A1 of the arduino, and the SIG 3 from the third MUX board (button) goes to a digital IN of the arduino.
I have tried more MUX board when coding but the arduino run short of memory with 4 analog MUX board with all the 16 pins of each board coded to be active.
So we have to admit there is a limit in the input and 64 analog input is not possible.
With 30 analog an 12 digital input fro my project, global variables of the arduino code use 1080 bytes (52%) of dynamic memory.
There must be solution to have more input but for the moment that is enough for my use.
I grabbed a very old DMX controller just to have a hard case in which I could wire a lot of fader (the boxing have always been the difficult part of all my project…).
I ended up with a 30 fader/30 button case. That is enough for most application IMHO.
I decided to use only the metal case and I hooked inside 30 new fader and 12 new buttons, for a total of 42 control.
The fader uses 30 PIN of 2 DEMUX board, 15 on the first board, 15 on the second board (one PIN left unused on each board) and the flash button use 12 PIN on the third DEMUX board.
The button are just for flash/scene purpose and I don’t need more than 12.
For button you need to dedicate a MUX board only for digital because you can’t mix digital and analog SIG output.
The output is a midi signal. So you will use midi/usb converter. Mine is directly wired in the case but you can leave it outside of the box of course.
If you wire it inside, you can easily take the USB 5V to run the arduino board. That’s what I have done and it work like a charm. You have only one USB cable to make the controller work and it is recognised as a midi interface.
The midi message for each fader are set in the arduino sketch. You can change them as you need of course but it is more convenient to set them up for once.
For my use, I have distributed the midi note value from 50 to 79 (from fader 1 to fader 30 and each button have the same midi note than its corresponding fader).
That give me room for a specific QLC+widget that I use for theater.
It is a 48 dimmer widget that is set with midi message from 1 to 48.
Generally all theater that uses classical lighting set their dimmer from DMX channel 1 up to 48.
I have set midi message for this widget because I also use touchOSC and an ipad..
I use it for light setup and dimmer check up directly on stage and it is very helpful.
Here are some pictures.
Button are not yet wired because I had hard time to find suitable ones (ones that would fit into the existing mounting holes).
They are on the way home .
Find here some pictures.
https://goo.gl/photos/9xHw2osMHoUu5tMh7
It is based on Notes and Volts blog tutorial for an “arduino midi controller: multiplexer” page that you will find here:
http://www.notesandvolts.com/2016/07/ar ... exers.html
Thanks to http://www.notesandvolts.com/ to let me publish his work here.
The video on the page is very clear and there is nothing more to add.
The wiring is very well explained also.
You will be able to make it work easily and the arduino code (call it “sketch”) works well if you follow the explanation on the youtube video.
My controller use 3 cd74hc4067 multiplexer module, called MUX board, wired in //.
PIN S0, S1, S2 and S3 of each MUX board are wired together, PIN SIG 1 and 2 from 2 MUX (fader) board goes to A0 and A1 of the arduino, and the SIG 3 from the third MUX board (button) goes to a digital IN of the arduino.
I have tried more MUX board when coding but the arduino run short of memory with 4 analog MUX board with all the 16 pins of each board coded to be active.
So we have to admit there is a limit in the input and 64 analog input is not possible.
With 30 analog an 12 digital input fro my project, global variables of the arduino code use 1080 bytes (52%) of dynamic memory.
There must be solution to have more input but for the moment that is enough for my use.
I grabbed a very old DMX controller just to have a hard case in which I could wire a lot of fader (the boxing have always been the difficult part of all my project…).
I ended up with a 30 fader/30 button case. That is enough for most application IMHO.
I decided to use only the metal case and I hooked inside 30 new fader and 12 new buttons, for a total of 42 control.
The fader uses 30 PIN of 2 DEMUX board, 15 on the first board, 15 on the second board (one PIN left unused on each board) and the flash button use 12 PIN on the third DEMUX board.
The button are just for flash/scene purpose and I don’t need more than 12.
For button you need to dedicate a MUX board only for digital because you can’t mix digital and analog SIG output.
The output is a midi signal. So you will use midi/usb converter. Mine is directly wired in the case but you can leave it outside of the box of course.
If you wire it inside, you can easily take the USB 5V to run the arduino board. That’s what I have done and it work like a charm. You have only one USB cable to make the controller work and it is recognised as a midi interface.
The midi message for each fader are set in the arduino sketch. You can change them as you need of course but it is more convenient to set them up for once.
For my use, I have distributed the midi note value from 50 to 79 (from fader 1 to fader 30 and each button have the same midi note than its corresponding fader).
That give me room for a specific QLC+widget that I use for theater.
It is a 48 dimmer widget that is set with midi message from 1 to 48.
Generally all theater that uses classical lighting set their dimmer from DMX channel 1 up to 48.
I have set midi message for this widget because I also use touchOSC and an ipad..
I use it for light setup and dimmer check up directly on stage and it is very helpful.
Here are some pictures.
Button are not yet wired because I had hard time to find suitable ones (ones that would fit into the existing mounting holes).
They are on the way home .
Find here some pictures.
https://goo.gl/photos/9xHw2osMHoUu5tMh7