AutoGH

Contact me for a quote!

This is a fun robot I designed and built that can play Guitar Hero with 100% accuracy. The robot uses solenoids, controlled via an Arduino and Python, to press the guitar frets and strum in perfect sync with the game. It can play more than 40 notes per second.

Skills

Python/Arduino Programming

  • Programmed note recognition software with Python

  • Communicated with Arduino via PySerial

  • Handled serial commands with Arduino Programming Language

Image Capture and Processing

  • Takes 90 screenshots a second using MSS

  • Processes images into HSV color scale using NumPy and OpenCV

ORIGINAL SCREENSHOT

PROCESSED IMAGE (HSV)

Contour Detection

  • Detects contours in HSV image to identify different notes

  • It can detect standard notes, hammer-ons and pull-offs, tapping, open strums, open strum HOPO, holding notes, and chords

CONTOUR DETECTION

Mechanical Product Design

  • designed models with OnShape

  • 3D Printed chassis and project enclosure

PROJECT ENCLOSURE (Arduino+Breadboard)

SOLENOID CHASSIS

  • Used 24V/1A Solenoids that can output a force of 15N

  • TIP120 Transistors to control power to the solenoid

  • IN4001 Rectifier Diode to prevent back EMF generated when the solenoid turns off

  • 1K Resistor to limit base current

Wiring Solenoids

CONNECTING SOFTWARE WITH ARDUINO

TESTING SOLENOID WIRING

CONNECTING SOLENOIDS WITH SOFTWARE

Demo

2000s Solo Medley: Expert Difficulty

Through the Fire & Flames: Expert Difficulty