- Change -51 to represent 14oz Ember Mug 2 (by @Flight-Lab)
- Rename
find_mug
anddiscover_mugs
tofind_device
anddiscover_devices
respectively - Improved documentation
- Bumped Bleak to 0.22.2
- Dropped support for Python 3.10
- discover method -
discovered_devices_and_advertisement_data
is a dict and not a list (#62)
- Log statistics when debug is selected
- Min/Max temp (based on advertised values in manual)
- Add
as_dict
to allow for serialization
- Target temp will expect and handle Fahrenheit if
use_metric
is False
- Detect model from advertiser data (Hopefully correctly)
- Colour, capacity and model numbers
- Handle Tumbler
- Rename "Unknown" state to "Standby"
- Bumped minimum version of bleak to 0.21.0
- Discover method changed to use advertisement information
set_device
method replaced byble_event_callback
and it now also updated model info if not yet set.model
renamed tomodel_info
include_extra
option removed.debug
has a similar function now.
- Set proper version and rebuild release
- Tests for Python 3.12
- Use debug level for connection timeout logger instead or error
- Use debug level for disconnect callback instead of warning
- Don't require adapter keyword for other backends
- Added support for Travel Mug 2
- Updated minimal dependencies
- Dropped support for Python 3.9 as it is no longer supported by bleak-retry-connector and Home Assistant
- Added support for Travel Mug
- Added debugger to dump characteristics and their values for debugging
- Allow Travel Mug to be detected with shortened Bluetooth name
- Exclude led_colour attributes from the Travel Mug
- Add volume_level attribute for Travel Mug
- Make terms more generic as all devices are not Mugs
- Added attributes to differentiate between device types
- Don't fetch name for the Ember "Cup" as it doesn't have it
- In theory the "Cup" should be supported
- The model attribute of the data is now a Model class that provides attributes based on model
- Discover Cups and Travel Mugs, but they are still not fully supported
- Debug option to print services and characteristics for debugging
- EmberMugConnection changed to EmberMug
- EmberMug changed to MugData
- Made ensure_connection private and call it automatically in most cases
- Log if disconnect was expected or not
- Lock for operations to ensure only one at a time
- _ensure_connection now called before every write and before bulk reads
- Changed condition that caused connections to be constantly reestablished because is_connected is not a bool.
- Don't call disconnect in disconnect callback
- Set proper attribute for on charging base
- Update pre-commit, pytest and add dependabot
- register callback stores a dict to avoid duplicate registrations
- Set values on mug immediately after setting them
- Only add/remove callback if not already done
- More logging for different methods
- Bump bleak to >=0.19.5 for Home Assistant 2023.2
- Catch exceptions on querying DSK and UDSK and return empty strings
- No longer query "extra" attributes unless
include_extra=True
was passed to mug
- Changed UUIDs, PushEvent IDs, LiquidState and TemperatureUnit to Enum
- TemperatureUnit changed to include degree symbol to match with Home Assistant
- Added _read and_write helper methods with logging
- Fixed logging
- as_dict() for dumping Mug info
- More tests
- Allow unit with or without degree and handle Enum for Home Assistant in set_temperature_unit()
- Remove
metric
attribute, it was supposed to beuse_metric
- Fixed
_device
attribute which would not be updated on callback
- More tests for cli interface
- Add tests for Python 3.11
- Automatic tests on macOS and Windows. They should still work though.
- Update bleak and bleak-retry-connector to get retry decorator and match home assistant 2023.1
- Update documentation
- Updated linting and CI tools
- Also catch NotImplementedError when trying to pair. (Affects Home Assistant ESPHome proxies)
- Format Colour as hex when printed (for CLI)
- Improve documentation for setting values
- cli option to get specific attributes by name
- cli option to set attributes
- cli option to limit output
- Column number calculation
- Remove ensure_connection in update_initial and update_multiple because it causes timeouts and loops
- Update docs to document procedure for writing attributes
- Remove retry_bluetooth_connection_error...
- Add fallback method for retry_bluetooth_connection_error to not break on patch.
- Use retry_bluetooth_connection_error on update methods
- Try to fetch services on initial connection to wake device
- Try to fix, but also always catch encoding errors
- Catch error decoding UDSK and log warning to avoid error setting up
- Also packaged as CLI command to be used directly
- Add register_callback
- Fire callbacks in notifications and all updates
- Add set_device and pass to establish_connection
- Update bleak-retry-connector to 1.17.1
- Update bleak to 0.17.0
- Renamed connect to ensure_connection
- Catch EOFError during pair, which is not caught in bleak/dbus-next currently
- Lots of tests
- Typo in metric in print_changes
- Fix Name validation rules
- set_temperature_unit method name
- Format information as table in CLI
- Print message with error instead of stack trace in cli if bleak error occurs in find/discover
- Incorrect name for imperial CLI flag
- Only try to disconnect if client is present
- Tests for data, scanner, mug
- CLI flag for imperial units
- meta_display was not property
- target_temp returned current_temp
- extra flag was not applied to polling
- bleak-retry-connector to help connect and maintain connection to mug
- Add option to show/hide less useful mug info
- Formatting for polled changes in CLI
- Add more tests
- Support for python 3.8 - In order to use bleak-retry-connector
- Add adapter param to EmberMugConnection and scanners (for BlueZ only)
- Add mac params to discover and find methods
- Decode udsk and mug id. Even if the values aren't super useful.
- Improve CLI interface and gracefully handle no options provided
- Bump version because of issues with name conflicts
- Fix GitHub Actions issues with Poetry
- First release on PyPI test.