Warning: include(lang/lang_1.php): failed to open stream: No such file or directory in /home/www/custom.colin.dk/index.php on line 9

Warning: include(): Failed opening 'lang/lang_1.php' for inclusion (include_path='.:/php/includes:/usr/share/php') in /home/www/custom.colin.dk/index.php on line 9
Colin Custom



Is likely to be the hardest part. I have a lot of (crazy) ideas which all needs to be taken into account.

The buttons are relatively easy. I need to make a keyscan routine, scanning through all the buttons (a birds nest of wire and ordinary press buttons) and register if any has been pressed. I probably also need to do some debouncing during this. The accordion i am using has about 170 buttons, so even if i use a X-Y setup with a MUX, i need a lot of ports on my central microprocessor.


I bought an Arduino Mega, which seems to offer what i need. It offers 54 digital IO-ports (from which 8 runs serial - 4 TX and 4 RX. I need this for MIDI in/out) and 16 analog inputs.

Besides from the keyscan, i need an air pressure sensor (i found a fitting model at DIYDrones). It measures the pressure at the bellows, and the volume of the active midi-channels should be adjusted accordingly.

As the air pressure sensor is differential, i can measure the direction of the bellows (if the bellows are pulled, it creates a low pressure, if it is pushed, it creates a high pressure). This allows for making a diatonic accordion - melodeon style. I play only the chromatic accordion myself, but it could be interesting doing a five-row melodeon.

Lastly i need some sort of interface. I hope to make it so a few things could be tuned: MIDI-channel (for bass notes, chord tones and melody tones), MIDI-instrument (same as before), semitone- and octave transpose and keylayout.


This part of the controller needs a few extra pieces. I chose a two line LCD-display (serial-controlled, from sparkfun), a rotary encoder with pressbutton (also from sparkfun) and a micro-SD reader (yet again, sparkfun).

I also thougt about it would be nizzle to be able to define macros and assign them to buttons (via the key layout). This could end up in a button panel somewhere on the accordion with macros like "quicktranspose", "change to a specific midiinstrument" or so.

Surely, this will be easy ;-)