Detecting second button push on 433 MHz remotes using Telldus ZNet Lite V2

I’m using the Telldus ZNet Lite V2 to receive commands from a few old 433 MHz Nexa remotes. Each remote has (for each “channel” in case of multiple “channel” remotes - remotes that can control more than one switch) two buttons: “On” and “Off”.

If I press “On”, Telldus registers that and the change from “Off” to “On” can be detected in Home Assistant". However, if I then press “On” again, the Telldus box blinks - it registers that the button has been pressed - but there is no state change, since the remote is already “On”.

Is there any way - in Home Assistant - to detect that the “On” button has been pressed, even if the remote’s state is already “On”?

The way I would do it .
create a sensor as well as a switch
but in the sensor add the

expire_after: "1"

then what happen to the sensor it will go blank after 1 sec

then we can create a automation see the sensor go “on” and if the switch is on do something

- id: 'switch no and sensor on'
  alias: switch no and sensor on
  initial_state: true
  trigger:
  - entity_id: sensor.whats_name
    platform: state
    to: 'ON'
  condition:
    condition: and
    conditions:
      - condition: state
        entity_id: Light.whats_its_name
        state: 'on'
  action:
  - data:
      entity_id: switch.turniton 
    service: switch.toggle

written off top of head mite need a bit of checking
hope this point you down the right track

if you give me the names if what you are trying to do ill help you more

so
i need to see the
switch yaml bit

I appreciate your taking the time to help out.

I’m not sure, however, if this will solve the problem (maybe I’m dense).

The Nexa 433 MHz remotes (that are read by Telldus and then picked up by HA through the Telldus API) show up in Home Assistant as switches. A remote has two buttons: “On” and “Off”. Assuming the initial state of the switch (remote) is off, then if I press the “On” button, the state changes to on. If I press the “On” button again, nothing happens. Sure, why would it, the state should still be on, right?

However, if I have two remotes at each end of a long hallway, I would like to be able to press “On” to get the lights on from either remote, even if I previously turned the lights on with Remote 1 (its state is therefore on) and off with Remote 2 (its state is therefore off) after passing through the hallway.

I have, with some success, turned on/off the other remote in the automation that switches the light on/off, to make the other remote follow first (and vice versa). In some instances, notably if trying to control a cover (garage door) with two remotes, I’ve seen problems like the cover stopping halfway - as if the toggling of the other remote has triggered another automation. I wrote about this here.

That’s why it would be cool if each button press could somehow be detected, but I’m guessing that there is a limitation in the Telldus ZNet Lite V2 or in the HA integration, that only state changes are detectable since each remote button is not visible in HA, just the pair of buttons as a switch.

if the data is getting in HA then we should be able do something.

can you show me the light config setting.

other idea is as it a 433MHz you could use the sonoff 433MHZ

https://www.itead.cc/sonoff-rf-bridge-433.html

and put Tasmota on it and then the data would come in via MQTT

My problem is further detailed here: Switches turn off and on repeatedly

Hi Tom,

Did you ever resolve this issue?
I have the same problem that the switch stays in the last state and nothing gets registered until i press the opposite (on/off) first.

Hi @rodak,

No and yes!

No, because in the Telldus Live integration, the integration just polls the Telldus Live service to see if the remote (seen as a switch in Home Assistant) is ON or OFF. If you press ON, the switch in HA is ON, and pressing ON again on the remote does not change that, so the button pressing is not detected by HA.

Yes, because @quazzie has solved this by coming up with an ingenious Python plugin that can be installed on the Telldus ZNet Lite v2. The plugin publishes state changes and remote button pushes as MQTT messages. The devices connected to the Telldus ZNet Lite v2 are automagically discovered by Home Assistant through MQTT messages published by the Telldus ZNet Lite v2 plugin and I have therefore deleted the Telldus Live integration from HA and I now rely on the MQTT messages from the plugin.

The plugin defines (in the MQTT messages) a self-learning remote as a binary_sensor that expires after 1 second (a non-self-learning remote - the type for which you have to set codes manually - is still treated as a switch, so that type will still not work well - this is not a plugin deficiency, it is due to the way such remotes are handled in the Telldus ZNet Lite v2). If you push ON on a self-learning remote, an ON MQTT message is published and the binary_sensor in HA goes ON. After a second the binary_sensor expires (goes unavailable) and is ready for another push on the ON button. :+1: :smiley:

Note that on HA start up (after for example a restart), the binary_sensor does not expire. I have reported this behavior here: https://github.com/home-assistant/home-assistant/issues/28634. After pushing a button on the remote, however, the binary_sensor expires as expected and desired.

Another good thing with the plugin is that response times are drastically reduced. The Telldus Live integration polls the Telldus Live service not more often than every 5 seconds, so the response time may be up to 5 seconds. The MQTT message is published immediately, so in effect the plugin provides pushing of events rather than polling.

The Telldus plugin can be found here: https://github.com/quazzie/tellstick-plugin-mqtt-hass. Note that you have to contact Telldus support to have them update the Telldus ZNet Lite v2 with support for local plugins and ask for the supported developer [email protected] with his public key. Key and description can be found at https://github.com/quazzie/tellstick-plugin-mqtt-hass.

Good luck.

Many thanks for your answer, I have now contacted Telldus and will have to setup some MQTT broker.
Then I guess it´s straight forward.

Best regards!

Just a small follow up question, will I still receive firmware updates from Telldus and will those have “local plugins” enabled?
Or will I have to update the firmware somehow manually?
Or will firmware updates break “local plugins” and I will have to contact Telldus support again?

Thanks and best regards

If you run Hass.io, installing an MQTT broker is easy as there is an add-on that can be installed. If not, I have earlier had success with installing Mosquitto (https://mosquitto.org/) on a Raspberry Pi.

I do not know what firmware updates from Telldus do to the installed local plugins as there have not been any since I installed the plugin. However, I would be surprised if the firmware update broke everything and you had to set it up all over, since the ability to install plugins seems to be well planned and catered for.

Thanks for your time.
I’m running home assistant in docker on Synology NAS. Did end up installing Mosquitto as docker package as well so now I’m only waiting for the Telldus support to enable local plugins :slight_smile:

No problem at all. And good luck.

Remember to reboot the Telldus after installing the plugin. I learnt that the hard way… :wink:

1 Like

Will do, thanks a lot for sharing your lessons learnt :wink:

By the way, you should mark your own post as the solution to this thread to help others out :slight_smile: