Abertura do portão com presença de uma viatura

Tema

Abertura do portão automático com a presença de uma viatura

Resumo

Este projeto surgiu porque já algum tempo que gostava de poder abrir o portão pela geofencing mas esta quase nunca ou mesmo nunca funcionava em tempo útil de utilização. Ou abria muito cedo ou então tarde de mais.

Descrição

Este projeto consiste em ter um wemos D1 mini pro (escolhi o pro porque posso usar antena para um melhor alcance de sinal WI-FI) dentro da viatura, que este mesmo wemos é programado com um código de Arduíno e que comunica por mqtt ao home assintant. Para poderem usar o wemos D1 mini pro é necessário fazer uma pequena alteração para poderem usar a antena externa que deixo documentado em fotos. Para este projeto uso algumas variáveis para fazer despoletar a Acão como por exemplo Bluetooth, presenças e ausencias, e o proprio estado do portão. Então para alem do wemos uso também um roidmi bluetooth da xiaomi para prevenir faltos triggers e também a app do home assistant para poder fazer a comunicação ao servidor das variaveis. Ou seja, quando estou em casa e vou sair o portão só abre se essas condições estiverem em conformidade que é o telemóvel estar ligado ao roidmi, o wemos ligado a net e a comunicar por mqtt ao HA e eu estar em casa. E porquê usar um bluetooth? Porque se quiser apenas tirar o carro da garagem para lavar por exemplo ou fazer algo mais, basta desligar o bluetooth do telemóvel para o portão não abrir. Na chegada basicamente o sistema de despoletar o flow é o mesmo. Bluetooth ligado, eu em estado de ausencia e quando o wemos se liga a net essa ação é despoletada. E como tenho necessidade de sair a pé e para não ter necessidade de andar com comandos a trás de mim e como o smartphone anda sempre comigo decidi usar umas tags para abrir o portão. Essas tags foram colocadas em posições estratégicas para se poder abrir o portão como vão poder ver nas fotos em baixo. De salientar que a abertura demora ainda 3 ou 4 segundos devido a fraca cobertura no exterior, brevemente irei meter um ap no exterior para anular essa espera e quando esteja já em frente ao portão ele esteja já praticamente aberto. E como o wemos também faz tracking mas não queria deixar sempre ligado para não comprometer a bateria da viatura tive de fazer um work arround que tem funcionado bem até ao momento, está tudo no código partilhado.

- (**Fotos**) 

Esta é a alteração que vais ter de fazer para teres a antena externa operacional

Nesta foto já temos o wemos pronto para usar a antena externa

Aqui podem ver as tags na placa da rua

E aqui atras do vidro do interruptor da sonoff

Como ainda não sei como colocar o wemos no carro está provisoriamente assim. Aceito sugestões

- (**Código**)

O código que eu usei para flashar o wemos podem encontrar neste site: https://github.com/aderusha/MQTTCarPresence
Aqui têm todo o processo de flashar o wemos d1 mini pro
Só precisam de alterar os vossos dados do wi-fi e broker do mqtt. Podem também dar um nome a entidade que vai aparecer no mqtt que no meu caso escolhi “Passat”.
- (Configuração)
Para este projeto usei código yaml e node red.


###############################################################################
#                                                                             #
#                       I N P U T _ B O O L E A N                             #
#                                                                             #
############################################################################### 
input_boolean:

  home_not_home_passat:
    name: Presença Passat

###############################################################################
#                                                                             #
#                               S E N S O R                                   #
#                                                                             #
############################################################################### 
sensor:
  - platform: template
    sensors:
      portao_estado:
        friendly_name: "Estado do portão"
        value_template: >-
          {% if is_state('binary_sensor.portao_entrada', 'on') %}
            A abrir
          {% else %}
            Fechado
          {% endif %}

  - platform: template
    sensors:
      device_tracker_vwpassat:
        friendly_name: "Device VW Passat"
        value_template: >-
          {% if is_state('input_boolean.home_not_home_passat', 'on') %}
            Em Casa
          {% else %}
            Ausente
          {% endif %}

  - platform: template
    sensors:
      carro_bluetooth:
        friendly_name: 'Carro Bluetooth'
        value_template: >
          {%- if states.sensor.poco_f2_pro_ligacao_bluetooth.attributes.connected_paired_devices == "[4D:49:70:00:25:B3]" %}
            Bruno
          {% else %}
            Desligado
          {%- endif %}

Vou deixar aqui também uma Blueprint que não é da minha autoria mas que podem encontrar no github que partilhei mais a cima.

blueprint:
  name: MQTTCarPresence
  description: Open garage door when car connects to Wi-Fi
  domain: automation
  input:
    garage_door:
      name: Garage Door Cover
      description: This cover is the Garage Door
      selector:
        entity:
          domain: cover
    car_presence:
      name: Car Presence Sensor
      description: "This sensor is the car's connection to the MQTT broker"
      selector:
        entity:
          domain: binary_sensor
mode: single
trigger:
  - platform: state
    entity_id: !input car_presence
    to: 'on'
  - platform: state
    entity_id: !input car_presence
    to: 'off'
    for:
      minutes: 1
condition: []
action:
  - choose:
      - conditions:
          - condition: state
            entity_id: !input car_presence
            state: 'on'
          - condition: state
            entity_id: !input garage_door
            state: closed
        sequence:
          - service: cover.open_cover
            entity_id: !input garage_door
      - conditions:
          - condition: state
            entity_id: !input car_presence
            state: 'off'
          - condition: state
            entity_id: !input garage_door
            state: open
        sequence:
          - service: cover.close_cover
            entity_id: !input garage_door
    default: []

[{"id":"1d55cda2.6dc162","type":"tab","label":"Flow 2","disabled":false,"info":""},{"id":"bec29a8e.28d378","type":"server-events","z":"1d55cda2.6dc162","name":"Tags","server":"e461daef.3d6cc8","event_type":"tag_scanned","exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"waitForRunning":true,"x":70,"y":100,"wires":[["2c84271e.f9bf78"]]},{"id":"2c84271e.f9bf78","type":"switch","z":"1d55cda2.6dc162","name":"Tags Filter","property":"payload.event.tag_id","propertyType":"msg","rules":[{"t":"cont","v":"821ebaee-4f3b-4c79-848e-692d97a378bb","vt":"str"},{"t":"cont","v":"477bb4f9-9fa2-408a-9e29-c77cfc0b1403","vt":"str"},{"t":"cont","v":"73eed1ad-aeb0-4cb2-a4e1-247dd47e67fd","vt":"str"},{"t":"cont","v":"f1935fb1-5459-49bc-976f-086b3870fef0","vt":"str"}],"checkall":"false","repair":false,"outputs":4,"x":210,"y":100,"wires":[["a1eb3467.b99678"],["68afabcc.194ca4"],["16cff5bf.ff4d5a"],["e4d7ff35.8a64e"]],"outputLabels":["Portão pequeno","Portão grande","Portão pequeno dentro","Portão grande dentro"]},{"id":"a1eb3467.b99678","type":"api-call-service","z":"1d55cda2.6dc162","name":"Abre portão pequeno exterior","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.abrir_portao_pequeno","data":"","dataType":"jsonata","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":480,"y":20,"wires":[["876e857b.c6cbe8"]]},{"id":"68afabcc.194ca4","type":"api-call-service","z":"1d55cda2.6dc162","name":"Abre portão grande exterior","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.abrir_portao_grande","data":"","dataType":"jsonata","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":480,"y":80,"wires":[["7ff8055d.a3c82c"]]},{"id":"16cff5bf.ff4d5a","type":"api-call-service","z":"1d55cda2.6dc162","name":"Abre portão pequeno garagem","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.abrir_portao_pequeno","data":"","dataType":"jsonata","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":490,"y":140,"wires":[["876e857b.c6cbe8"]]},{"id":"e4d7ff35.8a64e","type":"api-call-service","z":"1d55cda2.6dc162","name":"Abre portão grande garagem","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.abrir_portao_grande","data":"","dataType":"jsonata","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":480,"y":200,"wires":[["7ff8055d.a3c82c"]]},{"id":"5fa4f35c.195ccc","type":"api-current-state","z":"1d55cda2.6dc162","name":"not disturb","server":"e461daef.3d6cc8","version":1,"outputs":2,"halt_if":"off","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"sensor.poco_f2_pro_do_not_disturb_sensor","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":650,"y":320,"wires":[["2c28e12f.8b38ee"],[]]},{"id":"2c28e12f.8b38ee","type":"api-render-template","z":"1d55cda2.6dc162","name":"template","server":"e461daef.3d6cc8","template":"Bluetooth está ligado","resultsLocation":"payload","resultsLocationType":"msg","templateLocation":"template","templateLocationType":"msg","x":820,"y":320,"wires":[["a24969a3.e83ac8"]]},{"id":"a24969a3.e83ac8","type":"api-call-service","z":"1d55cda2.6dc162","name":"TTS Pocophone","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"notify","service":"mobile_app_poco_f2_pro","entityId":"","data":"{\"message\":\"TTS\",\"title\":\"{{payload}}\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":1000,"y":320,"wires":[[]]},{"id":"d2e3507.92c6eb","type":"server-state-changed","z":"1d55cda2.6dc162","name":"Roidmi on","server":"e461daef.3d6cc8","version":1,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"sensor.carro_bluetooth","entityidfiltertype":"exact","outputinitially":false,"state_type":"str","haltifstate":"Bruno","halt_if_type":"str","halt_if_compare":"is","outputs":2,"output_only_on_state_change":true,"for":0,"forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"x":80,"y":360,"wires":[["27905861.f26b08","e07e17c7.608458"],[]]},{"id":"8acbf04b.cf2ac","type":"comment","z":"1d55cda2.6dc162","name":"Notificações de voz qunado passat e bluetooth Ligados","info":"","x":530,"y":260,"wires":[]},{"id":"9dd75e34.c7d9f","type":"comment","z":"1d55cda2.6dc162","name":"Abre portão quando todas as condições forem reunidas","info":"","x":640,"y":540,"wires":[]},{"id":"27905861.f26b08","type":"delay","z":"1d55cda2.6dc162","name":"","pauseType":"delay","timeout":"2","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":240,"y":320,"wires":[["2e46e53.87ae91a"]]},{"id":"ea182aa0.d4cb88","type":"server-state-changed","z":"1d55cda2.6dc162","name":"sensor bluetooth","server":"e461daef.3d6cc8","version":1,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"sensor.carro_bluetooth","entityidfiltertype":"substring","outputinitially":false,"state_type":"str","haltifstate":"Bruno","halt_if_type":"str","halt_if_compare":"is","outputs":2,"output_only_on_state_change":false,"for":"","forType":"num","forUnits":"seconds","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"x":100,"y":700,"wires":[["862a0fd5.fbe74"],[]]},{"id":"a93312c9.ccdad","type":"api-current-state","z":"1d55cda2.6dc162","name":"portão fechado?","server":"e461daef.3d6cc8","version":1,"outputs":2,"halt_if":"off","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"binary_sensor.portao_entrada","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":1160,"y":680,"wires":[["a7676fbe.97894"],[]]},{"id":"d14b3924.eef6a8","type":"api-current-state","z":"1d55cda2.6dc162","name":"Bruno em casa?","server":"e461daef.3d6cc8","version":1,"outputs":2,"halt_if":"home","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"person.bruno","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":980,"y":680,"wires":[["a93312c9.ccdad"],[]]},{"id":"a7676fbe.97894","type":"api-call-service","z":"1d55cda2.6dc162","name":"abre portão","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.abrir_portao_grande","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":1330,"y":680,"wires":[["2a87a581.3f302a","e2e018a.d517ce8"]]},{"id":"a9fcf1bf.f73b4","type":"api-render-template","z":"1d55cda2.6dc162","name":"template","server":"e461daef.3d6cc8","template":"Todas as condições estão reunidas. O portão está {{ states('sensor.portao_estado') }}, boa Viagem","resultsLocation":"payload","resultsLocationType":"msg","templateLocation":"template","templateLocationType":"msg","x":1620,"y":620,"wires":[["434ffa9c.6577f4"]]},{"id":"434ffa9c.6577f4","type":"api-call-service","z":"1d55cda2.6dc162","name":"TTS Pocophone","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"notify","service":"mobile_app_poco_f2_pro","entityId":"","data":"{\"message\":\"TTS\",\"title\":\"{{payload}}\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":1800,"y":620,"wires":[[]]},{"id":"2a87a581.3f302a","type":"delay","z":"1d55cda2.6dc162","name":"","pauseType":"delay","timeout":"3","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":1480,"y":620,"wires":[["a9fcf1bf.f73b4"]]},{"id":"698c1a01.1f57c4","type":"time-range-switch","z":"1d55cda2.6dc162","name":"","lat":"lat","lon":"-long","startTime":"10:00","endTime":"06:00","startOffset":0,"endOffset":0,"x":470,"y":740,"wires":[["b8a7d7da.838b58"],[]]},{"id":"966b095.d0f65f8","type":"time-range-switch","z":"1d55cda2.6dc162","name":"","lat":"lat","lon":"-lon","startTime":"06:00","endTime":"10:00","startOffset":0,"endOffset":0,"x":470,"y":680,"wires":[["87f17093.6246"],[]]},{"id":"cfed2b5e.3f7648","type":"api-current-state","z":"1d55cda2.6dc162","name":"portão fechado?","server":"e461daef.3d6cc8","version":1,"outputs":2,"halt_if":"off","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"binary_sensor.portao_entrada","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":840,"y":800,"wires":[["2c286dd6.1b0262"],[]]},{"id":"2c286dd6.1b0262","type":"api-call-service","z":"1d55cda2.6dc162","name":"abre portão","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.abrir_portao_grande","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":1010,"y":800,"wires":[["beafc6bb.1733e8","90225b6a.bf8168"]]},{"id":"beafc6bb.1733e8","type":"delay","z":"1d55cda2.6dc162","name":"","pauseType":"delay","timeout":"3","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":1180,"y":740,"wires":[["d9053e97.2cb3e"]]},{"id":"d9053e97.2cb3e","type":"api-render-template","z":"1d55cda2.6dc162","name":"template","server":"e461daef.3d6cc8","template":"Todas as condições estão reunidas. O portão está {{ states('sensor.portao_estado') }}, bem vindo a casa","resultsLocation":"payload","resultsLocationType":"msg","templateLocation":"template","templateLocationType":"msg","x":1320,"y":740,"wires":[["115e72ee.d813cd"]]},{"id":"115e72ee.d813cd","type":"api-call-service","z":"1d55cda2.6dc162","name":"TTS Pocophone","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"notify","service":"mobile_app_poco_f2_pro","entityId":"","data":"{\"message\":\"TTS\",\"title\":\"{{payload}}\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":1500,"y":740,"wires":[[]]},{"id":"7115d773.2ce868","type":"api-call-service","z":"1d55cda2.6dc162","name":"Passat home","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"input_boolean","service":"turn_on","entityId":"input_boolean.home_not_home_passat","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":1630,"y":800,"wires":[[]]},{"id":"1a2d00f5.b2fd9f","type":"api-render-template","z":"1d55cda2.6dc162","name":"template","server":"e461daef.3d6cc8","template":"Portão pequeno está {{ states('sensor.portao_estado') }}","resultsLocation":"payload","resultsLocationType":"msg","templateLocation":"template","templateLocationType":"msg","x":940,"y":60,"wires":[["c6b06f5b.4a6a1"]]},{"id":"c6b06f5b.4a6a1","type":"api-call-service","z":"1d55cda2.6dc162","name":"TTS Pocophone","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"notify","service":"mobile_app_poco_f2_pro","entityId":"","data":"{\"message\":\"TTS\",\"title\":\"{{payload}}\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":1120,"y":60,"wires":[[]]},{"id":"d58ae012.5a38a","type":"api-call-service","z":"1d55cda2.6dc162","name":"TTS Pocophone","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"notify","service":"mobile_app_poco_f2_pro","entityId":"","data":"{\"message\":\"TTS\",\"title\":\"{{payload}}\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":1120,"y":140,"wires":[[]]},{"id":"2a9bcb45.0497a4","type":"api-current-state","z":"1d55cda2.6dc162","name":"Bruno ausente?","server":"e461daef.3d6cc8","version":1,"outputs":2,"halt_if":"not_home","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"person.bruno","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":660,"y":800,"wires":[["cfed2b5e.3f7648"],[]]},{"id":"13af942.d4b9b6c","type":"api-call-service","z":"1d55cda2.6dc162","name":"Passat not_home","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"input_boolean","service":"turn_off","entityId":"input_boolean.home_not_home_passat","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":1950,"y":680,"wires":[[]]},{"id":"2e46e53.87ae91a","type":"api-current-state","z":"1d55cda2.6dc162","name":"Bruno ausente?","server":"e461daef.3d6cc8","version":1,"outputs":2,"halt_if":"not_home","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"person.bruno","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":440,"y":320,"wires":[["5fa4f35c.195ccc"],[]]},{"id":"e07e17c7.608458","type":"api-current-state","z":"1d55cda2.6dc162","name":"Light off","server":"e461daef.3d6cc8","version":1,"outputs":2,"halt_if":"off","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"light.candeeiro_patio_1","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":240,"y":400,"wires":[["aaaa3a90.b5baa8"],["6e3f383f.4bda88"]]},{"id":"aaaa3a90.b5baa8","type":"api-call-service","z":"1d55cda2.6dc162","name":"","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"light","service":"turn_on","entityId":"light.candeeiro_patio_1","data":"","dataType":"jsonata","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":430,"y":380,"wires":[["bc47b9ed.6b1c38"]]},{"id":"bc47b9ed.6b1c38","type":"delay","z":"1d55cda2.6dc162","name":"","pauseType":"delay","timeout":"500","timeoutUnits":"milliseconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":630,"y":380,"wires":[["cd25b5b7.c35568"]]},{"id":"cd25b5b7.c35568","type":"api-call-service","z":"1d55cda2.6dc162","name":"","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"light","service":"turn_off","entityId":"light.candeeiro_patio_1","data":"","dataType":"jsonata","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":810,"y":380,"wires":[[]]},{"id":"6e3f383f.4bda88","type":"api-call-service","z":"1d55cda2.6dc162","name":"","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"light","service":"turn_off","entityId":"light.candeeiro_patio_1","data":"","dataType":"jsonata","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":430,"y":440,"wires":[["6cce8da0.3bd474"]]},{"id":"6cce8da0.3bd474","type":"delay","z":"1d55cda2.6dc162","name":"","pauseType":"delay","timeout":"500","timeoutUnits":"milliseconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":630,"y":440,"wires":[["560708aa.9771c8"]]},{"id":"560708aa.9771c8","type":"api-call-service","z":"1d55cda2.6dc162","name":"","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"light","service":"turn_on","entityId":"light.candeeiro_patio_1","data":"","dataType":"jsonata","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":810,"y":440,"wires":[[]]},{"id":"876e857b.c6cbe8","type":"delay","z":"1d55cda2.6dc162","name":"","pauseType":"delay","timeout":"2","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":780,"y":60,"wires":[["1a2d00f5.b2fd9f"]]},{"id":"7ff8055d.a3c82c","type":"delay","z":"1d55cda2.6dc162","name":"","pauseType":"delay","timeout":"2","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":780,"y":140,"wires":[["5afd9d45.7bc4c4"]]},{"id":"5afd9d45.7bc4c4","type":"api-render-template","z":"1d55cda2.6dc162","name":"template","server":"e461daef.3d6cc8","template":"Portão está {{ states('sensor.portao_estado') }}","resultsLocation":"payload","resultsLocationType":"msg","templateLocation":"template","templateLocationType":"msg","x":940,"y":140,"wires":[["d58ae012.5a38a"]]},{"id":"90225b6a.bf8168","type":"delay","z":"1d55cda2.6dc162","name":"","pauseType":"delay","timeout":"3","timeoutUnits":"minutes","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":1180,"y":800,"wires":[["d291af8c.08d8b"]]},{"id":"e2e018a.d517ce8","type":"delay","z":"1d55cda2.6dc162","name":"","pauseType":"delay","timeout":"3","timeoutUnits":"minutes","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":1480,"y":680,"wires":[["e138b55b.fa30d8"]]},{"id":"35879f57.e18dc","type":"telegrambot-notify","z":"1d55cda2.6dc162","name":"","bot":"c9fca3e7.707a2","chatId":"id","message":"","parseMode":"","x":2120,"y":740,"wires":[]},{"id":"89389965.98fc28","type":"telegrambot-notify","z":"1d55cda2.6dc162","name":"","bot":"a9657dfc.fbcbf","chatId":"id","message":"","parseMode":"","x":1820,"y":860,"wires":[]},{"id":"9e448846.595b88","type":"switch","z":"1d55cda2.6dc162","name":"","property":"payload","propertyType":"msg","rules":[{"t":"lte","v":"-75","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":1490,"y":800,"wires":[["7115d773.2ce868","76602b01.67bea4"]]},{"id":"d291af8c.08d8b","type":"api-current-state","z":"1d55cda2.6dc162","name":"Passat signal","server":"e461daef.3d6cc8","version":1,"outputs":1,"halt_if":"","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"sensor.passat_signal","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":1340,"y":800,"wires":[["9e448846.595b88"]]},{"id":"e138b55b.fa30d8","type":"api-current-state","z":"1d55cda2.6dc162","name":"Passat signal","server":"e461daef.3d6cc8","version":1,"outputs":1,"halt_if":"","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"sensor.passat_signal","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":1640,"y":680,"wires":[["9d259b5d.7c0b28"]]},{"id":"9d259b5d.7c0b28","type":"switch","z":"1d55cda2.6dc162","name":"","property":"payload","propertyType":"msg","rules":[{"t":"gte","v":"-76","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":1790,"y":680,"wires":[["13af942.d4b9b6c","6b2ac42f.047d3c"]]},{"id":"6b2ac42f.047d3c","type":"api-render-template","z":"1d55cda2.6dc162","name":"Passat ausente","server":"e461daef.3d6cc8","template":"Passat esta ausente, o sinal WI-FI é de {{ states('sensor.passat_signal') }}.","resultsLocation":"payload","resultsLocationType":"msg","templateLocation":"template","templateLocationType":"msg","x":1940,"y":740,"wires":[["35879f57.e18dc"]]},{"id":"76602b01.67bea4","type":"api-render-template","z":"1d55cda2.6dc162","name":"Passat presente","server":"e461daef.3d6cc8","template":"Passat esta em casa, o sinal WI-FI é de {{ states('sensor.passat_signal') }}.","resultsLocation":"payload","resultsLocationType":"msg","templateLocation":"template","templateLocationType":"msg","x":1640,"y":860,"wires":[["89389965.98fc28"]]},{"id":"1a8b1a10.696c16","type":"server-state-changed","z":"1d55cda2.6dc162","name":"Sensor passat","server":"e461daef.3d6cc8","version":1,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"binary_sensor.passat","entityidfiltertype":"substring","outputinitially":false,"state_type":"str","haltifstate":"on","halt_if_type":"str","halt_if_compare":"is","outputs":2,"output_only_on_state_change":false,"for":"","forType":"num","forUnits":"seconds","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"x":90,"y":760,"wires":[["48ae03a8.d601fc"],[]]},{"id":"862a0fd5.fbe74","type":"api-current-state","z":"1d55cda2.6dc162","name":"passat on?","server":"e461daef.3d6cc8","version":1,"outputs":2,"halt_if":"on","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"binary_sensor.passat","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":270,"y":700,"wires":[["698c1a01.1f57c4","966b095.d0f65f8","d248943a.5cb878"],[]]},{"id":"48ae03a8.d601fc","type":"api-current-state","z":"1d55cda2.6dc162","name":"Bluetooth on?","server":"e461daef.3d6cc8","version":1,"outputs":2,"halt_if":"Bruno","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"sensor.carro_bluetooth","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":260,"y":760,"wires":[["698c1a01.1f57c4","966b095.d0f65f8","d248943a.5cb878"],[]]},{"id":"87f17093.6246","type":"delay","z":"1d55cda2.6dc162","name":"","pauseType":"delay","timeout":"1","timeoutUnits":"minutes","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":620,"y":680,"wires":[["b8a7d7da.838b58"]]},{"id":"d248943a.5cb878","type":"api-current-state","z":"1d55cda2.6dc162","name":"Passat ausente?","server":"e461daef.3d6cc8","version":1,"outputs":2,"halt_if":"Ausente","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"sensor.device_tracker_vwpassat","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":470,"y":800,"wires":[["2a9bcb45.0497a4"],[]]},{"id":"b8a7d7da.838b58","type":"api-current-state","z":"1d55cda2.6dc162","name":"Passat em casa?","server":"e461daef.3d6cc8","version":1,"outputs":2,"halt_if":"Em Casa","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"sensor.device_tracker_vwpassat","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":790,"y":680,"wires":[["d14b3924.eef6a8"],[]]},{"id":"f1affb36.8f6b18","type":"server-state-changed","z":"1d55cda2.6dc162","name":"Person Bruno","server":"e461daef.3d6cc8","version":1,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"person.bruno","entityidfiltertype":"exact","outputinitially":false,"state_type":"str","haltifstate":"home","halt_if_type":"str","halt_if_compare":"is","outputs":2,"output_only_on_state_change":true,"for":"3","forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"x":90,"y":940,"wires":[["aacf446.9d0ffb8"],["aacf446.9d0ffb8"]],"outputLabels":["Home","Not home"]},{"id":"aacf446.9d0ffb8","type":"api-render-template","z":"1d55cda2.6dc162","name":"Passat ausente","server":"e461daef.3d6cc8","template":"Passat esta {{ states('sensor.device_tracker_vwpassat') }}, o sinal WI-FI é de {{ states('sensor.passat_signal') }}.","resultsLocation":"payload","resultsLocationType":"msg","templateLocation":"template","templateLocationType":"msg","x":320,"y":940,"wires":[["eaf56187.be187"]]},{"id":"eaf56187.be187","type":"telegrambot-switch","z":"1d55cda2.6dc162","name":"confirmar presenças","bot":"c9fca3e7.707a2","chatId":"id","question":"","answers":["Tudo ok","Passat ausente","Passat em casa"],"outputs":3,"autoAnswerCallback":true,"timeoutValue":"","timeoutUnits":"","x":520,"y":940,"wires":[[],["81401171.6dd06"],["d3c2e467.624078"]]},{"id":"d3c2e467.624078","type":"api-call-service","z":"1d55cda2.6dc162","name":"Passat home","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"input_boolean","service":"turn_on","entityId":"input_boolean.home_not_home_passat","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":730,"y":980,"wires":[[]]},{"id":"81401171.6dd06","type":"api-call-service","z":"1d55cda2.6dc162","name":"Passat not_home","server":"e461daef.3d6cc8","version":1,"debugenabled":false,"service_domain":"input_boolean","service":"turn_off","entityId":"input_boolean.home_not_home_passat","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":750,"y":900,"wires":[[]]},{"id":"64078a6d.a6a4a4","type":"telegrambot-command","z":"1d55cda2.6dc162","name":"Casa","bot":"c9fca3e7.707a2","command":"Passat","commandType":"str","commandCase":true,"x":70,"y":1000,"wires":[["aacf446.9d0ffb8"]]},{"id":"e461daef.3d6cc8","type":"server","name":"partilha","legacy":false,"addon":false,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true},{"id":"c9fca3e7.707a2","type":"telegrambot-config","botname":"partilha boot","usernames":"pnopnponpo","chatIds":"~pnoñpp","pollInterval":"300"},{"id":"a9657dfc.fbcbf","type":"telegrambot-config","botname":"Telegramboot","usernames":"","chatIds":"466334118","pollInterval":"300"}]

Lista de Material

Para este projeto usei entao wemos d1 mini pro (mas se tiverem boa cobertura de wifi no exterior da casa podem usar o wemos d1 mini)

As tags que usei foram umas autocolantes mas também poderão usar estas

O projeto está completo e vou agora deixar aqui um pequeno vídeo demonstrativo para voces poderem ver o conceito do meu projeto

PS: Posso depois se houver interesse da parte do pessoal criar o código yaml para quem não usa node red.


Copyright © 2017-2021. Todos os direitos reservados
CPHA.pt - info@cpha.pt


FAQ | Termos de Serviço/Regras | Política de Privacidade