Main Content

HID Keyboard Device with Raspberry Pi Pico

Transforms a Wii Classic controller into an HID keyboard.

This project is to convert an old Wii Classic Controller into an emulator of an HID keyboard. Each button or action can be mapped into a key press. This is done by using a Raspberry Pi Pico with CircuitPython’s HID library. It can easily be modified to do key sequences extremely fast (faster than any human can with their hands), it can be adjusted for games where button smashing is required (don’t use it on online competition games).

The reason I built it is to control a mobile robot. The robot requires certain ASCII character in order to perform several functions. These characters are sent through SSH. So, this project can send all the commands to the robot at a steady rate to make the motion of the robot be in “real time”.

The way this classic controller used to communicate with the Wii-Remote is through the I2C protocol, the “wii-mote” would initialize communication with the classic controller. The wii-mote would receive data encrypted packages from the classic controller.

I request the data packages with the Raspberry Pi Pico in such a way that the classic controller will release the data unencrypted. This is done to not waste CPU cycles decrypting the packages.”

Link to article