Usage examples¶
Ideas for PlancH around the house, with the Home Assistant automations behind them. They use only what the panel already offers: the menu built from labels, the four scene keys, the free status LEDs D2 and D3 on the ear, the Backlight and the touch area.
Entity IDs
The examples use light.planch_status_led_2, light.planch_backlight and so on. The real
IDs depend on the name of your panel (for example light.planch_3a4b5c_status_led_2):
check them on the device page and adjust the examples. Paste an automation in
Settings → Automations → Create automation → ⋮ → Edit in YAML, without the
automation: line, or keep them in a package.
Office¶
Scene keys. A Focus scene (desk lamp on, cool white, ceiling off) on S1, a Video call scene (face light on, blinds half closed) on S2, Break on S3 and Leave (everything off) on S4: put the labels PlancH S1 … PlancH S4 on the scenes. The LED next to the active scene stays lit, so a glance tells which mode the office is in.
D2 red during meetings. With a calendar in Home Assistant (Google Calendar, CalDAV, Local
calendar…) the calendar entity is on while an event is running:
automation:
- alias: "PlancH: D2 red during meetings"
triggers:
- trigger: state
entity_id: calendar.work
actions:
- if:
- condition: state
entity_id: calendar.work
state: "on"
then:
- action: light.turn_on
target:
entity_id: light.planch_status_led_2
data:
rgb_color: [255, 0, 0]
brightness_pct: 40
else:
- action: light.turn_off
target:
entity_id: light.planch_status_led_2
Bedside¶
A second PlancH on the night table, with its own keys: name the panel Bedroom (field Panel on its device page, see More than one PlancH) and use the labels PlancH Bedroom S1 … S4. They win over the shared scene keys on that panel only.
- S1 Reading: bedside lamp at 40 %, warm white.
- S2 Night: everything off except a dim night light.
- S3 Wake up: a script that brings the lamp up slowly (below).
- S4 All off.
script:
planch_wake_up:
alias: "Wake up"
sequence:
- action: light.turn_on
target:
entity_id: light.bedside_lamp
data:
brightness_pct: 1
color_temp_kelvin: 2200
- action: light.turn_on
target:
entity_id: light.bedside_lamp
data:
brightness_pct: 80
color_temp_kelvin: 4000
transition: 600 # 10 minutes
In the dark the panel stays quiet by itself: the display and the scene LEDs switch off 30 s after the last key, and D1 is off while everything works. Keep the backlight low at night:
automation:
- alias: "PlancH: dim backlight at night"
triggers:
- trigger: time
at: "22:30:00"
actions:
- action: light.turn_on
target:
entity_id: light.planch_bedroom_backlight
data:
rgb_color: [255, 120, 40]
brightness_pct: 3
- alias: "PlancH: backlight off in the morning"
triggers:
- trigger: time
at: "07:30:00"
actions:
- action: light.turn_off
target:
entity_id: light.planch_bedroom_backlight
Kitchen timer¶
A scene key starts a timer and the backlight counts down, from green to red.
- Create a timer helper: Settings → Devices & services → Helpers → Create helper → Timer,
name Kitchen, duration 10 minutes (
timer.kitchen). -
Create a script that starts it and put the label PlancH S3 on the script:
script: planch_kitchen_timer: alias: "Kitchen timer" sequence: - action: timer.start target: entity_id: timer.kitchen -
Add the automation that colours the backlight and flashes D3 at the end:
automation:
- alias: "PlancH: kitchen timer on the backlight"
mode: restart
triggers:
- trigger: state
entity_id: timer.kitchen
to: "active"
- trigger: time_pattern
seconds: "/10"
conditions:
- condition: state
entity_id: timer.kitchen
state: "active"
actions:
- variables:
left: >-
{{ (as_datetime(state_attr('timer.kitchen', 'finishes_at')) - now()).total_seconds() }}
total: >-
{{ as_timedelta(state_attr('timer.kitchen', 'duration')).total_seconds() }}
- action: light.turn_on
target:
entity_id: light.planch_backlight
data:
hs_color: ["{{ [0, [120 * left / total, 120] | min] | max }}", 100]
brightness_pct: 60
- alias: "PlancH: kitchen timer finished"
triggers:
- trigger: event
event_type: timer.finished
event_data:
entity_id: timer.kitchen
actions:
- action: light.turn_off
target:
entity_id: light.planch_backlight
- action: light.turn_on
target:
entity_id: light.planch_status_led_3
data:
rgb_color: [255, 0, 0]
flash: long
Pressing S3 again restarts the timer. If you cancel the timer from Home Assistant, the backlight keeps its last colour until the next change.
Indicators around the house¶
D2 and D3 are two RGB lights that any automation can use. Pick the two indicators that matter most to you, one per LED: two automations writing the same LED overwrite each other.
| Indicator | LED in the example | Colour |
|---|---|---|
| Front door open | D2 | Red |
| Washing machine finished | D3 | Cyan, until you touch the ear |
| Rain in the next hours | D3, instead of the washing machine | Blue |
Front door open¶
automation:
- alias: "PlancH: D2 red while the front door is open"
triggers:
- trigger: state
entity_id: binary_sensor.front_door
actions:
- if:
- condition: state
entity_id: binary_sensor.front_door
state: "on"
then:
- action: light.turn_on
target:
entity_id: light.planch_status_led_2
data:
rgb_color: [255, 0, 0]
brightness_pct: 40
else:
- action: light.turn_off
target:
entity_id: light.planch_status_led_2
Washing machine finished¶
With a smart plug that measures power (sensor.washing_machine_power): when the power stays
low for a few minutes the cycle is over. Touching the ear of the panel clears the LED.
automation:
- alias: "PlancH: washing machine finished"
triggers:
- trigger: numeric_state
entity_id: sensor.washing_machine_power
below: 3
for: "00:03:00"
actions:
- action: light.turn_on
target:
entity_id: light.planch_status_led_3
data:
rgb_color: [0, 255, 220]
brightness_pct: 40
- alias: "PlancH: touch clears the washing machine LED"
triggers:
- trigger: state
entity_id: binary_sensor.planch_touch
to: "on"
actions:
- action: light.turn_off
target:
entity_id: light.planch_status_led_3
The first automation may also fire when the plug comes back after a power cut; add a condition on the power being above a few watts some minutes before if that bothers you.
Rain in the next hours¶
Checks the hourly forecast every 30 minutes (weather.home is the default weather integration):
automation:
- alias: "PlancH: D3 blue if rain is coming"
triggers:
- trigger: time_pattern
minutes: "/30"
actions:
- action: weather.get_forecasts
target:
entity_id: weather.home
data:
type: hourly
response_variable: forecast
- if:
- condition: template
value_template: >-
{{ forecast['weather.home'].forecast[:3]
| selectattr('condition', 'in', ['rainy', 'pouring', 'lightning-rainy', 'snowy-rainy'])
| list | count > 0 }}
then:
- action: light.turn_on
target:
entity_id: light.planch_status_led_3
data:
rgb_color: [0, 60, 255]
brightness_pct: 40
else:
- action: light.turn_off
target:
entity_id: light.planch_status_led_3