Automete

A smart light could be more than just on or off

Choose an Appliance

A not automated Light

Default state is off

Final states

  • Forced on
  • Forced off
  • On
  • Off
  • Alarmed (potentially blinking)
A light which reacts to the following events
  • Forced event: a user turned on/off the light.
    • On: the system will never un-force a forced on light.
    • Off: the system will never un-force a forced off light, which is in a off state since off is the default state.

A zone Light

Default state is off

Final states

  • Forced on
  • Forced off
  • On
  • Off
  • Alarmed (potentially blinking)
A light which reacts to the following events
  • Forced event: a user turned on/off the light.
    • On: the system will un-force a forced on light only if in the light zone the brightness is high or the alarm system in the light zone has been turned on.
    • Off: the system could turn on a forced off light when any of the following events arrive. The user could not force off an armed light.
  • Courtesy event: someone is/is not near the light zone.
    • On: the system turns the light on, as a courtesy, if the sun brightness in the light zone is very low. The system puts the light in an alarmed state if the alarm in the light zone was armed.
    • Off: the system turns the light off only if there is nobody both near the zone light and in the zone light and the light was not forced on.
  • Presence event: someone is/is not in the light zone.
    • On: the system turns the light on if the brightness in the light zone is very low. The system puts the light in an alarmed state if the alarm in the light zone was armed.
    • Off: the system turns the light off if the light is not alarmed or forced on.
  • Alarm armed event: the alarm is/is not armed in the light zone.
    • On: the system turns the light off even if it was forced on since no one should be in that zone.
    • Off: the system will turn the light off if it were turned on by a the triggered alarm.
  • Sun brightness event: the sun brightness in the light zone is very low/low/high.
    • High: the system will turn the light off even if it was forced on.
    • Very low: the system will turn on the light in the above cases.

A garden zone Light

Default state is off

Final states

  • Forced on
  • Forced off
  • On
  • Off
  • Alarmed (potentially blinking)
A light which reacts to the following events
  • Forced event: a user turned on/off the light.
    • On: the system will un-force a forced on light only if the sun brightness is high or the alarm system has been turned on.
    • Off: the system could turn on a forced off light when any of the following events arrive. The user could not force off an armed light.
  • Sun cycle event: sun set/rised.
    • Set: the system turns the light on to make the garden more welcoming.
    • Rise: the system will do nothing.
  • Presence event: someone is/is not in the garden light zone.
    • On: the system turns the light on if the sun brightness is very low. The system puts the light in an alarmed state if the alarm in the garden light zone was armed.
    • Off: the system turns the light off if the light is not alarmed or forced on and the sun is not set.
  • Alarm armed event: the alarm is/is not armed in the garden light zone.
    • On: the system turns the light off even if it was forced on since no one should be in that zone unless the sun was set.
    • Off: the system will turn the light off if it were turned on by a the triggered alarm.
  • Sun brightness event: the sun brightness in the light zone is very low/low/high.
    • High: the system will turn the light off even if it was forced on.
    • Very low: the system will turn on the light in the above cases.

Yaml

light.Appliance

!Appliances
  My lights:
    - !light.Appliance {name: "a simple not automated light", events: []}
                

light.zone.Appliance

!Appliances
  My lights:
    - !light.zone.Appliance {name: "a zone light", events: []}
                

light.zone.garden.Light

!Appliances
  My lights:
    - !light.zone.garden.Light {name: "a zone garden light", events: []}
                

Editor

Connect the Appliance

To one or more physical devices

Yaml

KNX

A KNX switch

-!Performer
 name: "trigger forced on/forced off"
 for appliance: "a simple not automated light"
 commands: []
 triggers:
 - !knx_plugin.trigger.dpt_switch.On
   addresses: [ 0x1111, 0x1112 ]
   events: !home.appliance.light.event.forced.Event.On
 - !knx_plugin.trigger.dpt_switch.Off
   addresses: [ 0x1111, 0x1112 ]
   events: !home.appliance.light.event.forced.Event.Off
                    

Lifx

A Lifx bulb

-!Performer
 name: "command on/off/pulse zone light"
 for appliance: "a zone light"
 commands:
 - !lifx_plugin.command.state.OnOff {addresses: [["172.31.10.245", 56700]]}
 - !lifx_plugin.command.state.Pulse {addresses: [["172.31.10.245", 56700]]}

-!Performer
 name: "trigger forced on/forced off"
 for appliance: "a zone light"
 commands: []
 triggers:
 - !lifx_plugin.trigger.state.On
      addresses: [["172.31.10.245", 56700]]
      events: !home.appliance.light.event.forced.Event.On
 - !lifx_plugin.trigger.state.Off
      addresses: [["172.31.10.245", 56700]]
      events: !home.appliance.light.event.forced.Event.Off
                

Both KNX and Lifx

A Lifx bulb connected behind a KNX switch

-!Performer
 name: "command on/off/pulse zone garden light"
 for appliance: "a zone garden light"
 commands:
 - !knx_plugin.command.dpt_switch.OnOff {addresses: [ 0x1111, ]}
 - !lifx_plugin.command.state.Pulse {addresses: [["172.31.10.245", 56700]]}

-!Performer
 name: "trigger forced on/forced off"
 for appliance: "a simple not automated light"
 commands: []
 triggers:
 - !knx_plugin.trigger.dpt_switch.On
   addresses: [ 0x1111, 0x1112 ]
   events: !home.appliance.light.event.forced.Event.On
 - !knx_plugin.trigger.dpt_switch.Off
   addresses: [ 0x1111, 0x1112 ]
   events: !home.appliance.light.event.forced.Event.Off
                

Editor

Automate the Appliance

Customize how to got the Events

Yaml

No events

Is not automated

Presence Events

Got immediately a Presence On Event from a KNX motion sensor

!Performer
 name: "trigger motion from motion sensor X"
 for appliance: "motion sensor X"
 commands: []
 triggers:
 - !knx_plugin.trigger.dpt_switch.On
   addresses: [ 0x2222 ]
   events:

!protocol.Trigger
  name: "send presence event from motion sensor X"
  notify more events:
    - !home.event.presence.Event.On
  when triggered performers: "trigger motion from motion sensor X"

!schedule
 trigger: "send presence event from motion sensor X"
 for performers: "command on/off/pulse zone light"
                                

Got a Presence Off Event from a KNX motion sensor 30 seconds later

!Performer
 name: "trigger no motion from motion sensor X"
 for appliance: "motion sensor X"
 commands: []
 triggers:
 - !knx_plugin.trigger.dpt_switch.Off
   addresses: [ 0x2222 ]
   events:

!protocol.delay.Trigger
  name: "send no more presence event from motion sensor X"
  notify more events:
    - !home.event.presence.Event.Off
  when triggered performers: "trigger no motion from motion sensor X"
  and timeout expires: 30

!schedule
 trigger: "send no more presence event from motion sensor X"
 for performers: "command on/off/pulse zone light"
                                

Sun Brightness Events

Got immediately a change in brightness from an Home Assistant sensor

!Performer
 name: "trigger sun brightness change"
 for appliance: "luxmeter"
 commands: []
 triggers:
 - !home_assistant_plugin.service.sensor.float.trigger.Always {entity_id: "sensor.sun_brightness"}

!protocol.mean.GreaterThan
 name: "send sun brightness is high"
 notify more events:
 - !home.event.sun.brightness.Event.Bright
 when triggered performers: "trigger sun brightness change"
 num of samples: 1
 hit value: 15000
 timeout seconds: 60

!protocol.mean.LesserThan
 name: "send sun brightness is very low"
 notify more events:
 - !home.event.sun.brightness.Event.DeepDark
 when triggered performers: "trigger sun brightness change"
 num of samples: 1
 hit value: 2000
 timeout seconds: 60

!protocol.mean.InBetween
 name: "send sun brightness is low"
 notify more events:
 - !home.event.sun.brightness.Event.Dark
 when triggered performers: "trigger sun brightness change"
 num of samples: 1
 min value: 5000
 max value: 10000
 timeout seconds: 60

!schedule
 trigger: "send sun brightness is high"
 for performers: "comando on/off/pulse zone garden light"
!schedule
 trigger: "send sun brightness is very low"
 for performers: "comando on/off/pulse zone garden light"
!schedule
 trigger: "send sun brightness is low"
 for performers: "comando on/off/pulse zone garden light"
                

Editor

Got a brand new informative interface

Because a smart light could be more than just on or off