Talaan ng mga Nilalaman:

Smart Doorbell para sa HomeAssistant: 4 na Hakbang
Smart Doorbell para sa HomeAssistant: 4 na Hakbang

Video: Smart Doorbell para sa HomeAssistant: 4 na Hakbang

Video: Smart Doorbell para sa HomeAssistant: 4 na Hakbang
Video: X9 Video Doorbell Chime Setup and Configuration 2024, Nobyembre
Anonim
Smart Doorbell para sa HomeAssistant
Smart Doorbell para sa HomeAssistant

Kaya, nais ko ng isang doorbell na may mga sumusunod na tampok:

  • Video mula sa pintuan
  • Dalawang way na audio
  • Dalawang pindutan
  • Ang pagsasama sa naka-mount na tablet na tablet na nagpapakita ng HomeAssistant UI

Ang ilang mga pagpipilian ay sumama tulad ng Doorbird (mahal at wala silang two-way audio calling gamit ang HTML5) at Ring doorbell (ngunit hindi ko gusto ang isang subscription, cloud based doorbell)

Bilang isang developer at tinkerer, natapos ko na ang ilang mga proyekto ngunit ito ay ang isa sa pinakamahirap na makumpleto. Nagkaroon ako ng maraming problema sa pagkuha ng dalawang-way na audio na gumagana sa isang punto kung saan maaari mong maunawaan ang bawat isa. Pangunahin ito sapagkat mayroong maraming echo, …. Ang ideya ay nagmula sa DoorPi, ngunit sa SIP protocol, nagkaroon ako ng sobrang echo na ginawa na nagresulta sa hindi pag-unawa sa isa't isa.

Dahil ang aking doorbell ay ganap na protektado mula sa mga elemento, nagagawa naming gawin ang harapan sa kahoy na lasercut.

Mga gamit

  • Raspberry Pi 3 B o 3B + (huwag pumunta para sa isang Banana Pi na may built na PoE dahil hindi nito sinusuportahan ang karaniwang interface ng Raspberry Pi CSI camera) = € 33, 67
  • Micro SD card = € 2, 69
  • Raspberry Pi fisheye camera = € 14, 14
  • PoE adapter = € 4, 94
  • RaspiAudio Mic + = € 24, 69
  • Pag-access sa 3D printer (at laser cutter)
  • Mga Pindutan para sa Doorbell
  • Ng maraming oras!

Ito ay nagdaragdag ng hanggang sa isang kabuuang € 80, 13.

Wala sa saklaw, ang panloob na istasyon:

  • Pag-setup ng HomeAssistant kasama ang isang MQTT Broker
  • Naka-mount sa Android Tablet na pader

Hakbang 1: I-setup ang Raspberry Pi

Masidhing inirerekumenda ko sa iyo na gumamit ng ethernet sa halip na Wifi. Ang aking kalidad sa audio ay napabuti nang husto dahil dito. Gagamitin din namin ang UV4L dahil sinusuportahan nito ang webrtc at sa gayon ay may built-in na pag-kansel ng echo. Gumagamit ang Doorpi ng linphone, isang SIP client at hindi ko nagawang gumana ang pagkansela ng echo.

  • I-download ang Raspbian Stretch Lite at i-install ito sa Micro SD card. Tiyaking ikaw:

    paganahin ang ssh sa pamamagitan ng paglikha ng isang walang laman na ssh file sa boot na pagkahati

  • Patakbuhin ang mga sumusunod na utos:

sudo apt-get update

sudo apt-get upgrade

Kamera

Paganahin ang camera sa pamamagitan ng raspi-config at tiyakin na ang GPU ay may hindi bababa sa 192 MB ng ram.

RaspiAudio

Sundin ang gabay sa pag-install ng RaspiAudio na matatagpuan sa

UV4L

Sundin ang gabay sa pag-install ng UV4L na matatagpuan sa

Ayusin ang /etc/uv4l/uv4l-raspicam.conf file at tiyaking ayusin mo ang mga sumusunod na setting:

Ang pinaka-kapansin-pansin na mga setting ay probaby --enable-webrtc-video = hindi: ito ay dahil palagi naming mai-stream ang video mula sa uv4l gamit ang h264 na naka-encode na mjpeg.

Gamit ang mga sumusunod na file na matatagpuan sa / usr / share / uv4l / demo / doorpi /, maaari mo nang subukan ang two-way audio at video.

  • index.html (palitan ang pangalan nito mula sa index.html5, kinakailangan upang palitan ang pangalan dahil sa mga kinakailangan ng pag-upload na itinuturo)
  • pangunahing.js
  • signalling.js

Mag-browse sa https:// [ip-of-raspberrypi]: 8888 at subukan kung maaari mong gumana ang 2-way na audio.

pi-mqtt-gpio

Ang pinakamadaling paraan na nahanap ko upang magamit ang mga door-button na pindutan, ay ilakip ang mga ito sa raspberry pi at gamitin ang pi-mqtt-gpio upang isama ito sa HomeAssistant.

Ang aking file sa pagsasaayos ay ang mga sumusunod:

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

Tandaan na dahil maraming mga ground pin na magagamit bilang mga 3.3V na pin, pinipili kong gumamit ng mga pullup GPIO pin at sa gayon ay inverted ang aking mga mensahe sa MQTT.

uv4l-raspicam.conf

driver = raspicam
auto-video_nr = oo
mga frame-buffer = 4
pag-encode = h264
lapad = 1024
taas = 768
framerate = 10
pag-ikot = 270 #depende sa pag-setup ng iyong hardware
server-options = --port = 9090
server-options = --bind-host-address = 0.0.0.0
server-options = --use-ssl = oo
server-options = --ssl-private-key-file = / etc / uv4l / selfsign.key
server-options = --ssl-certificate-file = / etc / uv4l / selfsign.crt
server-options = --enable-webrtc-video = hindi
server-options = --enable-webrtc-audio = oo
server-options = --webrtc-vad = oo
server-options = --webrtc-echo-cancellation = oo
server-options = --webrtc-max-playout-antala = 34
server-options = --enable-www-server = oo
server-options = --www-root-path = / usr / share / uv4l / demo / doorpi /
server-options = --www-index-file = index.html
server-options = --www-port = 8888
server-options = --www-bind-host-address = 0.0.0.0
server-options = --www-use-ssl = oo
server-options = --www-ssl-private-key-file = / etc / uv4l / selfsign.key
server-options = --www-ssl-certificate-file = / etc / uv4l / selfsign.crt
server-options = --www-webrtc-signaling-path = / webrtc

tingnan ang rawgistfile1.txt na naka-host sa ❤ ng GitHub

Hakbang 2: Doorbell Box

  • doorbell-back v1.stl: 3D naka-print na kahon para sa raspberry pi at PoE adapter
  • doorbell-front v1.svg: Pinutol ng plate ng mukha ang laser
  • doorbell-micro v1.stl: 3D naka-print na kahon na naglalaman ng mirophone na nakabalot ng tunog na pagkakabukod, nakadikit sa plate ng mukha

I-tornilyo ang raspberry pi sa mga nakakabit na tornilyo at ilagay ang PoE adapter sa kanang bahagi sa itaas. Ilagay ang camera at mikropono sa lugar (tiyaking tanggalin ang mikropono at tiyakin na ang butas ng mikropono ay maayos na nakahanay sa isang butas sa plate ng mukha).

Hakbang 3: Pagsasama ng HomeAssistant

Pinapayagan ng mga sumusunod na file ang pagsasama sa HomeAssistant:

  • doorpi.yaml: package na naglalaman ng lahat ng nauugnay sa doorbell kasama na ang pakikinig sa mga mensahe at automation ng MQTT upang patugtugin ang chime kapag naitulak ang doorbell
  • www / doorpi / doorpi-card.js: lovelace doorpi card na nangangailangan ng pag-signall.js at doorpi-camera-view.js

MAHALAGA: Tandaan na dapat mong patakbuhin ang HomeAssistant na may https / ssl kung hindi man ay hindi ka papayagan ng chrome na i-access ang mga audio device.

Hakbang 4: Maligayang pagtawag sa Doorbell

Iyon lang, dapat mo na ngayong tumawag sa isang tao sa pamamagitan ng doorbell at ang HomeAssistant ay awtomatikong lilipat sa card ng doorbell. Doon maaari kang magpasya na tanggapin o huwag pansinin ang doorbell.

Inirerekumendang: