Πίνακας περιεχομένων:

Smart Doorbell for HomeAssistant: 4 βήματα
Smart Doorbell for HomeAssistant: 4 βήματα

Βίντεο: Smart Doorbell for HomeAssistant: 4 βήματα

Βίντεο: Smart Doorbell for HomeAssistant: 4 βήματα
Βίντεο: WLED Ring | Solar Water Heater Temperatures 2024, Ιούλιος
Anonim
Smart Doorbell for HomeAssistant
Smart Doorbell for HomeAssistant

Έτσι, ήθελα ένα κουδούνι με τα ακόλουθα χαρακτηριστικά:

  • Βίντεο από την πόρτα
  • Αμφίδρομος ήχος
  • Δύο κουμπιά
  • Ενσωμάτωση με επιτοίχιο tablet που δείχνει το HomeAssistant UI

Μερικές επιλογές εμφανίστηκαν όπως το Doorbird (ακριβό και δεν έχουν αμφίδρομη ηχητική κλήση χρησιμοποιώντας HTML5) και κουδούνισμα κουδουνιού (αλλά δεν μου αρέσει μια συνδρομή, cloud based κουδούνι)

Ως προγραμματιστής και εργάτης σε τσιμπήματα, έχω ήδη ολοκληρώσει κάποια έργα, αλλά αυτό ήταν με διαφορά ένα από τα πιο δύσκολα. Είχα πολύ πρόβλημα να κάνω τον αμφίδρομο ήχο να λειτουργεί σε ένα σημείο όπου μπορείτε να καταλάβετε ο ένας τον άλλον. Αυτό κυρίως επειδή υπάρχει αρκετή ηχώ,…. Η ιδέα προέρχεται από το DoorPi, αλλά με το πρωτόκολλο SIP, είχα πάρα πολύ ηχώ που είχε ως αποτέλεσμα να μην καταλαβαίνω ο ένας τον άλλον.

Δεδομένου ότι το κουδούνι μου είναι απόλυτα προστατευμένο από τα στοιχεία, είμαστε σε θέση να φτιάξουμε το μπροστινό μέρος σε ξύλο με λέιζερ.

Προμήθειες

  • Raspberry Pi 3 B ή 3B+ (μην πάτε για Banana Pi με PoE ενσωματωμένο καθώς δεν υποστηρίζει την τυπική διεπαφή κάμερας Raspberry Pi CSI) = 33, 67 €
  • Κάρτα Micro SD = 2, 69 €
  • Raspberry Pi fisheye camera = 14,14 €
  • Προσαρμογέας PoE = 4, 94 €
  • RaspiAudio Mic + = 24,69 €
  • Πρόσβαση σε τρισδιάστατο εκτυπωτή (και κόφτη λέιζερ)
  • Κουμπιά για το κουδούνι της πόρτας
  • Πολύ χρόνο!

Αυτό αθροίζει συνολικά 80,13 €.

Εκτός εμβέλειας, ο εσωτερικός σταθμός:

  • Ρύθμιση HomeAssistant με μεσίτη MQTT
  • Επιτοίχιο tablet Android

Βήμα 1: Ρύθμιση Raspberry Pi

Σας συνιστώ ανεπιφύλακτα να χρησιμοποιήσετε ethernet αντί για Wifi. Η ποιότητα του ήχου μου βελτιώθηκε πολύ λόγω αυτού. Θα χρησιμοποιούμε επίσης UV4L αφού υποστηρίζει webrtc και έτσι έχει ενσωματωμένο το σύστημα ηχώ-ακύρωσης. Το Doorpi χρησιμοποιεί linphone, έναν πελάτη SIP και δεν μπόρεσα να κάνω την ακύρωση ηχώ.

  • Κατεβάστε το Raspbian Stretch Lite και εγκαταστήστε το στην κάρτα Micro SD. Βεβαιωθείτε ότι:

    ενεργοποιήστε το ssh δημιουργώντας ένα κενό αρχείο ssh στο διαμέρισμα εκκίνησης

  • Εκτελέστε τις ακόλουθες εντολές:

sudo apt-get ενημέρωση

sudo apt-get αναβάθμιση

ΦΩΤΟΓΡΑΦΙΚΗ ΜΗΧΑΝΗ

Ενεργοποιήστε την κάμερα μέσω του raspi-config και βεβαιωθείτε ότι η GPU έχει τουλάχιστον 192 MB RAM.

RaspiAudio

Ακολουθήστε τον οδηγό εγκατάστασης του RaspiAudio που βρίσκεται στη διεύθυνση

UV4L

Ακολουθήστε τον οδηγό εγκατάστασης του UV4L που βρίσκεται στη διεύθυνση

Προσαρμόστε το αρχείο /etc/uv4l/uv4l-raspicam.conf και βεβαιωθείτε ότι έχετε προσαρμόσει τις ακόλουθες ρυθμίσεις:

Οι πιο αξιοσημείωτες ρυθμίσεις είναι πιθανώς --enable-webrtc-video = no: αυτό συμβαίνει επειδή θα μεταδίδουμε πάντα το βίντεο από uv4l χρησιμοποιώντας hj44 κωδικοποιημένο mjpeg.

Χρησιμοποιώντας τα ακόλουθα αρχεία που βρίσκονται στο/usr/share/uv4l/demos/doorpi/, μπορείτε ήδη να δοκιμάσετε τον αμφίδρομο ήχο και βίντεο.

  • index.html (μετονομάστε το από index.html5, απαιτείται για μετονομασία λόγω απαιτήσεων για μεταφόρτωση οδηγιών)
  • main.js
  • signalling.js

Περιηγηθείτε στο https:// [ip-of-raspberrypi]: 8888 και δοκιμάστε αν μπορείτε να χρησιμοποιήσετε τον ήχο διπλής κατεύθυνσης.

pi-mqtt-gpio

Ο ευκολότερος τρόπος που βρήκα για να λειτουργούν τα κουμπιά κουδουνιού είναι να τα συνδέσω στο βατόμουρο pi και να χρησιμοποιήσω το pi-mqtt-gpio για να το ενσωματώσω με το HomeAssistant.

Το αρχείο διαμόρφωσής μου έχει ως εξής:

mqtt: host: xxxx port: 1883 user: [username] password: [password] topic_prefix: "doorbell" gpio_modules: - name: raspberrypi module: raspberrypi cleanup: yes digital_inputs: - name: button_1 module: raspberrypi pin: 17 on_payload: " Off "off_payload:" On "pullup: yes pulldown: no - name: button_2 module: raspberrypi pin: 27 on_payload:" Off "off_payload:" On "pullup: yes pulldown: no

Σημειώστε ότι καθώς υπάρχουν περισσότερες καρφίτσες γείωσης διαθέσιμες ως ακίδες 3.3V, επιλέγω να χρησιμοποιώ καρφίτσες GPIO pullup και έτσι ανέτρεψα τα μηνύματά μου MQTT.

uv4l-raspicam.conf

οδηγός = raspicam
auto-video_nr = ναι
frame-buffers = 4
κωδικοποίηση = h264
πλάτος = 1024
ύψος = 768
ρυθμός καρέ = 10
rotation = 270 #ανάλογα με τη ρύθμιση του υλικού σας
διακομιστής-επιλογή = --port = 9090
server-option = --bind-host-address = 0.0.0.0
server-option = --use-ssl = ναι
server-option = --ssl-private-key-file =/etc/uv4l/selfsign.key
server-option = --ssl-certificate-file =/etc/uv4l/selfsign.crt
server-option = --enable-webrtc-video = αριθ
server-option = --enable-webrtc-audio = ναι
server-option = --webrtc-vad = ναι
διακομιστής-επιλογή = --webrtc-ηχώ-ακύρωση = ναι
server-option = --webrtc-max-playout-delay = 34
server-option = --enable-www-server = ναι
server-option = --www-root-path =/usr/share/uv4l/demos/doorpi/
server-option = --www-index-file = index.html
server-option = --www-port = 8888
server-option = --www-bind-host-address = 0.0.0.0
server-option = --www-use-ssl = ναι
server-option = --www-ssl-private-key-file =/etc/uv4l/selfsign.key
server-option = --www-ssl-certificate-file =/etc/uv4l/selfsign.crt
server-option = --www-webrtc-signaling-path =/webrtc

προβολή rawgistfile1.txt που φιλοξενείται με ❤ από το GitHub

Βήμα 2: κουτί κουδουνιών

  • doorbell-back v1.stl: τρισδιάστατο τυπωμένο κουτί για raspberry pi και προσαρμογέα PoE
  • doorbell-front v1.svg: Πλάκα προσώπου κομμένη με λέιζερ
  • doorbell-micro v1.stl: τρισδιάστατο τυπωμένο κουτί που περιέχει Mirophone τυλιγμένο με ηχομόνωση, κολλημένο στην πρόσοψη

Βιδώστε το βατόμουρο pi στα προσαρτημένα στηρίγματα βιδών και τοποθετήστε τον προσαρμογέα PoE επάνω δεξιά. Τοποθετήστε τη φωτογραφική μηχανή και το μικρόφωνο στη θέση τους (φροντίστε να αποσυνδέσετε το μικρόφωνο και βεβαιωθείτε ότι η τρύπα του μικροφώνου είναι καλά ευθυγραμμισμένη με μια τρύπα στην πλάκα του προσώπου).

Βήμα 3: Ενσωμάτωση HomeAssistant

Τα ακόλουθα αρχεία επιτρέπουν την ενσωμάτωση HomeAssistant:

  • doorpi.yaml: πακέτο που περιέχει όλα όσα σχετίζονται με το κουδούνι της πόρτας, συμπεριλαμβανομένης της ακρόασης μηνυμάτων MQTT και αυτοματισμών για να ηχήσετε όταν χτυπάει το κουδούνι της πόρτας
  • www/doorpi/doorpi-card.js: κάρτα lovelace doorpi που χρειάζεται το signalling.js και το doorpi-camera-view.js

ΣΗΜΑΝΤΙΚΟ: Σημειώστε ότι πρέπει να εκτελείτε το HomeAssistant με https/ssl, διότι διαφορετικά το chrome δεν θα σας επιτρέψει την πρόσβαση στις συσκευές ήχου.

Βήμα 4: Καλό κουδούνι

Αυτό είναι όλο, θα πρέπει τώρα να μπορείτε να καλέσετε κάποιον μέσω του κουδουνιού και το HomeAssistant θα μεταβεί αυτόματα στην κάρτα κουδουνιού. Εκεί μπορείτε να αποφασίσετε να αποδεχτείτε ή να αγνοήσετε το κουδούνι της πόρτας.

Συνιστάται: