It is currently Thu Mar 28, 2024 7:59 am


Arduino

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

engrssc

Member

  • Posts: 7283
  • Joined: Mon Aug 22, 2005 10:12 pm
  • Location: Roscoe, IL, USA

Arduino

PostSun Jul 04, 2021 8:07 pm

I have been looking for opportunities to learn more about Arduino . I see basically some interesting possibilities. With the possibilities, there are also some drawbacks. One of the biggest drawbacks that I see are the very poor ways to make connections to Arduino boards. Those pin and jumper cables are fine for tinkering and/or experimenting. But for any serious must work consistently situation, they are prone to problems, one of the biggest reasons I've stayed far away from Arduino.

And yes, there are adapters with screw terminals which I detest as well. The only real solution for me is soldered in place such as IDE multi pin connectors (along with ribbon cables). Permitting swapping boards in mere seconds. But that's me. Do that with any Arduino board. :shock: I've just finished building such an adapter board for the encoder mentioned in another thread.

https://forum.hauptwerk.com/viewtopic.php?f=15&t=19550&start=15#p148809

To make such an adapter at all practical, one would need to create a custom PCB. Would need a point to point PCB assemble program that isn't cost (and time) prohibitive.

Then too, is the skill of the programmer. Learning programming is akin to learning how to play an instrument - an organ maybe? Takes time, creativity, perseverance and even some dedication, yes? There is an apparent difference in the code between the above encoder for a single keyboard and the one used here, both of which use the same Arduino Mega 2660 board.

https://www.midikits.net/midi_3_8x8_8x4_8x5_3_exp/midi_3_8x8_8x4_8x5_3_exp.htm

Certainly not trying to lessen the creativity of the code creator for the single keyboard. That (coding) example got me to stick my toe into the coding/sketch water. 8) :)


Speaking about the above, there is only one Hauptwerk (whose name is Martin D) with many "wannabe's" that for my buck, don't cut it. Not saying I could even begin to write the first line of code, but there certain is a huge, huge difference. None of the above "drawbacks" have turned me off re: Arduino because for (just about) every problem, there is a solution. Depends on how much time and (in most cases) money a person wants to "throw" at it. Years ago, I actually enjoyed "tinkering". Now, not so much. More interested in results. Maybe due to aging and realizing one has just so much time to do things. I have many ideas that MAYBE could be solved and become reality with Arduino. Dunno :roll:

And I'm looking to "compile" the best ways to accomplish this. Thoughts?

Rgds,
Ed
Offline

larason2

Member

  • Posts: 751
  • Joined: Thu Feb 04, 2016 9:32 pm

Re: Arduino

PostSun Jul 04, 2021 9:30 pm

I like the midi boutique boards, but now that I’ve discovered how to program arduino’s, I don’t think I’ll go back. I think there is actually only a small amount of code you need to learn, and while I’ve not mastered it yet, I’m happy with where I am currently. Once you have a bit of knowledge, then you can actually wire all kinds of organ style controls very easily and cost effectively. As for the connectors, there are so many options. What I’m doing now is soldering the wire ends of my midi connectors to jumpers, which all connect directly to the Arduino. The jumpers I’ve bought hold in quite firmly, and can easily be rewired if the code changes. For cables, I just crimp on an IDC connector and use male to male jumpers to make all the connections. No custom PCB’s required.
Offline
User avatar

engrssc

Member

  • Posts: 7283
  • Joined: Mon Aug 22, 2005 10:12 pm
  • Location: Roscoe, IL, USA

Re: Arduino

PostSun Jul 04, 2021 10:17 pm

Lots of options for sure. My adapter has 4 - 16 pin IDE male headers, and input and thru MIDI - 5 pin din connectors. With extension pins mounts on top of the Arduino Mega and plugs directly into it. It is held in place using 6/32 nylon standoffs. The negative, it takes a couple hours to assemble. Since it mounts on top, of the Arduino, it has the same footprint. OTOH, I can use an already assembled encoder and if I figure my labor cost plus the Arduino itself, the assembled encoder is smaller and cheaper. As I see it, Arduino is most useful for special, custom applications vs trying to reinvent what is already commercially available

Rgds,
Ed
Offline

larason2

Member

  • Posts: 751
  • Joined: Thu Feb 04, 2016 9:32 pm

Re: Arduino

PostSun Jul 04, 2021 10:40 pm

I agree with you Arduino is better for custom applications. Also, if you’re a developer you can do standard applications pretty cheaply. For standoffs, I just bought a large coil of polyethylene tubing from the hardware store, then attached the boards using a #4 screw of the right length. You could do two layers pretty easily doing this, and save yourself some time.
Offline
User avatar

mdyde

Moderator

  • Posts: 15443
  • Joined: Fri Mar 14, 2003 1:19 pm
  • Location: UK

Re: Arduino

PostMon Jul 05, 2021 3:04 am

[Topic moved here.]
Best regards, Martin.
Hauptwerk software designer/developer, Milan Digital Audio.
Offline

Coenraads

Member

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

Re: Arduino

PostMon Jul 05, 2021 6:39 pm

I'm very leery of making it appear that I'm blowing my own horn, but I also realize that there are always members who are new to the Forum. For anyone interested in Arduino applications for pipe organs and VPOs, I invite them to peruse my website for the code I've written for a variety of applications.

https://sites.google.com/site/casavantopus400/

Even if you decide not to use the code, it may give you ideas about how to approach things.

Caveats: I believe the code works and would appreciate hearing from anyone who finds errors.
My programming life started with FORTRAN and punched cards, and my programming style may still reflect this. I'm certainly not a C expert and I simply taught myself enough to do the things I needed to do. The set of instructions used is remarkably small dealing mainly with reading switches and turning on drivers while performing a bit of logic in between.

In some cases I have even experimented with foregoing FOR loops altogether and simply writing out lines of code repeatedly (copy and paste) and then editing in the numbers that change. Some may prefer to follow this "linear code" approach.
Offline
User avatar

engrssc

Member

  • Posts: 7283
  • Joined: Mon Aug 22, 2005 10:12 pm
  • Location: Roscoe, IL, USA

Re: Arduino

PostMon Aug 02, 2021 4:26 pm

https://wiki.keyestudio.com/Ks0342_Keyestudio_MEGA_2560_Compatible_Board_Advanced

https://www.amazon.com/gp/product/B07Q8F414X/ref=ppx_yo_dt_b_asin_title_o02_s00?ie=UTF8&psc=1

There are various similar models, only the Advanced version is higher (output) powered.

Edit: This board works nicely as a decoder (LED drivers). Since it doesn't have a crystal etc, you'd need to use:

https://www.amazon.com/gp/product/B01H4ZLZLQ/ref=ppx_yo_dt_b_asin_title_o06_s00?ie=UTF8&psc=1

for a MIDI encoder.

Rgds,
Ed
Last edited by engrssc on Wed Aug 04, 2021 3:18 pm, edited 1 time in total.
Offline

jkinkennon

Member

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

Re: Arduino

PostTue Aug 03, 2021 11:53 am

One of the best things in the Arduino world is how it has caught on for programming a variety of more powerful microcontrollers such as the Nucleo boards from STMicroelectronics and especially the Teensy series from http://www.pjrc.com. Now SparcFun has a series of carrier boards with interchangeable processors using the M.2 connector. Check out https://www.sparkfun.com/micromod

I've ordered a pair of the Teensy processors along with the ATP (all the pins) and the Input and Display carrier boards. I'm urging SparcFun to consider selling a couple of carrier boards aimed at the VPO market in hopes of seeing some standardization in how we approach building encoders, decoders, and a variety of associated PCBs. A carrier board with a couple of SPI ports, a pair of analog inputs, and 8 general purpose open collector drive outputs for lamps and relays would be useful for any number of projects so I'm hopeful they will be interested.

All my work is open source so I have no financial interest in this project but would sure like to see a flexible platform and choices of quality software made easily available.

EDIT: To go back to Ed's first post about connection issues, the first thing I liked about the MicroMod system was the labor savings soldering pins and making cables. I suggested that SparkFun do a standard JST 6-pin cable much like their 4-pin cable for i2c devices. The other nice choice is the flat flex cables but they are a bit more expensive and not yet such a familiar choice for DIY folks.
Offline
User avatar

dw154515

Member

  • Posts: 439
  • Joined: Mon Nov 12, 2012 1:52 pm
  • Location: Indianapolis, IN

Re: Arduino

PostSun Aug 22, 2021 12:00 pm

So, this has actually sparked my curiosity about using an Arduino setup to replace the unreliable relay system in my little three-rank Wicks pipe organ.

https://organforum.com/forums/forum/pipe-organs/classic-church-pipe-organs/749443-3-rank-wicks-rebuild

I'm not very familiar with Arduino - I just ordered one of their learning kits to tinker with.

I also found Coenraads Casavant 400 website, where it looks as though he's used Arduino in that large pipe organ. So it appears this is very possible.

What sort of hardware configuration is required? I don't need combination action - I just need to scan two manuals, pedals, 2 expression pedals and a row of stop tabs.
Drew A. Worthen
Master of Music in Composition - Butler University
http://www.drewworthen.com
Director of Music & Website Admin - Greenwood UMC
http://www.greenwoodumc.org
Design Engineer - American Sound and Electronics - Indy
https://americansound.cc/
Offline
User avatar

engrssc

Member

  • Posts: 7283
  • Joined: Mon Aug 22, 2005 10:12 pm
  • Location: Roscoe, IL, USA

Re: Arduino

PostSun Aug 22, 2021 1:06 pm

Hi Drew, I sent you a message on your web site along with my cell #. I can give you lots of info, easier to talk.

Rgds,
Ed
Offline

Coenraads

Member

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

Re: Arduino

PostSun Aug 22, 2021 1:27 pm

The organ (Casavant Opus 400) pictured does not have an Arduino, But an even larger Casavant in the city does, where I used it to implement a piston (European style) sequencer. I addressed the idea of using Arduinos to implement an organ switching system when it appeared that I might be involved in moving a pipe organ to a new location. That fell through but I pictured the basic idea here:

https://organforum.com/forums/forum/pip ... pipe-organ

Basically I would use one Arduino for each keyboard to parallel scan the keys and its stops and perform the unification and duplexing. I would use more Arduinos, one for each rank to decode the serialized data and through suitable drivers operate the chest magnets. In your case, 5 Arduinos in total. Arduinos are cheap and I prefer using multiple Arduinos instead of diode matrices.

If you are using the existing keyboard switches, they may not operate reliably on 5 volts in which case I recommend scanning them at 15 volts and then use resistors and Zener diodes to bring the signal down to under 5 volts.

It may not be worthwhile scanning the expression pedals since each one uses at most 16 wires and the pedals are probably not equipped with potentiometers.

On my website you'll find code for a parallel scanner and I'm told it operates reliably. There is also code for a decoder but when I tried using it yesterday, it gave me some grief by not turning off notes that were "flicked" on and off very briefly. So no guarantee.

On the same website you will find code for a Pipe Organ Front End where I unified a four rank positive organ to about a dozen stops. It may give you some ideas.

Always happy to share what I have learned. John
Offline
User avatar

IainStinson

Member

  • Posts: 1391
  • Joined: Tue Dec 29, 2009 6:08 pm
  • Location: NW England, UK

Re: Arduino

PostSun Aug 22, 2021 2:10 pm

If you are replacing the pipe switching you will need to be able to drive every magnet in the organ (pipes, swell engine stages, tremulant etc.) from the micro controller.

If the instrument has a general crescendo pedal (often small extension organs have a blind crescendo pedal (which does not move the stop (keys)), you may want to handle that too.

Interesting ideal... my three rank organ ( Flute 16 - 2 96 pipes, Salicional 8-4, 72 pipes, Diapason 8-2 84 pipes, 6 stage swell engine and tremulant) is still using the solenoid operated 1950's multi switches (which seem fine as long as they are kept clean).

Iain
Offline
User avatar

dw154515

Member

  • Posts: 439
  • Joined: Mon Nov 12, 2012 1:52 pm
  • Location: Indianapolis, IN

Re: Arduino

PostSun Aug 22, 2021 10:11 pm

IainStinson wrote:If you are replacing the pipe switching you will need to be able to drive every magnet in the organ (pipes, swell engine stages, tremulant etc.) from the micro controller.

If the instrument has a general crescendo pedal (often small extension organs have a blind crescendo pedal (which does not move the stop (keys)), you may want to handle that too.

Interesting ideal... my three rank organ ( Flute 16 - 2 96 pipes, Salicional 8-4, 72 pipes, Diapason 8-2 84 pipes, 6 stage swell engine and tremulant) is still using the solenoid operated 1950's multi switches (which seem fine as long as they are kept clean).

Iain


You are correct in all of the above. The problem with mine, is that it doesn't get used "regularly," and spent many years virtually unused, so there's a lot of dirty contacts it seems. It's very hit and miss. I am not willing to throw a ton of money into my project, as it just isn't worth it. However, a few Arduinos and some time tinkering sounds reasonable.

Coenraads wrote:The organ (Casavant Opus 400) pictured does not have an Arduino, But an even larger Casavant in the city does, where I used it to implement a piston (European style) sequencer. I addressed the idea of using Arduinos to implement an organ switching system when it appeared that I might be involved in moving a pipe organ to a new location. That fell through but I pictured the basic idea here:

https://organforum.com/forums/forum/pip ... pipe-organ

Basically I would use one Arduino for each keyboard to parallel scan the keys and its stops and perform the unification and duplexing. I would use more Arduinos, one for each rank to decode the serialized data and through suitable drivers operate the chest magnets. In your case, 5 Arduinos in total. Arduinos are cheap and I prefer using multiple Arduinos instead of diode matrices.

If you are using the existing keyboard switches, they may not operate reliably on 5 volts in which case I recommend scanning them at 15 volts and then use resistors and Zener diodes to bring the signal down to under 5 volts.

It may not be worthwhile scanning the expression pedals since each one uses at most 16 wires and the pedals are probably not equipped with potentiometers.

On my website you'll find code for a parallel scanner and I'm told it operates reliably. There is also code for a decoder but when I tried using it yesterday, it gave me some grief by not turning off notes that were "flicked" on and off very briefly. So no guarantee.

On the same website you will find code for a Pipe Organ Front End where I unified a four rank positive organ to about a dozen stops. It may give you some ideas.

Always happy to share what I have learned. John


I spent some time browsing your site. I'm just not entirely certain what I'm looking at, honestly. I am not familiar enough with Arduino yet to understand what hardware is needed. A schematic would do me a lot of good. Any idea where to find one.

And as for the Swell pedal, I had considered adding a POT to the pedal and using it to drive a servo. I would be quieter and smoother than the 6-stage pneumatic motor that currently drives them. Though, seeing the pneumatics operate is quite fascinating.
Drew A. Worthen
Master of Music in Composition - Butler University
http://www.drewworthen.com
Director of Music & Website Admin - Greenwood UMC
http://www.greenwoodumc.org
Design Engineer - American Sound and Electronics - Indy
https://americansound.cc/
Offline

Coenraads

Member

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

Re: Arduino

PostMon Aug 23, 2021 11:08 am

There is no doubt in my mind that this project can be handled very nicely with Arduinos. But it is a fairly complex project and does require some background in electronics and programming. Your background appears to be in music but you also describe yourself as a field engineer. Perhaps you could give an indication of your experience in these areas.

Engineering begins with the console. If it is the usual phosphor bronze mess, it will not be 5V compatible. I've tried that route and I ended up continually having to clean the contacts. Ideally one would replace the keyboards with Allen keyboards which are already matrix wired and easy to scan (see code on my website). The pedalboard too will probably need to have reed switches installed. Alternatively, scanning will have to be done at 15 V with its attendant complications.

At the other end, drivers will be needed to operate all the magnets. And since these are direct electric, current requirements will have to be considered and the larger magnets may have to have paralleled drivers. BTW, my Arduino count is incorrect. These being extended ranks, you will need two Arduinos per rank, not one.

Then there is the software. This is too complex to "program at a distance." During the debugging stage, the programmer will have to be on site to deal with the inevitable problems that arise and which will have to be sorted out.

If I lived next door, I'd say let's go for it. In the meantime, try out the Arduino and be amazed by its versatility. But it is too early for circuit diagrams.
John
Offline
User avatar

dw154515

Member

  • Posts: 439
  • Joined: Mon Nov 12, 2012 1:52 pm
  • Location: Indianapolis, IN

Re: Arduino

PostMon Aug 23, 2021 6:04 pm

My Mega 2560 kit came today. I've been tinkering with it all day. I am not terribly familiar with coding in C+, so that's the biggest learning curve at the moment.

I did get in touch with Artisan about supplying all the hardware for my little Wicks. The cost isn't terrible. In the end, that will likely be the path of least resistance.

In the meantime, I plan to keep tinkering with the Adruino.

I have a small one-manual continuo that I am building. Maybe this will come in handy there.

http://forum.hauptwerk.com/viewtopic.php?f=15&t=19768&p=148220&hilit=Continuo&sid=bdd842182b3abb61299ef3d97354d4c5&sid=3c5f1b872e906833f839b1a2169d0eac#p148220

FWIW - I don't describe *myself* as a "Field Engineer," it's just my corporate-assigned job title, which, in my opinion is a bit of an eye-roller. :roll: I build A/V technology and control systems. Most of what I work with is within the realm of Crestron, Extron, QSYS, etc. I've never messed with the Arduino platform. I've seen it around for a long time and have wanted to play with it. Luckily, I'm off work this week and will get some time to tinker.
Drew A. Worthen
Master of Music in Composition - Butler University
http://www.drewworthen.com
Director of Music & Website Admin - Greenwood UMC
http://www.greenwoodumc.org
Design Engineer - American Sound and Electronics - Indy
https://americansound.cc/
Next

Return to DIY organ consoles / MIDI

Who is online

Users browsing this forum: No registered users and 2 guests