Releases: lemmingDev/ESP32-BLE-Gamepad
Release 6.0
Thanks to @Mystfit and @Sab1e-GitHub for some pull requests to update the library to be inline with NimBLE changes, and to add output report functionality
Release 6.0 is released to bring compatibility with @h2zero's NimBLE version 2.0.0 which was recently released through Arduino Library Manager
Release 5.4
Fixes the driving and flight simulator examples to set min/max simulator axes correctly
Changes to security and task server to hopefully make other ESP32 variants work
Tested with latest released NimBLE 1.4.1
Tested on Android 11, Mac OS Sonoma, Windows 10, Windows 11 and Meta Quest 2
Release 5.3
Enables setting of battery level
Example show use added
Release 5.2
Adds ability to customise BLE characteristics for model number, software revision, serial number, firmware revision, hardware revision (in addition to the name and manufacturer it already did)
Release 5.1
Seems NimBLE is taking a while to release their latest version, and this is causing issues with ESP32-BLE-Gamepad, so for now, the official NimBLE 1.4.0 is the only supported version, and the ESP32-BLE-Gamepad's setBatteryLevel has been disabled to allow for this.
setBatteryLevel will return after NimBLE releases their next official version, and ESP32-BLE-Gamepad will be updated to address some other breaking changes it will also bring
Release 5.0
POSSIBLE BREAKING CHANGES - PLEASE READ
A large code rebase (configuration class) along with some extra features (start, select, menu, home, back, volume up, volume down and volume mute buttons) has been committed thanks to @dexterdy
Since version 5 of this library, the axes and simulation controls have configurable min and max values The decision was made to set defaults to 0 for minimum and 32767 for maximum (previously -32767 to 32767) This was due to the fact that non-Windows operating systems and some online web-based game controller testers didn't play well with negative numbers. Existing sketches should take note, and see the DrivingControllerTest example for how to set back to -32767 if wanted
This version of the library has been tested against NimBLE-Arduino version 2 (as of publishing, 1.4 is the latest released version, so currently only available at https://github.com/h2zero/NimBLE-Arduino/tree/master)
Please see updated examples
Release 4.4
Fix compilation error due to removal of NimBLESecurity class
Replaced the NimBLESecurity class instantiation and authentication method setting in BLEGamepad.cpp:1318-1320 with an equivalent call to
NimBLEDevice::setSecurityAuth(BLE_SM_PAIR_AUTHREQ_BOND);
Thanks @mhaebler
Use NimBLE-Arduino from https://github.com/h2zero/NimBLE-Arduino/tree/master
Release 4.3
Thanks to suggestion of @GamingNJncos the library should have less latency
Thanks to @spleen1981 for implementing the above, plus fixing the battery level updates now that NimBLE fully supports it
Release 4.1
Disabled all special buttons by default (enabling start and select by default confused users)
Fixed up setWhichAxes function to correctly set slider1 and slider2
Updated examples
Release 4.0
New configuration class and special buttons thanks to @dexterdy.
Configurable VID and PID values (see TestAll.ino for example).
Please read examples as the methos of customising the controller HID has changed