Soneriile fără fir sunt o modalitate excelentă de a adăuga clopote în case sau birouri, fără a utiliza cabluri. Cu toate acestea, aceste clopote fără fir vin cu sunete MIDI preconfigurate limitate, care se aude atunci când cineva apăsă butonul de pe unitatea emițător.
Deși puteți comuta între sunetele MIDI și puteți crește sau micșora volumul, asta este tot ce puteți face cu aceste sonerii wireless. Cu toate acestea, astăzi vom construi o sonerie fără fir inteligentă DIY, unde puteți adăuga sunete MP3 personalizate sau fișiere muzicale, care vor fi redate atunci când cineva va apăsa comutatorul soneriei. De asemenea, puteți personaliza configurația și puteți utiliza soneria ca difuzor inteligent.
Lucruri de care veți avea nevoie
Veți avea nevoie de următoarele pentru a construi și a configura o sonerie inteligentă personalizată DIY.
- Serverul Home Assistant rulează pe un Raspberry Pi sau pe orice alt dispozitiv acceptat.
- 2 x plăci Wemos D1 mini sau NodeMCU.
- difuzor de 50 mm.
- O placă de amplificare digitală PAM8403 mini 5V.
- DuPont sau fire jumper. Este posibil să aveți nevoie, de asemenea, de un fier de lipit și cositor pentru a lipi îmbinările dacă doriți o conexiune permanentă.
- Carcasă pentru asamblarea tuturor pieselor. Puteți imprima acest caz 3D.
Pasul 1: Construiți un difuzor inteligent
Mai întâi, vom construi un difuzor inteligent care funcționează cu Home Assistant și apoi îl vom folosi ca sonerie inteligentă pentru acest proiect. De asemenea, puteți utiliza acest sonerie inteligentă pentru a reda alerte vocale. Pașii sunt următorii:
- Deschideți Home Assistant și instalați suplimentul ESPHome.
- După instalare, deschideți ESPHome și faceți clic + Dispozitiv nou.
- Clic Continua și tastați un nume, cum ar fi difuzor inteligent.
- Clic Următorul > Alegeți o anumită tablă și alegeți Wemos D1 și Wemos D1 mini. Clic Următorul.
- Găsiți un difuzor inteligent în listă și faceți clic pe Editați | × buton.
- În fereastra editorului YAML, actualizați SSID-ul și parola Wi-Fi.
- Apoi lipiți următorul cod chiar mai jos portal_captive:
uart:
tx_pin: GPIO3
rx_pin: GPIO1
baud_rate: 9600
dfplayer:
on_finished_playback:
apoi:
logger.log: 'Redare eveniment încheiat'
API:
criptare:
cheie: "YourEncryptionKey"
Servicii:
- serviciu: dfplayer_next
apoi:
-dfplayer.play_next:
- serviciu: dfplayer_previous
apoi:
-dfplayer.play_previous:
- serviciu: dfplayer_play
variabile:
fişier: int
apoi:
- dfplayer.play: !lambda 'întoarcere fişier;'
- serviciu: dfplayer_play_loop
variabile:
fişier: int
loop_: bool
apoi:
-dfplayer.Joaca:
fisier: !lambda 'întoarcere fişier;'
bucla:!lambda 'întoarcere buclă_;'
- serviciu: dfplayer_play_folder
variabile:
pliant: int
fişier: int
apoi:
-dfplayer.play_folder:
folder: !lambda 'întoarcere pliant;'
fisier: !lambda 'întoarcere fişier;'
- serviciu: dfplayer_play_loop_folder
variabile:
pliant: int
apoi:
-dfplayer.play_folder:
folder: !lambda 'întoarcere pliant;'
buclă: Adevărat
- serviciu: dfplayer_set_device_tf
apoi:
-dfplayer.set_device: TF_CARD
- serviciu: dfplayer_set_device_usb
apoi:
-dfplayer.set_device: USB
- serviciu: dfplayer_set_volume
variabile:
volum: int
apoi:
- dfplayer.set_volume: !lambda 'întoarcere volum;'
- serviciu: dfplayer_set_eq
variabile:
presetat: int
apoi:
- dfplayer.set_eq: !lambda 'returnează static_cast<dfplayer:: EqPreset>(prestat);'
- serviciu: dfplayer_sleep
apoi:
-dfplayer.dormi
- serviciu: dfplayer_reset
apoi:
-dfplayer.resetare
- serviciu: dfplayer_start
apoi:
-dfplayer.start
- serviciu: dfplayer_pause
apoi:
-dfplayer.pauză
- serviciu: dfplayer_stop
apoi:
-dfplayer.Stop
- serviciu: dfplayer_random
apoi:
-dfplayer.Aleatoriu
- serviciu: dfplayer_volume_up
apoi:
-dfplayer.creștere_volum
- serviciu: dfplayer_volume_down
apoi:
-dfplayer.volum scăzut - A inlocui YourEncryptionKey în codul de mai sus cu cheia dvs. de criptare existentă. De asemenea, eliminați următorul cod dacă este deasupra portal_captive: text — ar trebui să existe doar unul API: secțiune in codul complet, altfel veți primi erori de compilare.
API:
criptare:
cheie: "YourEncryptionKey" - Clic Salvați și apoi faceți clic Instalare.
- Alege Conectați-vă la acest computer opțiunea și așteptați compilarea firmware-ului.
- Odată ce firmware-ul este compilat, faceți clic pe Descărcați proiectul link pentru a descărca firmware-ul.
- Clic Deschideți ESPHome Web și conectați D1 mini la computer folosind un cablu micro-USB.
- Clic Conectați și selectați Port COM unde este conectat D1 mini.
- Clic Instalare și apoi faceți clic Alege fișierul pentru a selecta firmware-ul pe care l-ați descărcat.
- Clic Instalare.
- Odată instalat firmware-ul, consultați următoarea diagramă pentru a conecta DFPlayer-ul sau modulul de player MP3 la placa D1 mini.
În mod implicit, modulul DFPlayer poate rula două difuzoare de 3W pe care le puteți conecta la pinii SPK_1 și SPK_2, așa cum se arată în diagramă. Celălalt terminal al ambelor difuzoare se va conecta la terminalul GND dintre cele două terminale ale difuzoarelor de pe modulul DFPlayer.
Bacsis: Pentru un sunet mai puternic și mai plin de la difuzorul dvs. de 50 mm sau mai mare de 3 W, asigurați-vă că instalați un modul amplificator, cum ar fi un PAM8403, între difuzor și DFPlayer.
Pasul 2: Construiți un comutator inteligent
Luați o altă mini-placă D1 și urmați acești pași pentru a construi un comutator inteligent.
- Mergi la Asistent acasă > ESPHome, faceți clic Dispozitiv nou, și apoi creați un nou proiect numit întrerupător de sonerie. Asigurați-vă că alegeți Wemos D1 și Wemos D1 mini bord.
- Faceți clic pe Editați | × butonul de sub proiectul bell-switch și inserați următorul cod chiar mai jos portal_captive:
intrerupator:
- platforma: gpio
pin: D2
id: releu
Nume: "clopot"
pictograma: "mdi: clopot"
on_turn_on:
- întârziere: 200 ms
- intrerupator.turn_off: releu - De asemenea, actualizați SSID-ul și parola Wi-FI.
- Clic Salvați și apoi faceți clic Instalare.
- Clic Conectați-vă la acest computer și apoi descărcați firmware-ul.
- Clic Deschideți ESPHome Web și utilizați programul de instalare web pentru a flashiza firmware-ul de pe această mini placă D1.
- Odată ce firmware-ul este instalat, puteți lipi două fire la această mini placă D1, așa cum se arată în diagrama de mai jos, și apoi conectați acele două fire la orice comutator mecanic.
- Conectați alimentarea și testați comutatorul. Veți vedea rezultatul în întrerupător de sonerie busteni.
Pasul 3: Adăugați fișiere MP3
Puteți conecta un card microSD la computer și puteți copia sunetele de sonerie pe card. De asemenea, puteți adăuga orice melodie sau dialog dintr-un film pe care doriți să-l redați atunci când cineva vă apăsă comutatorul soneriei.
Asigurați-vă că toate sunt fișiere MP3 și redenumite cu numere, cum ar fi 1, 2, 3 etc. De exemplu, 1.mp3 sau 2.mp3. De asemenea, puteți utiliza orice site-uri gratuite de conversie MP3 text-to-vorbire pentru a vă crea sunete personalizate pentru acest clopoțel inteligent. Odată ce sunetele MP3 sunt copiate, conectați cardul microSD la DFPlayer.
În această etapă, puteți porni difuzorul inteligent și comutatorul de sonerie inteligentă. Puteți folosi orice adaptor de 5 V și cablu micro-USB pentru a alimenta ambele dispozitive. Puteți testa modulul atingând oricare IO sau ADKey PIN-ul DFPlayer la GND. Veți auzi redarea fișierelor MP3.
Pasul 4: Creați automatizare
Automatizarea vă va permite să declanșați sau să redați fișierul MP3 dorit atunci când cineva apasă butonul de comutare inteligentă a soneriei. Urmați acești pași:
- În Home Assistant, accesați Setări > Automatizări și scene.
- Clic Creați automatizare și faceți clic Începeți cu o automatizare goală.
- Clic Adăugați Trigger > Dispozitiv si apoi cauta clopot.
- Alege clopot în Dispozitiv și selectați Comutator de sonerie pornit opțiunea din Trigger scapă jos.
- Sub Acțiuni, faceți clic Adăugați o acțiune.
- Alege Apelați Serviciul.
- Caută ESPHome: smart_speaker_dfplayer_play și selectați-l.
- În fişier câmp, introduceți numărul fișierului MP3 pe care doriți să îl redați. Puteți schimba oricând acest număr pentru a schimba sunetul soneriei.
- Automatizarea dvs. ar trebui să arate astfel:
- Apasă pe Salvați butonul și apoi dați acestei automatizări orice nume cu o descriere (opțional).
- Clic Salvați.
Acum, dacă apăsați comutatorul de sonerie inteligentă, acesta va declanșa automatizarea și va reda sunetul pe soneria inteligentă creată de noi.
În plus, puteți crea sunete de notificare, cum ar fi „Reservoirul este plin. Opriți motorul” sau „Se detectează consumul ridicat de energie” folosind TTS la MP3 și creați automatizare pentru a reda aceste sunete ori de câte ori apar astfel de evenimente sau pe baza valorilor senzorului. De asemenea, puteți urma ghidurile noastre detaliate pentru a construi un senzor inteligent de nivel al apei și dispozitiv inteligent de monitorizare a puterii pentru Home Assistant.
Smart Bell pentru Smart Home
Clopotelul inteligent pe care l-am creat poate fi folosit și ca difuzor inteligent cu serverul Home Assistant pentru a reda alerte. De asemenea, puteți adăuga comenzi DFPlayer pe tabloul de bord Home Assistant pentru a reda, întrerupe, crește/scădea volumul etc. Pur și simplu adăugați un card de entitate pe tabloul de bord Home Assistant și căutați entitățile de control DFPlayer pentru a le adăuga.