Close
0%
0%

Midi Concert Harp

This is a 44 strings concert harp using individual pinch strenght on each string to produce midi events played using zynthian/Pianoteq

Similar projects worth following
The goal about this project was to create a concert harp for my daughter.
Designed on fusion 360 (work in progress).
Strings are guitar strings. Strenght on ech string while pinching is monitored using cheap strain gauge (chineses ones used in balance) coupled with an AD620 amplifier.
Amplifiers are linked to an arduino Due (9 string per board) on the analog input.
I also used digital pins on the arduino to get a capacitive touch on each string but that was a dead end ( 99 % of reliability, not enough for an instrument).
Rise up and down of each string is monitored : A rise down triggers a midi event to usb port (using midi usb library).
Usb is connected to a raspberry Pi using Zynthian with Pianoteq layer.
Everything is playable. I now have to build pedals to get half tones up and down. Not technically a big deal, but I have to find some time for that. For now, half tones are selectable using a arduino touchscreen.

I planned to build a midi harp (cheaper, no need to tune it and intersting project).

It will be made with composite material but wood is used for now, till I get the final hardware configuration.

I want to keep the touch for the harpist, so I didn't want to use touchless strings (like laser ones).

I wanted to use both string strengh and capacitive touch. I was wrong with capacitive touch ( 10 times much to get a reading compared to analog reading and 99 % efficiency (not enough !!! ) so I gave up with this.

I used piano strings first (because I needed conductive string for capacitive touch) but they were not smooth enough. I went on guitar strings (painted with silver to improove conduction : useless now). I think the project will work with nylon strings.

The project is powered with powerbank, I want it to be autonomous.

From a software point of view on arduino : The code is not very long but I spend a lot of time on it (smoothing signal from amplifier, analysing strenght curves to know when to trigger midi events, etc.).

Some work also on string strenght. In other words, how to keep the harpist touch (i.e. the more the string is pinched hard, the more the sound is loud even if physical string tune has changed during the night).

Next step is to build pedals : not a big deal from a technical point of view, but I have to find time to achieve it.

  • Late log

    julien.hors08/29/2019 at 16:25 0 comments

    Winter 2018-2019 : Frame design using Fusion 360.

    Early 2019 : Test on one and 7 strings on a piece of wood to select the best hardware configuration.

    March 2019 : Decision is made to move on Zynthian + Pianoteq ( best ratio quality/size IMO).

    April 2019 : Piano strings that are used are too hard, I moved to guitar strings.

    May 2019 : Sensitive touch is abandoned, not efficicent enough.

    August 2019 : Software improvements on arduinos. The harp is playable ( far from a real one, but my daughter enjoys it).

    Now, working on pedals. I have to slow down on the project because, guess what ? I also have to earn some money ;-)

View project log

Enjoy this project?

Share

Discussions

professorSchism wrote 12/19/2019 at 17:43 point

Do you have any recommendations for sensors now that you've tried out different ones? I'm looking to build a simple arduino-based MIDI harp, and I was going to experiment with simple vibration sensors attached directly to the ends of the strings, but I have no idea what to expect.
https://www.amazon.com/Hiletgo-SW-420-Vibration-Sensor-Arduino/dp/B00HJ6ACY2/ref=sr_1_3?keywords=arduino+vibration+sensor&qid=1576776527&sr=8-3 

  Are you sure? yes | no

julien.hors wrote 12/20/2019 at 07:29 point

Well, the best advice I could give is "Just try it" ! ;-). I made a lot of experiment with cheap chinese products and, despite most of them were far from the good solution, it was a good way to learn how things work and how they have to be done.

I never tried a vibration sensor but it could be a good solution. That said, from my experience, there is a couple of things that I learned and you should be aware of :

The delay between physical pluck and midi event generation should be as low as possible (typlically a couple of ms wich is impossible with a 50 Hz samplerate hardware as an example. LM393 used in your module shouldn't be a problem here as its response time is about a couple of micro seconds).

The noise is also important. Electronic one is common with this kind of cheap modules. You can deal with it using a piece of code, but you can't be sure that it can be done until you test the real device.

A physical noise can also be produced by the other strings that are plucked. The vibration will travel to the frame and trigger the other strings.

Debounce is also important : strings mustn't vibrate for too long or they will trigger again the same note.

You should experiment (as I did) on a long piece of wood with two or three strings mounted with wood screws. You'll be able to test your hardware ans software and then, when everythings ok, you will do the frame conception.

Let me know when you'll test it !

Julien

  Are you sure? yes | no

Glenn S West wrote 08/19/2019 at 16:24 point

will u opensource this?

  Are you sure? yes | no

julien.hors wrote 08/22/2019 at 16:43 point

I think I will ! But there is a lot of work until I get something really usable. CAD file is already obsolete, and I've made a lot of  improvements. The fact that  don't use sensitive touch anymore will affect the next hardware design. For one string I need 6-7 us to read an analog value (from the amplifier) and 150 us to get a capacitive touch reading. The hardware is a bit overkill so I will move to something cheaper and/or more simple.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates