ideas for pressure sensitive sensors ?


Well-known member

I am looking for fresh ideas to make a keyboard with pressure sensitive sensors. Here are what I would like to get :
-> high sensitivity. A very light finger touch must trigger a note.
-> fast response (low rise time)
-> simple mechanism

I have tried different things so far :
-> capacitive sensors. It is great, but there is no way to get a reliable pressure reading (as far as I know).
-> standards FSR. I found them not sensitive enough. Light finger touches produce inconsistent pressure readings. Very light touches are ignored. They are expensive (if you want to make a large keyboard).
-> DIY velostat FSR. I get good results, but it is difficult to get a linear and consistent response. This is
-> DIY foam sensors. I use a carbon 1/4 inch foam layer in between 2 copper plates. It works well, but response is two slow. Rise time is around 30ms which is to slow for a keyboard.

Do you have any ideas ?
A strain-gauge on every key? That's the standard way to measure force, but requires a load-cell amp chip for each key like the HX711.

the standard cheapish MIDI approach is two opto-sensors or contact switches for each key to detect motion and measure velocity, then a shared force sensor for the whole keyboard using the frame the keys bottom-out against - the combined force on every key pushes this down and a couple of strain-gauges at either end can be wired to a single load-cell amp (just as in digital scales).
What about a piezo disk under every key? They have very good response times and are very sensitive to dynamic movements. Also, they are very inexpensive and can be obtained in very small sizes.
Thanks for the suggestion.

I have tested piezo sensors. Unfortunately, it doesn't work very well.
They do a good job to detect a "hit". But it is tricky to detect e "release".
They also fail to measure velocity with enough accuracy. It's OK for impacts (like drum sensors), but it doesn't work well for keys.
Velocity typically is pretty easy to capture with two busses. This has been in use since at least the 80s, if not the 70s. You have two busses, one that captures note and one that captures "any note." The second bus is further out from the fulcrum point of the key, meaning it makes contact some amount of time after reading the initial keypress. The time difference between the two is integrated and there you have velocity. Afttertouch has also been implimented with a foam strip under the keybed since, like, the 70s, I think initially in a Moog product. It was just a single foam strip so it wasnt per-note, but it did a great job of capturing aftertouch as response time for AFTERtouch is not so critical. Other than that, I think this is your opportunity to be inventive, as if it could have been done by now I think it would have. One possibility that comes to mind is buying an old Rhodes piano, putting an envelope follower on every pickeup, then you have a great mechanism and polyphonic velocity and pressure sensitivity. Of course, the trick would be finding that "unrepairable" Rhodes keyboard that was so out of tune, fried, or whatever you could obtain it at a good price.
Thank you for the explanation. It gives me ideas :
- note "touch" detection with capacitive key (a metallic washer)
- pressure detection with cheap velostat under every washer
I made a quick test : it works well. Velocity response is far from linear. I must make an array to match readings with velocities.

I wonder if I could also use piezo disk the same way : capacitive + impact strength reading. I am going to try.