Connecting A 88 keys Piano keyboard to arduino

Hey guys !

I have a problem. I Got an old piano (Gem Novopiano Dp25), it worked fine with midi until one day the transformer got cooked. So the circuit is fried, can't use it. I'd like to use the keyboard anyway. I have a 9 pin data connector and a 6 pin address connector. The thing that's weird is I can't seem to figure out the matrix because my volt meter won't show anything on any pin that I connect it to when I push any key... And I'm not sure how I'm supposed to do it. I have the 5V + 220K resistor + midi plug part figured out for the midi out but I'm not sure how to connect it to an arduino and to which one... Then again I'm not sure how to write the code ^^" Basically I just want to connect the keyboard to a midi out so I can connect it to my sound card.

Can anybody help me please ? :)

How did you make that measurement? If you used a voltmeter, was the keyboard connected to anything (the old circuit)?

I was thinking that an "old piano" would be made of wood and ivory and you were thinking of putting a switch under each key.

If MIDI is broken then the problem could easily be anywhere inside the box. That will probably disable the other outputs too. You would be extremely lucky if it was only the MIDI connector that's broken.

If MIDI is broken and you want to use MIDI, then try to repair any failed components that you feel competent to repair. If it's still broken, then buy a new one. We're not talking about something that's actually expensive are we?

Were you trying to ohm the contacts with the DVM set to volts?

How do you know the circuitry in the keyboard is any good?

Is the 9 pin connector supposed to get power and ground on 2 of those?

Can you find any docs on the keyboard circuitry? Does it read the keys, hammers or strings?

GoForSmoke: How do you know the circuitry in the keyboard is any good?

Is the 9 pin connector supposed to get power and ground on 2 of those?

Can you find any docs on the keyboard circuitry? Does it read the keys, hammers or strings?

Well the thing is I don't know, and I'm hoping it works.

I don't know that either, is it risky that I try to send 5V + ground to all possible combinations of cable on this?

Nah I couldn't find anything, it's old and it wasn't a good piano when it was released...

aarg: Were you trying to ohm the contacts with the DVM set to volts?

Nope I pu the DVM on ohm, I just wasn't sure on how to call it (I'm French).

MorganS: I was thinking that an "old piano" would be made of wood and ivory and you were thinking of putting a switch under each key.

If MIDI is broken then the problem could easily be anywhere inside the box. That will probably disable the other outputs too. You would be extremely lucky if it was only the MIDI connector that's broken.

If MIDI is broken and you want to use MIDI, then try to repair any failed components that you feel competent to repair. If it's still broken, then buy a new one. We're not talking about something that's actually expensive are we?

By old piano I meant old numerical piano. And putting a switch under each key would be doable but I'm not sure on how to get nice velocity from that :/

