Skip to content

Releases: afpineda/OpenSourceSimWheelESP32

Updated dependencies and a new BLE implementation

21 Dec 10:31

Choose a tag to compare

  • 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 file hid_BLE.cpp and 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.cpp has been renamed to hid_h2zero.cpp to make clear that this implementation is based on h2zero's NimBLE wrapper.
  • The file hid_ESPBLE.cpp has 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

31 Oct 13:44

Choose a tag to compare

  • Fix bug at HidServiceProvider regarding the custom VID/PID.
  • Unused code removed.

Full Changelog: 7.7.7...7.7.8

Another enhancement to the battery calibration procedure

16 Oct 14:35

Choose a tag to compare

  • 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_en pin.

Full Changelog: 7.7.6...7.7.7

Bug fix in the battery calibration sketch

14 Oct 06:50

Choose a tag to compare

  • Bug fix affecting the battery calibration sketch.
  • Errata fixes.

Full Changelog: 7.7.5...7.7.6

Simplified battery calibration procedure

09 Oct 10:39

Choose a tag to compare

  • 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

27 Sep 08:55

Choose a tag to compare

  • 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

03 Sep 14:09

Choose a tag to compare

  • 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

24 Aug 13:24

Choose a tag to compare

  • 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

24 Jul 17:11

Choose a tag to compare

  • 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

18 Jul 18:46

Choose a tag to compare

  • Fixed inconsistent handling of pixel control notifications on startup and before connection.
  • Battery presence is now available to the system in the BatteryService class.
  • The OnSettingsSaved event is no longer triggered on the battery autocalibration setting,
    as that is not explicitly changed by the user.