February 4, 2024
Description
This is the assembly manual for clone hero guitar.
All of the parts were printed in PETG with layer height of 0.2mm.
Image shows position of different nuts and threaded inserts
Legend:
Image shows position of different screws
Legend:
Raspberry Pi Pico is used as the “brain” of this guitar for a simple reason - it is cheap, can be recognized by PC as USB HID and is locally available.
Raspberry Pi Pico pinout (Pico-R3-A4-Pinout.pdf (raspberrypi.com))
For purpose of the guitar pins 7-20 (not all of them I think) have been used as they were the pins easiest to approach. One GND for frets one GND for other buttons in body, 9 GPIOs 5 for frets, 2 for strum (up and down) and 2 for select and start button.
As we need to connect Mechanical switches and limit switches to Pico there is some soldering.
For strum limit switches one of the terminals, in this case NO, has to be connected to GND (ground) on the Raspberry Pi Pico and the other terminal of the limit switches, in this case C/COM, has to be connected to the GPIO (general-purpose input/output) on Raspberry Pi Pico.
All other buttons (frets and start/select buttons) use keyboard mechanical switches. Mechanical switches has 2 terminals so you have to connect one of them to GND and other to GPIO.
Wires:
Strum and Start/Select GND can be connected as well but I left it separate no special reason.
GPIO wiring :
In case of using different GPIO you have to make changes in code and in case of using those GPIO but not for same button you will probably have no problem because you have to map controls inside game anyway.
The GND can be interconnected between switches and in case of fret switches it is recommended because there is only so much space in aluminum pipe, but every microswitch needs a wire for GPIO.
WARNING: Soldering can be dangerous if safe operating procedures are not followed.
First you have to flash CircuitPython on Raspberry Pi Pico (Installing CircuitPython).
After flashing CircuitPython onto the Raspberry Pi Pico extract Guitar_Code.zip and place all the files on the Raspberry Pi Pico.
Files on Raspberry Pi Pico after flashing and copying files onto it
In the case of not using same GPIOs there are some changes that have to be done in code.py.
fretGreen = DigitalInOut(board.GP11)
fretGreen.switch_to_input(pull = Pull.UP)In code.py every button is defined something like this and board.GP11 is defining which GPIO is used for a button. Depending where you solder the wire from switch you have to change board.GP{number of GPIO}.
Go to Control Panel → Devices and Printers → Right click Pico → Game controller settings → CircuitPython HID Properties
Here you can check if all buttons works by pushing them.
Sample of clicking green fret
If you made it this far you will have a fully functional Clone Hero guitar for gaming.
Happy gaming!
License:
Creative Commons — Attribution — Noncommercial