It is currently Sun Jan 24, 2021 3:58 am

Illuminated thumb pistons with Arduino

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



  • Posts: 10
  • Joined: Sat Jan 20, 2018 11:10 am

Illuminated thumb pistons with Arduino

PostWed Mar 20, 2019 4:10 am

Greetings! Does anyone know how to code an arduino (or two of them) in order to have illuminated thumb pistons? I've been able to wire and code one arduino uno to send midi signals to Hauptwerk, but what do I have to do so that Hauptwerk sends signals to this board? Thank you in advance!
User avatar



  • Posts: 848
  • Joined: Tue Dec 20, 2005 10:31 am
  • Location: Yorkshire, UK

Re: Illuminated thumb pistons with Arduino

PostMon Mar 25, 2019 10:07 am

Santibacanomc wrote: ... but what do I have to do so that Hauptwerk sends signals to this board?

So far as I understand it, and as I have no experience of illuminated pistons I might be wrong, the illumination of a piston simply indicates that this was the last piston pressed within it's own scope.

Since the arduino already knows this, it would seem unnecessary to request HW to return the information; the arduino should simply need to switch on the lamp when the piston is pressed and switch off any other lamps which are in scope.

I suppose there might be an argument for saying that the illumination of a piston should indicate that the combination associated with it is still valid, so it goes out if the combination is changed, through hand registration for example, but I don't think this the normal behaviour of real organs.

Pistons which toggle things like couplers are different though. I would expect that a piston toggling the 'great to pedal' should have its illumination reflect the state of the couple regardless of whether it was changed by a piston press or by hand registration.




  • Posts: 1125
  • Joined: Thu May 07, 2009 9:43 am
  • Location: Vancouver, WA

Re: Illuminated thumb pistons with Arduino

PostMon Mar 25, 2019 10:57 am

It's preferable in my opinion to allow Hauptwerk to control the piston lighting since HW will turn off a piston light if a registration change makes it invalid. Generals and divisional pistons will stay updated correctly if a registration happens to match what is programmed on a piston.

Read the sysex messages from HW and just light or turn off a piston based on the noteOn or noteOff received where normally the echoed code is identical to the code a piston sends.

For those who can use the Teensy devices the USB-MIDI and the sysex message reading is already available and it's just a matter of making a couple of tweaks to the code. Drive the piston lamps or LEDs with something like the ULN2803A device.

Return to DIY organ consoles / MIDI

Who is online

Users browsing this forum: No registered users and 7 guests