I built a very basic Arcade controller using Bluetooth and ArduinoIDE so I could play old school arcade games on my laptop with a Joystick and button(s). The code is based on the BleGamepad.h library https://github.com/lemmingDev/ESP32-BLE-Gamepad and the code example in Arduino IDE (File > Example > ESP32-BLE-Gamepad > SingleButton)
Retroarch (Interface where you can install emulators) download: https://www.retroarch.com/?page=platforms
Index of old school arcade games names and thumbnails: http://thumbnails.libretro.com/MAME/Named_Boxarts/
The code examples can be easily added to if you want more buttons or Joysticks. I was limited by lack of GPIO's on my ESP32.