Help with Enocean FT55 needed - how to use 4 buttons?

Hi!

I’m using the Enocean Gateway USB300 and the FT55 switch. My current config is:
configuration.yaml

binary_sensor:

  • platform: enocean
    name: testenocean
    id: [0xFE,0xF4,0xF0,0x31]

and in the automations.yaml (just for testing combined with the service “send message to telegram” the different buttons):

  • id: ‘1553635753330’
    alias: Enocean
    trigger:
    • event_data:
      id: [0xFE,0xF4,0xF0,0x31]
      pushed: 1
      event_type: button_pressed
      platform: event
      action:
    • data:
      message: ‘1’
      service: notify.ha_message
  • id: ‘1553636588346’
    alias: Enocean2
    trigger:
    • event_data:
      id: [0xFE,0xF4,0xF0,0x31]
      pushed: 0
      event_type: button_pressed
      platform: event
      condition: []
      action:
    • data:
      message: ‘0’
      service: notify.ha_message

Finally I want to use all 4 buttons for different actions (all roller shutters up/down and all roller shutters in the groundfloor up/down).

Now every button does the same (I press and I got the message 1 and 0). I know, that is pressed and leave the button. All 4 buttons works now exaclty that way.

How can I set up button1 for action shutter up and button2 for shutter down and button3 and button4 for other actions?

Thanks for your help!
Heinrich

Hello Heinrich,

You can use all 4 buttons individually with this automation.

- id: switchb
  alias: 'SwitchB'
  trigger:
    platform: event
    event_type: button_pressed
    event_data:
      id: [0xfe,0xf8,0xd1,0x34]
      # 0 = button release
      # 1 = button press
      pushed: 1
  action:
    # Button 1 = top left (which 1, onoff 0)
    # Button 2 = bottom left (which 1, onoff 1)
    # Button 3 = top right (which 0, onoff 0)
    # Button 4 = bottom right (which 0, onoff 1)
    service_template: >
      {% if trigger.event.data.which == 1 %}
        {% if trigger.event.data.onoff == 0 %}
          switch.toggle
        {% elif trigger.event.data.onoff == 1 %}
          light.toggle
        {% endif %}
      {% elif trigger.event.data.which == 0 %}
        {% if trigger.event.data.onoff == 0 %}
          light.toggle
        {% elif trigger.event.data.onoff == 1 %}
          light.toggle
        {% endif %}
      {% endif %}
    data_template:
      entity_id: >
        {% if trigger.event.data.which == 1 %}
          {% if trigger.event.data.onoff == 0 %}
            switch.deskb
          {% elif trigger.event.data.onoff == 1 %}
            light.lampb1
          {% endif %}
        {% elif trigger.event.data.which == 0 %}
          {% if trigger.event.data.onoff == 0 %}
            light.lampb2
          {% elif trigger.event.data.onoff == 1 %}
            light.lampb3
          {% endif %}
        {% endif %}

In the example above the button configuration is:

  • Button 1: toggle switch.deskb
  • Button 2: toggle light.lampb1
  • Button 3: toggle light.lampb2
  • Button 4: toggle light.lampb3

Hello, that’s exactly what I want too. Button 1 should turn on a lamp, button 2 should turn it off, button 3 should make it brighter and button 4 darker. Where do I put the lamp in? I have no idea about such codes. Can someone please help me?

Hey niemehrarbeiten, did you find out the EnOcean device ID of your remote?
If so, add it as a binary sensor: https://www.home-assistant.io/integrations/enocean/#binary-sensor

Now you can either create an automation for each button. The trigger for this automation would be “button_pressed”. All parameters are documented in the Binary Sensor paragraph of the page I linked.

This is how an automation could look like:


The ID in the trigger field will get converted to decimal though after saving, this is normal though.
If your lamps aren’t available as Devices, you could call the service “light.turn_on” and pass the parameter “brightness_step” or “brightness_step_pct” - have a look here: https://www.home-assistant.io/integrations/light/#service-lightturn_on

hello, thank you very much. I’ll take a look and try it out

1 Like

@fedot works perfectly! Thanks!

1 Like