Go Down

Topic: Keyboard/Electric piano controlled by arduino (Read 170 times) previous topic - next topic


Dec 25, 2014, 05:40 pm Last Edit: Dec 25, 2014, 05:47 pm by mban21
As first, I hope my thread is in right place.
So well... I want to make a robot, which will punch my keyboard's (that one to play music on) keys - so it would play music from MIDI files or just programmed keys sequences (for example: G E E C D). That robot would have 61 arms to punch all 61 buttons. Would it be possible, with Arduino, to create such a robot? My major problem is to play - if possible - MIDI files, like you have in synthesia. It'd be like Synthesia in real life - but without PC/laptop. So you transfer some MIDI files to robot, and he plays music from those files. If it's not possible - would be possible to make that robot punch just G E E C D files? I was thinking about using electromagnets on every arm to make robot punch every key on my keyboard.
Something like that: https://www.youtube.com/watch?v=mAAsKEB3q_I but with MIDI notes from SD card (or other source).


Dec 26, 2014, 07:21 am Last Edit: Dec 26, 2014, 07:24 am by CrossRoads
I don't know about the midi part, it's probably possible.
Maybe start with GrumpyMike's page here http://www.thebox.myzen.co.uk/Hardware/MIDI_Shield.html
Having a bunch of drivers, either relays or transistors, to make arms move up & down under Arduino control is certainly achievable. For example, this card I offer has 32 current sinks to energize a motor that could press a key.
4 shift registers are sent 4 bytes of data from an Arduino, 1 for transistor on and 0 for transistor off.

Designing & building electrical circuits for over 25 years.  Screw Shield for Mega/Due/Uno,  Bobuino with ATMega1284P, & other '328P & '1284P creations & offerings at  my website.

Go Up

Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

via Egeo 16
Torino, 10131