HomeAssitant custom integration for dyson

Overview

HomeAssistant Custom Integration for Dyson

This custom integration is still under development.

This is a HA custom integration for dyson. There are several main differences between this custom integration and the official dyson integration:

  • It does not rely on dyson account. Which means once configured, the integration will no longer login to the Dyson cloud service so fast and more reliable start up process.

  • Config flow and discovery is supported, so easier configuration.

  • Based on a new library that is better structured so the code in the integration itself is simplified.

My goal is to make this integration official. However, at the current stage, I don't want to do the changes in core since there could be a lot of breaking changes. Therefore, I'll do be merge when everything seems stable.

Installation

You can install using HACS. Adding https://github.com/shenxn/ha-dyson as custom repository and then install Dyson Local. If you want cloud functionalities as well, add https://github.com/shenxn/ha-dyson-cloud and install Dyson Cloud.

You can also install manually

Local and Cloud

There are two integrations, Dyson Local and Dyson Cloud. Due to the limitation of HACS, they are split into two repositories. This repository hosts Dyson Local, and https://github.com/shenxn/ha-dyson-cloud hosts Dyson Cloud.

Dyson Local

Dyson Local uses MQTT-based protocol to communicate with local Dyson devices using credentials. Currently it supports

  • Dyson 360 Eye robot vacuum
  • Dyson Pure Cool
  • Dyson Pure Cool Desk
  • Dyson Pure Cool Link
  • Dyson Pure Cool Link Desk
  • Dyson Pure Hot+Cool
  • Dyson Pure Hot+Cool Link
  • Dyson Pure Humidity+Cool

Humidifier support under HA platform humidifier is not supported yet.

Dyson Cloud

Dyson Cloud uses HTTP-based API to communicate with cloud service. Currently it supports getting device credentials and show all devices as discovered entities under the Integrations page. It also supports getting cleaning maps as camera entities for 360 Eye robot vacuum.

Setup

It is recommended to set up Dyson Cloud first so that you don't need to manually get device credentials. To do so, go to Configuration -> Integrations and click the + button. Then find Dyson Cloud. After successful setup, all devices under the account will be shown as discovered entities and you can then set up Dyson Local with single click. Leave host blank to using zeroconf discovery. After that, you can even remove Dyson Cloud entity if you don't need cleaning maps. All local devices that are already set up will remain untouched.

If you want to manually set up Dyson Local, you need to get credentials first. Clone or download https://github.com/shenxn/libdyson, then use python3 get_devices.py to do that. You may need to install some dependencies using pip3 install -r requirements.txt.

Comments
  • Support for TP07?

    Support for TP07?

    I have recently just brought the TP07 (Dyson Purifier Cool Tower).

    Any possibility of supporting this model?

    Id be happy to test any test releases etc :)

    more info requested stale 
    opened by wranglatang 48
  • Unknown error just after typing email address in.

    Unknown error just after typing email address in.

    I'm new to HA and trying to get it to use your plugin for my dyson devices. I ahve added both repo's to the HACS, and trying to install teh dyson-cloud integration. Get through teh Country - GB, and then it asks for my email - type in my email, and click submit, and all i get then is an error:- Unknown error occurred

    stack trace from error in log is as follows;-

    This error originated from a custom integration.

    Logger: aiohttp.server Source: custom_components/dyson_cloud/config_flow.py:71 Integration: dyson_cloud (documentation, issues) First occurred: 15:39:07 (1 occurrences) Last logged: 15:39:07

    Error handling request Traceback (most recent call last): File "/usr/local/lib/python3.8/site-packages/aiohttp/web_protocol.py", line 422, in _handle_request resp = await self._request_handler(request) File "/usr/local/lib/python3.8/site-packages/aiohttp/web_app.py", line 499, in _handle resp = await handler(request) File "/usr/local/lib/python3.8/site-packages/aiohttp/web_middlewares.py", line 119, in impl return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 60, in security_filter_middleware return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 76, in forwarded_middleware return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 24, in request_context_middleware return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 78, in ban_middleware return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 144, in auth_middleware return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/view.py", line 135, in handle result = await result File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 155, in post return await super().post(request, flow_id) File "/usr/src/homeassistant/homeassistant/components/http/data_validator.py", line 63, in wrapper result = await method(view, request, *args, **kwargs) File "/usr/src/homeassistant/homeassistant/helpers/data_entry_flow.py", line 109, in post result = await self._flow_mgr.async_configure(flow_id, data) File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 202, in async_configure result = await self._async_handle_step(flow, cur_step["step_id"], user_input) File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 260, in _async_handle_step result: FlowResult = await getattr(flow, method)(user_input) File "/config/custom_components/dyson_cloud/config_flow.py", line 71, in async_step_email self._verify = await self.hass.async_add_executor_job( File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run result = self.fn(*self.args, **self.kwargs) File "/usr/local/lib/python3.8/site-packages/libdyson/cloud/account.py", line 127, in login_email_otp response = self.request( File "/usr/local/lib/python3.8/site-packages/libdyson/cloud/account.py", line 119, in request raise DysonInvalidAuth libdyson.exceptions.DysonInvalidAuth

    todo 
    opened by jlockham 39
  • Get credentials

    Get credentials

    Update:

    @shenxn: https://github.com/shenxn/ha-dyson/issues/5#issuecomment-791887983

    I've added 2FA support to libdyson (https://github.com/shenxn/libdyson). Download or clone the repo, then run python3 get_devices.py to get credentials. You may also need to install some dependencies using pip3 install -r requirements.txt.

    Old

    Not an actual issue, but wanted to make this available for other people

    I've managed to get credentials in two ways:

    1. Using libpurecool

    Use this fork of libpurecool (fix_auth branch): https://github.com/bfayers/libpurecool/tree/fix_auth python3 -m pip install https://github.com/bfayers/libpurecool/archive/fix_auth.zip

    1. Create a new file called whatever.py
    2. Paste this in:
        #!/usr/bin/python3
        from libpurecool.dyson import DysonAccount
        
        dyson_account = DysonAccount("email","password","lang")
        logged = dyson_account.login()
        
        if not logged:
            print('Unable to login to Dyson account')
            exit(1)
        devices = dyson_account.devices()
        for device in devices:
            print(device.serial);
            print(device.name);
            print(device.credentials);
            print(" ");
    
    1. Open your DysonLink app and stare at the welcome screen :)
    2. python3 whatever.py
    3. Cross your fingers 🤞 and hope it works.

    ⚠️ Don't try to loging in too fast/spam the script or you'll get IP blocked by Dyson I've also noticed that I'm getting immediately denied login if I'm going through a VPN

    2. Using an Android phone

    You can probably do this with an iOS device, but I haven't tested (https://stackoverflow.com/a/8512455)

    1. Download the Packet Capture app from Google Playstore (https://play.google.com/store/apps/details?id=app.greyshirts.sslcapture&hl=en&gl=US)
    2. Open Dyson Link and leave it running in the background
    3. Run the Packet Capture app, allow it to create a VPN if you're prompted
    4. Hit the play button with the 1 and choose the Dyson Link app
    5. Switch to the Dyson Link app, it will probably do a quick refresh of the welcome page
    6. Switch back to Packet Capture and stop capturing
    7. Look through the captured packets for something like this: Screenshot_20210305-024635
    opened by proatwork 39
  • Just upgraded Dyson HA to 0.16.3 on 2022.4 and now won't load

    Just upgraded Dyson HA to 0.16.3 on 2022.4 and now won't load

    Logger: homeassistant.setup Source: setup.py:162 First occurred: 20:33:37 (1 occurrences) Last logged: 20:33:37

    Setup failed for custom integration dyson_local: Unable to import component: cannot import name 'DysonPurifierHumidifyCoolFormaldehyde' from 'libdyson' (/usr/local/lib/python3.9/site-packages/libdyson/init.py)

    opened by atmezferix 36
  • Dyson Local

    Dyson Local "failed to connect"

    Core version: 2021.8.7 Supervisor version: 2021.06.8 Running in oracle Virtual Box ubuntu VM.

    Integration stopped working, I dont remember the error sadly. I removed the integration, to redo it, thinking something may have messed up. I went through the steps, got my credentials using get_devices.py, but the integration it self keeps giving me Failed to connect error.

    opened by phrostt 31
  • Broken after update to HA 2022.4.0

    Broken after update to HA 2022.4.0

    After the latest update to HA 2022.4.0, continuous monitoring, night mode and air quality target all stopped working.

    Edit: and temperature also not working anymore

    opened by Ultra9k 28
  • Invalid fan entity state and its parameters

    Invalid fan entity state and its parameters

    Some of the parameters shown under the fan entity are invalid. So far, I've found these two:

    • oscillating: false (Dyson is set to oscillate and is currently oscillating)
    • percentage: null (I don't think null is correct value)
    opened by JakubMacoun 28
  • Auto Mode no longer working in script - HP04

    Auto Mode no longer working in script - HP04

    I'm a bit of a new user for Home Assistant but I had managed to coble together some easy scripts to control my Dyson HP04

    Up until recently and for most of the last year this very simple script was working :

    Config : https://i.imgur.com/yoNpIJk.png Visual Editor : https://i.imgur.com/ZXHFtQZ.png

    For some reason it will no longer apply the auto setting once triggered, this is happening for all my scripts.

    I then tried applying the switch directly (as I had seen closed issues from middle of 2021 about a move to switches from profiles

    Config : https://i.imgur.com/cfAj7wv.png Visual Editor : https://i.imgur.com/qCAHl9K.png

    To me even though taking a different route through the visual editor the config is identical for both and both are using the recommendation ( switch.pure_hot_cool_auto_mode ) from this closed ticket : https://github.com/shenxn/ha-dyson/issues/49

    Am I doing something wrong? Not sure what I broke in my script, it was working for most of the year.

    Any help would be appreciated

    bug 
    opened by xvlw 23
  • Can't login to dyson_cloud

    Can't login to dyson_cloud

    When I try to install dyson_cloud, I always get "Failed to connect". When I try manually with libdyson, I get:

    Traceback (most recent call last): File "/usr/local/lib/python3.7/site-packages/urllib3/util/ssl_.py", line 343, in ssl_wrap_socket context.load_verify_locations(ca_certs, ca_cert_dir, ca_cert_data) ssl.SSLError: [X509] PEM lib (_ssl.c:4062)

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last): File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 677, in urlopen chunked=chunked, File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 381, in _make_request self._validate_conn(conn) File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 976, in validate_conn conn.connect() File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 370, in connect ssl_context=context, File "/usr/local/lib/python3.7/site-packages/urllib3/util/ssl.py", line 345, in ssl_wrap_socket raise SSLError(e) urllib3.exceptions.SSLError: [X509] PEM lib (_ssl.c:4062)

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last): File "/usr/local/lib/python3.7/site-packages/requests/adapters.py", line 449, in send timeout=timeout File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 725, in urlopen method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2] File "/usr/local/lib/python3.7/site-packages/urllib3/util/retry.py", line 439, in increment raise MaxRetryError(_pool, url, error or ResponseError(cause)) urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='appapi.cp.dyson.com', port=443): Max retries exceeded with url: /v3/userregistration/email/userstatus?country=GB (Caused by SSLError(SSLError(9, '[X509] PEM lib (_ssl.c:4062)')))

    bug 
    opened by jorgenbosman 23
  • Can No Longer Turn Off Fan in Auto Mode

    Can No Longer Turn Off Fan in Auto Mode

    As a byproduct of Issue https://github.com/shenxn/ha-dyson/issues/12 (v0.5.1) when the Fan is in the Auto Mode preset it can no longer be shutoff. I agree with the logic that Auto Mode should still report the device as On, however even at that state you can not shut the fan off completely and will remain in auto mode as "On" unless the fan percentage is changed to another value to remove the "Auto" preset. I think a preset mode of "None" or "Off" that is a valid option might resolve it slightly being able to remove it from "Auto" without setting a fan percentage. Or if a fan.turn_off is issued shut the fan down and remove it from auto mode.

    Example fan.turn_off on an entity in Auto Mode continues to stay on and in Auto mode Log Error:

    2021-03-09 12:55:24 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved
    Traceback (most recent call last):
      File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 282, in async_update_ha_state
        self._async_write_ha_state()
      File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 321, in _async_write_ha_state
        attr.update(self.state_attributes or {})
      File "/usr/src/homeassistant/homeassistant/components/fan/__init__.py", line 602, in state_attributes
        data[ATTR_SPEED] = self.speed
      File "/usr/src/homeassistant/homeassistant/components/fan/__init__.py", line 452, in speed
        percentage = self.percentage
      File "/config/custom_components/dyson_local/fan.py", line 119, in percentage
        return ranged_value_to_percentage(SPEED_RANGE, int(self._device.speed))
    TypeError: int() argument must be a string, a bytes-like object or a number, not 'NoneType'
    
    opened by geekofweek 21
  • Fan connection disconnect cause integration to become unresponsive

    Fan connection disconnect cause integration to become unresponsive

    Thanks @shenxn for this great work on this integration. Since the 2FA changes I been running this exclusively to run my fans, and it’s very good.

    One issue I’m experiencing is if the Dyson fan loses connection even temporarily, the integration becomes unresponsive, the sensors cease updating and requires a system restart to work again. It provides no errors or warnings in the log.

    Reloading the integration doesn’t resolve the issue and results in the error “fan entity does not exist”.

    As there’s no log trail this is a tricky one to troubleshoot. Do you think you could add a warning for disconnections or timeouts?

    opened by googanhiem 19
  • Adding support for 527K - Dyson Pure Hot+Cool Formaldehyde

    Adding support for 527K - Dyson Pure Hot+Cool Formaldehyde

    This adds support for the Dyson Pure Hot+Cool Formaldehyde (527K).

    This depends on https://github.com/shenxn/libdyson/pull/36. This solves https://github.com/shenxn/ha-dyson/issues/167

    opened by Ulrar 9
  • {

    {"message":"Invalid handler specified"}

    Please help me, when i launch Dyson cloud i receive this message Italian language :

    Impossibile caricare il flusso di configurazione: {"message":"Invalid handler specified"}

    opened by giushd 11
  • Hp00 support?

    Hp00 support?

    Hi, Does the integration supports hp00 as it's not compatible with Dyson app. I'm wondering if there is wifi onboard and If integration manages it. In France, we also have hp07, hp7a and hp09 much expensive. Are these precise versions compatible please? Maybe products versions exact codes missing on README file.

    opened by herbalizer404 2
  • Cannot import name 'DysonPurifierHumidifyCoolFormaldehyde' from 'libdyson'

    Cannot import name 'DysonPurifierHumidifyCoolFormaldehyde' from 'libdyson'

    As mentioned in a former post, my dyson integration sometimes appears as "not loaded" and then the dyson fan cannot be controlled anymore in HA. image

    These logs for dyson_cloud are showing these error messages:

    2022-12-01 11:19:54.439 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration dyson_cloud which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
    2022-12-01 11:20:09.905 INFO (MainThread) [homeassistant.bootstrap] Setting up stage 2: {'ibeacon', 'onboarding', 'repairs', 'energy', 'ipp', 'diagnostics', 'application_credentials', 'remote', 'nuki_ng', 'dyson_cloud', 'fully_kiosk', 'speedtestdotnet', 'accuweather', 'radio_browser', 'rpi_power', 'search', 'mqtt', 'tradfri', 'mjpeg', 'xiaomi_miio', 'system_health', 'upnp', 'person', 'auth', 'group', 'esphome', 'philips_js', 'fritzbox_callmonitor', 'homeassistant_alerts', 'config', 'stihl_imow', 'switch_as_x', 'input_datetime', 'analytics', 'default_config', 'influxdb', 'heos', 'my', 'shell_command', 'mobile_app', 'octoprint', 'hacs', 'automation', 'hue', 'met', 'input_button', 'sensor', 'map', 'history', 'intent_script', 'device_tracker', 'skodaconnect', 'bosch_shc', 'zwave_js', 'denonavr', 'hardware', 'deconz', 'input_select', 'media_source', 'input_text', 'logbook', 'camera', 'dyson_local', 'counter', 'input_number', 'synology_dsm', 'input_boolean', 'schedule', 'script', 'raspberry_pi', 'discovery', 'elgato', 'image', 'timer', 'switch', 'binary_sensor', 'utility_meter', 'fritz', 'lovelace', 'scene', 'sonos', 'device_automation', 'fritzbox', 'cast', 'harmony', 'tag', 'tts', 'file_upload', 'intent', 'python_script', 'dlna_dmr', 'zone', 'blueprint', 'persistent_notification', 'home_connect', 'sun', 'trace'}
    2022-12-01 11:20:38.442 ERROR (MainThread) [homeassistant.setup] Setup failed for custom integration dyson_cloud: Unable to import component: cannot import name 'DysonPurifierHumidifyCoolFormaldehyde' from 'libdyson' (/usr/local/lib/python3.10/site-packages/libdyson/__init__.py)
    

    The same appears sfor dyson_local:

    2022-12-01 11:19:54.444 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration dyson_local which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
    2022-12-01 11:20:09.905 INFO (MainThread) [homeassistant.bootstrap] Setting up stage 2: {'ibeacon', 'onboarding', 'repairs', 'energy', 'ipp', 'diagnostics', 'application_credentials', 'remote', 'nuki_ng', 'dyson_cloud', 'fully_kiosk', 'speedtestdotnet', 'accuweather', 'radio_browser', 'rpi_power', 'search', 'mqtt', 'tradfri', 'mjpeg', 'xiaomi_miio', 'system_health', 'upnp', 'person', 'auth', 'group', 'esphome', 'philips_js', 'fritzbox_callmonitor', 'homeassistant_alerts', 'config', 'stihl_imow', 'switch_as_x', 'input_datetime', 'analytics', 'default_config', 'influxdb', 'heos', 'my', 'shell_command', 'mobile_app', 'octoprint', 'hacs', 'automation', 'hue', 'met', 'input_button', 'sensor', 'map', 'history', 'intent_script', 'device_tracker', 'skodaconnect', 'bosch_shc', 'zwave_js', 'denonavr', 'hardware', 'deconz', 'input_select', 'media_source', 'input_text', 'logbook', 'camera', 'dyson_local', 'counter', 'input_number', 'synology_dsm', 'input_boolean', 'schedule', 'script', 'raspberry_pi', 'discovery', 'elgato', 'image', 'timer', 'switch', 'binary_sensor', 'utility_meter', 'fritz', 'lovelace', 'scene', 'sonos', 'device_automation', 'fritzbox', 'cast', 'harmony', 'tag', 'tts', 'file_upload', 'intent', 'python_script', 'dlna_dmr', 'zone', 'blueprint', 'persistent_notification', 'home_connect', 'sun', 'trace'}
    2022-12-01 11:22:32.721 ERROR (MainThread) [homeassistant.setup] Setup failed for custom integration dyson_local: Unable to import component: cannot import name 'DysonPurifierHumidifyCoolFormaldehyde' from 'libdyson' (/usr/local/lib/python3.10/site-packages/libdyson/__init__.py)
    
    

    How to get rid of this problem?

    opened by erd82 7
  • Unable to connect HP2 and HP4 via Wifi and Manual

    Unable to connect HP2 and HP4 via Wifi and Manual

    Hi there I use the proper credentials, password, and model type but still get a "failed to find device using discovery"

    I've tried as many different combinations as possible but unable to add either machines information.

    opened by TonyMontuna 3
Releases(v0.16.4-4)
  • v0.16.4-4(Apr 8, 2022)

    What's new ?

    • Bumped libdyson to v0.8.11, should fix any problems related to connecting to the cloud
    • Added initial support of HCHO (untested)

    Full Changelog: https://github.com/shenxn/ha-dyson/compare/v0.16.4-2...v0.16.4-3

    Source code(tar.gz)
    Source code(zip)
  • v0.16.4(Apr 8, 2022)

    What's Changed

    • Fixed libdyson not updating
    • Set the native unit of measure, for 2022.4. by @Flameeyes in https://github.com/shenxn/ha-dyson/pull/117

    Full Changelog: https://github.com/shenxn/ha-dyson/compare/v0.16.3...v0.16.4

    Source code(tar.gz)
    Source code(zip)
  • v0.16.4-3(Apr 8, 2022)

    What's new ?

    • Bumped libdyson to v0.8.11, should fix any problems related to connecting to the cloud
    • Added initial support of HCHO (untested)

    Full Changelog: https://github.com/shenxn/ha-dyson/compare/v0.16.4-2...v0.16.4-3

    Source code(tar.gz)
    Source code(zip)
  • v0.16.4-2(Apr 8, 2022)

    What's changed

    • Added initial support of HCHO sensor for Formaldehyde devices

    Full Changelog: https://github.com/shenxn/ha-dyson/compare/v0.16.4...v0.16.4-2

    Source code(tar.gz)
    Source code(zip)
  • v0.16.3(Apr 6, 2022)

    What's Changed

    • Updates to 2021.12.0 best practices. by @Flameeyes in https://github.com/shenxn/ha-dyson/pull/82
    • Fix error when disabling fan timer by @lrb2 in https://github.com/shenxn/ha-dyson/pull/88
    • Add support for DysonPurifierHumidifyCoolFormaldehyde by @austinbeam in https://github.com/shenxn/ha-dyson/pull/90
    • Fan improvements by @Flameeyes in https://github.com/shenxn/ha-dyson/pull/109
    • Use native unit of measurement for Dyson temp sensor by @jasperslits in https://github.com/shenxn/ha-dyson/pull/113

    New Contributors

    • @lrb2 made their first contribution in https://github.com/shenxn/ha-dyson/pull/88
    • @austinbeam made their first contribution in https://github.com/shenxn/ha-dyson/pull/90
    • @jasperslits made their first contribution in https://github.com/shenxn/ha-dyson/pull/113

    Full Changelog: https://github.com/shenxn/ha-dyson/compare/v0.16.2...v0.16.3

    Source code(tar.gz)
    Source code(zip)
  • v0.16.2(Dec 15, 2021)

    What's Changed

    • Add entities for DysonAirQualitySelect by @crowbarz in https://github.com/shenxn/ha-dyson/pull/77
    • fan, vacuum: replace device_state_attributes usage. by @Flameeyes in https://github.com/shenxn/ha-dyson/pull/79
    • Do not convert the target temperature to integer by @vickyg3 in https://github.com/shenxn/ha-dyson/pull/81

    This release fixes temperature settings in Fahrenheit for all supported devices. To get more details about each change made, please check the PRs

    New Contributors

    • @crowbarz made their first contribution in https://github.com/shenxn/ha-dyson/pull/77
    • @vickyg3 made their first contribution in https://github.com/shenxn/ha-dyson/pull/81

    Full Changelog: https://github.com/shenxn/ha-dyson/compare/v0.16.1...v0.16.2

    Source code(tar.gz)
    Source code(zip)
  • v0.16.2-b1(Nov 29, 2021)

    What's Changed

    • Add entities for DysonAirQualitySelect by @crowbarz in https://github.com/shenxn/ha-dyson/pull/77

    New Contributors

    • @crowbarz made their first contribution in https://github.com/shenxn/ha-dyson/pull/77

    Full Changelog: https://github.com/shenxn/ha-dyson/compare/v0.16.1...v0.16.2-b1

    Source code(tar.gz)
    Source code(zip)
  • v0.16.1(Nov 23, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • bumped libdyson to account for changes in the Dyson api certs
    Source code(tar.gz)
    Source code(zip)
  • v0.16.0(Nov 16, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Updated the integration to comply to HAOS new specifications & best practices (#69)
    • Added support for the particulates sensor for TP04 (#69)
    Source code(tar.gz)
    Source code(zip)
  • v0.15.0(Jun 30, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Don't set up coordinator for Heurist (#51 @pfrybar)
    • Fix host discovery for devices with dynamic IP address (#52 @pfrybar). Please remove and re-setup if your device does not have static IP address.
    • Try to fix 455A support (related to #41)
    Source code(tar.gz)
    Source code(zip)
  • v0.14.0(May 18, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Support 527E devices (shenxn/libdyson#9 @crgreenwood )
    Source code(tar.gz)
    Source code(zip)
  • v0.13.0(May 15, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Support 455A devices (fixes #41)
    • Support ON/OFF as oson value for Pure Cool devices (fixes #22)
    Source code(tar.gz)
    Source code(zip)
  • v0.12.0(Apr 29, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Bump libdyson to 0.8.4
    Source code(tar.gz)
    Source code(zip)
  • v0.11.0(Apr 17, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Fix socket leak (#34)
    • Add device type Dyson Pure Cool 2021 (438E) (fixes #38)
    Source code(tar.gz)
    Source code(zip)
  • v0.10.0(Apr 8, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Turn off humidification auto mode when set target humidity (fixes #29)
    • Add CUST to HumidifyOscillationMode (fixes #31)
    Source code(tar.gz)
    Source code(zip)
  • v0.9.1(Apr 8, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Disconnect before raising ConfigEntryNotReady (fixes #34)
    Source code(tar.gz)
    Source code(zip)
  • v0.9.0(Apr 8, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Fix re-connection problem (#22, #24)
    • Add OFF state to air quality target (#14)
    Source code(tar.gz)
    Source code(zip)
  • v0.8.1(Mar 16, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Fix TypeError when turning off Link devices directly from auto mode (#18)
    Source code(tar.gz)
    Source code(zip)
  • v0.8.0(Mar 15, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Change max humidity target from 100 to 70
    • Add Dyson 360 Heurist vacuum robot support (Experimental)
    Source code(tar.gz)
    Source code(zip)
  • v0.7.1(Mar 15, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Fix the problem that Pure Humidify+Cool devices missing front airflow switches
    Source code(tar.gz)
    Source code(zip)
  • v0.7.0(Mar 14, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Add humidifier platform
    • Fix oscillation for Pure Humidity+Cool fan
    • Add a new custom service dyson_local.set_oscillation_mode to set oscillation mode for Pure Humidity+Cool fan
    Source code(tar.gz)
    Source code(zip)
  • v0.6.2(Mar 14, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Turn off the sleep timer when calling set_timer with time equals 0
    Source code(tar.gz)
    Source code(zip)
  • v0.6.1(Mar 14, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Add a new method to set up the integration by filling device WiFi information
    Source code(tar.gz)
    Source code(zip)
  • v0.6.0(Mar 14, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Add angle_low and angle_high attributes to Pure Cool fan entities.

    Breaking change

    To make it easier to turn off auto mode, A new switch entity is added, and the preset mode of the fan entity is removed.

    Source code(tar.gz)
    Source code(zip)
  • v0.5.3(Mar 10, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Add custom service set_timer to Pure Cool Link fans
    Source code(tar.gz)
    Source code(zip)
  • v0.5.2(Mar 9, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Add missing custom services set_timer and set_angle for Pure Cool fan.
    Source code(tar.gz)
    Source code(zip)
  • v0.5.1(Mar 7, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Now when the fan is in auto mode and idle (fan not running), the fan entity state will be on instead of off.
    Source code(tar.gz)
    Source code(zip)
  • v0.5.0(Mar 7, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Add speed percentage support

    BREAKING CHANGE

    Speed percentage (https://www.home-assistant.io/blog/2021/03/03/release-20213/#fan-speeds-100) is now supported. Therefore, this version only supports HA versions of 2021.3.0 and above. dyson_local.set_speed and dyson_local.set_auto_mode are removed. Use fan.set_percentage and fan.set_preset_mode instead.

    Source code(tar.gz)
    Source code(zip)
  • v0.4.0(Mar 7, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Fix vacuum resume
    • Bump libdyson to 0.6.0
    Source code(tar.gz)
    Source code(zip)
  • v0.3.2(Feb 18, 2021)

    NOTE: This integration is still under development. There is going to be a lot of breaking changes on each release and they won't be well documented. Use this for testing purpose only.

    • Bump libdyson to 0.5.1
    • Fix config flow from cloud discovery not using host input value
    Source code(tar.gz)
    Source code(zip)
Owner
Xiaonan Shen
M.S. in Computer Science at @UCSD
Xiaonan Shen
(under submission) Bayesian Integration of a Generative Prior for Image Restoration

BIGPrior: Towards Decoupling Learned Prior Hallucination and Data Fidelity in Image Restoration Authors: Majed El Helou, and Sabine SĂźsstrunk {Note: p

Majed El Helou 22 Dec 17, 2022
Official PyTorch implementation of "IntegralAction: Pose-driven Feature Integration for Robust Human Action Recognition in Videos", CVPRW 2021

IntegralAction: Pose-driven Feature Integration for Robust Human Action Recognition in Videos Introduction This repo is official PyTorch implementatio

Gyeongsik Moon 29 Sep 24, 2022
🐸STT integration examples

?? STT 0.9.x Examples These are various examples on how to use or integrate ?? STT using our packages. It is a good way to just try out ?? STT before

coqui 92 Dec 19, 2022
Official repo for AutoInt: Automatic Integration for Fast Neural Volume Rendering in CVPR 2021

AutoInt: Automatic Integration for Fast Neural Volume Rendering CVPR 2021 Project Page | Video | Paper PyTorch implementation of automatic integration

Stanford Computational Imaging Lab 149 Dec 22, 2022
An integration of several popular automatic augmentation methods, including OHL (Online Hyper-Parameter Learning for Auto-Augmentation Strategy) and AWS (Improving Auto Augment via Augmentation Wise Weight Sharing) by Sensetime Research.

An integration of several popular automatic augmentation methods, including OHL (Online Hyper-Parameter Learning for Auto-Augmentation Strategy) and AWS (Improving Auto Augment via Augmentation Wise Weight Sharing) by Sensetime Research.

null 45 Dec 8, 2022
Dahua Camera and Doorbell Home Assistant Integration

Home Assistant Dahua Integration The Dahua Home Assistant integration allows you to integrate your Dahua cameras and doorbells in Home Assistant. It's

Ronnie 216 Dec 26, 2022
MaRS - a recursive filtering framework that allows for truly modular multi-sensor integration

The Modular and Robust State-Estimation Framework, or short, MaRS, is a recursive filtering framework that allows for truly modular multi-sensor integration

Control of Networked Systems - University of Klagenfurt 143 Dec 29, 2022
ROSITA: Enhancing Vision-and-Language Semantic Alignments via Cross- and Intra-modal Knowledge Integration

ROSITA News & Updates (24/08/2021) Release the demo to perform fine-grained semantic alignments using the pretrained ROSITA model. (15/08/2021) Releas

Vision and Language Group@ MIL 48 Dec 23, 2022
Wafer Fault Detection using MlOps Integration

Wafer Fault Detection using MlOps Integration This is an end to end machine learning project with MlOps integration for predicting the quality of wafe

Sethu Sai Medamallela 0 Mar 11, 2022
Official code for On Path Integration of Grid Cells: Group Representation and Isotropic Scaling (NeurIPS 2021)

On Path Integration of Grid Cells: Group Representation and Isotropic Scaling This repo contains the official implementation for the paper On Path Int

Ruiqi Gao 39 Nov 10, 2022
MLOps will help you to understand how to build a Continuous Integration and Continuous Delivery pipeline for an ML/AI project.

page_type languages products description sample python azure azure-machine-learning-service azure-devops Code which demonstrates how to set up and ope

null 1 Nov 1, 2021
Projects for AI/ML and IoT integration for games and other presented at re:Invent 2021.

Playground4AWS Projects for AI/ML and IoT integration for games and other presented at re:Invent 2021. Architecture Minecraft and Lamps This project i

Vinicius Senger 5 Nov 30, 2022
Stacs-ci - A set of modules to enable integration of STACS with commonly used CI / CD systems

Static Token And Credential Scanner CI Integrations What is it? STACS is a YARA

STACS 18 Aug 4, 2022
Nest Protect integration for Home Assistant. This will allow you to integrate your smoke, heat, co and occupancy status real-time in HA.

Nest Protect integration for Home Assistant Custom component for Home Assistant to interact with Nest Protect devices via an undocumented and unoffici

Mick Vleeshouwer 175 Dec 29, 2022
Quickly and easily create / train a custom DeepDream model

Dream-Creator This project aims to simplify the process of creating a custom DeepDream model by using pretrained GoogleNet models and custom image dat

null 55 Dec 27, 2022
Turi Create simplifies the development of custom machine learning models.

Quick Links: Installation | Documentation | WWDC 2019 | WWDC 2018 Turi Create Check out our talks at WWDC 2019 and at WWDC 2018! Turi Create simplifie

Apple 10.9k Jan 1, 2023
FedJAX is a library for developing custom Federated Learning (FL) algorithms in JAX.

FedJAX: Federated learning with JAX What is FedJAX? FedJAX is a library for developing custom Federated Learning (FL) algorithms in JAX. FedJAX priori

Google 208 Dec 14, 2022
Turi Create simplifies the development of custom machine learning models.

Quick Links: Installation | Documentation | WWDC 2019 | WWDC 2018 Turi Create Check out our talks at WWDC 2019 and at WWDC 2018! Turi Create simplifie

Apple 10.1k Feb 12, 2021