Make a Joyful Noise Machine
A church was in desperate need of an organist, so they recruited a Raspberry Pi to tickle the ivories with divine precision.
The Raspberry Pi has become a staple in the modern world of electronics and computing, earning its reputation as a versatile and dynamic tool that functions like a Swiss Army knife for electronics projects. Since its inception, the Raspberry Pi has been praised for its compact size, affordability, and impressive computing capabilities. But what really sets it apart is not just its hardware specifications, but its potential to adapt and fulfill an astonishingly wide range of roles across various disciplines.
This flexibility came in handy for a software engineer by the name of Eugene Olsen recently. The regular organist at his church moved away from the area, and since he had some experience playing this instrument, he was tasked with taking on the role. But he was not selected for his masterful skills on the keys — in fact, he is a beginner. Beggars can't be choosers, however. He was the most capable person in the church, and there was no budget available to fill this volunteer position with a more experienced organist.
Olsen soon found that this new job was going to be more than he could handle. It took him between three and five weeks to learn a single new hymn well enough to perform, and he would need to learn several new hymns each week. Right about the time Olsen was probably considering moving out of town himself, he noticed that the organ had a MIDI interface. And since he had been making music with MIDI for decades, he knew this could be a mercy from on high that would bail him out of his predicament.
Using a Raspberry Pi 4 single-board computer, he started building a MIDI sequencer that would be able to play any hymn to perfection with the touch of a button. An M.2 NVMe SSD was paired with the computer for reliable, lightning-fast storage, and just to be fancy, an Argon ONE M.2 case was used to house the components. To make the connection between the organ and the Raspberry Pi, a USB to MIDI adapter was leveraged.
Next, Olsen looked into a number of off-the-shelf MIDI sequencer software packages, and as is so often the case for a software engineer, nothing was quite what he wanted. Fortunately, he is far more skilled at building software than playing the organ, so he built his own sequencer in C++. Starting with the cxxmidi library, a number of extensions were written to make the organ play exactly the way he wanted it to sound.
Since new music would need to be loaded on the device each week, Olsen wanted to make the process as easy as possible. He configured the onboard Wi-Fi radio to act as an access point so that the computer could be managed remotely using the RaspController application via a tablet. A USB Wi-Fi dongle was also included in the build for Internet access — this made it a snap to download new MIDI files or update the software.
As they say, when life gives you lemons, make Raspberry Pi. Well, it is at least possible that someone, somewhere has said that before. It certainly worked out well for Olsen anyway, who can now rest easy while the custom MIDI sequencer does all of the hard work each week. And best of all — this organist cannot move away.