최근 esphome에 적용된 적외선 수신기(TSOP38238)를 s2 mini에 설치하고 사용하지 않는 리모콘의 각 버튼들을 HA의 각 기능들에 할당. nec 리모콘에 33가지 무선 씬버튼은 만들었는데 각 버튼에 어떤기능을 넣었는지 외우는게 문제.
ESPHome: ir-be.yaml
substitutions:
name: ir-be
area: Bedroom
substitutions:
name: ir-be
area: Bedroom
esphome:
name: ${name}
area: ${area}
comment: Sensor IR(B)
esp32:
board: lolin_s2_mini
variant: esp32s2
framework:
type: esp-idf
wifi:
ssid: !secret wifi_ssid2
password: !secret wifi_password
min_auth_mode: WPA2
ap:
ssid: "${name} hotspot"
password: !secret wifi_password
captive_portal:
logger:
api:
ota:
- platform: esphome
password: !secret ota_password
remote_receiver:
pin:
number: 16
inverted: true
mode:
input: true
pullup: true
on_nec:
then:
- homeassistant.event:
event: esphome.ir_remote
data:
address: !lambda 'return (int)x.address;'
command: !lambda 'return (int)x.command;'
Home Assistant: automations.yaml
- id: IR-Nec
alias: IR-Nec
mode: single
triggers:
- trigger: event
event_type: esphome.ir_remote
variables:
ir:
power1: '48960'
power2: '3825'
source: '3570'
mute: '3315'
vol_down1: '3060'
vol_up1: '2805'
rew: '46155'
ff: '45135'
led: '61455'
kd: '48195'
vol_up2: '59160'
vol_down2: '61200'
home: '60945'
back: '58905'
exit: '45900'
menu: '65280'
up: '59670'
down: '58650'
left: '44625'
right: '44880'
ok: '60435'
one: '45930'
two: '61965'
three: '62220'
four: '46410'
five: '62985'
six: '63240'
seven: '47430'
eight: '64005'
nine: '64260'
zero: '65025'
lang: '48705'
del: '48450'
actions:
- choose:
- conditions:
- "{{ trigger.event.data.command == ir.power1 }}"
sequence:
- action: light.toggle
entity_id: light.bedroom_mood
- conditions:
- "{{ trigger.event.data.command == ir.power2 }}"
sequence:
- action: light.toggle
entity_id: light.bedroom_mood2

