ZHA - icasa Pulse S8 Keypad remote

Tags: #<Tag:0x00007f3268dc8bf0> #<Tag:0x00007f3268dc8a88> #<Tag:0x00007f3268dc8830>

This is a blueprint for the icasa Pulse S8 Keypad remote, specifically for use with ZHA.

Available Actions (10 Actions):

  • Short press On-Button
  • Long press On-Button
  • Short press Off-Button
  • Long press Off-Button
  • Short Press on Button S1
  • Long Press on Button S1
  • Short Press on Button S2
  • Long Press on Button S2
  • Short Press on Button S3
  • Long Press on Button S3
  • Short Press on Button S4
  • Long Press on Button S4
  • Short Press on Button S5
  • Long Press on Button S5
  • Short Press on Button S6
  • Long Press on Button S6

Blueprint

blueprint:
  name: icasa PULSE 8S keypad (ZHA)
  description: 'Control anything using icasa Pulse 8S keypad'
  domain: automation

  input:
    icasa_remote:
      name: Keypad
      description: Keypad to use
      selector:
        device:
          integration: zha
          manufacturer: icasa
          model: ICZB-KPD18S
    button_on:
      name: On Button (short pressed)
      description: Action to run on short press on On button
      default: []
      selector:
        action: {}
    button_on_long:
      name: On Button (long pressed)
      description: Action to run on press on On button
      default: []
      selector:
        action: {}
    button_off:
      name: Off Button (short pressed)
      description: Action to run on short press on Off button
      default: []
      selector:
        action: {}
    button_off_long:
      name: Off Button (long pressed)
      description: Action to run on press on Off button
      default: []
      selector:
        action: {}
    button_1:
      name: Button S1 (short pressed)
      description: Action to run on short press on Button S1
      default: []
      selector:
        action: {}
    button_1_long:
      name: Button S1 (long pressed)
      description: Action to run on long press on Button S1
      default: []
      selector:
        action: {}
    button_2:
      name: Button S2 (short pressed)
      description: Action to run on short press on Button S2
      default: []
      selector:
        action: {}
    button_2_long:
      name: Button S2 (long pressed)
      description: Action to run on long press on Button S2
      default: []
      selector:
        action: {}
    button_3:
      name: Button S3 (short pressed)
      description: Action to run on short press on Button S3
      default: []
      selector:
        action: {}
    button_3_long:
      name: Button S3 (long pressed)
      description: Action to run on long press on Button S3
      default: []
      selector:
        action: {}
    button_4:
      name: Button S4 (short pressed)
      description: Action to run on short press on Button S4
      default: []
      selector:
        action: {}
    button_4_long:
      name: Button S4 (long pressed)
      description: Action to run on long press on Button S4
      default: []
      selector:
        action: {}
    button_5:
      name: Button S5 (short pressed)
      description: Action to run on short press on Button S5
      default: []
      selector:
        action: {}
    button_5_long:
      name: Button S5 (long pressed)
      description: Action to run on long press on Button S5
      default: []
      selector:
        action: {}
    button_6:
      name: Button S6 (short pressed)
      description: Action to run on short press on Button S6
      default: []
      selector:
        action: {}
    button_6_long:
      name: Button S6 (long pressed)
      description: Action to run on long press on Button S6
      default: []
      selector:
        action: {}


mode: restart
max_exceeded: silent

trigger:
- platform: event
  event_type: zha_event
  event_data:
    device_id: !input icasa_remote
    
action:
- choose:
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "off"%}true{%else%}false{%endif%}'
    sequence: !input 'button_off'
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "move_with_on_off" and trigger.event.data.args == [1,50]%}true{%else%}false{%endif%}'
    sequence: !input 'button_off_long'
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "on"%}true{%else%}false{%endif%}'
    sequence: !input 'button_on'
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "move_with_on_off" and trigger.event.data.args == [0,50]%}true{%else%}false{%endif%}'
    sequence: !input 'button_on_long'
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "recall" and trigger.event.data.args == [0,1]%}true{%else%}false{%endif%}'
    sequence: !input 'button_1'
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "store" and trigger.event.data.args == [0,1]%}true{%else%}false{%endif%}'
    sequence: !input 'button_1_long'
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "recall" and trigger.event.data.args == [0,2]%}true{%else%}false{%endif%}'
    sequence: !input 'button_2'
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "store" and trigger.event.data.args == [0,2]%}true{%else%}false{%endif%}'
    sequence: !input 'button_2_long'
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "recall" and trigger.event.data.args == [0,3]%}true{%else%}false{%endif%}'
    sequence: !input 'button_3'
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "store" and trigger.event.data.args == [0,3]%}true{%else%}false{%endif%}'
    sequence: !input 'button_3_long'
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "recall" and trigger.event.data.args == [0,4]%}true{%else%}false{%endif%}'
    sequence: !input 'button_4'
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "store" and trigger.event.data.args == [0,4]%}true{%else%}false{%endif%}'
    sequence: !input 'button_4_long'
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "recall" and trigger.event.data.args == [0,5]%}true{%else%}false{%endif%}'
    sequence: !input 'button_5'
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "store" and trigger.event.data.args == [0,5]%}true{%else%}false{%endif%}'
    sequence: !input 'button_5_long'
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "recall" and trigger.event.data.args == [0,6]%}true{%else%}false{%endif%}'
    sequence: !input 'button_6'
  - conditions:
    - condition: template
      value_template: '{%if trigger.event.data.command == "store" and trigger.event.data.args == [0,6]%}true{%else%}false{%endif%}'
    sequence: !input 'button_6_long'
2 Likes