Bluetooth Joystick : A wireless joystick with ESP-32 microcontroller and Dual Axis Joystick Module using the Bluetooth connectivity.
- About the Project
- Getting Started
- Usage
- Connections
- Results and Demo
- Future Work
- Troubleshooting
- Contributors
- Acknowledgements and Resources
- License
The Aim of the Project is to make a Bluetooth Joystick using ESP32 which establishes Bluetooth Low Energy (BLE) Connection with the host device to provide controls by providing inputs.
This image illustrates how our hardware looks like at the current stage
The following technologies have been used for the making of this project.
.
├── main # Contains files used for building and flashing
├── docs # Documentation files (alternatively `doc`)
│ ├── report.pdf # Project report
│ └── results # Folder containing screenshots, gifs, videos of results
├── src # Source files (alternatively `lib` or `app`)
├── ...
├── test # Test files (alternatively `spec` or `tests`)
│ ├── benchmarks # Load and stress tests
│ ├── integration # End-to-end, integration tests (alternatively `e2e`)
│ └── unit # Unit tests
├── ...
├── tools # Tools and utilities
├── LICENSE
├── README.md
├── Setup.md # If Installation instructions are lengthy
To flash this project install ESP-IDF: https://github.com/espressif/esp-idf
Clone the project by typing the following command in your Terminal/CommandPrompt
git clone https://github.com/Krishna-13-cyber/BluetoothJoystick.git
cd BluetoothJoystick
Connect the ESP32 to your desktop via USB to flash the code in it. And connect the Joystick to ESP32 as per the table given below.
JoyStick Pin | ESP32 Pin |
---|---|
5V | 3V3 |
GND | GND |
VRx | GPIO39 |
VRy | GPIO34 |
SW | GPIO25 |
You are all set to flash the code after completing the connections.
After following the above steps , use the following commands to: Build
idf.py build
Flash
idf.py -p (PORT) flash monitor
Configuration
idf.py menuconfig
The output obtained is shown in the link attached to the below mentioned video. ADC Values Movement of Cursor by Joystick
- The following developments are yet to be achieved
- Establishing BlueTooth Connection
- Obtaining ADC Values
- Moving the Cursor
- Controlling a Game
While Configuring for the first time if you face any problem, check the ESP-IDF's Menu Configuration
idf.py menuconfig
Then go to components/bluetooth and enable bluetooth Press ctrl+s to save the configuration then
idf.py build
- SRA-VJTI for providing this wonderful opportunity Eklavya 2021
- Special thanks to Gautam Agrawal
- Special thanks to Dhairya Shah
- https://github.com/nkolban/esp32-snippets
- Krishna's Notes
- Om's Notes
The License Used for this Project.