Raspberry Pi Pico W Brings Retro Nintendo Controllers to Switch

The $4 Raspberry Pi Pico is fast becoming the glue for retro projects, which David Pagels brings the retro Nintendo controller to Nintendo’s popular Switch console via USB and, in recent updates, Bluetooth.
David Pagels The Retro-Pico-Switch project is very simple. Use your old Nintendo 64 and Gamecube controller with Nintendo Switch. No setup required. Just download the UF2 file from release page, set the Pico W to flashable, drag and drop the UF2 onto the Pico and it will reboot as a Bluetooth device. The only slightly tricky part of this project is connecting the controller to the Pico. Thankfully, there is a pinout reference that can be used to map the controller’s pins to the Pico. The N64 controller interface has only three pins. Pin 1 connects to the 3.6V power supply, pin 2 is for data and pin 3 is GND. The software is looking for a connection between pin 2 (data) and GPIO 18 on the Pico. Pull the data pin high with a 1 kohm resistor between pins 2 and 1 to ensure consistent data transfer. The Gamecube’s pinout is a bit more complicated, with seven pins, but pin 2 (red wire) is data, pin 6 (blue wire) is 3.3V, and pin 7 (black wire) is ground. The remaining pins are for vibration feedback.
To give your project a clean aesthetic, 3D printable housing For Nintendo 64 controller interface. 3D printable parts are small and easy to print on the best 3D printers. Playing the recent Metroid Prime Remastered with the original GameCube controller feels nostalgic.
Pagels’ attention to detail maps the Switch’s home button to a combination of L, R, and Start buttons, and uses dynamic scaling for each axis of the joystick to account for the reduced range of older analog controllers. increase. This project benefits from a recent update to the Pico SDK that brought his Bluetooth support to the board’s Infineon CYW43439 wireless chip. Bluetooth support was introduced in Raspberry Pi Pico W via his SDK 1.5.0 in February 2023. Bluetooth support is not yet officially available in MicroPython and CircuitPython, so Pagels’ project uses his C SDK.
As a bonus, this project can be used on other machines as well. This makes it an ideal input as a spot for retro emulation with real controllers. for 4 people golden eye and Diddy Kong Racing You really benefit from the N64 controller.
Download the code and learn more about this amazing project Pagels’ GitHub repository. Sure, Nintendo sells a version of the N64 controller that’s Switch-compatible by default, but what’s the fun in that?