- ADD: Install Bleak automatically on all platforms
- CHANGE: Async Bleak adapter as default adapter on all platforms
- CHANGE: Support only Python 3.9 and above
- FIX: Check if async adapter in use in RuuviTagReactive
- FIX: Correct typo in argument name search_duration_sec
- FIX: Ensure the BLE scanner is stopped by explicitly closing the generator
- ADD: Bluez as option to RUUVI_BLE_ADAPTER environment variable
- FIX: Add missing RSSI value to Bleson adapter payload
- FIX: Pass Bluetooth device info to BleakScanner class
- FIX: Verify BLE adapter type before method execution
- ADD: Support for Windows and macOS out of the box
- ADD: (Beta) Async support to RuuviTagReactive
- FIX: (Beta) Use passive scanning on macOS with Bleak
- ADD: (Beta) Async version to RuuviTag-class
- ADD: (Beta) Async get_data_for_sensors_async method
- ADD: (Beta) Async support for CLI
- CHANGE: Add RSSI reporting
- ADD: (Beta) Bleak cross-platform BLE adapter with async get_data_async and find_ruuvitags_async methods
- CHANGE: RuuviTagSensor methods return empty string instead of None if MAC is not found
- ADD: Type hints to package
- CHANGE: Support only Python 3.7 and above
- CHANGE: RuuviTagSensor get_datas-method renamed to get_data
- CHANGE: RuuviTagSensor get_data-method renamed to get_first_raw_data
- CHANGE: Updated RxPy to v4
- CHANGE: Switch unit test framework from nose to pytest
- FIX: Handle too shot BLE data from RuuviTag as valida data
- CHANGE: Add wheel to setup requirements
- FIX: BlueZ - Do not use sudo if sudo not available or if already superuser
- CHANGE: BlueZ - Use passive mode when scanning for Bluetooth devices
- FIX: Bleson return correct data if get_data returns before desired mac is seen
- ADD: Enable debug logging from CLI
- CHANGE: Use struct to decode data instead of manual bitshift and rework parsing
- FIX: RuuviTag 3.x support
- ADD: Test adapter for emulating HCI communication from a file
- ADD: Bleson BLE adapter
- CHANGE: Use MAC from payload for white/blacklist if MAC not in advertised data
- FIX: DEVNULL initialization when using Python 2
- FIX: Missing module from released package
- FIX: Usage of bt_device parameter when opening the BLE connection
- CHANGE: Refactor adapters into own modules
- FIX: Blacklisting of non Ruuvitag devices
- FIX: Pin rx version to 1.x for Python 2 support
- FIX: RuuviTag-object
- Fix hcitool subprocess closing
- Fix data format selection
- Move broadcasted raw data handling to an own file
- Remove obsolete handling for r/ in Data Format 2/4 validate
- Add retry and exit program if hciconf reset fails
- Changed RuuviTagReactive's time-value from local to UTC
- Dataformat 5 to use mV instead of V
- Add data_format value to payload
- Fix support for RuuviFW 1.2.8
- Support for Data Format 5
- Fix for use of bt_device parameter in find_ruuvitags
- Circumvent hcidump pipe buffering to assure all readings are propagated timely
- Fix sharing run_flag with rx and ruuvitag processes
- Fix RuuviTagReactive Python2.7 support
- Define Bluetooth device id with bt_device parameter
- Fixed pypi documentation format
- Fix Data Format 3 temperature decode for negative values
- Blacklist MACs of BLE devices that are not RuuviTag sensors
- Breaking change code refactor if RuuviTagSensor was used as an object
- Split RuuviTagSensor class to RuuviTag sensor object (RuuviTag) and static functions (RuuviTagSensor)
- Fix module logging
- Replace print-functions with logging
- Log to console disabled by default
- Support for Data Format 3 and 4
- Fix data decoder Python2 support
- RuuviTagReactive: reactive wrapper and background process for RuuviTagSensor get_datas
- Fix for hcitool and hcidump subprocess kill
- Fix data decode. Use minus and underscore as altchars as encoding is url-safe
- get_datas function for handling RuuviTag broadcasts with callback function
- MAC list to optional in get_data_for_sensors function
- Fix temperature decimal calculation
- Use subprocess.DEVNULL starting with Python 3.3
- Use psutil to find correct process to kill
- Fix for hcitool subprocess kill
- Get latest data for specified sensors
- Accept ruu.vi/# and r/ as RuuviTag datas in conversion
- Python 2.7 support
- Use base64 encoding to suupport new Weather Station firmware
- Find RuuviTags functionality
- Change gattlib to BlueZ (use hcitool and hcidump)