Trådløse dørklokker er en fantastisk måde at tilføje klokker i hjemmet eller på kontoret uden at bruge nogen ledninger. Disse trådløse klokker kommer dog med begrænset prækonfigurerede MIDI-lyde, der afspilles, når nogen trykker på knappen på senderenheden.
Selvom du kan skifte mellem MIDI-lydene og øge eller mindske lydstyrken, er det alt, du kan gøre med disse trådløse dørklokker. Men i dag vil vi bygge en DIY smart trådløs dørklokke, hvor du kan tilføje brugerdefinerede MP3-lyde eller musikfiler, der afspilles, når nogen trykker på klokkekontakten. Du kan også tilpasse opsætningen og bruge klokken som en smart højttaler.
Ting du får brug for
Du skal bruge følgende for at bygge og opsætte en brugerdefineret DIY smart dørklokke.
- Home Assistant-server, der kører på en Raspberry Pi eller enhver anden understøttet enhed.
- 2 x Wemos D1 mini- eller NodeMCU-kort.
- 50 mm højtaler.
- Et PAM8403 mini 5V digitalt forstærkerkort.
- DuPont eller jumper ledninger. Du kan også have brug for en loddekolbe og tin til at lodde samlinger, hvis du ønsker en permanent forbindelse.
- Etui til at samle alle dele. Du kan udskrive denne 3D sag.
Trin 1: Byg en smart højttaler
Først vil vi bygge en smart højttaler, der fungerer med Home Assistant og derefter bruge den som en smart klokke til dette projekt. Du kan også bruge denne smarte klokke til at afspille stemmealarmer. Trinene er som følger:
- Åbn Home Assistant og installer ESPHome-tilføjelsen.
- Efter installationen skal du åbne ESPHome og klikke +Ny enhed.
- Klik Blive ved og skriv et navn, som f.eks smart-højttaler.
- Klik Næste > Vælg et specifikt bord og vælg Wemos D1 og Wemos D1 mini. Klik Næste.
- Find en smarthøjttaler på listen, og klik på Redigere knap.
- I dit YAML-editorvindue skal du opdatere Wi-Fi SSID og adgangskode.
- Indsæt derefter følgende kode lige nedenfor captive_portal:
uart:
tx_pin: GPIO3
rx_pin: GPIO1
baud_rate: 9600
dfplayer:
on_finished_playback:
derefter:
logger.log: 'Afspilning afsluttet begivenhed'
api:
kryptering:
nøgle: "Din krypteringsnøgle"
tjenester:
- tjeneste: dfplayer_next
derefter:
-dfplayer.play_next:
- tjeneste: dfplayer_previous
derefter:
-dfplayer.play_previous:
- tjeneste: dfplayer_play
variabler:
fil: int
derefter:
- dfplayer.play: !lambda 'Vend tilbage fil;'
- tjeneste: dfplayer_play_loop
variabler:
fil: int
loop_: bool
derefter:
-dfplayer.Spil:
fil:!lambda 'Vend tilbage fil;'
sløjfe:!lambda 'Vend tilbage loop_;'
- tjeneste: dfplayer_play_folder
variabler:
folder: int
fil: int
derefter:
-dfplayer.play_folder:
mappe:!lambda 'Vend tilbage folder;'
fil:!lambda 'Vend tilbage fil;'
- tjeneste: dfplayer_play_loop_folder
variabler:
folder: int
derefter:
-dfplayer.play_folder:
mappe:!lambda 'Vend tilbage folder;'
sløjfe: rigtigt
- tjeneste: dfplayer_set_device_tf
derefter:
-dfplayer.set_device: TF_CARD
- tjeneste: dfplayer_set_device_usb
derefter:
-dfplayer.set_device: USB
- tjeneste: dfplayer_set_volume
variabler:
bind: int
derefter:
- dfplayer.set_volume: !lambda 'Vend tilbage bind;'
- tjeneste: dfplayer_set_eq
variabler:
forudindstillet: int
derefter:
- dfplayer.set_eq: !lambda 'returner static_cast<dfplayer:: EqPreset>(forudindstillet);'
- tjeneste: dfplayer_sleep
derefter:
-dfplayer.søvn
- tjeneste: dfplayer_reset
derefter:
-dfplayer.Nulstil
- tjeneste: dfplayer_start
derefter:
-dfplayer.Start
- tjeneste: dfplayer_pause
derefter:
-dfplayer.pause
- tjeneste: dfplayer_stop
derefter:
-dfplayer.hold op
- tjeneste: dfplayer_random
derefter:
-dfplayer.tilfældig
- tjeneste: dfplayer_volume_up
derefter:
-dfplayer.lydstyrke op
- tjeneste: dfplayer_volume_down
derefter:
-dfplayer.Skrue ned - Erstatte Din krypteringsnøgle i ovenstående kode med din eksisterende krypteringsnøgle. Fjern også følgende kode, hvis den er over captive_portal: tekst – der skal kun være én api: afsnit jegn den komplette kode, ellers vil du modtage kompileringsfejl.
api:
kryptering:
nøgle: "Din krypteringsnøgle" - Klik Gemme og klik derefter Installere.
- Vælg Tilslut denne computer og vent på, at firmwaren kompileres.
- Når firmwaren er kompileret, skal du klikke på Download projekt link for at downloade firmwaren.
- Klik Åbn ESPHome Web og tilslut din D1 mini til pc'en ved hjælp af et mikro-USB-kabel.
- Klik Forbinde og vælg COM port hvor D1 mini er tilsluttet.
- Klik Installere og klik derefter Vælg fil for at vælge den firmware, du downloadede.
- Klik Installere.
- Når firmwaren er installeret, se følgende diagram for at forbinde DFPlayer eller dit MP3-afspillermodul med D1-minikortet.
Som standard kan DFPlayer-modulet køre to 3W-højttalere, som du kan tilslutte til SPK_1- og SPK_2-benene, som vist i diagrammet. Den anden terminal på begge højttalere forbindes til GND-terminalen mellem de to højttalerterminaler på DFPlayer-modulet.
Tip: For højere og fyldigere lyd fra din 50 mm eller større 3W højttaler, skal du sørge for at installere et forstærkermodul såsom en PAM8403 mellem højttaleren og DFPlayer.
Trin 2: Byg en smart switch
Tag endnu et D1-minikort, og følg disse trin for at bygge en smart switch.
- Gå til Hjemmeassistent > ESPHome, klik Ny enhed, og opret derefter et nyt projekt kaldet klokke-kontakt. Sørg for at vælge Wemos D1 og Wemos D1 mini bestyrelse.
- Klik på Redigere knappen under klokke-switch-projektet og indsæt følgende kode lige nedenfor captive_portal:
kontakt:
- platform: gpio
pind: D2
id: relæ
navn: "klokke"
ikon: "mdi: klokke"
on_turn_on:
- forsinkelse: 200ms
- kontakt.turn_off: relæ - Opdater også Wi-FI SSID og adgangskode.
- Klik Gemme og klik derefter Installere.
- Klik Tilslut denne computer og download derefter firmwaren.
- Klik Åbn ESPHome Web og brug webinstallationsprogrammet til at flashe firmwaren på dette D1 minikort.
- Når firmwaren er installeret, kan du lodde to ledninger til dette D1 minikort som vist i diagrammet nedenfor, og derefter forbinde disse to ledninger til en hvilken som helst mekanisk klokkekontakt.
- Tilslut strømmen og test kontakten. Du vil se outputtet i klokke-kontakt logs.
Trin 3: Tilføj MP3-filer
Du kan tilslutte et microSD-kort til din pc og kopiere klokkelyde til kortet. Du kan også tilføje enhver sang eller dialog fra en film, som du vil afspille, når nogen trykker på din dørklokkekontakt.
Sørg for, at de alle er MP3-filer og omdøbt med numre, såsom 1, 2, 3 osv. For eksempel, 1.mp3 eller 2.mp3. Du kan også bruge et hvilket som helst gratis tekst-til-tale MP3-konverteringswebsted til at skabe dine tilpassede lyde til denne smarte klokke. Når MP3-lydene er kopieret, skal du tilslutte microSD-kortet til DFPlayer.
På dette tidspunkt kan du tænde for smarthøjttaleren og smartklokkekontakten. Du kan bruge en hvilken som helst 5V-adapter og mikro-USB-kabel til at forsyne begge enheder. Du kan teste modulet ved at trykke på en hvilken som helst IO eller ADKøgl pin af DFPlayer til GND. Du vil høre MP3-filerne afspilles.
Trin 4: Opret automatisering
Automatisering giver dig mulighed for at udløse eller afspille den ønskede MP3-fil, når nogen trykker på den smarte klokkekontakt. Følg disse trin:
- Gå til i Home Assistant Indstillinger > Automatisering og scener.
- Klik Skab automatisering og klik Start med en tom automatisering.
- Klik Tilføj trigger > Enhed og søg derefter efter klokke.
- Vælge klokke i Enhed og vælg Klokkekontakt tændt mulighed fra Udløser drop-down.
- Under Handlinger, klik Tilføj handling.
- Vælge Ring til service.
- Søge efter ESPHome: smart_speaker_dfplayer_play og vælg det.
- I den fil feltet skal du indtaste MP3-filnummeret, du vil afspille. Du kan til enhver tid ændre dette nummer for at ændre klokkelyden.
- Din automatisering skal se sådan ud:
- Klik på Gemme knappen og giv derefter denne automatisering et hvilket som helst navn med en beskrivelse (valgfrit).
- Klik Gemme.
Hvis du nu trykker på smartklokkekontakten, vil den udløse automatiseringen og afspille lyden på den smartklokke, vi lavede.
Derudover kan du oprette notifikationslyde, såsom "Tanken er fuld. Sluk for motoren" eller "Højt strømforbrug er registreret" ved hjælp af TTS til MP3, og skab automatisering til at afspille disse lyde, når sådanne hændelser opstår, eller baseret på sensorværdier. Du kan også følge vores detaljerede vejledninger til at bygge en smart vandstandssensor og smart strømovervågningsenhed for hjemmeassistent.
Smart Bell til Smart Home
Den smarte klokke, vi har lavet, kan også bruges som en smart højttaler med din Home Assistant Server til at afspille alarmer. Du kan også tilføje DFPlayer-kontroller på dit Home Assistant-dashboard for at afspille, sætte på pause, øge/sænke lydstyrken osv. Du skal blot tilføje et enhedskort på Home Assistant-dashboardet og søge efter DFPlayer-kontrolenheder for at tilføje dem.