Compose Any Song With Twelve Buttons

Limitations placed on any creative process often paradoxically create an environment in which creativity flourishes. A simple overview of modern pop, rock, or country music illustrates this principle quite readily. A bulk of these songs are built around a very small subset of music theory, often varying no more than the key or the lyrics. Somehow, almost all modern popular music exists within this tiny realm. [DeckerEgo] may have had this idea in mind when he created this tiny MIDI device which allows the creation of complex musical scores using a keyboard with only 12 buttons.

The instrument is based around the Adafruit MacroPad, which is itself built on the RP2040 chip. As a MIDI device, it needs to be connected to a computer running software which can support MIDI instruments, but once its assembled and given its firmware, it’s ready to rock. A musician can select one of any number of musical scales to operate within, and the 12 keys on the pad are mapped to the 12 chromatic notes within that scale. It can also be used to generate drum tracks or other backing tracks to loop before being used to create melodies as well.

[DeckerEgo] took a bit of inspiration from an even simpler macro pad we featured before which is based around the idea that a shockingly high number of songs use the same four chords. His macro pad includes creation of chord progressions as well, but expands on that idea to make more complete compositions possible. And, for those looking to build their own or expand on this project, he has also made all of the source code available on his GitHub page.

Continue reading “Compose Any Song With Twelve Buttons”

Mechanical Keyboard As Travel Saxophone

Those who play larger musical instruments, things like drums, piano, harp, tuba, upright bass, or Zeusaphone, know well the challenges of simply transporting their chosen instrument to band practice, a symphony hall, or local watering hole. Even those playing more manageably-sized instruments may have similar troubles at some point especially when traveling where luggage space is at a premium like on an airplane. That’s why [jcard0na] built this electronic saxophone, designed to be as small as possible.

Known as the “haxophone”, the musical instrument eschews the vibrating column of air typical of woodwind instruments in favor of an electronic substitute. Based around the Raspberry Pi, the device consists of a custom HAT with a number of mechanical keyboard switches arrayed in a way close enough to the layout of a standard saxophone that saxophonists will be able to intuitively and easily play. Two pieces of software run on the Pi to replicate the musical instrument, one that detects the player’s breaths and key presses, and another that synthesizes this information into sound.

While [jcard0na] notes that this will never replicate the depth and feel of a real instrument, it does accomplish its design goal of being much more easily transportable than all but the most soprano of true saxophones. As a musical project it’s an excellent example of good design as well, much like this set of electronic drums with a similar design goal of portability.

A Better Playlist Shuffle Algorithm Is Possible

When listening to music, most of us reach for the shuffle button on the regular. This is then followed by a bunch of frustrating skips as we hear the same four or five tracks that have been regularly replayed for the last few days. [Ron Miller] wants to fix unsatisfying shuffles, and he’s developed the Miller Shuffle algorithm to do so.

[Ron] realized that many big name streaming services use incredibly simple algorithms to choose shuffled songs. This can often be as simple as songIndex=random(NumOfSongs). The problem with this is that even with a good random number source, you’ll get a lot of premature repetitions. If your music service doesn’t keep track of your shuffle-point between sessions, you’ll often get annoying repeats if you’re listening on a day-to-day basis.

To fix this, the Miller Shuffle algorithm aims to offer good randomness and no repeats without the excess resource usage of the commonly-cited Fisher-Yates algorithm. [Ron] explains it like this: “The way the algorithm works its magic is by utilizing multiple computations which are ‘symmetrical’, in that the range of values which go in are the same values which come out albeit in a different order.” Since its a deterministic fixed list, there’s no need to keep track of what songs have already been played to avoid repeats. Instead, the player must simply step through the index in order, one track after another. As long as a referenced index point is maintained, along with an ID of the shuffle order being used, no repeats should come up.

If you’re implementing a shuffle algorithm for your own music, you might want to give [Ron’s] work a look. He’s taken into account details like resource usage and small and large list sizes, to account for implementation issues for even very large streaming services. If you’re more interested in shuffling cards than songs, though, we can help there too!

A radio with a white front grate and wood edges sits on a grey surface. Next to the radio are small white disks with colorful edges reminicient of microdisc-sized records. A yellow-ringed disk sits on the radio. The handwritten title says, "Summer of 2011; Holidays in Barcelona"

Spotify Player Brings Back Physical Media

Digital music has made keeping all your tunes with you a lot more convenient, but have we lost something with dematerialization? [Jordi Parra] felt that there was something lacking with the digital music experience and designed a Spotify player with a tactile interface.

Specific playlists are selected via small RFID tags that look like a cross between a MiniDisc and a vinyl record. As this is a prototype, an Arduino reads the RFID tag, but needs a computer to actually play the Spotify playlist. Future iterations could include an integrated speaker and run libspotify to create a self-contained device.

While there is still work to do for a fully seamless experience, we love the details in the industrial design of this project. Clean simple lines and a combination of wood and more modern materials make this feel like a timeless piece of tech. Definitely check out the full photo gallery including shots of the really impressive packaging.

Want more digital music with a tactile interface? Check out this MP3 Player Shelf or a Simple Internet Radio Transplant.

How To Restore A Musical Amiga

Despite the huge strides in computing power and functionality that have been achieved in the past few decades, there are still some things that older computers can do which are basically impossible on modern machines. This doesn’t just include the ability to use older hardware that’s now obsolete, either, although that is certainly a perk. In this two-part restoration of an Amiga 500, [Jeremy] shows us some of these features like the ability to directly modify the audio capabilities of this retro machine.

The restoration starts by fixing some damage and cleaning up the rest of the machine so it could be powered up for the first time in 30 years. Since it was in fairly good shape he then started on the fun part, which was working with this computer’s audio capabilities. It includes a number of amplifiers and filters in hardware that can be switched on or off, so he rebuilt these with new op-amps and added some new controls so that while he is using his MIDI software he can easily change how it sounds. He also restored the floppy disk drives and cleaned up the yellowing on the plastic parts to improve the overall appearance, as well as some other general improvements.

These old Amigas have a lot going for them, but since [Jeremy] is a musician he mostly focused on bringing back some of the musical functionality of his childhood computer, although he did build up a lot of extra features in this machine as well. These types of audio circuits are not something found in modern computers, though, so to get a similar sound without using original hardware you’ll need to build something like this NES audio processing unit programmed in Verilog.

Continue reading “How To Restore A Musical Amiga”

Kids’ Jukebox Based On Arduino With RFID

Consumer electronics aimed at young children tend to be quite janky and cheap-looking, and they often have to be to survive the extreme stress-testing normal use in this situation. You could buy a higher quality item intended for normal use, but this carries the risk of burning a hole in the pockets of the parents. To thread the needle on this dilemma for a child’s audiobook player, [Turi] built the Grimmboy for a relative of his.

Taking its name from the Brothers Grimm, the player is able of playing a number of children’s stories and fables in multiple languages, with each physically represented by a small cassette tape likeness with an RFID tag hidden in each one. A tape can be selected and placed in the player, and the Arduino at the center of it will recognize the tag and play the corresponding MP3 file stored locally on an SD card. There are simple controls and all the circuitry to support its lithium battery as well. All of the source code that [Turi] used to build this is available on the project’s GitHub page.

This was also featured at the Arudino blog as well, and we actually featured a similar project a while ago with a slightly different spin. Both are based on ideas from Tonuino, an open source project aimed at turning Arduinos into MP3 players. If you’re looking to build something with a few more features, though, take a look at this custom build based on the RP2040 microcontroller instead.

Nanoaetherphone Is A Special MIDI Controller

MIDI controllers can be simple straightforward keyboards, or wild magical devices that seem to snatch notes from the very aether itself. As you might expect from the name, the Nanoaetherphone II is one of the latter.

The device is inspired by the Theremin, and was built to celebrate its 100th anniversary. The Nanoaetherphone II is all about using sensors to capture data from wireless hand-wavey interactions, and turn it into MIDI messages. To this end, it has an LDR sensor for detecting light levels, which determines volume levels. This is actuated by the user’s thumb, blocking the sensor or allowing ambient light to reach it. At the front of the handheld unit, there is also an ultrasonic range sensor. Depending on how close the sensor is to the user’s hand or other object determines the exact note sent by the device. As a MIDI controller, it is intended to be hooked up to an external synthesizer to actually generate sound.

The overall concept isn’t too complicated, and the design makes it easy to pickup and play. We imagine it could even be foolproofed by programming it only to play notes from a given scale or mode, allowing for easy soloing without too many of those ill-tempered blue notes. Jazz enthusiasts might prefer it to just spit out any and all notes, of course.

We love a good MIDI controller around these parts, and we’ve seen everything from knitted models to those made out of old phones. Video after the break.

Continue reading “Nanoaetherphone Is A Special MIDI Controller”