Raspberry Pi Pico Becomes Emotionally-Aware Music Visualizer

Back in the late 1990s and early 2000s, the nascent world of digital music was incredibly exciting. We all cultivated huge MP3 collections and spent hours staring at the best visualizers Winamp and Windows Media Player had to offer. [Rafael] and [Eric] decided to bring back those glory days with their music visualizer that runs on the Raspberry Pi Pico.

The design is quite interesting, going beyond the usual simplistic display of waveforms and spectrograms. Instead, the Pi Pico uses a Fast Fourier Transform analysis to determine the frequencies of the music, ideally then to determine the key, and thus the mood, of the tune.  Then, the visualizer uses different colors to represent those moods, such as green for happy music in a major key, or deeper blues for a sad piece in a minor key. The output of the visualizer is via Bruce Land’s 8-bit color VGA library, which allows the Pi Pico to drive a monitor directly.

Whether the visualizer really gets the music is up for debate.  The visuals simply don’t look sad and depressing enough when listening to Hallelujah, but maybe that’s just the lack of Jeff Buckley’s vocals in the instrumental. Furthermore, getting an FFT analysis to pull out reliable musical information from an audio recording is finicky to say the least. In any case, the blocky and colorful animations are nice to watch nonetheless. They’d make an excellent basis for visuals at your next underground chiptune show, that much is for certain. Video after the break.

Continue reading “Raspberry Pi Pico Becomes Emotionally-Aware Music Visualizer”

Audio Synthesizer Hooked Up With ChatGPT Interface

ChatGPT is being asked to handle all kinds of weird tasks, from determining whether written text was created by an AI, to answering homework questions, and much more. It’s good at some of these tasks, and absolutely incapable of others. [Filipe dos Santos Branco] and [Edward Gu] had an out of the box idea, though. What if ChatGPT could do something musical?

They built a system that, at the press of a button, would query ChatGPT for a 10-note melody in a given musical key. Once the note sequence is generated by the large language model, it’s played out by a PWM-based synthesizer running on a Raspberry Pi Pico.

Ultimately, ChatGPT is no musical genius. It’s simply picking a bunch of notes from a list that are known to work together melodically; that’s the whole point of musical keys. It would have been wild if it generated some riffs on the level of Stairway to Heaven or Spontaneous Devotion, but that might be asking for too much.

Here’s the question, though. If you trained a large language model, but got it to digest sheet music instead of written texts… could it learn to write music in various genres and styles? If someone isn’t working on that already, there’s surely an entire PhD you could get out of that idea alone. We should talk!

In any case, it’s one of the more creative projects from the ever-popular ECE 4760 class at Cornell. We’ve featured a bunch of projects from the class over the years, and noted how the course now runs on the RP2040. Continue reading “Audio Synthesizer Hooked Up With ChatGPT Interface”

Robot Pianist Runs On Arduino Nano

The piano has been around for a long time now. Not long after its invention, humans started contemplating how they could avoid playing it by getting a machine to do the job instead. [vicenzobit] is the latest to take on this task, building a “Robot Pianista” that uses a simple mechanism to play a tune under electronic command (Spanish language, Google Translate link).

An Arduino Nano is the heart of the build, paired with a shield that lets it run a number of servo motors. The servos, one per key, are each assembled into a 3D-printed bracket with a cam-driven rod assembly. When the servo turns, the cam turns, and pushes down a rod that presses the piano key.

The build is limited in the sense that you can only play as many keys as you have servo channels, but nonetheless, it does the job. With eight servos, it’s able to play a decent rendition of Ode to Joy at a steady tempo, and that’s an excellent start.

We’ve featured some great mechanized instruments before, too. Video after the break.

Continue reading “Robot Pianist Runs On Arduino Nano”

Turning A Saxophone Into A MIDI Controller

Most of the time, if you’re looking for a MIDI controller, you’re going to end up with some kind of keyboard or a fancy button pad. The saxophone is an altogether more beguiling instrument that makes for one hell of an interface, but there’s a problem: they’re seldom MIDI-compatible. This build from [AndrewChi] changes all that.

This digitized sax relies on a SparkFun ESP32 Thing as the brains of the operation. It uses Hall effect sensors, the digital switch type, to detect the action of the keys of the sax. Choosing parts that are quick to respond is key for musical use, so [AndrewChi] selected the Texas Instruments DRV5023 for its unipolar operation, short output delay and fast rise time. Beyond setting up the basic keys to send MIDI notes, the instrument also received additional octave controls for greater range. With sensors and magnets attached to the saxophone and keys with Sugru, the instrument is ready to serve as a capable MIDI controller. Thanks to the ESP32, it’s capable of sending MIDI data wirelessly over Bluetooth for the maximum freedom of performance.

It’s a nifty build, and a great way for wind players to get into the world of controlling digital synthesizers in an intuitive fashion. We’ve seen some great MIDI controller builds before, too.

Continue reading “Turning A Saxophone Into A MIDI Controller”

Upgraded Toy Guitar Plays Music

Getting the finishing details on a Halloween costume completed is the key to impressing friends and strangers alike on the trick-or-treat rounds. Especially when it comes to things like props, these details can push a good Halloween costume to great with the right touches. [Jonathan]’s friend’s daughter will be well ahead of the game thanks to these additions to a toy guitar which is part of her costume this year.

The toy guitar as it was when it arrived had the capability to play a few lackluster sound effects. The goal here was to get it to play a much more impressive set of songs instead, and to make a couple upgrades along the way as well. To that end, [Jonathan] started by dismantling the toy and investigating the PCBs for potential reuse. He decided to keep the buttons in the neck of the guitar despite their non-standard wiring configuration, but toss out the main board in favor of an ESP32. The ESP32 is tasked with reading the buttons, playing a corresponding song loaded on an SD card, and handling the digital to analog conversion when sending it out to be played on the speaker.

The project doesn’t stop there, though. [Jonathan] also did some custom mixing for the songs to account for the lack of stereo sound and a working volume knob, plus he used the ESP32’s wireless capabilities to set the guitar up as a local file server so that songs can be sent to and from the device without any wires. He also released the source code on the project’s GitHub page for anyone looking to use any parts of this project. Don’t forget there’s a Halloween contest going on right now, so be sure to submit the final version of projects like these there!

Continue reading “Upgraded Toy Guitar Plays Music”

An Effects Pedal For Keyboards (and Mice)

Effects pedals for musical instruments like electric guitars can really expand a musician’s range with the instrument. Adding things like distortion, echo, and reverb at the push of a button can really transform the sound of a guitar and add depth to a performance. But [Guy] wondered why these effects should be limited to analog signals such as those from musical instruments, and set about to apply a number of effects to the use of computer keyboards and mice with this HID effects pedal.

The mouse is perhaps the closer of the two to an analog device, so the translations from the effects pedal are somewhat intuitive. Reverb causes movements in the mouse to take a little bit of extra time before coming to a stop, which gives it the effect of “coasting”. Distortion can add randomness to the overall mouse movements, but it can also be turned down and even reversed, acting instead as a noise filter and smoothing out mouse movements. There’s also a looper, which can replay mouse movements indefinitely and a crossover, which allows the mouse to act as a keyboard.

For the keyboard, included effects are a tremolo, which modulates between upper- and lower-case at certain intervals; echo, which repeats keypresses; and a pitch-shift which outputs a “higher” character in the alphabet above whichever one has been pressed. Like the mouse, there’s also a crossover mode which allows the keyboard to be used as a mouse.

The device looks and feels like an effects pedal for a guitar would, with a RP2040 inside to intercept HID information, do the signal processing, and then output the result to the computer. And, while [Guy] admits this was a fun project with not many practical uses, there are a couple handy ones including potentially the distortion effect to smooth out mouse inputs for those with neuromuscular disorders or the mouse looper to act as a mouse jiggler for those with micromanaging employers. It’s also reprogrammable, and as we’ve seen since time immemorial having a programmable foot keyboard can be extremely handy for certain workflows.

Continue reading “An Effects Pedal For Keyboards (and Mice)”

Modeling A Guitar For Circuit Simulation

Guitar effects have come a long way from the jangly, unaltered sounds of the 1950s when rock and roll started picking up steam. Starting in large part with [Jimi Hendrix] in the 60s, the number of available effects available to guitarists snowballed in the following decades step-by-step with the burgeoning electronics industry. Now, there are tons of effects, from simple analog devices that would have been familiar to [Hendrix] to complex, far-reaching, digital effects available to anyone with a computer. Another thing available to modern guitarists is the ability to model these effects and guitars in circuit simulators, as [Iain] does.

[Ian] plays a Fender Stratocaster, but in order to build effects pedals and amplifiers for it with the exact desired sound, he needed a way to model its equivalent circuit. For a simple DC circuit, this isn’t too difficult since it just requires measuring the resistance, capacitance, and inductance of the overall circuit and can be done with something as simple as a multimeter. But for something with the wide frequency range of a guitar, a little bit more effort needs to go into creating an accurate model. [Iain] is using an Analog Discovery as a vector network analyzer to get all of the raw data he needs for the model before moving on to some in-depth calculations.

[Iain] takes us through all of the methods of figuring out the equivalent impedance of his guitar and its cabling using simple methods capable of being done largely by hand and more advanced techniques like finding numerical solutions. By analyzing the impedance of the pickup, tone and volume controls, and cable, this deep dive into the complexities of building an accurate equivalent circuit model for his guitar could be replicated by anyone else looking to build effects for their specific guitars. If you’re looking for a more digital solution, though, we’ve seen some impressive effects built using other tools unavailable to guitarists in days of yore, such as MIDI and the Raspberry Pi.