Remootio garage door automation - new product

Duh - my problem was cause by the wrong IP address. All working for me in HA 2024.2.1 using the peace duck repo

I’ve tried to get this working and its failing. wondering if anyone has any ideas. I’m installing it fresh. this is for gates.
Logs are showing these errors.

two separate log entries:

This error originated from a custom integration.




Logger: custom_components.remootio.config_flow
Source: custom_components/remootio/config_flow.py:117
integration: remootio
First occurred: 8:12:12 PM (1 occurrences)
Last logged: 8:12:12 PM

Unexpected exception/error
Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/aioremootio/remootioclient.py", line 318, in __initialize
    await self.__lifecycle.wait_for(lambda: self.connected)
  File "/usr/local/lib/python3.12/asyncio/locks.py", line 293, in wait_for
    await self.wait()
  File "/usr/local/lib/python3.12/asyncio/locks.py", line 266, in wait
    await fut
asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/config/custom_components/remootio/config_flow.py", line 117, in async_step_user
    validation_result = await validate_input(self.hass, user_input)
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/remootio/config_flow.py", line 86, in validate_input
    device_serial_number: str = await get_serial_number(
                                ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/remootio/utils.py", line 59, in get_serial_number
    async with RemootioClient(
  File "/usr/local/lib/python3.12/site-packages/aioremootio/remootioclient.py", line 296, in __aenter__
    await self.__initialize()
  File "/usr/local/lib/python3.12/site-packages/aioremootio/remootioclient.py", line 332, in __initialize
    raise RemootioClientError(self, "Failed to initialize this client.") from ex
aioremootio.errors.RemootioClientError: Failed to initialize this client. Host [192.168.0.163] SerialNumber [N/A] ApiVersion [N/A] State [State.UNKNOWN]



Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/aioremootio/remootioclient.py", line 318, in __initialize
    await self.__lifecycle.wait_for(lambda: self.connected)
  File "/usr/local/lib/python3.12/asyncio/locks.py", line 293, in wait_for
    await self.wait()
  File "/usr/local/lib/python3.12/asyncio/locks.py", line 266, in wait
    await fut
asyncio.exceptions.CancelledError

For anyone that comes behind me with the same problem- The remootio app was lying to me about which IP was assigned locally. I used NMAP to pull it out with the local router info.

2.0.1 by @peaceduck stopped working for me since the latest Core 2024.3.1 update. Anyone has the same problem? The plugin wonā€˜t inizialize.

This is what I get in the log:

Logger: custom_components.remootio.aioremootio.remootioclient
Quelle: /usr/local/lib/python3.12/site-packages/aioremootio/remootioclient.py:331
Integration: Remootio Smart Garage Door Opener
Erstmals aufgetreten: 10:09:18 (4 Vorkommnisse)
Zuletzt protokolliert: 11:16:00

Failed to initialize this client.
Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/aioremootio/remootioclient.py", line 318, in __initialize
    await self.__lifecycle.wait_for(lambda: self.connected)
  File "/usr/local/lib/python3.12/asyncio/locks.py", line 293, in wait_for
    await self.wait()
  File "/usr/local/lib/python3.12/asyncio/locks.py", line 266, in wait
    await fut
asyncio.exceptions.CancelledError

And

Logger: homeassistant.config_entries
Quelle: config_entries.py:504
Erstmals aufgetreten: 10:09:18 (4 Vorkommnisse)
Zuletzt protokolliert: 11:16:00

Error setting up entry Remootio Tor (Host: 192.168.40.75, S/N: e05a1b901664hfxoxydd) for remootio
Error setting up entry Remootio Garage (Host: 192.168.40.68, S/N: 80646f0cfb30vfxctyna) for remootio
Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/aioremootio/remootioclient.py", line 318, in __initialize
    await self.__lifecycle.wait_for(lambda: self.connected)
  File "/usr/local/lib/python3.12/asyncio/locks.py", line 293, in wait_for
    await self.wait()
  File "/usr/local/lib/python3.12/asyncio/locks.py", line 266, in wait
    await fut
asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 504, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/remootio/__init__.py", line 38, in async_setup_entry
    remootio_client: RemootioClient = await create_client(
                                      ^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/remootio/utils.py", line 83, in create_client
    result = await RemootioClient(
             ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/async_class.py", line 133, in __await__
    yield from self.__ainit__(*self._args, **self._kwargs).__await__()
  File "/usr/local/lib/python3.12/site-packages/aioremootio/remootioclient.py", line 290, in __ainit__
    await self.__initialize()
  File "/usr/local/lib/python3.12/site-packages/aioremootio/remootioclient.py", line 332, in __initialize
    raise RemootioClientError(self, "Failed to initialize this client.") from ex
aioremootio.errors.RemootioClientError: Failed to initialize this client. Host [192.168.40.75] SerialNumber [N/A] ApiVersion [N/A] State [State.UNKNOWN]

No problems here. Has the ip address of your Remootio changed? The error in the posts directly above yours, look remarkably similar.

Nope, IP has not changed. I can ping the device with no problem in HA.

edit: I reconnected both devices, and now itā€˜s working again. Sorry! My mistake.

1 Like

Open/Close only?

I recently installed 2 Ghost Controls gate openers with Ghost’s Multiconnect BT/WiFi interface. Their interface is accessed through Remootio. After installing the Peaceduck fork integration in HA for Remootio, I only have 1 device/entity that controls and monitors the status of opening and closing (1 entity). There are several more status and control functions available on the Android Remootio app (battery voltage/charging status, DIP pin settings, gate lock status, etc., but only the open/close function/status is being shown in HA.

HA 2024.8 has broken the remootio integration for me, conflicting dependencies.

same … two new issues on github (one started by me)

I’m guessing one of these

aiohttp>=3.8
pycryptodome>=3.15,<3.20
async-class==0.5.0
voluptuous>=0.13.1,<0.14.2

Anybody know there way around python things in HA?

@peaceduck tagging you just incase you dont see this :blush:

edit: Somehow, today, through a process of removing the custom repo, then readding the custom repo, deleting the remootio folder, then messing about with my own forked repos, then removing those, then adding back in @peaceduck repos, all my garage doors are back online and work.

edit 2: @peaceduck has fixed it :+1:

1 Like

Tried also these things…remove/reinstall/custom repo…with 2024.8.2 version of HA.
Did not get the entity for my garage door anymore…
So reverted back to 2024.7.4 and it works again…

If someone has any other ideas or what the dependencies need to be, would love to hear about it…

PS. Anyone removed the remootio for something else that is more stable in HA? I’m only interested in opening/closing a garagedoor from HA. Nothing more with key distribution or so…and yeah…i want also be able to control it from apple carplay…but i do this now via homehub…

@peaceduck has updated the repo.
Update and redownload the new version.

I’m getting log messages that SUPPORT_CLOSE/OPEN is deprecated and will be removed.

i edited my local custom component file with this change and it seemed to stop the logs;
remootio/cover.py

class RemootioCover(<CoverEntityFeature.OPEN|CLOSE: 3>):
    """Cover entity which represents an Remootio device controlled garage door or gate."""

    _remootio_client: RemootioClient
    _attr_has_entity_name = True
    _attr_should_poll = False
    _attr_supported_features = CoverEntityFeature.OPEN | CoverEntityFeature.CLOSE

I had the Remootio integration working with @peaceduck’s repo. However, after upgrading to 2024.11 I received the following error.

Unable to install package aioremootio @ git+https://github.com/peaceduck/aioremootio: error: Failed to prepare distributions Caused by: Failed to download and build `async-class==0.5.0` Caused by: Failed to fetch: `https://files.pythonhosted.org/packages/88/43/cdae41799d82b0d766f784c2b14d08d53f9739aecc481aeaea5394c3232b/async-class-0.5.0.tar.gz` Caused by: Request failed after 3 retries Caused by: error sending request for url (https://files.pythonhosted.org/packages/88/43/cdae41799d82b0d766f784c2b14d08d53f9739aecc481aeaea5394c3232b/async-class-0.5.0.tar.gz) Caused by: operation timed out

Has anyone received this error. I uninstaled and reinstalled the integration without any luck. The download link to async-class seems to work fine.

think its the requirments.txt that @peaceduck has

either fork it and change the requirements.txt to

aiohttp>=3.1.9,<4
pycryptodome>=3.21.0,==3.21.*
async-class>=0.5.0,==0.5.*
voluptuous>=0.15.2,==0.15.*

or you’re welcome to use my fork, at your own risk of course.

Hi
remootio stopped working again with 2025.1 (or around that time)
Error contained
ā€œ_attr_supported_features = cover.SUPPORT_OPEN | cover.SUPPORT_CLOSEā€

depreciated

I have fixed it in GitHub - drsmarsden/remootio: remootio

sorry not done any serious development for 20 years , and no python deployment , but appears to work (and I did use to test :wink:

2.0.2 from peaceduck already fixed this: Release v2.0.2 Ā· peaceduck/remootio Ā· GitHub

Yes! I should have fixed this a few days ago. I am also planning to fix the ugly dependency for aioremootio soon.

1 Like

I installed HA 2025.1.1 last night and everything went broke again. Similar to earlier errors where it timed out with no access in the logs. Tried a number of things reinstalling the integration, removing reinstalling the devices, what I found that worked best was using the Remootio App and resetting the board on the gate. It came right up with a reinitialize(reload) on the Remootio Custom Integration.
In case this helps anyone else.

Be sure to wait till the board is restored on the app.
seems like it might like being connected to the app and reloading the Integration at the same time.