สารบัญ:

กริ่งประตูอัจฉริยะสำหรับ HomeAssistant: 4 ขั้นตอน
กริ่งประตูอัจฉริยะสำหรับ HomeAssistant: 4 ขั้นตอน

วีดีโอ: กริ่งประตูอัจฉริยะสำหรับ HomeAssistant: 4 ขั้นตอน

วีดีโอ: กริ่งประตูอัจฉริยะสำหรับ HomeAssistant: 4 ขั้นตอน
วีดีโอ: [Ultimate Smart Home EP31] Eufy video doorbell กริ่งอัจฉริยะที่ไม่ต้องเดินสายไฟ 2024, กรกฎาคม
Anonim
กริ่งประตูอัจฉริยะสำหรับ HomeAssistant
กริ่งประตูอัจฉริยะสำหรับ HomeAssistant

ดังนั้นฉันจึงต้องการกริ่งประตูที่มีคุณสมบัติดังต่อไปนี้:

  • วิดีโอจากประตู
  • เครื่องเสียงสองทาง
  • สองปุ่ม
  • การผสานรวมกับแท็บเล็ตติดผนังที่แสดง HomeAssistant UI

บางตัวเลือกมาพร้อมเช่น Doorbird (แพงและไม่มีการโทรด้วยเสียงแบบสองทางโดยใช้ HTML5) และกริ่งประตู (แต่ฉันไม่ชอบการสมัครสมาชิกออดแบบคลาวด์)

ในฐานะนักพัฒนาและคนจรจัด ฉันทำบางโครงการเสร็จแล้ว แต่นี่เป็นหนึ่งในโครงการที่ยากที่สุดที่จะทำให้สำเร็จ ฉันมีปัญหามากในการทำให้เสียงสองทางทำงานจนถึงจุดที่คุณสามารถเข้าใจซึ่งกันและกันได้ สาเหตุหลักมาจากเสียงสะท้อนค่อนข้างมาก …. แนวคิดนี้มาจาก DoorPi แต่ด้วยโปรโตคอล SIP ฉันมีเสียงสะท้อนมากเกินไป ซึ่งทำให้ไม่เข้าใจกัน

เนื่องจากกริ่งประตูของฉันได้รับการปกป้องจากสภาพอากาศโดยสมบูรณ์ เราจึงสามารถสร้างส่วนหน้าด้วยไม้ตัดด้วยเลเซอร์ได้

เสบียง

  • Raspberry Pi 3 B หรือ 3B+ (อย่าใช้ Banana Pi ที่มี PoE ในตัวเนื่องจากไม่รองรับอินเทอร์เฟซกล้อง Raspberry Pi CSI มาตรฐาน) = € 33, 67
  • การ์ด Micro SD = € 2, 69
  • กล้องฟิชอาย Raspberry Pi = € 14, 14
  • อะแดปเตอร์ PoE = € 4, 94
  • RaspiAudio Mic + = € 24, 69
  • เข้าถึงเครื่องพิมพ์ 3 มิติ (และเครื่องตัดเลเซอร์)
  • ปุ่มสำหรับกริ่งประตู
  • เวลาเยอะ!

นี้รวมกันได้ถึง 80 ยูโร, 13

นอกขอบเขต สถานีในร่ม:

  • การตั้งค่า HomeAssistant ด้วยโบรกเกอร์ MQTT
  • แท็บเล็ต Android แบบติดผนัง

ขั้นตอนที่ 1: ตั้งค่า Raspberry Pi

ฉันขอแนะนำอย่างยิ่งให้คุณใช้อีเธอร์เน็ตแทน Wifi คุณภาพเสียงของฉันดีขึ้นมากด้วยเหตุนี้ เราจะใช้ UV4L ด้วยเนื่องจากรองรับ webrtc และมีการยกเลิกเสียงสะท้อนในตัว Doorpi ใช้ linphone ซึ่งเป็นไคลเอนต์ SIP และฉันไม่สามารถทำให้การยกเลิกเสียงสะท้อนทำงานได้

  • ดาวน์โหลด Raspbian Stretch Lite และติดตั้งลงในการ์ด Micro SD ตรวจสอบให้แน่ใจว่าคุณ:

    เปิดใช้งาน ssh โดยการสร้างไฟล์ ssh ว่างในพาร์ติชันสำหรับเริ่มระบบ

  • รันคำสั่งต่อไปนี้:

sudo apt-get update

sudo apt-get อัพเกรด

กล้อง

เปิดใช้งานกล้องผ่าน raspi-config และตรวจสอบให้แน่ใจว่า GPU มี RAM อย่างน้อย 192 MB

RaspiAudio

ปฏิบัติตามคู่มือการติดตั้ง RaspiAudio ที่

UV4L

ปฏิบัติตามคู่มือการติดตั้ง UV4L ที่

ปรับไฟล์ /etc/uv4l/uv4l-raspicam.conf และตรวจสอบให้แน่ใจว่าคุณปรับการตั้งค่าต่อไปนี้:

การตั้งค่าที่โดดเด่นที่สุดคือ probaby --enable-webrtc-video=no: เนื่องจากเราจะสตรีมวิดีโอจาก uv4l เสมอโดยใช้ mjpeg ที่เข้ารหัส h264

การใช้ไฟล์ต่อไปนี้ที่อยู่ใน /usr/share/uv4l/demos/doorpi/ คุณสามารถทดสอบเสียงและวิดีโอแบบสองทางได้แล้ว

  • index.html (เปลี่ยนชื่อจาก index.html5 จำเป็นต้องเปลี่ยนชื่อเนื่องจากข้อกำหนดในการอัปโหลดคำสั่ง)
  • main.js
  • สัญญาณ.js

เรียกดู https://[ip-of-raspberrypi]:8888 และทดสอบว่าคุณสามารถใช้งานเสียงแบบ 2 ทางได้หรือไม่

pi-mqtt-gpio

วิธีที่ง่ายที่สุดที่ฉันพบว่าใช้ปุ่มกริ่งประตูทำงาน คือแนบมันเข้ากับราสเบอร์รี่ pi และใช้ pi-mqtt-gpio เพื่อรวมเข้ากับ HomeAssistant

ไฟล์การกำหนดค่าของฉันมีดังนี้:

mqtt: โฮสต์: พอร์ต xxxx: 1883 ผู้ใช้: [ชื่อผู้ใช้] รหัสผ่าน: [รหัสผ่าน] topic_prefix: "ออด" gpio_modules: - ชื่อ: โมดูล raspberrypi: raspberrypi ล้างข้อมูล: ใช่ digital_inputs: - ชื่อ: โมดูล button_1: raspberrypi pin: 17 on_payload: " Off" off_payload: "On" pullup: yes pullup: no - name: button_2 module: raspberrypi pin: 27 on_payload: "Off" off_payload: "On" pullup: yes pulldown: no

โปรดทราบว่าเนื่องจากมีพินกราวด์มากกว่าเป็นพิน 3.3V ฉันจึงเลือกใช้พิน GPIO แบบดึงขึ้นและทำให้ข้อความ MQTT ของฉันกลับด้าน

uv4l-raspicam.conf

คนขับ = raspicam
auto-video_nr = ใช่
เฟรมบัฟเฟอร์ = 4
การเข้ารหัส = h264
ความกว้าง = 1024
ความสูง = 768
อัตราเฟรม = 10
การหมุน = 270 # ขึ้นอยู่กับการตั้งค่าฮาร์ดแวร์ของคุณ
ตัวเลือกเซิร์ฟเวอร์ = --port=9090
ตัวเลือกเซิร์ฟเวอร์ = --bind-host-address=0.0.0.0
ตัวเลือกเซิร์ฟเวอร์ = --use-ssl=yes
ตัวเลือกเซิร์ฟเวอร์ = --ssl-private-key-file=/etc/uv4l/selfsign.key
ตัวเลือกเซิร์ฟเวอร์ = --ssl-certificate-file=/etc/uv4l/selfsign.crt
ตัวเลือกเซิร์ฟเวอร์ = --enable-webrtc-video=no
ตัวเลือกเซิร์ฟเวอร์ = --enable-webrtc-audio=yes
ตัวเลือกเซิร์ฟเวอร์ = --webrtc-vad=yes
ตัวเลือกเซิร์ฟเวอร์ = --webrtc-echo-cancellation=yes
ตัวเลือกเซิร์ฟเวอร์ = --webrtc-max-playout-delay=34
ตัวเลือกเซิร์ฟเวอร์ = --enable-www-server=yes
ตัวเลือกเซิร์ฟเวอร์ = --www-root-path=/usr/share/uv4l/demos/doorpi/
ตัวเลือกเซิร์ฟเวอร์ = --www-index-file=index.html
ตัวเลือกเซิร์ฟเวอร์ = --www-port=8888
ตัวเลือกเซิร์ฟเวอร์ = --www-bind-host-address=0.0.0.0
ตัวเลือกเซิร์ฟเวอร์ = --www-use-ssl=yes
ตัวเลือกเซิร์ฟเวอร์ = --www-ssl-private-key-file=/etc/uv4l/selfsign.key
ตัวเลือกเซิร์ฟเวอร์ = --www-ssl-certificate-file=/etc/uv4l/selfsign.crt
ตัวเลือกเซิร์ฟเวอร์ = --www-webrtc-signaling-path=/webrtc

ดู rawgistfile1.txt ที่โฮสต์ด้วย ❤ โดย GitHub

ขั้นตอนที่ 2: กล่องออด

  • กริ่งประตูด้านหลัง v1.stl: กล่องพิมพ์ 3 มิติสำหรับ raspberry pi และอะแดปเตอร์ PoE
  • กริ่งประตูด้านหน้า v1.svg: แผ่นปิดหน้าด้วยเลเซอร์
  • doorbell-micro v1.stl: กล่องพิมพ์ 3 มิติที่มี 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 จะสลับไปใช้การ์ดกริ่งประตูโดยอัตโนมัติ คุณสามารถตัดสินใจยอมรับหรือเพิกเฉยต่อกริ่งประตูได้ที่นั่น

แนะนำ: