- Prevented pairing failure when pairing - unpairing - pairing
- Refactored checking credentials (not deleting preference key's anymore)
- Prevented executing action when lock is not present (battery or lock failure) based on advertising heartbeat
- Reduced BLE connect retries from 10 to 5
- Fixed build issue and exception when enabeling debugging
- Added "Nightmode active" and "Accessory Battery State" to keyturner struct data
- Added Nuki Opener support
- Added pairingEnabled method
- Added retreiving and logging of authorization entries
- Added deleteAuthorizationEntry
- Added getSecurityPincode
- Added getMacAddress
- Fixed not working pairing timeout
- Added lockHeartBeat when pairing successfull
- Prevented millis() overflow issue
- Corrected setDisonnectTimeout()
- tweaked semaphore timeouts and delays
- added option to check if communication is done and then disconnect ble (saves battery and speeds up getting advertisements)
- improved semaphore logging
- Removed local BLE scanner from library to be able to use the same scanner for multiple BLE devices in 1 project. https://github.com/I-Connect/BleScanner.git can be used.
- Added/updated header to all files
- Added documentation to all public methods
- Set NimBle version to be used
- Added changelog
- Updated to Espressif platform 4.x.x
- Fixed battery indications
- Some general refactoring
- Added semaphores to make it (more) threadsafe
- Fixed handling payload len in lock action in case in case a namesuffix is used
- Some general refactoring
- Cleanup and refactor
- Fixed loosing pincode on re-pairing
- Updated scanning intervals according to recommendations Nuki dev
- Made BLE scanner injectable
- Added eventhandler
lib is ready for beta testing, most if not all Nuki lock v2 functionality is implemented. Most of the basic methods have been tested, some of the more advanced (mostly settings related) methods still need to be tested There can still be braking changes....! Implementation is according to Nuki Smart Lock API V2.2.1 (22.06.2021)