Table des matières:

Sonnette intelligente pour HomeAssistant : 4 étapes
Sonnette intelligente pour HomeAssistant : 4 étapes

Vidéo: Sonnette intelligente pour HomeAssistant : 4 étapes

Vidéo: Sonnette intelligente pour HomeAssistant : 4 étapes
Vidéo: 🔔 Déballage et configuration de la sonnette intelligente WiFi sur batterie XTU J7 1080P ! 2024, Novembre
Anonim
Sonnette intelligente pour HomeAssistant
Sonnette intelligente pour HomeAssistant

Je voulais donc une sonnette avec les caractéristiques suivantes:

  • Vidéo de la porte
  • Audio bidirectionnel
  • Deux boutons
  • Intégration avec une tablette murale affichant l'interface utilisateur HomeAssistant

Certaines options sont arrivées comme Doorbird (cher et ils n'ont pas d'appel audio bidirectionnel en utilisant HTML5) et Ring doorbell (mais je n'aime pas un abonnement, une sonnette basée sur le cloud)

En tant que développeur et bricoleur, j'ai déjà terminé certains projets mais celui-ci était de loin l'un des plus difficiles à réaliser. J'ai eu beaucoup de mal à faire fonctionner l'audio bidirectionnel à un point où vous pouvez vous comprendre. Ceci principalement parce qu'il y a beaucoup d'écho, …. L'idée vient de DoorPi, mais avec le protocole SIP, j'ai eu trop d'écho ce qui a fait qu'on ne se comprend pas.

Puisque ma sonnette est complètement protégée des éléments, nous sommes en mesure de réaliser la façade en bois découpé au laser.

Fournitures

  • Raspberry Pi 3 B ou 3B+ (ne pas opter pour un Banana Pi avec PoE intégré car il ne prend pas en charge l'interface de caméra Raspberry Pi CSI standard) = 33, 67 €
  • Carte Micro SD = 2, 69 €
  • Caméra fisheye Raspberry Pi = 14, 14 €
  • Adaptateur PoE = 4, 94 €
  • RaspiAudio Mic + = 24, 69 €
  • Accès à l'imprimante 3D (et à la découpeuse laser)
  • Boutons pour la sonnette
  • Beaucoup de temps !

Cela fait un total de 80,13 €.

Hors de portée, le poste intérieur:

  • Configuration de HomeAssistant avec un courtier MQTT
  • Tablette Android murale

Étape 1: Configurer Raspberry Pi

Je vous recommande fortement d'utiliser Ethernet au lieu du Wifi. Ma qualité audio s'est beaucoup améliorée grâce à cela. Nous utiliserons également UV4L car il prend en charge webrtc et a donc intégré l'annulation d'écho. Le Doorpi utilise linphone, un client SIP et je n'ai pas pu faire fonctionner l'annulation d'écho.

  • Téléchargez Raspbian Stretch Lite et installez-le sur la carte Micro SD. Assurez-vous:

    activer ssh en créant un fichier ssh vide dans la partition de démarrage

  • Exécutez les commandes suivantes:

sudo apt-get mise à jour

sudo apt-get mise à niveau

Caméra

Activez la caméra via raspi-config et assurez-vous que le GPU dispose d'au moins 192 Mo de RAM.

RaspiAudio

Suivez le guide d'installation de RaspiAudio disponible sur

UV4L

Suivez le guide d'installation d'UV4L disponible sur

Ajustez le fichier /etc/uv4l/uv4l-raspicam.conf et assurez-vous d'ajuster les paramètres suivants:

Le paramètre le plus notable est probablement --enable-webrtc-video=no: c'est parce que nous diffuserons toujours la vidéo à partir d'uv4l en utilisant mjpeg encodé h264.

En utilisant les fichiers suivants situés dans /usr/share/uv4l/demos/doorpi/, vous pouvez déjà tester l'audio et la vidéo bidirectionnels.

  • index.html (renommer index.html5, nécessaire pour renommer en raison des exigences de téléchargement des instructables)
  • main.js
  • signalisation.js

Accédez à https://[ip-of-raspberrypi]:8888 et testez si vous pouvez faire fonctionner l'audio bidirectionnel.

pi-mqtt-gpio

Le moyen le plus simple que j'ai trouvé pour faire fonctionner les boutons de la sonnette est de les attacher au raspberry pi et d'utiliser pi-mqtt-gpio pour l'intégrer à HomeAssistant.

Mon fichier de configuration est le suivant:

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: oui pulldown: non - nom: button_2 module: raspberrypi pin: 27 on_payload: "Off" off_payload: "On" pullup: oui pulldown: non

Notez que comme il y a plus de broches de masse disponibles sous forme de broches 3,3 V, j'ai choisi d'utiliser des broches GPIO pullup et j'ai donc inversé mes messages MQTT.

uv4l-raspicam.conf

pilote = raspicam
auto-video_nr = oui
tampons d'images = 4
encodage = h264
largeur = 1024
hauteur = 768
fréquence d'images = 10
rotation = 270 #selon votre configuration matérielle
option_serveur = --port=9090
option-serveur = --bind-host-address=0.0.0.0
option-serveur = --use-ssl=yes
option-serveur = --ssl-private-key-file=/etc/uv4l/selfsign.key
option-serveur = --ssl-certificate-file=/etc/uv4l/selfsign.crt
option-serveur = --enable-webrtc-video=no
option-serveur = --enable-webrtc-audio=yes
option-serveur = --webrtc-vad=oui
option-serveur = --webrtc-echo-cancellation=yes
option-serveur = --webrtc-max-playout-delay=34
option-serveur = --enable-www-server=yes
option-serveur = --www-root-path=/usr/share/uv4l/demos/doorpi/
option-serveur = --www-index-file=index.html
option-serveur = --www-port=8888
option-serveur = --www-bind-host-address=0.0.0.0
option-serveur = --www-use-ssl=yes
option-serveur = --www-ssl-private-key-file=/etc/uv4l/selfsign.key
option-serveur = --www-ssl-certificate-file=/etc/uv4l/selfsign.crt
option-serveur = --www-webrtc-signaling-path=/webrtc

voir rawgistfile1.txt hébergé avec ❤ par GitHub

Étape 2: Boîte de sonnette

  • doorbell-back v1.stl: boîtier imprimé en 3D pour raspberry pi et adaptateur PoE
  • doorbell-front v1.svg: plaque frontale découpée au laser
  • doorbell-micro v1.stl: boîte imprimée en 3D contenant un mirophone enveloppé d'une isolation phonique, collée à la plaque frontale

Vissez le raspberry pi dans les supports de vis attachés et placez l'adaptateur PoE en haut à droite. Mettez la caméra et le microphone en place (assurez-vous de détacher le microphone et assurez-vous que le trou du microphone est bien aligné avec un trou dans la plaque frontale).

Étape 3: Intégration de HomeAssistant

Les fichiers suivants permettent l'intégration de HomeAssistant:

  • doorpi.yaml: package contenant tout ce qui concerne la sonnette, y compris l'écoute des messages MQTT et les automatismes pour jouer le carillon lorsque la sonnette est enfoncée
  • www/doorpi/doorpi-card.js: lovelace doorpi card qui nécessite le signalling.js et doorpi-camera-view.js

IMPORTANT: Notez que vous devez exécuter HomeAssistant avec https/ssl, sinon Chrome ne vous permettra pas d'accéder aux périphériques audio.

Étape 4: Joyeux coup de sonnette

Ça y est, vous devriez maintenant pouvoir appeler quelqu'un via la sonnette et HomeAssistant passera automatiquement à la carte de sonnette. Là, vous pouvez décider d'accepter ou d'ignorer la sonnette.

Conseillé: