Skip to content

This project involves the creation of a Bluetooth adapter using an ESP32, enabling wireless connectivity for USB keyboards and mice. By leveraging the ESP32's capabilities, users can effortlessly connect their input devices to various devices without the constraint of physical cables.

License

Notifications You must be signed in to change notification settings

jmdmahdi/ESP32-USB-TO-BLE

Repository files navigation

USB Keyboard And Mouse Bluetooth Adapter based on ESP32

This project aims to create a Bluetooth adapter using an ESP32 that allows users to connect USB keyboards and mice wirelessly to their devices.

Hardware Requirements

To build and use this project, you will need the following:

  • ESP32-WROOM-32 development board
  • USB keyboard
  • USB mouse
  • Jumper wires

Software Requirements

To program the ESP32, you will need:

  • Arduino IDE
  • ESP32 board support package installed in Arduino IDE

Pin Configuration

The following pin configuration is used for the project:

  • Pin 16: USB port 1 data +
  • Pin 17: USB port 1 data -
  • Pin 22: USB port 2 data +
  • Pin 23: USB port 2 data -

Image of the Prototype

Here's an image of the prototype in action:

Testing

The code has been tested on an ESP32-WROOM-32 development board.

Other ESP32 boards may be compatible but have not been tested.

Troubleshooting

If you encounter any issues or have questions, feel free to open an issue in the project's GitHub repository.

Contributing

Contributions are welcome! If you'd like to contribute to the project, please fork the repository and submit a pull request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Credits

Credits to T-vK for ESP32-BLE-Keyboard and ESP32-BLE-Mouse Arduino libraries. Also, credits to tobozo for ESP32-USB-Soft-Host library as this project is heavily based on their work!

About

This project involves the creation of a Bluetooth adapter using an ESP32, enabling wireless connectivity for USB keyboards and mice. By leveraging the ESP32's capabilities, users can effortlessly connect their input devices to various devices without the constraint of physical cables.

Topics

Resources

License

Stars

Watchers

Forks