Support for RFLink Gateway

I can’t find anything in the documentation about adding devices. My config (section) looks like this:

rflink:

port: /dev/serial/by-id/usb-Arduino__www.arduino.cc__0042_95432313837351416120-if00

light:

  • platform: rflink

sensors:

  • platform: rflink

switch:

  • platform: rflink

I’ve been playing around with the Mqtt rflink gateway and have fixed a few issues I had with stability and Mqtt authentication. I’ve submitted pull request to get my fixes implemented.

Hello new to all this.

Trying to set up rflink gateway in Home assistant 0.38.1

But the initial port set up is not being recognised, I have used

rflink:
port: /dev/serial/by-id/usb-1a86

I am not sure if USB-ID is correct, I got it from doing

pi@Home_Assistant:~ $ ls /dev/serial/by-id/
usb-1a86_USB2.0-Serial-if00-port0

What am I doing wrong.

Also my rflink also has capability to use 2,4ghz and can control milight bulbs, will they work? how do I control RGB?

Hi, you need enter the full usb ID, so:

rflink:
    port: /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0

2,4ghz and milight are not yet supported. I do not own these devices or configuration. But if you are able to provide output from the rflink command I could look into it: https://github.com/aequitas/python-rflink rflink -vv

Hi

Thanks very much, tried that and it has stopped the error, now to the next stage

Sorry to be a pain,

been trying to add switches all afternoon but can not get thew syntax that the system finds acceptable
this is what I have, which I believe is same as documentation.

“”"

  • platform: rflink
    device_defaults:
    fire_event: true
    signal_repetitions: 2
    devices:
    newkaku_001802be_1
    name: Router
    newkaku_001820be_2
    name: TV Amplifier
    newkaku_001820be_3
    name: Lounge TV
    icon: mdi:tv
    “”"
    Tried various spacing, commas etc but always get various errors in log file such as.

17-02-12 17:55:43 ERROR (Thread-1) [homeassistant.util.yaml] mapping values are not allowed here
in “/home/hass/.homeassistant/configuration.yaml”, line 108, column 13

What am I doing wrong???

Its best to use the preformatted text option when pasting config as it preserves the whitespaces. But from what I can see it you miss a color ‘:’ at the end of the device names (eg, newkaku_001802be_1).

Hi,

Thanks the colon’s sorted it. Also had to remove the ‘icon:’ as it is not allowed but is shown in documentation.

Thanks for the help and the tip on the preformatted text, will do next time.

Will now look into Milights and if I can get them controlled.

I would definitely love to see the MilIghts work with RFLink. It has some clear advantages over the official controller (control unlimited individual bulbs, intercept the remote to keep things in sync)

Furthermore, it looks like the people at RFlink are already working on the newer Milight bulbs. Something that seems difficult using the original controller.

So getting the Milight bulbs to work with RFLink might solve multiple problems at once.

I don’t own milight devices so I am unable to test. But if you could provide debug output for what is and isn’t working I can add support. According to: http://www.nemcon.nl/blog2/protref the same protocol is used for milights. Don’t know if pairing is mandatory before being able to control? Brightness and color setting are currently not implemented and should be added.

First off let me thank you for making the RFlink work!!! I`m very happy with it!

Regarding the milights. The indeed need to be paired. When you turn on the light bulbs they go into pairing mode for a few seconds. Normally you would then press a “on button” on the remote, pairing the bulb to that button (zone) of the remote. The official controller and remote are limited to 4 zones. According to the RFlink docs, the RFlink should not have this limit.

If I start hass I can see the following passing by in the output while I use the official remote. No sign from the bulbs, but as far as i can see, they only receive signals.

Im not a programmer, so i can not really asses what exact information you would need. But im more that happy to provide whatever i can to get this working :slight_smile:

EDIT: I just noticed the remote controls popping up in the front-end. At least the on/off switches for the 4 zones and the main on/off switch. Missing are brightness and color control, and the “modes” (disco mode etc, 0-8 ).

packet {‘switch’: ‘00’, ‘node’: ‘gateway’, ‘command’: ‘mode8’, ‘id’: ‘6222’, ‘rgbw’: ‘3b78’, ‘protocol’: ‘milightv1’}

I can control these with with my remote. The bulbs however, seem to only react to the remote. For example: when i pair my bulbs to zone2 on the remote, i can control them with my remote, en hass picks up on that, but i can not use the hass switch to control the bulb.

Does someone know how to hide the connection status panel? :sweat:

Already tried (without sucess):
rflink.connection_status: hidden: true

Please see https://github.com/home-assistant/home-assistant/pull/6475 for now its easier just to have the feature removed.

1 Like

Thanks for the information. I think that should be usable. I will be keeping the status on my progress here: https://github.com/home-assistant/home-assistant/issues/5965

1 Like

I updated to v0.40.0 today, but since then all my RFlink sensors and lights stopped working. The strange thing is that switches are still working correctly.

When pressing the on or off button, nothing happens. When using an alias’ed remote, the switch actually toggles, so it’s receiving command correctly. But if you then click the switch in HASS, it toggles back after a few secs to it’s old state without actually switching the light on or off.

Sensor data is simply not received.

Also, RFlink devices with a space in it’s name are triggering all kinds of errors since 0.40:

17-03-12 21:43:41 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/lib/python3.5/asyncio/tasks.py", line 239, in _step
result = coro.send(None)
  File "/home/stefan/.local/lib/python3.5/site-packages/homeassistant/helpers/entity_component.py", line 359, in async_process_entity
new_entity, self, update_before_add=update_before_add
  File "/home/stefan/.local/lib/python3.5/site-packages/homeassistant/helpers/entity_component.py", line 208, in async_add_entity
    'Invalid entity id: {}'.format(entity.entity_id))
homeassistant.exceptions.HomeAssistantError: Invalid entity id: light.Overloop zolder

Maybe it’s no related to RFlink specifically, since nothing much has changed since 0.39.x as far as I can see, but does anyone else see these problems as well?

After downgrading back to 0.39.3 with the exact same config, everything is working fine again.

It probably has to do with the space in the entity name. I ran into the same issue with one of my devices. I still need to figure out why this is happening have not looked into it yet. For now the workaround is to add ‘_’ where the space was.

I tried that, but then lights and sensors still aren’t working, even after removing the database.

Also, after changing the spaces to underscores I tried setting the friendly_name in the customize options, but they didn’t seem to pick up, is that unsupported by RFlink device ID’s?

I created an issue where I will keep track of this bug and will be updating the status there:

When I have time to test this at home I will see what it requires to resolve this.

I was able to solve this by removing the spaces in the names in my 0.39.3 installation and setting friendly_names accordingly. Restarting the installation so the changes were picked up. And I then upgraded to 0.40 without problems. All my lights, sensors and switches are working correctly now.

So in case anyone else runs into this, tl;dr: remove spaces in names before you upgrade to 0.40.

Howto get the full usb port id ?
after trying
pi@masterpi:/ $ ls /dev/serial/by-id/
ls: cannot access /dev/serial/by-id/: No such file or directory

I cannot find the complete usb port id.
Any suggestions ?

passie