If you want to test the ikea bilresa scroll wheel without any blueprint, you do it like that:
# ikea matter bilresa
- alias: mattertest1
id: mattertest1
trigger:
- platform: state
entity_id:
# selector 1
- event.bilresa_scroll_wheel_button_1
- event.bilresa_scroll_wheel_button_2
- event.bilresa_scroll_wheel_button_3
# selector 2
- event.bilresa_scroll_wheel_button_4
- event.bilresa_scroll_wheel_button_5
- event.bilresa_scroll_wheel_button_6
# selector 3
- event.bilresa_scroll_wheel_button_7
- event.bilresa_scroll_wheel_button_8
- event.bilresa_scroll_wheel_button_9
action:
- variables:
event_type: "{{ trigger.to_state.attributes.get('event_type', 'no-type') }}"
count: "{{ trigger.to_state.attributes.totalNumberOfPressesCounted | default(0) }}"
button: "{{ trigger.to_state.entity_id }}"
selector: >
{% if button in ['event.bilresa_scroll_wheel_button_1', 'event.bilresa_scroll_wheel_button_2', 'event.bilresa_scroll_wheel_button_3'] %}
1
{% elif button in ['event.bilresa_scroll_wheel_button_4', 'event.bilresa_scroll_wheel_button_5', 'event.bilresa_scroll_wheel_button_6'] %}
2
{% else %}
3
{% endif %}
action: >
{% if button in ['event.bilresa_scroll_wheel_button_1', 'event.bilresa_scroll_wheel_button_4', 'event.bilresa_scroll_wheel_button_7'] %}
clockwise
{% elif button in ['event.bilresa_scroll_wheel_button_2', 'event.bilresa_scroll_wheel_button_5', 'event.bilresa_scroll_wheel_button_8'] %}
counter_clockwise
{% elif button in ['event.bilresa_scroll_wheel_button_3', 'event.bilresa_scroll_wheel_button_6', 'event.bilresa_scroll_wheel_button_9'] %}
press
{% else %}
unknown
{% endif %}
message: >
{% if event_type.startswith('multi_press_') %}
{% if action == 'clockwise' %}
clockwise {{ count }}x
{% elif action == 'counter_clockwise' %}
counter-clockwise {{ count }}x
{% elif action == 'press' %}
press {{ count }}x ({{ event_type }})
{% endif %}
{% elif event_type == 'long_press' %}
long press
{% elif event_type == 'long_release' %}
long release
{% else %}
unknown event {{ event_type }} for button {{ button }}
{% endif %}
- service: system_log.write
data:
message: "Bilresa Selector {{ selector }}: {{ message }}"
logger: mattertest