Mündəricat:
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
Beləliklə, aşağıdakı xüsusiyyətlərə malik bir qapı zəngi istədim:
- Qapıdan video
- İki tərəfli səs
- İki düymə
- HomeAssistant UI göstərən divara quraşdırılmış planşet ilə inteqrasiya
Doorbird (bahalı və HTML5 istifadə edərək ikitərəfli səsli zənglər yoxdur) və Zəngli qapı zəngi (lakin abunəliyi, bulud əsaslı qapı zəngini sevmirəm) kimi bəzi variantlar ortaya çıxdı.
İnkişaf etdirici və işbaz kimi bəzi layihələri artıq başa vurmuşam, amma bu, başa çatdırmaq ən çətin layihələrdən biri idi. İki tərəfli səsi bir-birinizi başa düşə biləcəyiniz bir həddə çatdırmaqda çox çətinlik çəkdim. Bunun səbəbi, əks -səda çox olduğu üçün …. Fikir DoorPi-dən gəlir, amma SIP protokolu ilə çox əks-səda verdim ki, bu da bir-birimizi anlamamaqla nəticələndi.
Qapı zəngi tamamilə elementlərdən qorunduğundan, ön hissəni lazer ağacından düzəldə bilərik.
Təchizat
- Raspberry Pi 3 B və ya 3B+ (standart Raspberry Pi CSI kamera interfeysini dəstəkləmədiyi üçün PoE quruluşlu Banana Pi üçün getməyin) = 33, 67 €
- Micro SD kart = 2, 69 avro
- Raspberry Pi balıq gözü kamerası = 14, 14 avro
- PoE adapteri = 4, 94 avro
- RaspiAudio Mic + = 24, 69 avro
- 3D printerə (və lazer kəsiciyə) giriş
- Qapı zəngi üçün düymələr
- Çox vaxt!
Bu, cəmi 80, 13 avro əlavə edir.
Kapsam xaricində, qapalı stansiya:
- MQTT Broker ilə HomeAssistant qurulması
- Divara quraşdırılmış Android Tablet
Addım 1: Raspberry Pi qurun
Wifi əvəzinə Ethernet istifadə etməyi məsləhət görürəm. Bunun sayəsində səs keyfiyyətim xeyli yaxşılaşdı. UV4L-dən də istifadə edəcəyik, çünki webrtc-ni dəstəkləyir və buna görə də daxili echo-ləğvi var. Doorpi, SIP müştərisi olan linphone istifadə edir və yankı ləğvini işlədə bilmədim.
-
Raspbian Stretch Lite proqramını yükləyin və Micro SD karta quraşdırın. Əmin ol:
açılış bölməsində boş bir ssh faylı yaradaraq ssh -i aktiv edin
- Aşağıdakı əmrləri işlədin:
sudo apt-get yeniləməsi
sudo apt-get yeniləmə
Kamera
Kameranı raspi-config vasitəsi ilə işə salın və GPU-nun ən az 192 MB ram olduğuna əmin olun.
RaspiAudio
Https://www.raspiaudio.com/raspiaudio-aiy ünvanındakı RaspiAudio quraşdırma təlimatına əməl edin.
UV4L
Https://www.linux-projects.org/uv4l/installation/ saytında yerləşən UV4L quraşdırma bələdçisini izləyin.
/Etc/uv4l/uv4l-raspicam.conf faylını tənzimləyin və aşağıdakı parametrləri düzəltdiyinizə əmin olun:
Ən diqqətəlayiq parametrlər probaby --enable-webrtc-video = yoxdur: bunun səbəbi, h264 kodlu mjpeg istifadə edərək hər zaman uv4l-dən videonu yayımlayacağımızdır.
/Usr/share/uv4l/demos/doorpi/-də yerləşən aşağıdakı faylları istifadə edərək artıq iki tərəfli audio və videonu sınaya bilərsiniz.
- index.html (adını index.html5 -dən dəyişdirin, təlimat yükləmə tələbləri səbəbindən yenidən adlandırmaq lazımdır)
- əsas.js
- siqnal.js
Https: // [ip-of-raspberrypi]: 8888-ə baxın və 2 tərəfli səsin işləyə biləcəyini sınayın.
pi-mqtt-gpio
Qapı zəngi düymələrini işə salmağın ən asan yolu, onları moruq pi-yə bağlamaq və HomeAssistant ilə inteqrasiya etmək üçün pi-mqtt-gpio istifadə etməkdir.
Konfiqurasiya faylım belədir:
mqtt: ana: xxxx port: 1883 istifadəçi: [istifadəçi adı] şifrə: [parol] mövzu_sağlama: "qapı zəngi" gpio_modules: - ad: raspberrypi modulu: raspberrypi təmizlənməsi: bəli digital_inputs: - ad: button_1 modulu: raspberrypi pin: 17 on_payload: " Off "off_payload": "On" çəkmə: bəli açılan: yox - ad: button_2 modulu: raspberrypi pin: 27 on_payload: "Off" off_payload: "On" çəkmə: bəli açılan: yox
Diqqət yetirin ki, 3.3V sancaqlar kimi daha çox torpaq sancaqları mövcud olduğundan, çəkmə GPIO sancaqlarından istifadə etməyi seçirəm və buna görə də MQTT mesajlarımı tərsinə çevirdim.
uv4l-raspicam.conf
Sürücü = raspicam |
avtomatik video_nr = bəli |
çərçivə tamponları = 4 |
kodlaşdırma = h264 |
eni = 1024 |
boy = 768 |
kadr tezliyi = 10 |
rotasiya = 270 #donanım quruluşunuzdan asılı olaraq |
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-certificate-file =/etc/uv4l/selfsign.crt |
server-option = --enable-webrtc-video = yox |
server-option = --enable-webrtc-audio = bəli |
server-option = --webrtc-vad = bəli |
server-option = --webrtc-echo-ləğv = bəli |
server-option = --webrtc-max-playout-delay = 34 |
server-option = --enable-www-server = bəli |
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-certificate-file =/etc/uv4l/selfsign.crt |
server-option = --www-webrtc-siqnalizasiya-yolu =/webrtc |
GitHub tərəfindən ❤ ilə evlənən rawgistfile1.txt -ə baxın
Addım 2: Qapı zəngi qutusu
- qapı zəngi v1.stl: moruq pi və PoE adapteri üçün 3D çap qutusu
- qapı zəngi-ön v1.svg: Lazerlə kəsilmiş üz lövhəsi
- qapı zəngi-mikro v1.stl: səs izolyasiyası ilə bükülmüş, üz lövhəsinə yapışdırılmış mirofondan ibarət 3D çap qutusu
Moruq pi -ni vint tutacaqlarına vidalayın və PoE adapterini sağ üstə qoyun. Kameranı və mikrofonu yerinə qoyun (mikrofonu ayırdığınızdan və mikrofonun çuxurunun üz lövhəsindəki bir çuxurla yaxşı hizalandığından əmin olun).
Addım 3: HomeAssistant İnteqrasiyası
Aşağıdakı fayllar HomeAssistant inteqrasiyasına imkan verir:
- doorpi.yaml: MQTT mesajlarını dinləmək də daxil olmaqla qapı zəngi ilə əlaqəli hər şeyi ehtiva edən paket
- www/doorpi/doorpi-card.js: işarələnməyə ehtiyacı olan lovelace doorpi kartı.js və doorpi-kamera-view.js
ƏHƏMİYYƏTLİ: HomeAssistant -ı https/ssl ilə işləməli olduğunuzu unutmayın, əks halda xrom səs cihazlarına daxil olmağa icazə verməyəcək.
Addım 4: Xoş Qapı Zəngi
Budur, indi qapı zəngi ilə kiməsə zəng etməlisiniz və HomeAssistant avtomatik olaraq qapı zəngi kartına keçəcəkdir. Orada qapı zəngini qəbul etməyə və ya görməməzliyə vurmağa qərar verə bilərsiniz.