Wii_Guitar-to-BLE_Gamepad Converter

By
Arduino
Embedded Systems
PCB
Communication
Hardware

When I was younger, I really loved playing Guitar Hero 3 on my Wii. My family never got rid of the guitar controller extension and recently I decided to start playing guitar hero on my windows computer. Since Wii Remotes use Bluetooth for their wireless connection, it is possible to connect them to a windows computer but there are some steps that need to be taken. There are no official windows drivers for Wii Remotes so unverified, third-party drivers are needed to get the Wii remote to function. This requires disabling some safety settings on windows to run these drivers, which can trigger anti-cheat software in other games. The enabling and disabling of these settings also require a computer restart every time which becomes very inconvenient over time. The goal of this project is to design a custom microcontroller circuit that takes in the data signal from a Wii Guitar Extension Controller and outputs a windows compatible Bluetooth Controller signal to a PC. Essentially the Wii Remote is being replaced with this custom board. The ESP32-WROOM-32D module was the microcontroller of choice as it has built-in Bluetooth functionality, as well as a handful of Bluetooth HID Libraries, and I have prior experience making custom boards for this microcontroller from my Senior Design class. The decision to make this Bluetooth and battery-powered came from the fact that the Wii Remote communicates over Bluetooth and is battery-powered, and this system was designed to replace that. While there are some analog inputs on the Wii Guitarsuch as a joystick and the accelerometers found on a Wii Remote, the only necessary inputs for Guitar Hero are the buttons so those are the only inputs that will be converted. The other input functionality (minus what is found on a Wii Remote) can be added later since the Wii Guitar communicates with the Wii Remote (and by extension this device) via 3.3V I2C.

0 Lifts 

Artifacts

Name Description
Arduino Code This file contains the code that allows the ESP32 to connect to the Wii Guitar via I2C and outputs the guitar button data using lemmingDev's ESP32-BLE-Gamepad library. In order for this code to function, the wire, ESP32-BLE-Gamepad, and NimBLE-Arduino Libraries need to be installed.   Download
EDA Files for the Wii Guitar Board KiCad project, schematic, and PCB files for the custom board designed for this project.   Download
Video Walkthrough/Demonstration A video showing the project's function as well as an explanation of some of the project's setbacks.   Link
Peer Evaluation Video A video with two peers, using and commenting on the response/latency of the modified Wii Guitar   Link
Battery Life Verification Video Short video verifying that the battery life of the system last more than * hours   Link
ECE 406 Final Status Report A short document outlining the project's design and the final status of the project by the end of the Winter 2023 term.   Download