Skip to content

Summary of digital/hybrid piano DIY projects

RIP

Among (many) other great things, this forum is a place for tinkerers to gather and share the status of their DIY pianos. For the benefit of the newcomers and of of old timers who forget and wonder "who was that did that?" this is a summary of all the projects that I remember or could find. For the sake of keeping the thread working on that purpose, please respond only with "and this project too" replies (no discussions, kudos, rants or other things). If you are a project owner and I misrepresented your efforts, please PM @CyberGene and myself with a correct blurb, and we will be happy to fix it. Let's get started!
Note: unless otherwise stated, the sensors used in these projects are optical proximity such as CNY70 or QRE1113. Two projects use magnet. None use switches, particularly no rubber switches.


The mother of all DIY hybrid pianos is of course Cybrid, made by forum owner @CyberGene
As far as I know the project is not maintained/updated anymore, but it works just fine as it is, if that's your preferred approach. It uses comparators and hammer-only sensors, so each key requires a potentiometer (aka trimmer or trimpot) to be regulated. Learn more about it at

https://pianoclack.com/forum/d/107-cybrid-a-diy-midi-controller-with-grand-piano-action

and check an update at

https://pianoclack.com/forum/d/97-update-on-cybrid

Many projects were inspired by Cybrid!


Most notably @JayKominek started his piano conversion, available on github at

https://github.com/jkominek/piano-conversion

The project takes a different approach with the sensors, measured with a ADC (Analog-to-Digital Converters), rather than comparators. Even if you don't care about Jay's project, it's greatly recommended that you read Jay's wiki, particularly the FAQs, the alternative designs you may attempt, and, the importance/implications of the resolution.

Now, the resolution discussion from the last link brings us to this very long discussion which is worth reading if you would like to understand (and design, and possibly improve) on that aspect and on the trade off of speed vs accuracy. Also you may want to dig into the nitty gritty details of how to go from measured position values to actual MIDI velocities. That discussion is also long and technical, and available here.

A much more casual and simple discussion of design differences between Cybrid and Jay's piano-conversion can be found here.


If you read those links, you've seen that I've been involved there too, so now I "have" to mention my own project, which currently is simply following Jay's footsteps, having modified only the sensors. I picked the QRE1113 instead of the CNY70, some discussion about that is here and also here. Code and data of this exploration is also available on my own github repo.

I thoroughly documented everything I did in a long series of post on this site, starting from

https://pianoclack.com/forum/d/163-build-your-own-hybrid-piano-step-one-choosing-the-action

and continuing with

  1. building the cabinet (important to do early in my opinion)
  2. making design choices for the electronics
  3. how to deal with the huge amount of cables needed for such a project
  4. some rants about the firmware or mostly the (lack of good) tools for developing and debugging it
  5. I will update this list with the next steps when ready (I am in the process of finalizing and ordering the ADC boards as I write this)

A few more updates and rants about this project can be found here.

The focus of this approach is doing the very best that is possible (at least for me), without going overboard.

Enough stuff that I am more directly involved with, and room now to others, in random orders (just as I found them in my notes/digging in the forum).


By @xooorx (UK member) using magnets, hall effect sensors and FPGA (hence VHDL), very different from what everyone else has done on this site:

https://pianoclack.com/forum/d/238-another-diy-controller-project


Hybrid Carillon by @AlexanderBunt - similar electronic design, but somewhat different instrument (not a piano, but the design of the sensors and electronic can be interchanged with that of a piano):

https://pianoclack.com/forum/d/339-hybrid-carillon-in-the-making


DIY piano by @gzpiano probably the one closer to being ready after Jay's piano-conversion

https://github.com/gzweigle/DIY-Grand-Digital-Piano

I can find only scattered posts in this forum, but lots of youtube videos linked from github. The focus of this project is doing an "all out" approach, i.e. "everything that is worth doing is worth overdoing", with displays and many other things.


Another approach by @T-Ro who is deploying it in an upright (not that the others couldn't!) which is using Teensy boards, like the original Cybrid, but with ADC. I think the focus of this project is getting it done well but as cheaply as possible

https://pianoclack.com/forum/d/516-diy-piano-upright-conversion-attempt


Another comparator-based project, like the original Cybrid by @scherbakov.​al

https://pianoclack.com/forum/d/397-piano-midi-controller-diy


And last (in time) but by no means least, new (as of today) forum member @aleath

https://pianoclack.com/forum/d/744-diy-digital-piano

This use inexpensive magnetic sensors and Raspberry Pico (as I did in my sensor exploration). I think the focus of this project is allowing custom action, which @aleath would like to build with reduced width as described at length in other posts about PASK


Members who contributed to the discussions (or spoke privately with me about it) so much that I though they would soon show up with their own DIY project, but haven't so far are @luns @n-player @vagfilm @Khuja Wangtishvili @HZPiano -- I know some of these are just waiting to jump on the bandwagon when they will be ready.


Finally, a bunch of post more indirectly related to building your own digital/hybrid piano, but still worth mentioning here:

  1. Aftertouch
    https://pianoclack.com/forum/d/403-pressure-sensors-polyphonic-aftertouch
  2. Speakers
    https://pianoclack.com/forum/d/200-upright-piano-speaker-simulator-addon-idea
  3. Theremin
    https://pianoclack.com/forum/d/430-anybody-interested-in-a-diy-digital-theremin
  4. And save best for last, an action which could simulate any other action (grand, upright, clavichord, harpsichord, organ, synth you name it) completely in software. Should this be developed and implemented well, it could really be the ultimate action. Unfortunately quite hard to do it right, but waiting for the next Cybergene to do it…..
    https://pianoclack.com/forum/d/393-new-approach-to-digital-piano-actions

RIP

Since this message has been recently recommended to a newcomer, let me write a quick update on what I know, so that we keep it current.

For the sake of keeping the thread working on its purpose, please respond only about the existence or the update for "this other project" replies (no technical discussions, kudos, rants or other things: these are very welcome, but in their dedicated threads -- possibly a new one). If you are a project owner and I misrepresented your efforts, please PM @CyberGene and myself with a correct blurb, and we will be happy to fix it.

  • @JayKominek got busy with work and perhaps frustrated by part unavailability and has not posted any update to the project after this message
  • I definitely got very frustrated by part unavailability and have not done anything practical either (but I've done lots of thinking and a bit of private discussing with @gzpiano ). Recently the main part that was missing for Jay's and hence my project, (namely the STM32 board-on-a-chip) has become available again, so I might take a second look.
  • @gzpiano has gone from the initial "all out, overboard approach" to a "cheap one" and back to the "just right". He has just last week released the v2.0 (IIRC the version) of his project on github, which he modified with lots of dedicated work to accommodate the use only of currently available parts
  • on the extremely exciting bullet 4 of the previous message, I investigated lots of solenoid and piezoelectric actuators, noting that they are almost but not exactly at the needed performance level. Perhaps an engineer with some wizard-level experience with electromechanics working together with a similar wizard on the control electronics could squeeze that last missing performance level and made it work -- but sadly not I (yet?) because in my experience I typical get about 80% of the performance mentioned in the data sheets and here we'd need 150% or so. I guess I could still embark myself in this project, but I don't feel so motivated by the prospect of getting something which at best is only half of what is needed.

Unless I missed messages (which I might since for family and work reasons I switched to checking this forum almost exclusively during the weekend), no one else has posted any update after the previous message