Shred through Guitar Hero with a Raspberry Pi-powered robot

Level up your Guitar Hero gaming with Nick O’Hara’s Jon Bot Jovi Guitar Hero robot. While Nick admits this is an expensive project (around $1000 to build), it’s something that was so “ridiculous, hilarious, and awesome” he felt he just needed to do it.

While you’re not great at Guitar Hero, Nick, you ARE good at making robots

You’re halfway to shredding a Bon Jovi chorus perfectly on Guitar Hero and you can taste the fame. Problem is, you’re no Jon Bon Jovi. Or Peter Frampton. Or Slash. So you need Raspberry Pi to assist your rockstar dreams. Enter Jon Bot Jovi.

Kit list

What is a solenoid?

close up of mechanical fret board
Close-up of mechanical fretboard

A solenoid is just a coil of wire, but when you pass an electric current through it acts as an electromagnet, and a magnetic field is generated. When you turn the current off, the magnetic field goes away. Inside the coil of wire is a metal rod, when the current is on and the magnetic field is present, the rod is free to move in the direction of the field. In this way, a solenoid converts electrical energy into movement and the rod moves in or out of the coil depending on the current applied.

Here, a Raspberry Pi controls a bunch of solenoids as they press and release the buttons on the guitar controller to give Nick his god-like skills. Watch the build video on YouTube for a simple walkthrough of how this all works.

It’s tricky

Building the mechanical fingers and solenoids was one of the trickiest parts of the build. Nick ended up burning through a lot of them as he’s new to robotics and didn’t understand the relationship between power, voltage, and current, so they burnt out quickly. Luckily, he found a robotics guy to give him a 30-minute crash course, which set the project on the right path. Heroes come in all shapes and sizes.

guitar hero board up close
Fret board close-up courtesy of Jeremy Cook on hackster.io

Note recognition was also far from an easy task. Nick originally tried to look at specific pixels on the screen, which worked for slow songs, but for faster songs it would miss around 30% of the notes. He eventually turned to OpenCV, but it took a fair amount of effort to hone the perfect filtering to make the note recognition accurate. Fiddly, but worth it.

Shred, guitar hero!

Nick’s favourite part of the project?

“Seeing Jon Bot Jovi absolutely shred on the guitar. Did you see how fast he’s strumming during Through the Fire and the Flames?!”

We love seeing a maker so happy with a final build and we wish we could come and play too! (We are similarly stunted in our guitar-playing abilities.)

Nick wrote a project post on Hacker News for those who are curious about the more technical details. And the original build video on YouTube is a wild ride, so check it out and subscribe to Nick’s channel.

8 comments
Jump to the comment form

Avatar

Wow, great job on this Nick! I would love to get a copy of the code so I can build one of these myself :)

Reply to William Patton

Avatar

I’m obviously too old-school for this. Five opto sensors taped to the monitor driving relay contacts wired across the guitar controller switches, plus maybe 2 ten-cent logic chips to glue it all together.
I admire Nick’s programming (and Making) talents, but sometimes the old ways have a lot to offer.
A friend tells a story of a hospital R&D lab that needed a small supply of water within a particular pressure range to test something. It was most-easily furnished by a tank just above head height, kept filled within certain (wide) limits. They set a graduate to design a system that would alarm when the tank needed refiling. They worked for a couple of weeks and came up with a microprocessor-based design that measured the resonant frequency of the tank and, from that derived the water level. It had a secondary, fail-safe measuring facility of an ultrasonic distance measurement.
My friend smiled at the graduate as they presented their high-tech solution, then reached into his jacket pocket and took out a fishing float with a straw taped to its top and a small piece of paper at the end with a flag drawn on it.
“If you can’t see the flag, the tank needs filling”.
The graduate suddenly realised what ‘appropriate technology’ was all about and went on to be a successful, cost-effective engineer.

Reply to Giles Read

Avatar

As always, the right answer depends on what is being asked. Maybe Nick wanted (needed?) to achieve his goal without touching the TV screen. Maybe he needed a CV based solution. If those were requirements then the opto sensors solution wouldn’t work, not because they “wouldn’t work”, but because they wouldn’t fill the requirements.

As for the water tank story…. it might be cost-efective, but it certainly is not robust enough. It depends on somebody watching the flag., and then acting upon what he sees. Totally error prone. I’d suggest something that not only monitors water level but also makes sure that somebody acts promptly, making sure to send as many alarms as possible so people actually know that the tank needs to be filled.

My 2 cents.

Reply to Carlos Luna

Avatar

Yep – two cents well spent.
And, I have not lost sight of the fact that Nick got up from his metaphorical sofa, learned what he needed to learn, and put it to use in the form of a highly kinetic sculpture. Far more attractive than my suggestion!

Reply to Giles Read

Avatar

Hey, this is Nick, the creator of Jon Bot Jovi :) Thanks for your comments and appreciate the discussion!

I wanted to mimic the real behavior of playing Guitar Hero: someone looking at a screen and a finger pressing the button. That added such a level of absurdity and ridiculousness and made for a much more entertaining video, plus it was a great excuse to learn about OpenCV and solenoids (and voltage and amps). Although the method you mentioned would have been potentially more accurate and definitely much cheaper, the method I went with was better suited for a YouTube video and the visuals that go with that.

Also might be worth checking out the HackerNews article I wrote for some more technical discussion: https://news.ycombinator.com/item?id=26843838

PS I don’t have two cents to give since I spent all my money on Jon Bot Jovi lol

Reply to Nick OHara

Avatar

I would have bought an evaporative cooler float, a saddle valve (or other water supply connection) and some tubing and made the tank auto-filling.

Reply to Jim

Avatar

Sure, you have a point here for engineers. Cost effectivness and frugality are great traits. But when learning is the goal Nick’s approach has merits. It teaches the said engineer to gain usefull knowledge which can later be applied. The point is to be open to change design by iteratively simplifying steps. When learning extend yourself to test out your wierdest dreams and ideas. Perhaps the ones you had a s a kid. And as you said get off the couch and execute!

Reply to Antony John

Avatar

Always raspberry pi robots are best I am a fan of your developments. It is an amazing code I am going to buy this

Reply to zack

Leave a Comment