Obsah:

Inteligentní zvonek pro domácí asistent: 4 kroky
Inteligentní zvonek pro domácí asistent: 4 kroky

Video: Inteligentní zvonek pro domácí asistent: 4 kroky

Video: Inteligentní zvonek pro domácí asistent: 4 kroky
Video: Karel Gott & Charlotte Ella Gottová - Srdce nehasnou (oficiální video) (German/English subtitles) 2024, Červenec
Anonim
Inteligentní zvonek pro HomeAssistant
Inteligentní zvonek pro HomeAssistant

Chtěl jsem tedy zvonek s následujícími funkcemi:

  • Video ze dveří
  • Obousměrný zvuk
  • Dvě tlačítka
  • Integrace s nástěnným tabletem zobrazujícím uživatelské rozhraní HomeAssistant

Přišly některé možnosti jako Doorbird (drahý a nemají obousměrné zvukové volání pomocí HTML5) a Ring doorbell (ale nemám rád předplatné, cloudový zvonek)

Jako vývojář a drotář jsem již dokončil některé projekty, ale toto byl zdaleka jeden z nejobtížnějších na dokončení. Měl jsem velké problémy dostat obousměrný zvuk do bodu, kdy si můžete rozumět. Je to hlavně proto, že existuje docela dost ozvěny,…. Myšlenka pochází z DoorPi, ale s protokolem SIP jsem měl příliš mnoho ozvěny, což vedlo k vzájemnému nerozumění.

Vzhledem k tomu, že můj zvonek je zcela chráněn před živly, jsme schopni vyrobit přední část z laserem řezaného dřeva.

Zásoby

  • Raspberry Pi 3 B nebo 3B+ (nepoužívejte Banana Pi s vestavěným PoE, protože nepodporuje standardní rozhraní kamery Raspberry Pi CSI) = 33, 67 EUR
  • Micro SD karta = 2, 69 EUR
  • Kamera rybí oko Raspberry Pi = 14, 14 EUR
  • PoE adaptér = 4, 94 EUR
  • RaspiAudio Mic + = 24, 69 EUR
  • Přístup k 3D tiskárně (a laserové řezačce)
  • Tlačítka pro zvonek
  • Hodně času!

To dohromady činí celkem 80, 13 EUR.

Mimo dosah vnitřní stanice:

  • Nastavení HomeAssistant s makléřem MQTT
  • Nástěnný tablet Android

Krok 1: Nastavení Raspberry Pi

Vřele doporučuji používat místo Wifi ethernet. Moje kvalita zvuku se díky tomu hodně zlepšila. Budeme také používat UV4L, protože podporuje webrtc a má tedy zabudované potlačení ozvěny. Doorpi používá linphone, SIP klienta a já jsem nemohl dostat zrušení ozvěny funkční.

  • Stáhněte si Raspbian Stretch Lite a nainstalujte jej na kartu Micro SD. Ujisti se:

    povolte ssh vytvořením prázdného souboru ssh v zaváděcím oddílu

  • Spusťte následující příkazy:

sudo apt-get update

sudo apt-get upgrade

Fotoaparát

Povolte kameru pomocí raspi-config a ujistěte se, že GPU má alespoň 192 MB RAM.

RaspiAudio

Postupujte podle instalačního průvodce RaspiAudio na

UV4L

Postupujte podle instalačního průvodce UV4L na

Upravte soubor /etc/uv4l/uv4l-raspicam.conf a ujistěte se, že jste upravili následující nastavení:

Nejpozoruhodnější nastavení je probaby --enable-webrtc-video = no: je to proto, že vždy budeme streamovat video z uv4l pomocí mjpeg kódovaného h264.

Pomocí následujících souborů umístěných v adresáři/usr/share/uv4l/demos/doorpi/již můžete testovat obousměrný zvuk a video.

  • index.html (přejmenujte jej z index.html5, je nutné jej přejmenovat z důvodu požadavků na nahrání instructables)
  • main.js
  • signalling.js

Přejděte na stránku https:// [ip-of-raspberrypi]: 8888 a vyzkoušejte, zda dokáže obousměrný zvuk fungovat.

pi-mqtt-gpio

Nejsnadnějším způsobem, jak jsem zjistil, že fungují tlačítka zvonku, je připojit je k malinovému pi a pomocí pi-mqtt-gpio jej integrovat s HomeAssistant.

Můj konfigurační soubor je následující:

mqtt: hostitel: port xxxx: 1883 uživatel: [uživatelské jméno] heslo: [heslo] topic_prefix: "domovní zvonek" gpio_modules: - název: modul raspberrypi: vyčištění raspberrypi: ano digital_inputs: - název: button_1 modul: 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

Všimněte si toho, že jelikož je k dispozici více pinů 3,3 V, rozhodl jsem se použít výsuvné piny GPIO, a tak jsem převrátil své zprávy MQTT.

uv4l-raspicam.conf

řidič = raspicam
auto-video_nr = ano
vyrovnávací paměti rámců = 4
kódování = h264
šířka = 1024
výška = 768
framerate = 10
rotace = 270 #v závislosti na nastavení hardwaru
server-option = --port = 9090
server-option = --bind-host-address = 0.0.0.0
server-option = --use-ssl = yes
server-option = --ssl-private-key-file =/etc/uv4l/selfsign.key
server-option = --ssl-certifikát-soubor =/etc/uv4l/selfsign.crt
server-option = --enable-webrtc-video = no
server-option = --enable-webrtc-audio = yes
server-option = --webrtc-vad = yes
server-option = --webrtc-echo-Cancel = ano
server-option = --webrtc-max-playout-delay = 34
server-option = --enable-www-server = yes
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 = yes
server-option = --www-ssl-private-key-file =/etc/uv4l/selfsign.key
server-option = --www-ssl-certifikát-soubor =/etc/uv4l/selfsign.crt
server-option = --www-webrtc-signaling-path =/webrtc

zobrazit rawgistfile1.txt hostovaný s ❤ od GitHub

Krok 2: Zvonek u dveří

  • doorbell-back v1.stl: 3D tištěný box pro Raspberry Pi a PoE adaptér
  • doorbell-front v1.svg: Laserem řezaná čelní deska
  • doorbell-micro v1.stl: 3D tištěná krabice obsahující mirofon zabalený se zvukovou izolací, nalepený na čelní desku

Zašroubujte malinový pi do připojených držáků šroubů a vložte adaptér PoE vpravo nahoře. Umístěte kameru a mikrofon na místo (nezapomeňte mikrofon odpojit a ujistěte se, že je otvor mikrofonu dobře zarovnán s otvorem v čelní desce).

Krok 3: Integrace HomeAssistant

Následující soubory umožňují integraci HomeAssistant:

  • doorpi.yaml: balíček obsahující vše, co souvisí s domovým zvonkem, včetně poslechu zpráv MQTT a automatizace pro přehrávání zvonku, když je zvonek zatlačen
  • www/doorpi/doorpi-card.js: lovelace doorpi karta, která potřebuje signalling.js a doorpi-camera-view.js

DŮLEŽITÉ: Všimněte si, že musíte používat HomeAssistant s https/ssl, protože jinak vám chrom neumožní přístup ke zvukovým zařízením.

Krok 4: Šťastné zvonění

To je vše, nyní byste měli být schopni někomu zavolat prostřednictvím zvonku a HomeAssistant se automaticky přepne na kartu zvonku. Tam se můžete rozhodnout zvonek přijmout nebo ignorovat.

Doporučuje: