infra:deurbel

TDvenlo Deurbel

Deze pagina heeft een update nodig naar de huidige situatie. Zie de punten onderaan bij gewenste aanpassingen

Opzet 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-beta.6.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.

updating can be done at:

http://tdvenlodeurbel/update

The doorbell has 3 buttons 1 button for Daelzicht, 1 button for Pl3k and 1 button for Hackerspace TDVenlo. Hackerspace TDVenlo utilizes a few extra features with their doorbell button.

  • All 3 the buttons have a blue light indicating that the button got pressed.
  • TDVenlo also utilizes a space state in their button which shows quickly after the blue light showing “Green” for space state open and “Red” for space state closed.
  • After a few seconds a purple ligth should also light up to indicate that a receiving device has made sound inside the hackerspace to indicate that somebody pressed the doorbell. This purple light might flash multiple times and does not flash for every device that made sound. Only devices which send this message actively will show the purple light.

Video of the hackerspace TDVenlo doorbell functionality where it's functionality with a open space state (Green LED Response), and a few seconds later a closed spacestate (Red LED Response) can be seen. The doorbell shows a purple LED twice after showing the spacestate. this means 2 listening devices played a sound in the TDVenlo space.

Pl3k and Daelzicht show a blue light as response if the button got pressed to notify you pressed as can be seen in the video below.

The doorbell hosts a lightweight webserver which can be extended to perform some standalone functionality.

OTA is supported by uploading a .hex file with firmware into the webserver. The ESP32 will download this file and restart with the new firmware.

BE AWARE IF YOU MESS UP THE OTA FUNCTIONALITY YOU CANNOT FIX IT OTA

doorbell webserver

http://tdvenlodeurbel

doorbel OTA webserver

http://tdvenlodeurbel/update

for this a username “hacker” and the password is required

doorbellreceiver1 webserver

http://tdvenlodeurbelontvanger1

doorbelreceiver1 OTA webserver

http://tdvenlodeurbelontvanger1/update

for this a username “hacker” and the password is required

doorbellreceiver2 webserver

http://tdvenlodeurbelontvanger2

doorbelreceiver2 OTA webserver

http://tdvenlodeurbelontvanger2/update

for this a username “hacker” and the password is required

doorbellreceiver plek3 webserver

http://deurbelontvangerplek3

doorbelreceiver plek3 OTA webserver

http://deurbelontvangerplek3/update

for this a username “hacker” and the password is required

dooreblreceiver solerringroom OTA webserver

http://deurbelontvangersoldeerruimte/update

for this a username “hacker” and the password is required.

Ondertussen ziet de deurbel unit er niet meer zo uit als hier beschreven. Ook is het luchtkwaliteitsmonitoring project toegevoegd aan de behuizing. Waardoor de behuizing nu propvol zit. Hieronder een paar voorstellen om de deurbel behuizing bij het trapgat van de bibliotheek weer netjes te krijgen.

  • Verminder het aantal 5V adapters naar een USB lader met 5 uitgangen. Dit opend mogelijkheden om de 2e stekkerdoos te verwijderen of te vervangen door een 230V 3-weg splitter.
  • Tie wrap alles goed vast naar een verstandinge layout. Zodat niet meer de inhoud op je neervalt als de deur van de enclosure opent.
  • Repareer de houten behuizingen die met de lasersnijder zijn gemaakt. Ondertussen heeft de lijm losgelaten en vallen ze uit elkaar.
  • Verwijder overlengtes van kabels.
  • Integreer de meetstations van “Gezonde Ruimtes” van Gert-Jan qua voeding en aansluiting.
  • Vervang de speakers door een editie die via USB van voeding word voorzien. Of kleine speakers die via een JQ6500 bordje worden aangestuurd. (zie voorbeeld hier: https://gitlab.com/jhaand/house2/-/blob/main/electrical/CIRC_audio_board.pdf?ref_type=heads)
  • Upgrade de Linksys router naar een OpenWRT variant.
  • Maak het mogelijk om de unit voor de deur makkelijk te resetten. Hetzij via een resetknop of het correct labelen van de voeding hiervan.
  • Zorg dat er een sleutel van de behuizing ergens beschikbaar ligt.
  • Addresseer de Gitlab issues #1, #2 en #3 van de software. http://gitlab.ald-weishoes.lan/jelle/tdvenlodeurbel/-/issues

Dit moet anders:

The following devices are linked to the doorbell:

  • infra/deurbel.txt
  • Last modified: 08/01/2025 21:23
  • by jellestappers