I’m still a fan of 433 - cheap, and in the right setting, reliable enough to love. I run the RFLink component with the RFLink Gateway on Arduino but I have run into trouble with a Dooya_v4 protocol to control blinds. Usually an underscore from Hassio is turned into a semi colon to delineate protocol;device;switch. With an underscore in the protocol it creates an error:
2020-08-24 18:39:51 DEBUG (MainThread) [homeassistant.components.rflink] Rflink command for {'command': 'on', 'device_id': 'dooya_v4_6d5f8e00_3f'}
2020-08-24 18:39:51 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection.2815618640]
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 125, in handle_call_service
await hass.services.async_call(
File "/usr/src/homeassistant/homeassistant/core.py", line 1308, in async_call
task.result()
File "/usr/src/homeassistant/homeassistant/core.py", line 1343, in _execute_service
await handler.func(service_call)
File "/usr/src/homeassistant/homeassistant/components/rflink/__init__.py", line 134, in async_send_command
await RflinkCommand.send_command(
File "/usr/src/homeassistant/homeassistant/components/rflink/__init__.py", line 457, in send_command
return await cls._protocol.send_command_ack(device_id, action)
File "/usr/local/lib/python3.8/site-packages/rflink/protocol.py", line 223, in send_command_ack
self.send_command(device_id, action)
File "/usr/local/lib/python3.8/site-packages/rflink/protocol.py", line 186, in send_command
command = deserialize_packet_id(device_id)
File "/usr/local/lib/python3.8/site-packages/rflink/parser.py", line 459, in deserialize_packet_id
assert len(id_switch) < 3
AssertionError
Im pretty sure that the parsing is struggling with the underscore in the RFLink protocol WTH can I do to fix this?