Releases: afpineda/OpenSourceSimWheelESP32
Releases · afpineda/OpenSourceSimWheelESP32
Updated dependencies and a new BLE implementation
- External dependencies have been updated and tested:
- Arduino-ESP32 support package (core): version 3.3.4
- NimBLE-Arduino: version 2.3.7 is supported but not needed anymore (see below).
- Arduino IDE version 2.3.7.
- BLE HID has been implemented directly on the NimBLE stack without any wrapper.
It is available in the filehid_BLE.cppand is the new default.
However, "pure" ESP32 boards still use the Bluedroid stack instead of NimBLE.
This is how ESP32-Arduino core 3.3.4 works.
NimBLE will be available for that board when core version 4.0.0 is released. - The file
hid_NimBLE.cpphas been renamed tohid_h2zero.cppto make clear that this implementation is based on h2zero's NimBLE wrapper. - The file
hid_ESPBLE.cpphas been removed. - Those changes are explained in this discussion.
- You must run the sources setup procedure again. For backwards compatibility, it will automatically rename some old file names found in "includes.txt".
- Documentation has been updated accordingly.
- Small bug fix: bite point not automatically updated when commanded from the companion app.
Full Changelog: 7.7.8...7.7.9
Bug fix
- Fix bug at
HidServiceProviderregarding the custom VID/PID. - Unused code removed.
Full Changelog: 7.7.7...7.7.8
Another enhancement to the battery calibration procedure
- During the calibration procedure, the reported battery level will change by 1% once per minute.
This way, you have evidence that the procedure is running. - Bug fix for battery monitors using the
batt_enpin.
Full Changelog: 7.7.6...7.7.7
Bug fix in the battery calibration sketch
- Bug fix affecting the battery calibration sketch.
- Errata fixes.
Full Changelog: 7.7.5...7.7.6
Simplified battery calibration procedure
- The battery calibration procedure has been simplified.
The annoying 3 minutes countdown has been removed and explicit user action is required to delete the previously stored battery calibration data. Now the procedure will start as soon as there is a BLE connection.
This way, there is no chance to overwrite the calibration data by accident. - Documentation updates.
Full Changelog: 7.7.4...7.7.5
Bug fixes
- Documentation updates.
- Now the CD/CI chain computes code coverage for automated tests (only).
- Fixed a bug in the LED strips caused by "pure" ESP32 boards not having DMA support.
This was a blocking issue. - Fixed a bug in the ADC readings caused by the ADC2 unit being shared
with the Bluetooth radio (only on "pure" ESP32 boards).
This was a blocking issue.
This patch should improve the ADC performance a bit, too. - Increased stack size for the input polling daemon.
This was a blocking issue depending on the particular custom firmware. - Unused code has been removed.
- A potential bug has been fixed regarding UI notifications.
The task watchdog timer is reset between calls to event handlers. - Fixed a bug causing the system to crash and reboot just on the first pairing (BLE) when having pixel control notifications.
- Upgrading is highly recommended.
Full Changelog: 7.7.3...7.7.4
Custom DevKit PCB design
- A custom DevKit PCB design has been added to the project, including customizable firmware and documentation.
- Performance tweaks for LED strips, including DMA mode and less memory consumption.
- Minor documentation updates.
- The NimBLE-Arduino dependency has been updated to version 2.3.5
Full Changelog: 7.7.2...7.7.3
Improve the battery monitor subsystem
- The battery monitor subsystem has been reimplemented.
This was done for extensibility, testability and testing. - The firmware now detects whether the battery is charging so as not to report an inconsistent state of charge.
Works with non-constant voltage battery chargers. - It also detects whether the system is operating with wired power.
- Therefore, four parameters of the battery status are collected:
charging status, battery presence, cable presence, and charge level.
In the future, it may be possible for this information to be reported to the host computer. - No changes are required in your custom firmware, but you must run the sources setup procedure again.
- If available, firmware-defined error messages are reported in both the UART and USB serial interfaces.
- A new custom firmware sketch has been created for the upcoming custom PCB DevKit, which is still under development.
- Minor documentation updates.
Enhance I2C bus initialization and clarify bus capacitance
- Added the missing implementation of
inputs::initializeI2C().
Surprisingly, no sketch is using it so it went unnoticed. - Now the internal pull-up resistors in the I2C bus can be disabled thanks to another
inputs::initializeI2C()parameter. - Additional advice and explanations are given regarding pull-up resistors in the I2C bus.
Full Changelog: 7.6.0...7.7.0
Fix inconsistent handling of pixel control notifications
- Fixed inconsistent handling of pixel control notifications on startup and before connection.
- Battery presence is now available to the system in the
BatteryServiceclass. - The
OnSettingsSavedevent is no longer triggered on the battery autocalibration setting,
as that is not explicitly changed by the user.