ANN: Gamepad library for Nano RP2040

Hi,

Just wanted to share with you all a library that adds gamepad support for the RP2040 Connect board.

It supports any modern Bluetooth gamepad, from PS5, PS4, Wii, Switch, Xbox One S, Android, and more!

It also supports setting force feedback (rumble), change the color LED and the players LEDs on the gamepads the supports them.

This is a two part project:

  • The Arduino library (that works that any other Arduino library).
  • And the firmware that runs on the NINA (ESP32) processor.

This works because the Nano RP2040 Connect two processors: the RP2040 (main one), and the NINA (the co-processor used for WiFi connections).
By replacing the default WiFi NINA firmware with my own, we can have Bluetooth gamepad support on the RP2040.

If you are interesting in trying it, please let me know, and I'd happily help you with any issues that you might have.

Also any kind of constructive feedback is very welcome... from new features to support, to how to improve the API, etc.

The library + example can be found here:

The firmware for NINA can be found here:

Instructions for flashing it, here: docs/plat_nina.md · main · Ricardo Quesada / Bluepad32 · GitLab

The complete list of supported gamepads can be found here:

Thanks!

1 Like

Update:

Bluepad32 library is part of the Arduino Library registry... so you can install it like any other Arduino library.

And I wrote a doc explaining how it works internally:

Feel free to ping me should you have any questions. Thanks!

1 Like