infra:deurbel

TDvenlo Deurbel

TDvenlo beschikt over een deurbel in de vorm van een ESP32 met een drukknop. De ESP32 is verbonden via MQTT met het TDvenlo netwerk. Voor het genereren van een signaal op het juiste topic dient het volgende ingesteld te zijn:

  • Mqtt server: automation.ald-weishoes.lan
  • Mqtt port: 1883
  • topic: toegangscontrole/voordeur/deurbel
  • Wifi verbinding met de bekende TDvenlo wifi credentials

de status van de deurbel kan gecontroleerd worden in de mqtt explorer. Run het volgende commando in de terminal om de explorer te starten en verbind met de mqtt server

/misc/shared/appimages/MQTT-Explorer-0.4.0-beta1.AppImage

controleer hier /toegangscontrole/voordeur/deurbel 0 betekent niet gedrukt, alles hoger dan 0 betekent dat de deurbel is gegaan. Op dit moment van schrijven is er nog geen reset of functie die iets doet met het optellen van het aantal deurbel drukken.

Het afspelen van het geluid gebeurt op noise@musicbox d.m.v. een shell script en een service om dit shellscript te starten.

Het shellscript deurbelmqtt.sh:

  #!/bin/bash
  # This script subscribes to a MQTT topic using mosquitto_sub.
  # On each message received, you can execute whatever you want.
  while true  # Keep an infinite loop to reconnect when connection lost/broker un>
  do
  mosquitto_sub -h "automation.ald-weishoes.lan" -t "toegangscontrole/voordeu>
  do
      # Here is the callback to execute whenever you receive a message:
      echo "Rx MQTT: ${payload}"
      if [ $payload -ge 1 ]
      then
              /usr/bin/mplayer /home/noise/music/Doorbell-old-tring.ogg.mp3 ->
      fi
  done
  sleep 10  # Wait 10 seconds until reconnection
  done # &  # Discomment the & to run in background (but you should rather run TH>
  
  

Om dit shellscript uit te voeren is mosquitto_clients benodigd:

  sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa
  sudo apt-get update
  sudo apt-get install mosquitto_clients

De service die aangemaakt is is te vinden onder

nano /etc/systemd/system/deurbel.service

deze service bevat het volgende script:

  [Unit]
  Description=TDVenloDeurbel
  [Service]
  User=noise
  ExecStart=/home/noise/deurbelmqtt.sh
  [Install]
  RequiredBy=multi-user.target
  

Ideeën voor de behuizing die buiten komt te hangen.

Ron:
Een standaard waterdichte behuizing kiezen en daarop een van achteren gegraveerde plexiglas plaat op plakken/schroeven. De knoppen gaan door de behuizing en plexiglas plaat heen. De teksten die bij de knoppen horen zijn aan de achterkant van de plexiglas plaat gegraveerd en gevuld met verf. Zo creëer je een professioneel ogende frontplaat die ongevoelig is voor krassen. Zie hieronder een voorbeeld op youtube:

Jelle:
Er zijn al een aantal versies deurbelbehuizing gemaakt, waarvan V1 slechts een prototype was als concept. V2 was bedoeld als buitenbehuizing maar niet robuust genoeg, en te weinig interactie bevonden. In V3 is een standaard EATON behuizing gebruikt met 3 drukknoppen. Hierin is de standaard 230V led uitgeboord naar een 8mm gat waarin een through hole 8mm WS2811 Led voor in de plaats is gezet. hierdoor kan elke knop veel licht geven en elke mogelijke kleur maken.

foto deurbelbehuizng V1:

foto deurbelbehuizing V2:

foto deubelbehuizing V3 uit en met RGB leds actief:

Schema van de aansluiting van de esp32, 3 drukschakelaars, 3 RGB WS2812 8mm through hole leds en esp32 Wroom.

The code can be found on: http://gitlab.ald-weishoes.lan/jelle/tdvenlodeurbel Log in with your credentials and you will be able to see the project. The project can only be seen by members of TDvenlo.

  • infra/deurbel.txt
  • Last modified: 16/03/2022 23:17
  • by jellestappers