Closed jennoian closed 11 months ago
looking at the logs it says then T2272 (G40+) is not supported. it used to work previously though. i am happy to help with coding if required.
OK i fixed the issue, i added the T2272 to the supported list in the G section of robovac.py.
works as it should!
Hello, my Eufy Robovac is in the support list. But it still not shown after I add the IP. Got this in my Logfiles:
2023-08-25 01:24:21.007 ERROR (MainThread) [homeassistant.components.vacuum] Error while setting up robovac platform for vacuum
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 362, in _async_setup_platform
await asyncio.shield(task)
File "/config/custom_components/robovac/vacuum.py", line 109, in async_setup_entry
entity = RoboVacEntity(item)
^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/robovac/vacuum.py", line 250, in __init__
self._attr_access_token = item[CONF_ACCESS_TOKEN]
~~~~^^^^^^^^^^^^^^^^^^^
KeyError: 'access_token'
Hello, my Eufy Robovac is in the support list. But it still not shown after I add the IP. Got this in my Logfiles:
2023-08-25 01:24:21.007 ERROR (MainThread) [homeassistant.components.vacuum] Error while setting up robovac platform for vacuum Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 362, in _async_setup_platform await asyncio.shield(task) File "/config/custom_components/robovac/vacuum.py", line 109, in async_setup_entry entity = RoboVacEntity(item) ^^^^^^^^^^^^^^^^^^^ File "/config/custom_components/robovac/vacuum.py", line 250, in __init__ self._attr_access_token = item[CONF_ACCESS_TOKEN] ~~~~^^^^^^^^^^^^^^^^^^^ KeyError: 'access_token'
looks like it cannot get your access token, make sure HA is up to date. delete all other robovac integrations. make sure you using the correct repo, the modified one.
what is the model of your robovac?
Ian
Yeah, what @jennoian said sounds right. If none of that works, remove the integration and re-add. It should grab your key
Yeah, what @jennoian said sounds right. If none of that works, remove the integration and re-add. It should grab your key
mate are you happy to add the T2272 to the supported list in the G section of robovac.py? it works perfectly an all tested.
Separately i have been playing with some of the code, trying to get the images made from the cleaning cycle, not got it jet and ran out of time. Any ideas?
mate are you happy to add the T2272 to the supported list in the G section of robovac.py? it works perfectly an all tested. It should be in main already, I just need to create a release.
Separately i have been playing with some of the code, trying to get the images made from the cleaning cycle, not got it jet and ran out of time. Any ideas?
I mentioned it in #15, but I've been trying to understand the decompiled app code. I have a little bit of understanding, but I don't have a vacuum with mapping to poke around. If I get some time over the weekend, I might have a poke at some stuff that someone can have a try with
Welcome to give you my login details so you can have a poke around?
It seems to be the IP address, i physically turned off the cleaner, started it back up, ran a IP scan on the network and found the MAC address. You can find the MAC in the app but the the IP. Once i found right IP i then set it to static on the router.
Ian
Welcome to give you my login details so you can have a poke around?
I think I'd need a local device, I can try and write some things up for you to give a try though
It seems to be the IP address, i physically turned off the cleaner, started it back up, ran a IP scan on the network and found the MAC address. You can find the MAC in the app but the the IP. Once i found right IP i then set it to static on the router.
Ian
Yeah, at the minute the IP changing will make things fall over. I've got autodiscovery working in main though, which will update the IP address when it changes.
Hi, i have some Problems too.
I can add the Account, but not the Vacuum.
Logfile:
1.
Logger: custom_components.robovac.tuyalocalapi Source: custom_components/robovac/tuyalocalapi.py:748 Integration: Eufy Robovac (documentation, issues) First occurred: 24. August 2023 um 22:09:34 (2 occurrences) Last logged: 08:11:39
Incomplete read from: bf5440d07d270b8c21zaae (192.168.178.38:6668) : 0 bytes read on a total of undefined expected bytes
2.
Logger: homeassistant.components.vacuum Source: custom_components/robovac/tuyalocalapi.py:678 Integration: Staubsauger (documentation, issues) First occurred: 08:10:18 (1 occurrences) Last logged: 08:10:18
Error while setting up robovac platform for vacuum Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 362, in _async_setup_platform await asyncio.shield(task) File "/config/custom_components/robovac/vacuum.py", line 110, in async_setup_entry await entity.vacuum.async_connect() File "/config/custom_components/robovac/tuyalocalapi.py", line 678, in async_connect sock.connect((self.host, self.port)) ConnectionRefusedError: [Errno 111] Connection refused
I tried to remove and add the Integration again. I am using the Beta.
Welcome to give you my login details so you can have a poke around?
I think I'd need a local device, I can try and write some things up for you to give a try though
It seems to be the IP address, i physically turned off the cleaner, started it back up, ran a IP scan on the network and found the MAC address. You can find the MAC in the app but the the IP. Once i found right IP i then set it to static on the router. Ian
Yeah, at the minute the IP changing will make things fall over. I've got autodiscovery working in main though, which will update the IP address when it changes.
Yer no issue, there could be a couple of ways. maybe Directly message me? ian@ijen-it.com
@DerBaer1986 Please give the latest beta a try
Hi! I had the same problem. I updated to beta 2, but I don't see the "configure" button anymore to add IP addresses etc.
PS: I removed the Email-Address from the screenshot (so it is there actually).
@DerBaer1986 Please give the latest beta a try
Yeah i tried, but its the same.
Sorry, I realised there was a bug in beta 2, please try beta 3
beta 3 doesn't work for me..
Note that I've intentionally removed the configure button, as the integration now gets the IP from the broadcasts that the vacuum sends out.
Have you tried deleting and re-adding the entry?
Ah, okay. Deleted and re-added the entry. But still no device or entity. But if you are looking for broadcast... I have a very restrictive network configuration with separate VLANs etc. So it could be that the HA server does not receive the broadcasts. Maybe @DerBaer1986 should give it a try, while I am checking my network configuration.
After update Vacuum appears but Not available.
Error:
Logger: homeassistant.components.vacuum Source: custom_components/robovac/vacuum.py:323 Integration: Staubsauger (documentation, issues) First occurred: 17:46:29 (2 occurrences) Last logged: 17:47:39
robovac: Error on device update! Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 576, in _async_add_entity await entity.async_device_update(warning=False) File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 938, in async_device_update await self.async_update() File "/config/custom_components/robovac/vacuum.py", line 323, in async_update self.tuyastatus.get(TUYA_CODES["{}_CONSUMABLES".format(robovac_series)])
File "/usr/local/lib/python3.11/enum.py", line 789, in __getitem__ return cls._member_map_[name] ~~~~~~~~~~~~~~~~^^^^^^ KeyError: 'L_CONSUMABLES'
Hi folks! I just got this set up with the beta3 version, and I'm getting the same issue of the entity being created, but not being available. Seems I'm getting a different error in the logs, though, so I thought I'd throw it here in case it helps, or in case it's something different:
failed to set up discovery Traceback (most recent call last): File "/config/custom_components/robovac/init.py", line 57, in async_setup await tuyalocaldiscovery.start() File "/config/custom_components/robovac/tuyalocaldiscovery.py", line 29, in start self._listeners = await asyncio.gather(listener, encrypted_listener) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/asyncio/base_events.py", line 1386, in create_datagram_endpoint raise exceptions[0] File "/usr/local/lib/python3.11/asyncio/base_events.py", line 1370, in create_datagram_endpoint sock.bind(local_address) OSError: [Errno 98] Address in use
My uneducated concern is that it might be struggling because I have the LocalTuya integration installed separately, and perhaps it's clashing?
Hi git the same problem and found this in the log: custom_components.robovac.robovac.ModelNotSupportedException: Model T2194 is not supported
any chance to add support for this model? Or can i dd it myself to the robovac.py?
@Nazze @DerBaer1986 @TheBobbu Please give beta 4 a try
@MaartenCo This is available in the beta versions if you're willing to give that a try
Thanks so much for working on this, @CodeFoodPixels! Picking up and supporting this is making the final part of my smartphone setup work locally, and it's so awesome.
I've updated to beta4 and I got this error for a few minutes:
This error originated from a custom integration. Logger: custom_components.robovac.tuyalocalapi Source: custom_components/robovac/tuyalocalapi.py:696 Integration: Eufy Robovac (documentation, issues) First occurred: 12:19:18 (6 occurrences) Last logged: 12:23:14
Failed to send data to bfa72e04cbbee28a89cos0 (192.168.0.188:6668) Connection to bfa72e04cbbee28a89cos0 (192.168.0.188:6668) failed: [Errno 113] Host is unreachable Connection to bfa72e04cbbee28a89cos0 (192.168.0.188:6668) failed: [Errno 104] Connection reset by peer
Then it connected for a bit! Then it showed the status as "error." Now it keeps swapping between "docked" and "error" states every 1-3 minutes. Same error as above keeps repeating. Seems the connection is weirdly unstable.
Oh, I think the issue I'm now seeing is the same as #21
So it does look like beta4 fixed this issue for me, it just introduced another.
Same here.
Dieser Fehler wurde von einer benutzerdefinierten Integration verursacht
Logger: custom_components.robovac.tuyalocalapi Source: custom_components/robovac/tuyalocalapi.py:696 Integration: Eufy Robovac (documentation, issues) First occurred: 13:59:50 (3 occurrences) Last logged: 14:01:50
Connection to bf5440d07d270b8c21zaae (192.168.178.38:6668) failed: [Errno 32] Broken pipe
When i send start in Error state, the Vacuum Starts cleaning anyway.
@Nazze @DerBaer1986 @TheBobbu Please give beta 4 a try
@MaartenCo This is available in the beta versions if you're willing to give that a try
Hi! I downloaded the beta4. I like that I can manually add the IP address again, because that was a show stopper.
So the integration knows, that there is a vacuum "Robbi" under that account. But I am still having the same issue after adding the IP address configuration.
`Logger: homeassistant.components.vacuum Source: custom_components/robovac/vacuum.py:254 Integration: Staubsauger (documentation, issues) First occurred: 19:44:53 (3 occurrences) Last logged: 20:40:34 Error while setting up robovac platform for vacuum
Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 362, in _async_setup_platform await asyncio.shield(task) File "/config/custom_components/robovac/vacuum.py", line 114, in async_setup_entry entity = RoboVacEntity(item) ^^^^^^^^^^^^^^^^^^^ File "/config/custom_components/robovac/vacuum.py", line 254, in init self._attr_access_token = item[CONF_ACCESS_TOKEN]
KeyError: 'access_token'`
PS: Deleting the integration and adding and configuring it again leads to the same issue...
If you wan't, I can enable debug logs and provide you with them...
Could you remove the integration, reinstall from main, enable debug logs and then try configuring it please?
Could you remove the integration, reinstall from main, enable debug logs and then try configuring it please?
Hey! I did the following steps. Enabled debug. Deleted the integration. Went back to Devices&Services. Added the integration. Entered account data. (Debug mode was still enabled as expected). Configured. BUT: I don't see DEBUG entries in the log. Just the same INFO and ERRORs.
`2023-09-08 23:03:50.173 INFO (MainThread) [homeassistant.components.vacuum] Setting up vacuum.robovac 2023-09-08 23:03:50.174 ERROR (MainThread) [homeassistant.components.vacuum] Error while setting up robovac platform for vacuum Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 362, in _async_setup_platform await asyncio.shield(task) File "/config/custom_components/robovac/vacuum.py", line 114, in async_setup_entry entity = RoboVacEntity(item) ^^^^^^^^^^^^^^^^^^^ File "/config/custom_components/robovac/vacuum.py", line 254, in init self._attr_access_token = item[CONF_ACCESS_TOKEN]
KeyError: 'access_token'
2023-09-08 23:05:52.044 INFO (MainThread) [pyhap.hap_protocol] ('192.168.79.49', 52407): Connection made to Home Assistant Bridge`
What version are you running? Did you redownload in HACS and select main in the drop down?
On Fri, 8 Sept 2023, 22:10 Nazze, @.***> wrote:
Could you remove the integration, reinstall from main, enable debug logs and then try configuring it please?
Hey! I did the following steps. Enabled debug. Deleted the integration. Went back to Devices&Services. Added the integration. Entered account data. (Debug mode was still enabled as expected). Configured. BUT: I don't see DEBUG entries in the log. Just the same INFO and ERRORs.
2023-09-08 23:03:50.173 INFO (MainThread) [homeassistant.components.vacuum] Setting up vacuum.robovac 2023-09-08 23:03:50.174 ERROR (MainThread) [homeassistant.components.vacuum] Error while setting up robovac platform for vacuum Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 362, in _async_setup_platform await asyncio.shield(task) File "/config/custom_components/robovac/vacuum.py", line 114, in async_setup_entry entity = RoboVacEntity(item) ^^^^^^^^^^^^^^^^^^^ File "/config/custom_components/robovac/vacuum.py", line 254, in init self._attr_access_token = item[CONF_ACCESS_TOKEN] ~~~~^^^^^^^^^^^^^^^^^^^ KeyError: 'access_token' 2023-09-08 23:05:52.044 INFO (MainThread) [pyhap.hap_protocol] ('192.168.79.49', 52407): Connection made to Home Assistant Bridge
— Reply to this email directly, view it on GitHub https://github.com/CodeFoodPixels/robovac/issues/14#issuecomment-1712225843, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABEPFVADADXYZHOSVWOBIWTXZOCVHANCNFSM6AAAAAA34TATWU . You are receiving this because you were mentioned.Message ID: @.***>
What version are you running? Did you redownload in HACS and select main in the drop down?
Retested now with main an Debug Logs on:
_023-09-09 11:29:05.709 INFO (SyncWorker_11) [homeassistant.loader] Loaded version from homeassistant.components.version 2023-09-09 11:29:05.713 INFO (SyncWorker_11) [homeassistant.loader] Loaded tod from homeassistant.components.tod 2023-09-09 11:29:05.739 INFO (SyncWorker_11) [homeassistant.loader] Loaded local_ip from homeassistant.components.local_ip 2023-09-09 11:29:39.587 ERROR (SyncWorker_3) [custom_components.robovac.config_flow] Vacuum Robbi (bfbe5b7eb1edfa97c2m4lx) found on Eufy, but not on Tuya. Vacuum will not be added. 2023-09-09 11:29:39.607 INFO (MainThread) [homeassistant.setup] Setting up robovac 2023-09-09 11:29:39.609 DEBUG (MainThread) [custom_components.robovac.tuyalocaldiscovery] Listening to broadcasts on UDP port 6666 and 6667 2023-09-09 11:29:39.609 INFO (MainThread) [homeassistant.setup] Setup of domain robovac took 0.0 seconds 2023-09-09 11:29:39.660 INFO (MainThread) [homeassistant.components.vacuum] Setting up vacuum.robovac 2023-09-09 11:30:56.187 ERROR (SyncWorker_15) [custom_components.robovac.configflow] Vacuum Robbi (bfbe5b7eb1edfa97c2m4lx) found on Eufy, but not on Tuya. Vacuum will not be added. 2023-09-09 11:30:56.191 INFO (MainThread) [homeassistant.components.vacuum] Setting up vacuum.robovac
Weirdly, your vacuum is in the eufy devices, but not in the Tuya ones, so it can't grab a local key.
Are you able to control your vacuum in the eufy app?
What model is it?
On Sat, 9 Sept 2023, 10:46 Nazze, @.***> wrote:
What version are you running? Did you redownload in HACS and select main in the drop down?
Retested now with main an Debug Logs on:
023-09-09 11:29:05.709 INFO (SyncWorker_11) [homeassistant.loader] Loaded version from homeassistant.components.version 2023-09-09 11:29:05.713 INFO (SyncWorker_11) [homeassistant.loader] Loaded tod from homeassistant.components.tod 2023-09-09 11:29:05.739 INFO (SyncWorker_11) [homeassistant.loader] Loaded local_ip from homeassistant.components.local_ip 2023-09-09 11:29:39.587 ERROR (SyncWorker_3) [custom_components.robovac.config_flow] Vacuum Robbi (bfbe5b7eb1edfa97c2m4lx) found on Eufy, but not on Tuya. Vacuum will not be added. 2023-09-09 11:29:39.607 INFO (MainThread) [homeassistant.setup] Setting up robovac 2023-09-09 11:29:39.609 DEBUG (MainThread) [custom_components.robovac.tuyalocaldiscovery] Listening to broadcasts on UDP port 6666 and 6667 2023-09-09 11:29:39.609 INFO (MainThread) [homeassistant.setup] Setup of domain robovac took 0.0 seconds 2023-09-09 11:29:39.660 INFO (MainThread) [homeassistant.components.vacuum] Setting up vacuum.robovac 2023-09-09 11:30:56.187 ERROR (SyncWorker_15) [custom_components.robovac.config_flow] Vacuum Robbi (bfbe5b7eb1edfa97c2m4lx) found on Eufy, but not on Tuya. Vacuum will not be added. 2023-09-09 11:30:56.191 INFO (MainThread) [homeassistant.components.vacuum] Setting up vacuum.robovac
— Reply to this email directly, view it on GitHub https://github.com/CodeFoodPixels/robovac/issues/14#issuecomment-1712470910, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABEPFVBD2XPXMNSR4JMCENDXZQ3F7ANCNFSM6AAAAAA34TATWU . You are receiving this because you were mentioned.Message ID: @.***>
Yes, works with the app. It is a RoboVac G30 Edge
@Nazze could you run this and give me the output please? Nothing sensitive is logged, so no need to redact.
Hi,
I just wanted to say thanks you for picking this integration up. I pulled Main last night and I was able to successfully add my RoboVac 30C. I haven't look at logs for errors but it seems to be functioning.
I am currently running:
Running in a Docker container on a Synology NAS.
If there is any testing I can assist with please do let me know.
@Nazze could you run this and give me the output please? Nothing sensitive is logged, so no need to redact.
Do you want me to run it on the client PC or on the HA server. I am asking, because HA server and PC client are running in different networks.
It doesn't matter, it's only checking the info that the integration gets from the Eufy and Tuya servers during set up
On Tue, 12 Sept 2023, 10:18 Nazze, @.***> wrote:
@Nazze https://github.com/Nazze could you run this and give me the output please? Nothing sensitive is logged, so no need to redact.
@.***/robovac-auth-test
Do you want me to run it on the client PC or on the HA server. I am asking, because HA server and PC client are running in different networks.
— Reply to this email directly, view it on GitHub https://github.com/CodeFoodPixels/robovac/issues/14#issuecomment-1715336586, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABEPFVH3YV4ELGU5FJEI4ODX2ASIDANCNFSM6AAAAAA34TATWU . You are receiving this because you were mentioned.Message ID: @.***>
Done
Have you got the output? You can just copy and paste it here
Sorry - I thought it will put the logs on your server. You just need the output?
python3 main.py
** Robovac Auth Tester **
Anker/Eufy Username: <<<<
Well that's really odd. Tuya is reporting that you don't have any devices! I'll have to have a dig some more.
I've done some updates to that script, can you try again and post the output here please? 🤞
python3 main.py ** Robovac Auth Tester ** Anker/Eufy Username: <<<<<<<<>>>>>>>>>> Password: Logging in to Eufy Success Getting Eufy device info Success Devices Cleaning device: Robbi () Found device in tuya Device has local key! Test script ran successfully
Awesome! I'd changed it to try and get the device from another tuya api and it seems to have the right data. I'll get some updates done to main
Nice 😊 🥳. Will update and give you feedback
I've just pushed the updates to main, if you could update it and reconfigure, then hopefully you should have a vacuum!
I have a vacuum now, but the entity is shown as unavailable...
You said that you have very restrictive VLANs, it may be that HA hasn't been able to pick up the IP because of this. You may need to manually set it
Oh - I was 100% sure that I did that. But I am not sure, if I had enabled the "auto discovery" flag. I disabled it (auto-discover), configured the IP again, reloaded the integration and waited a couple of seconds or minutes. Now I can see the state and can control the device. THANKS :-D
I deleted my configuration, switched to main, restarted, and almost everything worked flawlessly. The device came up as unavailable - and I don't have restrictive VLANs. Log says:
This error originated from a custom integration.
Logger: custom_components.robovac Source: custom_components/robovac/tuyalocaldiscovery.py:37 Integration: Eufy Robovac (documentation, issues) First occurred: 12 September 2023 at 18:22:24 (1 occurrences) Last logged: 12 September 2023 at 18:22:24
failed to set up discovery Traceback (most recent call last): File "/config/custom_components/robovac/tuyalocaldiscovery.py", line 34, in start self._listeners = await asyncio.gather(listener, encrypted_listener) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/asyncio/base_events.py", line 1386, in create_datagram_endpoint raise exceptions[0] File "/usr/local/lib/python3.11/asyncio/base_events.py", line 1370, in create_datagram_endpoint sock.bind(local_address) OSError: [Errno 98] Address in use
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "/config/custom_components/robovac/init.py", line 61, in async_setup await tuyalocaldiscovery.start() File "/config/custom_components/robovac/tuyalocaldiscovery.py", line 37, in start raise DiscoveryPortsNotAvailableException( custom_components.robovac.tuyalocaldiscovery.DiscoveryPortsNotAvailableException: Ports 6666 and 6667 are needed for autodiscovery but are unavailable. This may be due to having the localtuya integration installed and it not allowing other integrations to use the same ports. A pull request has been raised to address this: https://github.com/rospogrigio/localtuya/pull/1481
But manually adding the IP fixed this! And I'm not seeing the error state fluctuations any more! So the auto-detect may be a bit wonky when localtuya is installed alongside it, but everything seems to be working otherwise!
Thanks so much, very nice work!
Hi,
i can add the account fine, i then configure and select the device, it still asked for an IP address. When i put in the correct IP in (or even the wrong one) it says success but no entities appear.