The Maths Behind A Chord Recognition Engine

A key part of any tertiary musical education is learning about all the wonderful (and less wonderful) types of chords out there. Typically this involves a great deal of exercises involving the identification of a given chord from its component notes. But how would you do this programmatically? Well, thankfully, the developers behind the WhatChord tool are happy to explain just how it’s done.

The problem with classifying chords is that the way musicians use them and construct them can be quite varied. Names can also be applied somewhat differently depending on the musical context of a given set of notes. To suit the musical reality of real players and composers, WhatChord uses a specially-developed scoring algorithm to try and nut out what a chord is actually supposed to be.

As an example, a major chord must require a root note and a major third interval. It can optionally include a perfect fifth. However, if there is a minor third, minor seventh, or major seventh present, then you’re almost certainly not looking at a simple major chord. WhatChord takes these things into account by weighting the different tones present and seeing which chord gets the highest score. The required notes add weight, while notes that shouldn’t be there add a penalty to the score. Then there are extra penalties for ambiguous “unexplained” tones, extensions, and a few other parameters to disambiguate edge cases.

If you’d like to see how it works in practice, you can check out the WhatChord app and see how good it is for yourself. Alternatively, explore some of the other chord-focused projects we’ve featured over the years, or send your best musical projects into the tipsline.

[Thanks to baschwar for the tip!]

Pico Chording Keyboard Is Simultaneously Vintage And New

On paper, chording — that’s pressing multiple keys to create either a single character or a whole word — looks like one of the best possible input methods. Maybe not the best for speed, at least for a while, but definitely good for conserving the total number of keys. Of course, fewer keys also makes for an easier time when it comes to building keyboards (as long as you don’t have to code the chording software). In fact, we would venture to guess that the hardest part of building your own version of [CrazyRobMiles]’s Pico Chord Keyboard would be teaching your fingers how to work together to chord instead of typing one at a time.

[CrazyRobMiles] took inspiration from the Cykey chording design used for the Microwriter and later, the Microwriter Agenda that also featured a qwerty blister keyboard. Both featured small screens above the six keys — one for each finger, and two for the thumb. While the original Microwriter ran on an 8-bit microprocessor, Pico Chord Keyboard uses — you guessed it — the Raspberry Pi Pico.

We love that [CrazyRobMiles] went with four 14-segment displays, which gives it a nice old school feel, but used transparent keycaps over Kailh switches. This is actually important, because not only do the LEDs show what mode you’re in (alpha vs. numeric vs. symbols), they also teach you how to chord each letter in the special training game mode. Be sure to check it out in the video after the break.

Isn’t it cool that we live in a world of relatively big keyboards with few keys and tiny keyboards with all the keys?

Continue reading “Pico Chording Keyboard Is Simultaneously Vintage And New”

Don’t Fret Over The Ukulele

A ukulele is a great instrument to pick to learn to play music. It’s easy to hold, has a smaller number of strings than a guitar, is fretted unlike a violin, isn’t particularly expensive, and everything sounds happier when played on one. It’s not without its limited downsides, though. Like any stringed instrument some amount of muscle memory is needed to play it fluidly which can take time to develop, but for new musicians there’s a handy new 3D printed part that can make even this aspect of learning the ukulele easier too.

Called the Easy Fret, the tool clamps on to the neck of the ukulele and hosts a series of 3D printed “keys” that allow for complex chord shapes to be played with a single finger. In this configuration the chords C, F, G, and A minor can be played (although C probably shouldn’t be considered “complex” on a ukulele). It also makes extensive use of compliant mechanisms. For example, the beams that hit the chords use geometry to imitate a four-bar linkage. This improves the quality of the sound because the strings are pressed head-on rather than at an angle.

While this project is great for a beginner learning to play this instrument and figure out the theory behind it, its creator [Ryan Hammons] also hopes that it can be used by those with motor disabilities to be able to learn to play an instrument as well. And, if you have the 3D printer required to build this but don’t have an actual ukulele, with some strings and tuning pegs you can 3D print a working ukulele as well.

Well-Loved Toy Turned Into Robotic Glockenspiel

If there’s a happier word ever imported into the English language than “Glockenspiel”, we’re not sure what it is. And controlling said instrument with a bunch of servos and an Arduino makes us just as happy.

When [Leon van den Beukel] found a toy glockenspiel in a thrift store, he knew what had to be done – Arduinofy it. His first attempt was a single hammer on a pair of gimballed servos, which worked except for the poor sound quality coming from the well-loved toy. The fact that only one note at a time was possible was probably the inspiration for version two, which saw the tone bars removed from the original base, cleaned of their somewhat garish paint, and affixed to a new soundboard. The improved instrument was then outfitted with eight servos, one for each note, each with a 3D-printed arm and wooden mallet. An Arduino runs the servos, and an Android app controls the instrument via Bluetooth, because who doesn’t want to control an electronic glockenspiel with a smartphone app? The video below shows that it works pretty well, even if a few notes need some adjustment. And we don’t even find the servo noise that distracting.

True, we’ve featured somewhat more accomplished robotic glockenspielists before, but this build’s simplicity has a charm of its own.

Continue reading “Well-Loved Toy Turned Into Robotic Glockenspiel”

3D Printed LED Guitar Chord Chart

Learning to play guitar can involve a lot of memorization – chords, scales, arpeggios, you name it. [MushfiqM] has made the process a bit easier with his Digital Chord Chart. Just about every beginning guitarist keeps a chord app, chord book, or even a chord poster handy. Usually these chord charts are in the form of tablature, which is a shorthand method of showing where each finger should go on the instrument. [MushfiqM] took things a step further by actually placing that chart on a 3D printed model of a guitar fretboard.

ledmatrixx[MushfiqM] started by rendering a 3D model of an abbreviated guitar using Autodesk Inventor. He then printed his creation in 3 parts: headstock, neck, and fretboard. The neck of the guitar was hollowed out to allow room for a matrix of LEDs which would show the finger positions. [MushfiqM] then painstakingly soldered in a charlieplexed matrix of 30 leds, all connected by magnet wire. The LEDs are controlled by an Arduino UNO, which has the chord and scale charts stored in flash.

For a user interface, [MushfiqM] used a 2×16 character based LCD and a low-cost IR remote control. All the user has to do is select a chord or scale, and it’s displayed on the fretboard.

There are a couple of commercial products out there which perform a similar function, most notably the Fretlight guitar. Those can get a bit pricy though – costing up to $400.00 USD for an LED enabled guitar.

[via Instructables]

Dexterity Enhancing Guitar

[Justin Lange’s] dad loves playing guitar, but an accident left him with nerve damage that makes it pretty much impossible these days. He just doesn’t have the dexterity needed to form the cords using his left hand. But his son’s hacking skills are helping him get back into it. [Justin] built a button-based add-on that forms the cords for him.

The build has two parts. A frame mounts over the finger board with slots for eighteen solenoids which push the strings down between the frets. These are controlled by the replacement finger board which is mounted below the neck. It has a double-row of buttons that let the player select the desired chord. One button chooses the key, with a second button acting as a modifier to switch to a seventh cord, or minor cord.

The project, which [Justin] has named folkBox, relies on a microcontroller. We spy an Arduino Mega in one of the build photographs but it will be interesting to see if the final project moves to a standalone chip. He’s set a goal for a more robust version of the build some time this summer.

[via Make]