It is currently Tue Jun 15, 2021 4:21 pm

SAM Control Module: Arduino

Building organ consoles for use with Hauptwerk, adding MIDI to existing consoles, obtaining parts, ...
  • Author
  • Message



  • Posts: 36
  • Joined: Fri Feb 01, 2019 10:13 pm

SAM Control Module: Arduino

PostSun Mar 10, 2019 8:55 pm

For those of you who have been following my posts on the application of Arduinos to VPOs, this may turn out to be one of the more useful applications, especially those who prefer not to use touch screens.

Sixteen pins accept the input from the switches of sixteen draw knobs or stop tabs. These in turn operate sixteen virtual stops, in my case on Jeux d'Orgues running on an iPad. Any stop turn-ON/OFF messages, transmitted by Jeux d'Orgues, are .decoded and used to pulse the ON or OFF magnets of the draw knob.

I.e., a particular draw knob can now turn its virtual counterpart on and off, and operating the virtual stop on the iPad's touch screen moves the physical draw knob to its on or off position. The draw knob of course also responds to the All Stops Off button and the combination action.

The magnets are pulsed for a maximum of one second duration (adjustable) . If the switch changes its state before the one second is up, the pulse is shortened accordingly. There is also provision for an (adjustable) "follow-through" pulse which may be useful if the action of the draw knob is "sticky."

Drivers are needed to operate the electromagnets in the draw knobs. I used a pair of MOSFET modules (around a dollar each) which are good for 2 or 3 amps. These require that spark suppression diodes be installed. The KA units I was using have provision for this on the little PCB.

I have it on good authority that ULN2003A driver chips (good for 500 mA) will also do the job. I've ordered some (25 cents each in bulk). Each chip has seven independent drivers and are 5V compatible. They have built in diodes and can be powered in pairs if needed. I'm looking forward to trying them.

One Arduino Mega can handle up to 22 stops, but the code gets messier because of the way the pins are numbered. I wanted to avoid that in this "proof-of-concept" version.

It is also possible to add code to allow these modules to be daisy chained. Let me know if you would like to see the code for that.

Disclaimer: I have only been able to test this on my work bench and not in a full scale setup. Experience in the past has taught me not to be overly confident about there being no bugs. One minor, but annoying, nuisance is that the MIDI shield needs to be turned Off during power-up, for reasons I don't understand. I'm going to continue to look for a workaround. Any ideas out there?

As usual, the code can be found on my website. Have fun with it.

Look for: Combination Action.

Return to DIY organ consoles / MIDI

Who is online

Users browsing this forum: engrssc and 5 guests