Skip to content

Bluepad32 documentation


Bluepad32 is a library that acts as a "host" Bluetooth controller for HID devices.

In other words, it allows you to control a robot using a DualSense controller.


  • Supports most, if not all, modern Bluetooth gamepads, mice and keyboards
  • Supports ESP32 (ESP32, ESP32-S3, ESP32-C3) and Pico W microcontrollers
  • Supported APIs: ESP-IDF, Pico-SDK, Arduino and CircuitPython
  • Fast (very low latency)
  • Small footprint
  • Uses only one core (CPU0)
  • C11 based
  • Open Source
  • Easy to integrate into 3rd party projects

Supported controllers

Non-exhaustive list:

  • Sony DualSense, DualShock 4, DualShock 3
  • Nintendo Switch, Wii U, Wii and Wii extensions
  • Xbox Wireless
  • Android
  • Keyboard
  • Mouse
  • and more

For detailed list see: Supported gamepads , supported mice and supported keyboards .