Guitar Hero Synthesizer
Embedded systems · microcontrollers · audio
A Guitar Hero controller converted into an ATmega328PB synthesizer. The firmware reads the original controls, generates PWM audio, and lets the player remap fret-button notes on the LCD.
Overview
This project converts a Guitar Hero controller into a playable monophonic synthesizer. An ATmega328PB reads the controller inputs and synthesizes notes through PWM before driving a speaker through a custom audio-output stage. The fret buttons select notes, the strum bar triggers a decaying tone, the whammy stick adds vibrato, and the LCD-and-joystick interface changes each button's pitch mapping. One note sounds at a time, and the notes land close to true pitch — fine-tuning the frequency table was the thing the deadline took.
Key features
- Polled the fret buttons, strum bar, mute control and joystick, and sampled the whammy position through the ADC, in bare-metal C.
- Generated mapped musical notes using PWM audio and a decay envelope that emulates a guitar strum.
- Converted the whammy stick's analog position through the ADC to add real-time vibrato and pitch variation.
- Used an I2C-connected LCD and joystick interface to display and adjust the pitch assigned to each fret button.
- Integrated regulated battery power, signal buffering, audio amplification, and speaker output inside the original enclosure.
What went wrong
The first build shut itself down whenever the speaker drew current, and there was noise riding on the audio. I moved it to a 12 V battery pack with two 5 V LDO regulators, which fixed both.
Controller design sketch
My contribution
- Did the electronics integration and soldered everything into the original controller enclosure.
- Wrote most of the bare-metal C firmware.
- Organized the project for our three-person team.
Links
Full project documentation, requirements validation, development notes, and source code are linked below.
Video gallery
Live Demo
Demo Day footage of the completed instrument, showing the physical controls, LCD interface, synthesized audio, and speaker output operating together in real time.