It's not just the midi, the transformer got cooked and the circuit got fried too, it was like this : Transformer (with multiple outs, big transformer, don't remember de values) ==> Power Amp ==> Motherboard (with keyboard connections and midi in & out) ==>Control board (with a few buttons to control the original sounds that I wasn't going to use anyway).

I'm just left with a keyboard with the addr and data cables connected to it.

aarg: How did you make that measurement? If you used a voltmeter, was the keyboard connected to anything (the old circuit)?

I took my voltmeter, set it to ohm and connected it to the first and last connections of the cables. Tried both cables, and multiple cable combinations on them.

A little bit more info on the piano :

I got it for 20 bucks from my High School when I was a student there, it was already old and had problems too. I took it home, I cleaned it, tested it, removed parts, cleaned them, put them back and It worked, one day the transformer took the power out in the house and smelled like bacon, the piano was done, but I recovered the keyboard.

Je parle Francais UN PEU en 1972. Now I just murder the tongue by trying so your English is much better than ma Francais!

By old piano I meant old numerical piano. And putting a switch under each key would be doable but I'm not sure on how to get nice velocity from that :/

You mean velocity of key presses, perhaps the force of the press? I played different acoustic pianos before, the feel of the key movements makes so much difference. I tried electric organs in the 70's and 80's... no feel, hated it.

Have you looked inside of the keyboard enough to see what sensors and wiring are in place? You could do a complete gut and replace with piezo disks (know approximate force of key strike) or maybe capacitive sensors that would let you watch the key movement at 5ms or smaller intervals or even tiny magnet per key with a small coil underneath and key movement will cause current flow in the coil, the faster the key moves the more current and higher the voltage to fast 8-bit analog read.

There's probably 10 other ways to sense key movement and yes it would be a Major Project in wiring and code. Don't try if you have a deadline to meet, something new would save you on time+money. If this for love of learning then make sure you are up to the code (or up to learning first) and hardware both.

GoForSmoke: Je parle Francais UN PEU en 1972. Now I just murder the tongue by trying so your English is much better than ma Francais!

You mean velocity of key presses, perhaps the force of the press? I played different acoustic pianos before, the feel of the key movements makes so much difference. I tried electric organs in the 70's and 80's... no feel, hated it.

Have you looked inside of the keyboard enough to see what sensors and wiring are in place? You could do a complete gut and replace with piezo disks (know approximate force of key strike) or maybe capacitive sensors that would let you watch the key movement at 5ms or smaller intervals or even tiny magnet per key with a small coil underneath and key movement will cause current flow in the coil, the faster the key moves the more current and higher the voltage to fast 8-bit analog read.

There's probably 10 other ways to sense key movement and yes it would be a Major Project in wiring and code. Don't try if you have a deadline to meet, something new would save you on time+money. If this for love of learning then make sure you are up to the code (or up to learning first) and hardware both.

Haha yeah I know French is pretty hard, half of France can't even write correctly.

Well I remember flipping the keyboard over and I saw a weird system for the sensors, it's like a little wire between two metal lines that touches either ones, could it be one that should be at 5v and the other at 0 and that creates the velocity ?

Salokain:
Haha yeah I know French is pretty hard, half of France can’t even write correctly.

Remember that half the population will have IQ <= 100. Then forget, it is depressing, and here now it is worse.
Public education budgets were cut badly here again and again since 1981 with only some letups, most blocked by the right wing politicians. Result is now there are jobs for skilled people and too few qualified to fill them according to business leaders.

What special skills? Reading, writing, mathematics, ability to think critically which is enemy of authoritarians. We have a whole class now that thinks people who want liberty (liberals) are all gay communists which is pathetic, non? Where it leads though is only scary.

Well I remember flipping the keyboard over and I saw a weird system for the sensors, it’s like a little wire between two metal lines that touches either ones, could it be one that should be at 5v and the other at 0 and that creates the velocity ?

Those are primitive switches. All a switch does is make or break the continuity of the wires (or other conductors).
The current flows when the circuit is complete. Perhaps the wire pushed by the key conducts differently when pressed harder, if there is any velocity or force (fast press hits harder, yes?) detected.

There is little to go wrong with that wiring though besides corrosion build-up. An eraser for pencil will remove the oxide quickly, works on cellphone charger contacts and other metal without removing the metal. The more oxide, the more resistance until some day too little or no current gets through.

If you ever get to play a grand piano, feel the key movement and look inside at how many links are used to get that feel. It makes more ways to affect the sound. Lesser pianos just don’t have that.

Most of the older digital pianos I've seen worked on a simple velocity scheme usually with sprung rather than weighted keys. So you get purely how fast the key is pressed, nothing really to do with how hard and certainly no aftertouch. It's possibly "measuring" the time taken to go from one bus bar to the other by something as simple as charging up a capacitor.

A picture of the mechanism might help to work out what's going on but without a circuit diagram it's going to be a lot of effort just working out how it's all connected together. You could probably get the keyboard to operate as 88 switches but if the main board, which does all the translation of key to MIDI number and keypress time to velocity code, is dead then you have real problems.

Steve

slipstick: Most of the older digital pianos I've seen worked on a simple velocity scheme usually with sprung rather than weighted keys. So you get purely how fast the key is pressed, nothing really to do with how hard and certainly no aftertouch. It's possibly "measuring" the time taken to go from one bus bar to the other by something as simple as charging up a capacitor.

A picture of the mechanism might help to work out what's going on but without a circuit diagram it's going to be a lot of effort just working out how it's all connected together. You could probably get the keyboard to operate as 88 switches but if the main board, which does all the translation of key to MIDI number and keypress time to velocity code, is dead then you have real problems.

Steve

The main board is indeed dead... I'd rather not get a picture of the circuit because I made my desk in an old piano frame, and the screws to hold the keyboard are under the studio speakers mounts, I'd have to disassemble everything... If I were to just connect the connectors to say like an arduino uno how should I do it ? Basic circuit with +5V, ground, 220k resistor and midi plug ok but I'm not sure on what plugs I should connect the keyboard, do the data cables matter ?

Do you know what signals appear on these 9-pin and 6-pin connectors you're talking about? I'm guessing they used to connect the keyboard to the main circuit board in the piano. A normal 88 key keyboard with velocity uses 176 switches, 2 per key to give the keypress time, and that means something like a 22 x 8 matrix. You can't easily squeeze that onto 15 pins so there seems to be some electronics between the keyboard matrix and your connectors. How sure are you that the keyboard electronics still work?

Unfortunately unless you know exactly what signals are on those connectors there's no real point trying to connect them to an Arduino.

A quick Google suggests schematics/service manual may be available from http://www.servicemanual.altervista.org/Galanti-Gem-Service-Manual.html but with no real idea how to get hold of a copy.

Steve

There's a serial process and 6 address lines is what I got out of the first post. But how 6 bits addresses 88 keys can't be 1:1.

A normal 88 key keyboard with velocity uses 176 switches, 2 per key to give the keypress time,

Perhaps just one switch as described that completes contact then pushes through? How long that takes would also give time/velocity.

So basically it's pointless going into that much effort for a cheap keyboard... Anyway thanks for the help guys, you helped a lot, you helped me save some money, if I had bought an arduino for that I probably would have ended up not using it lol.

Have a nice day !