Greg Zweigle's "Stem Piano" Is a Teensy 4.1 or Raspberry Pi Powered Open Source Hybrid Digital Piano
Designed around real piano actions, the Stem Piano delivers a convincing playback experience while outputting MIDI messages for processing.
Engineer and musician Greg Zweigle has built a "hybrid" digital piano, which combines the feel of a traditional acoustic piano with the MIDI capabilities and digital sound synthesis of an electronic piano β a project currently on its third iteration.
"A hybrid digital piano combines the physical action of an acoustic piano with MIDI, sound generation, and other features of a digital keyboard," Zweigle explains. "A few years back I decided to build my own. With a custom hybrid, I can use any piano action and even install it as a piano silent system. It gives me complete control over my piano's features and performance. The boards and sensors could also be used to invent new musical instruments."
Dubbed the "Stem Piano" β named for both the science, technology, engineering, and math subjects it demonstrates and for both plant and musical note stems β Zweigle's creation is an open source hybrid digital piano honed over the past three years. The overall architecture sees a physical piano action connected Hammer Position Sensor (HPS) boards, one per key β meaning 88 for a full-size piano keyboard β which then connect to one or two Integrated Processing System (IPS) boards, built around a Teensy 4.1 microcontroller or in one mid-stream revision a Raspberry Pi 4 Model B, and matching Six-Channel Analog (SCA) data acquisition boards.
"This simplifies and reduces the cost of testing an ADC [Analog to Digital Converter] and enables experimenting with different hammer or damper ADC resolution and sampling rates," Zweigle explains of his decision to break the SCA out from the IPS mainboard. "Also, ADC parts can often be in packages that are difficult to hand solder. A separate circuit board lowers the cost and impact of soldering mistakes."
Once installed to an action β either as a dedicated digital piano or to convert an existing piano to "silent" mode β the IPS boards process the input from each key and output MIDI signals, but no audio itself. "Use external software to receive MIDI, convert to musical sounds, and that sends to speakers or headphones," Zweigle explains. An optional 2.8" touchscreen can be added for immediate feedback β though this, Zweigle notes, slows down the ADC sampling rate to 100 samples per second.
Full details on the project are available on the Stem Piano GitHub repository, where design files and source code are made available under the reciprocal GNU General Public License 3, with additional information on Hackaday.io; Zweigle estimates the build cost of the "least expensive" Stem Piano to sit at around $355, while the "most expensive" build which includes a dedicated processing board for dampers and calibration trimmers on each sensor comes in at $1,770.