Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dyson integration stopped working with 2021.2 #46400

Closed
afk11 opened this issue Feb 11, 2021 · 156 comments
Closed

Dyson integration stopped working with 2021.2 #46400

afk11 opened this issue Feb 11, 2021 · 156 comments

Comments

@afk11
Copy link

afk11 commented Feb 11, 2021

The problem

I have been using the dyson integration with my hot/cold fan successfully for a while. I upgraded HA last night to 2021.2 and saw alerts that the integration couldn't initialize

What is version of Home Assistant Core has the issue?

2021.2

What was the last working version of Home Assistant Core?

2021.1

What type of installation are you running?

Home Assistant Core

Integration causing the issue

Dyson

Link to integration documentation on our website

https://www.home-assistant.io/integrations/dyson/

Example YAML snippet

dyson:
  username: EMAIL
  password: !secret SECRET
  language: GB
  devices:
    - device_id: DEVICE_ID
      device_ip: LAN_IP

Anything in the logs that might be useful for us?

# First Warning in logs

2021-02-11 03:17:41 ERROR (SyncWorker_2) [homeassistant.components.dyson] Not connected to Dyson account. Unable to add devices
2021-02-11 03:17:41 INFO (MainThread) [homeassistant.setup] Setup of domain dyson took 0.6 seconds
2021-02-11 03:17:41 ERROR (MainThread) [homeassistant.setup] Setup failed for dyson: Integration failed to initialize.
2021-02-11 03:17:41 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=persistent_notification, service=create, service_data=title=Invalid config, message=The following integrations and platforms could not be set up:
- dyson


# Later warning in logs. I'm not sure if this is actually from dyson or not. The IP looked weird, but when I googled it, it's some AWS thing. 

2021-02-11 03:17:41 ERROR (SyncWorker_2) [homeassistant.components.dyson] Not connected to Dyson account. Unable to add devices
2021-02-11 03:17:41 INFO (MainThread) [homeassistant.setup] Setup of domain dyson took 0.6 seconds
2021-02-11 03:17:41 ERROR (MainThread) [homeassistant.setup] Setup failed for dyson: Integration failed to initialize.
2021-02-11 03:17:41 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=persistent_notification, service=create, service_data=title=Invalid config, message=The following integrations and platforms could not be set up:
- dyson
Please check your config and [logs](/config/logs)., notification_id=invalid_config>
2021-02-11 03:17:41 DEBUG (SyncWorker_0) [botocore.utils] Caught retryable HTTP exception while making metadata service request to http://169.254.169.254/latest/api/token: Connect timeout on endpoint URL: "http://169.254.169.254/latest/api/token"
Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/urllib3/connection.py", line 169, in _new_conn
conn = connection.create_connection(
File "/usr/local/lib/python3.8/site-packages/urllib3/util/connection.py", line 96, in create_connection
raise err
File "/usr/local/lib/python3.8/site-packages/urllib3/util/connection.py", line 86, in create_connection
sock.connect(sa)
socket.timeout: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/botocore/httpsession.py", line 311, in send
urllib_response = conn.urlopen(
File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 755, in urlopen
retries = retries.increment(
File "/usr/local/lib/python3.8/site-packages/urllib3/util/retry.py", line 506, in increment
raise six.reraise(type(error), error, _stacktrace)
File "/usr/local/lib/python3.8/site-packages/urllib3/packages/six.py", line 735, in reraise
raise value
File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 699, in urlopen
httplib_response = self._make_request(
File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 394, in _make_request
conn.request(method, url, **httplib_request_kw)
File "/usr/local/lib/python3.8/site-packages/urllib3/connection.py", line 234, in request
super(HTTPConnection, self).request(method, url, body=body, headers=headers)
File "/usr/local/lib/python3.8/http/client.py", line 1255, in request
self._send_request(method, url, body, headers, encode_chunked)
File "/usr/local/lib/python3.8/site-packages/botocore/awsrequest.py", line 92, in _send_request
rval = super(AWSConnection, self)._send_request(
File "/usr/local/lib/python3.8/http/client.py", line 1301, in _send_request
self.endheaders(body, encode_chunked=encode_chunked)
File "/usr/local/lib/python3.8/http/client.py", line 1250, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "/usr/local/lib/python3.8/site-packages/botocore/awsrequest.py", line 120, in _send_output
self.send(msg)
File "/usr/local/lib/python3.8/site-packages/botocore/awsrequest.py", line 204, in send
return super(AWSConnection, self).send(str)
File "/usr/local/lib/python3.8/http/client.py", line 950, in send
self.connect()
File "/usr/local/lib/python3.8/site-packages/urllib3/connection.py", line 200, in connect
conn = self._new_conn()
File "/usr/local/lib/python3.8/site-packages/urllib3/connection.py", line 174, in _new_conn
raise ConnectTimeoutError(
urllib3.exceptions.ConnectTimeoutError: (<botocore.awsrequest.AWSHTTPConnection object at 0x7f41143bd5e0>, 'Connection to 169.254.169.254 timed out. (connect timeout=1)')
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/botocore/utils.py", line 377, in _fetch_metadata_token
response = self._session.send(request.prepare())
File "/usr/local/lib/python3.8/site-packages/botocore/httpsession.py", line 344, in send
raise ConnectTimeoutError(endpoint_url=request.url, error=e)
botocore.exceptions.ConnectTimeoutError: Connect timeout on endpoint URL: "http://169.254.169.254/latest/api/token"
2021-02-11 03:17:41 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event state_changed[L]: entity_id=persistent_notification.invalid_config, old_state=None, new_state=<state persistent_notification.invalid_config=notifying; title=Invalid config, friendly_name=Invalid config, message=The following integrations and platforms could not be set up:
- dyson

I'm running the qcow2 image in KVM. Happy to muck about with suggested tweaks if it helps narrow down the issue.

@QuaySo
Copy link

QuaySo commented Feb 11, 2021

Same issue here, running Home Assistant OS.

My error log is not exactly the same however

2021-02-11 16:04:04 ERROR (SyncWorker_0) [homeassistant.components.dyson] Not connected to Dyson account. Unable to add devices
2021-02-11 16:04:06 ERROR (MainThread) [homeassistant.setup] Setup failed for dyson: Integration failed to initialize.
2021-02-11 16:04:06 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform dyson.fan: Unable to set up component.
2021-02-11 16:04:06 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform dyson.sensor: Unable to set up component.

@afk11
Copy link
Author

afk11 commented Feb 11, 2021

I don't get the later two warnings from your log, just the first two.

For more detail, try adding this to your config:

logger:
  default: debug
  logs:
    homeassistant.components.sensor.dyson: debug
    homeassistant.components.fan.dyson: debug
    homeassistant.components.dyson: debug

@probot-home-assistant
Copy link

dyson documentation
dyson source
(message by IssueLinks)

@QuaySo
Copy link

QuaySo commented Feb 11, 2021

With the detailed logs turned on I get these warnings.

2021-02-11 16:48:30 INFO (MainThread) [homeassistant.setup] Setup of domain dyson took 1.7 seconds
2021-02-11 16:48:30 ERROR (MainThread) [homeassistant.setup] Setup failed for dyson: Integration failed to initialize.
2021-02-11 16:48:30 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=persistent_notification, service=create, service_data=title=Invalid config, message=The following integrations and platforms could not be set up:
- dyson
Please check your config and [logs](/config/logs)., notification_id=invalid_config>
2021-02-11 16:48:30 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform dyson.fan: Unable to set up component.
2021-02-11 16:48:30 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform dyson.sensor: Unable to set up component.
2021-02-11 16:48:30 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event state_changed[L]: entity_id=persistent_notification.invalid_config, old_state=None, new_state=<state persistent_notification.invalid_config=notifying; title=Invalid config, friendly_name=Invalid config, message=The following integrations and platforms could not be set up:
- dyson
Please check your config and [logs](/config/logs). @ 2021-02-11T16:48:30.802287+01:00>>
2021-02-11 16:48:30 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event persistent_notifications_updated[L]>
2021-02-11 16:48:30 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=persistent_notification, service=create, service_data=title=Invalid config, message=The following integrations and platforms could not be set up:
- dyson
- dyson.fan
Please check your config and [logs](/config/logs)., notification_id=invalid_config>
2021-02-11 16:48:30 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=persistent_notification, service=create, service_data=title=Invalid config, message=The following integrations and platforms could not be set up:
- dyson
- dyson.fan
- dyson.sensor
Please check your config and [logs](/config/logs)., notification_id=invalid_config>

Unfortunately no good hints pointing to the cause of the warnings as far as I can see...

@curt7000
Copy link

Same here. Running 2021.2.2 in a VENV on Ubuntu 18.04LTS. Has been running for several yrs, no issue. Restarted yesterday while creating a new Binary Sensor. Dyson integration will no longer setup, listed as invalid_config.

I have power cycled network, power cycled Dyson fans (I have 5), without fix.

@geekofweek
Copy link
Contributor

geekofweek commented Feb 11, 2021

I have a feeling they are blocking the User Agent, or more specifically, looking for a very specific User Agent. This has happened previously.

I've tested a few changes and yet to find one that works.

@Stanwise
Copy link

For what it's worth, it doesn't work after downgrade to 2021.1.5 either, so it looks like a Dyson-side change

@jstott1070
Copy link

Ditto, Hot & Cool fan working fine pre-update.. Now not functioning

@afk11
Copy link
Author

afk11 commented Feb 11, 2021

@Stanwise thanks for confirming, I was trying to roll back earlier but couldn't find how :)

@DarKOrange75
Copy link

Same problem here, HA can't log into my Dyson account. It doesn't seem to be a problem with HA but with Dyson's servers.

@googanhiem
Copy link

Yep @Stanwise is correct this is a Dyson api change.. probably a cloudflare block of this components dependency libpurecool and its auth method. They've blocked it in the past (probably not even intentionally).

This means its a fix needed for libpurecool not HA.

People are looking for the fix for the dependency here

@arifroni
Copy link

On dyson home assistant integration page it is written that the integration's IoT class is 'local push'. so why HA needs to communicate with the server?

@kurozero0
Copy link

I think Dyson is just having issues authenticating on their end. I couldn't even log into the website. When trying to log into the app, it says "Sorry, we can't connect to the Dyson network. We're working to fix this. Please try again later."

@dougmaitelli
Copy link

Adding to @arifroni comment. I understand the integration uses the email and password to log into Dyson service remotely to fetch the local machines information in order to connect to the machines.
In my case my machines have static IPs and they are all configured manually in my configuration.yml, so I don't know why in this case this integration even needs the email and password.

@bfayers
Copy link

bfayers commented Feb 11, 2021

In my case my machines have static IPs and they are all configured manually in my configuration.yml, so I don't know why in this case this integration even needs the email and password.

While the machines themselves run local MQTT they need credentials that only the Dyson server can provide :/

@googanhiem
Copy link

Yes, this component is a little clunky and forgotten. @shenxn is looking to build a new component that may fix a lot of the current issues.

The current component relies on this initial auth to gain control, these credentials are not cached so they're updated on every reboot of HA.

@kurozero0 The Dyson website and this component appear to use different servers, so the issues are probably unrelated

@dougmaitelli
Copy link

@kurozero0 The Dyson website and this component appear to use different servers, so the issues are probably unrelated

Possible that Dyson changed something internally that broke HA and themselves?

@DarKOrange75
Copy link

While @shenxn achieve the new component development, here is a temporary workaround which does not need to communicate with Dysons servers (talks directly with the fan's MQTT broker):

https://community.home-assistant.io/t/dyson-pure-cool-link-local-mqtt-control/217263

The down side is that you no longer have a fan entity to expose to HomeKit for example...

@kurozero0
Copy link

@googanhiem is right. The website and app appear to be working now but still nothing on HA.

@strandlie
Copy link

I have the same issue.

Tried Charles to try to find out if the app had added some new header etc. It seems that Dyson uses SSL Certificate Pinning in their iOS app (this is good, but a little impractical here), which makes Charles unable to decrypt SSL traffic, even with a custom root certificate installed. So my only conclusion so far is that they haven't changed the endpoint URL.

But if someone could shed some light on what the issue is I would be happy to make a PR for this.

@bfayers
Copy link

bfayers commented Feb 11, 2021

It seems that Dyson uses SSL Certificate Pinning in their iOS app (this is good, but a little impractical here), which makes Charles unable to decrypt SSL traffic, even with a custom root certificate installed. So my only conclusion so far is that they haven't changed the endpoint URL.

Unfortunately they do the same in their Android app so I couldn't get it to work from that direction either.

Anyway - I have a half-okay method of having this work reliably which you can see here: etheralm/libpurecool#37 (comment)

It would appear the library will need to add a Content-Type Header of application/json as well as requiring you to re-authenticate the official app just before running it, however no one else has yet been able to confirm if what I'm doing works.

@strandlie
Copy link

@bfayers Great. I will test that tomorrow and report back. Nice work.

@jerryzou
Copy link

It seems that Dyson uses SSL Certificate Pinning in their iOS app (this is good, but a little impractical here), which makes Charles unable to decrypt SSL traffic, even with a custom root certificate installed. So my only conclusion so far is that they haven't changed the endpoint URL.

Unfortunately they do the same in their Android app so I couldn't get it to work from that direction either.

Anyway - I have a half-okay method of having this work reliably which you can see here: etheralm/libpurecool#37 (comment)

It would appear the library will need to add a Content-Type Header of application/json as well as requiring you to re-authenticate the official app just before running it, however no one else has yet been able to confirm if what I'm doing works.

It did work for me. Thanks for your effort.

@strandlie
Copy link

Can confirm it also works for me. Just make sure you re-authenticate the app right before making the POST-request.

@ZeGuigui
Copy link
Contributor

Looks like you need to make an account verification before login: etheralm/libpurecool#37 (comment) If confirmed libpurecool will probably get updated in no time

@mgaeremynck
Copy link

Following, same issue for my two fans.

Error:
Logger: homeassistant.components.dyson Source: components/dyson/__init__.py:60 Integration: dyson (documentation, issues) First occurred: 8:41:16 (1 occurrences) Last logged: 8:41:16 Not connected to Dyson account. Unable to add devices

Log entries:
2021-02-12 08:41:16 ERROR (SyncWorker_1) [homeassistant.components.dyson] Not connected to Dyson account. Unable to add devices
2021-02-12 08:41:16 ERROR (MainThread) [homeassistant.setup] Setup failed for dyson: Integration failed to initialize.

All worked well in the past, I hope a solution is found. I learned a lot with this integration and the automation possibilities this provided.

@bfayers
Copy link

bfayers commented Feb 12, 2021

I assume you two, @Elmatthews and @kritin81 , where not actually just putting HTTPBasicAuth("account", "password") and instead replacing account and password with the values you can sometimes manage to get out of the Dyson API?

Anyway, it looks like a fix may have been found at this point so hopefully it won't be long before a new library release.

@qdel
Copy link

qdel commented Feb 12, 2021

This login method modification seems to work for me:

   def __init__(self):
        [... existing code...]
        self._authNextTime = None

   def login(self):
        self._logged = False
        if self._authNextTime != None and self._authNextTime > datetime.datetime.now():
            print("Could not identify for the moment, next authent will be made at: %s" % (self._authNextTime))
        else:
            """Login to dyson web services."""
            urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
            print("Disabling insecure request warnings since "
                  "dyson are using a self signed certificate.")
            pre_login = requests.get(
                "https://{0}/v1/userregistration/userstatus?country={1}&email={2}".format(
                    self._dyson_api_url, self._country, self._email),
                headers=self._headers,
                verify=False
            )
            print("pre_login return code: %d, text: %s" % (pre_login.status_code, pre_login.text))
            if pre_login.status_code == requests.codes.ok:
                json_response = pre_login.json()
                if 'accountStatus' in json_response and json_response['accountStatus'] == 'ACTIVE':
                    request_body = {
                        "Email": self._email,
                        "Password": self._password
                    }
                    login = requests.post(
                        "https://{0}/v1/userregistration/authenticate?country={1}".format(
                            self._dyson_api_url, self._country),
                        headers=self._headers,
                        json=request_body,
                        verify=False
                    )
                    # pylint: disable=no-member
                    print("login return code: %d, text: %s" % (login.status_code, login.text))
                    if login.status_code == requests.codes.ok:
                        json_response = login.json()
                        print(json_response)
                        self._auth = HTTPBasicAuth(json_response["Account"],
                                                   json_response["Password"])
                        self._logged = True
                    elif 'Retry-After' in login.headers:
                        self._authNextTime = datetime.datetime.now() + datetime.timedelta(seconds=int(login.headers['Retry-After']))
        print("Return %d" % self._logged, flush=True)
        return self._logged

If i can, this week-end, i will make a proper PR. This code use print, this is not safe obviously

@gobigdave
Copy link

Stopped working for me as well.

@kintaroju
Copy link

Stopped working for me as well.

Please refer to my workaround as they haven't integrated shenxn's solution as that one works like hot cakes.

FYI with ShenXN's solution I've been running it stable for the last few months since Dyson integrated 2FA

ok, after having to redig into the issue, the permanent solution i have is this:

  1. install HACS
  2. add the following repositories to HACS:
  1. go to configuration -> integration -> + new integration -> dyson cloud
  2. enter your credentials including the 2FA code (yes 2FA code hooray!) and then fill in IP information for each dyson device it finds for you (yes you don't need to fill in stuff in configuration.yaml anymore)
  3. Done!

@WilldabeastHA
Copy link

Stopped working for me as well.

Please refer to my workaround as they haven't integrated shenxn's solution as that one works like hot cakes.

FYI with ShenXN's solution I've been running it stable for the last few months since Dyson integrated 2FA

ok, after having to redig into the issue, the permanent solution i have is this:

  1. install HACS
  2. add the following repositories to HACS:
  1. go to configuration -> integration -> + new integration -> dyson cloud
  2. enter your credentials including the 2FA code (yes 2FA code hooray!) and then fill in IP information for each dyson device it finds for you (yes you don't need to fill in stuff in configuration.yaml anymore)
  3. Done!

I’ve been resistant to installing HACS I want to keep my HA install simple and love how much is integrated into core. Is there a way that this workaround can bu put into core?

@kintaroju
Copy link

Stopped working for me as well.

Please refer to my workaround as they haven't integrated shenxn's solution as that one works like hot cakes.
FYI with ShenXN's solution I've been running it stable for the last few months since Dyson integrated 2FA

ok, after having to redig into the issue, the permanent solution i have is this:

  1. install HACS
  2. add the following repositories to HACS:
  1. go to configuration -> integration -> + new integration -> dyson cloud
  2. enter your credentials including the 2FA code (yes 2FA code hooray!) and then fill in IP information for each dyson device it finds for you (yes you don't need to fill in stuff in configuration.yaml anymore)
  3. Done!

I’ve been resistant to installing HACS I want to keep my HA install simple and love how much is integrated into core. Is there a way that this workaround can bu put into core?

You might want to talk to ShenXN and see if he has cycles to help HA to integrate it into core, since the native dyson plugin is no longer compliant with the new dyson setup.

I've made this request a few months ago, but haven't seen any new traction

@WilldabeastHA
Copy link

Stopped working for me as well.

Please refer to my workaround as they haven't integrated shenxn's solution as that one works like hot cakes.
FYI with ShenXN's solution I've been running it stable for the last few months since Dyson integrated 2FA

ok, after having to redig into the issue, the permanent solution i have is this:

  1. install HACS
  2. add the following repositories to HACS:
  1. go to configuration -> integration -> + new integration -> dyson cloud
  2. enter your credentials including the 2FA code (yes 2FA code hooray!) and then fill in IP information for each dyson device it finds for you (yes you don't need to fill in stuff in configuration.yaml anymore)
  3. Done!

I’ve been resistant to installing HACS I want to keep my HA install simple and love how much is integrated into core. Is there a way that this workaround can bu put into core?

You might want to talk to ShenXN and see if he has cycles to help HA to integrate it into core, since the native dyson plugin is no longer compliant with the new dyson setup.

I've made this request a few months ago, but haven't seen any new traction

I’m not super technical but is there a way to just pull / CURL these files from ShenXN repo into the HA Core?

@ProLoser
Copy link

ProLoser commented Jun 3, 2021

@WilldabeastHA the easiest solution is to just install HACS. Your concerns with avoiding it are unfounded and it requires more work for people to provide instructions for workarounds when HACS is a perfectly adequate UI

@geekofweek
Copy link
Contributor

I’ve been resistant to installing HACS I want to keep my HA install simple and love how much is integrated into core. Is there a way that this workaround can bu put into core?

The creator of HACS (Joakim Sørensen) works for NabuCasa, so I wouldn't be too worried about HACS. The only way this will get merged into the core is if somebody submits a pull request to either fix the existing integration or replace it with new version based on the ShenXN changes. It appears the original maintainer of libpurecool has abandoned it so some forks and changes need to be made there to get it moving again. That needs to happen but it also needs people with enough time and effort to get involved and make that happen.

If you want a quick fix, HACS and the ShenXN custom integration.

@c0bra99
Copy link

c0bra99 commented Jun 3, 2021

I have been holding off any of these fixes hoping the fix would be added to Core, but today I removed all existing dyson integration and entities, added the dyson-local integration to HACS and set up the device using wifi information using the instructions here: https://github.com/shenxn/ha-dyson/

It was super easy, and everything is working fine, wish I did it sooner! Thanks for posting the instructions to add the repository to HACS, it made me finally do it.

@Kernald
Copy link
Contributor

Kernald commented Jun 3, 2021

At this point, the core integration has been broken for months. If nobody wants to put the time in to fix it (which is fair enough, no complaint here), it might be worth removing it entirely, there's no point keeping broken code around except letting new users think this is a working integration when it's not. Or at the very least updating the documentation to make it obvious.

@bfayers
Copy link

bfayers commented Jun 4, 2021

I had originally intended on opening a PR to fix the version in core, however at this point it would be wasted work as shenxn's is much better and as they mention; ultimately intend for it to become official.

@WilldabeastHA
Copy link

WilldabeastHA commented Jun 4, 2021

Looking forward to it becoming official. I’ll try the HACS route. Is it best to install it in the container or the host?

**Quick update. I installed HACS and the ShenXN Dyson integration and I’m presently surprised! Works great and easy to use. Thanks for the encouragement.

@github-actions
Copy link

github-actions bot commented Sep 9, 2021

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates.
Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 👍
This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the stale label Sep 9, 2021
@Kernald
Copy link
Contributor

Kernald commented Sep 9, 2021

This is still an issue pending #53801.

@github-actions github-actions bot removed the stale label Sep 9, 2021
@slepiavka
Copy link

At this point, the core integration has been broken for months. If nobody wants to put the time in to fix it (which is fair enough, no complaint here), it might be worth removing it entirely, there's no point keeping broken code around except letting new users think this is a working integration when it's not. Or at the very least updating the documentation to make it obvious.

Agree, it's just misleading to have a posted official integration on HA's site. Is there an official deprecation procedure?

@mig8447
Copy link

mig8447 commented Oct 27, 2021 via email

@dougmaitelli
Copy link

To make things more complicated it seems that the custom integration from https://github.com/shenxn/ha-dyson/ is also somehow broken. If you try to add devices using the account it "fails to connect"

@mig8447
Copy link

mig8447 commented Oct 27, 2021

I also tried following the steps to sniff the device token with no success, I'd only need some pointers. It seems that what is breaking everything is just a matter of authentication changes by dyson

@kintaroju
Copy link

I also tried following the steps to sniff the device token with no success, I'd only need some pointers. It seems that what is breaking everything is just a matter of authentication changes by dyson

hey, i still have my dyson-local plugin from shenxn still working, just the cloud version is straight broken.

After looking back at some notes about the local version, there are some details on how to get the password, although i don't know if it is still relavent:

https://community.home-assistant.io/t/dyson-pure-cool-link-local-mqtt-control/217263

also back a few months shenxa was quite responsive in his responses, you might want to give him a ping and see if he's willing to give some pointers

@datainsightio
Copy link

At this point, the core integration has been broken for months. If nobody wants to put the time in to fix it (which is fair enough, no complaint here), it might be worth removing it entirely, there's no point keeping broken code around except letting new users think this is a working integration when it's not. Or at the very least updating the documentation to make it obvious.

Agree, it's just misleading to have a posted official integration on HA's site. Is there an official deprecation procedure?

So this was me, just setup Dyson and found its not working and landed here. Please remove if its not supported and hopefully it will return at some point soon.

@MarcusKapun
Copy link

@dougmaitelli - I have the same issue. Have you found a way around that issue? Thx

@frenck
Copy link
Member

frenck commented Jan 28, 2022

The Dyson integration has been removed from Home Assistant. Therefore this issue should/can be closed.

@frenck frenck closed this as completed Jan 28, 2022
@github-actions github-actions bot locked and limited conversation to collaborators Feb 27, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests