MIDI Keyboard with Pitch Bend/Modulation/Velocity Pot/Transposition (A. Nano)

I made a MIDI Keyboard with Pitch Bend, Modulation, Velocity Pot and Transposition (octaves or semitones) on an Arduino Nano.

  • The keyboard I used is a 39 keys matrix extracted from an old organ, I used one 74HC595 to minimize the number of IO required.

  • I used a pot to be able to adjust the velocity (on all the notes)

  • For the pitch bend and modulation I used a analog stick from a joystick (I removed the spring on the modulation axis so it would not reset its position)

  • For the transposition functions I use 3 push buttons: octave up, octave down, “mode”
    If I hold the mode button when pushing up or down I transpose by semitones instead of octaves.
    To reset to the original tuning I just need to hold up and down at the same time.

Everything works really well and I guess that some element of my project might be useful to someone so I will post it here.

Don’t judge me too much on my coding skills, I have no background and only code when I need to achieve a certain goal (I tried to clean the code, it could be worse :wink: )

If you have question about the project I can try to answer!

Thanks

Arduino-MIDI.ino (9.43 KB)

2 Likes

Hi fuegovic!

Sounds like a nice little project you are after completing, congrats!
I'm currently working on a digital thumb piano style instrument for a module in college. I was actually googling how to implement transposition and pitch bend functions to my project just now, so I might learn a thing or two here from you. :slight_smile:

myouth:
Hi fuegovic!

Sounds like a nice little project you are after completing, congrats!
I'm currently working on a digital thumb piano style instrument for a module in college. I was actually googling how to implement transposition and pitch bend functions to my project just now, so I might learn a thing or two here from you. :slight_smile:

Nice, I hope you will succeed! It should be pretty simple to implement to transposition and pitch bend from my code to any projects. If you have any questions don't hesitate to ask!