Skip to content

Instantly share code, notes, and snippets.

@JarbasAl
Last active October 29, 2023 23:43
Show Gist options
  • Select an option

  • Save JarbasAl/df4cb3c8e1dbd2f17427c50ce83c155c to your computer and use it in GitHub Desktop.

Select an option

Save JarbasAl/df4cb3c8e1dbd2f17427c50ce83c155c to your computer and use it in GitHub Desktop.
occupancy.md

House Tree View

     WC da Dii
       |
 Escritorio da Dii
       |
    Marquise
       |
    Cozinha 
       |       
    Corredor 1
      __________     Outside
      |        |       |
      Sala    Corredor 2
        ;     ________________
        ;     |     |        |
        ManCave  Escritorio  Corredor 3
                             _____________________
                             |      |            |
                             Quarto Quarto Hugo  WC

Occupancy

in home assistant create a sensor for each room in the config file

  - trigger:
    - platform: event
      event_type: people_XXX_update
    binary_sensor:
      - name: "people_in_XXX"
        state: "{{ trigger.event.data.state }}"
        device_class: "occupancy"

` imagem

PIR based occupancy detection

create automations to set the state of sensors created above, by emitting a event

event: people_XXX_update
event_data:
  state: "on"
event: people_XXX_update
event_data:
  state: "off"

imagem

PIR sensor automations overview

     WC da Dii <- people_wc_dii_update:ON + people_escritorio_dii_update:OFF
        |
 Escritorio da Dii <- people_escritorio_dii_update:ON + people_wc_dii_update:OFF + people_marquise_update:OFF
        |
    Marquise  <- people_marquise_update:ON + people_escritorio_dii_update:OFF + people_kitchen_update:OFF
        |
    Cozinha <- people_kitchen_update:ON + people_marquise_update:OFF
       |
   Corredor 1   <- people_sala_update:OFF + people_kitchen_update:OFF
   |        |
 Sala       |   <- people_sala_update:ON
       Corredor 2 <- people_mancave_update:OFF + people_escritorio_update:OFF
        |     |      |
  ManCave     |      | <- people_mancave_update:ON
        Escritorio   | <- people_escritorio_update:ON
                     Corredor 3 <- people_wc_update:OFF + people_quarto_update:OFF + people_quarto_hugo_update:OFF
                       |  |     |
                      WC  |     | <- people_wc_update:ON
                         Quarto |  <- people_quarto_update:ON
                                Quarto Hugo <- people_quarto_hugo_update:ON

Extra occupancy sensor triggers -> people_XXX_update:ON

  • window state changes
  • light turned on
  • closet door open
  • electrodomestic usage detected (coffee machine, microwave, fridge door...)
  • media playback detected (chromecast, spotify...)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment