Skip to content

SimpleBLE v0.4.0

Compare
Choose a tag to compare
@kdewald kdewald released this 13 Jun 05:51
· 295 commits to main since this release
2681ecb

[0.4.0] - 2022-06-12

Added

  • Expose RSSI as a property of SimpleBLE::Peripheral.
  • Utils function to identify the current platform.
  • (Linux) SimpleBLE::Peripheral::is_paired method to check if a peripheral is paired.
  • (Linux) SimpleBLE::Adapter::get_paired_peripherals method to list all paired peripherals.
  • Function to validate whether an SimpleBLE::Adapter or SimpleBLE::Peripheral object is initialized.
  • Logging hooks to capture logs from SimpleBLE and internal components.
  • Accessor function to underlying OS objects of SimpleBLE::Adapter and SimpleBLE::Peripheral.

Changed

  • Updated Linux implementation to use SimpleBluez v0.5.0.
  • Added support for Windows SDK 10.0.22000.0
  • Updated libfmt to version 8.1.1.
  • Cleaned up dependency management for libfmt and SimpleBluez.
  • SimpleBLE::Adapter::get_paired_peripherals will return an empty list on Windows and MacOS.
  • (Linux) (Experimental) Exceptions thrown inside the Bluez async thread are now caught to prevent lockups.
  • NotConnected exception will be thrown instead of OperationFailed when peripheral not connected.

Fixed

  • (MacOS) Known peripherals would not get cleared at the beginning of a scanning session.
  • (Windows) Known peripherals would not get cleared at the beginning of a scanning session.
  • Calling functions of uninitialized objects will now throw an exception instead of crashing.
  • (MacOS) Thread synchronization issues would cause certain peripheral actions to report failure.
  • (Windows) Behavior of write_request and write_command was flipped.
  • (MacOS) Behavior of write_request and write_command was flipped.
  • (Linux) on_connected callback was not being called.
  • (Linux) Spurious disconnection events during connection retries have been removed.
  • (Linux) Existing characteristic callbacks were not being cleared on disconnection.
  • (Linux) Characteristics are unsubscribed on disconnection.
  • (Linux) Missing agent registration that would prevent pairing from working.