Med et par ESP8266-mikrokontrollerkort kan du bygge en smart trådløs ringeklokke som fungerer med ditt Home Assistant smarthusoppsett.

En smart ringeklokke er en praktisk og innovativ måte å forbedre brukervennligheten og sikkerheten i hjemmet på og finne hvem som er på døren din, selv når du ikke er hjemme.

Ved å bruke to ESP8266-kort vil vi bygge en fullt funksjonell Wi-Fi smart ringeklokke som integreres med Home Assistent smart hjemmeautomatiseringsprogramvare og sender push-varsler til smarttelefonen din hver gang noen ringer dør-klokke. Dette fungerer både lokalt og eksternt.

Ting du trenger

Du trenger følgende komponenter for å bygge den smarte DIY Wi-Fi-dørklokken.

  • 2 x ESP8266 mikrokontrollerkort, for eksempel NodeMCU eller D1 Mini, vil tjene som hjernen til dørklokken
  • Ringeklokkebryter
  • Mikro USB strømforsyning
  • DFPlayer Mini (MP3-spillermodul)
  • microSD-kort (512MB eller større)
  • 2W eller 3W (1" eller 2" bred) høyttaler for lydutgangen
  • 2,4 GHz Wi-Fi-nettverk
  • Home Assistant-server som kjører på en Raspberry Pi, eller du kan installer Home Assistant på en x86 PC.
  • instagram viewer
  • Jumper ledninger for å koble til alle komponentene

Trinn 1: Kompiler fastvaren

Vi vil kompilere to forskjellige fastvare:

  • Fastvare for smartklokkehøyttaler (mottaker)
  • Fastvare for smartklokkebryter (sender)

Følg disse trinnene for å kompilere smart bell-høyttaleren og smart bell switch-fastvaren:

  1. Hvis ikke allerede installert, installer ESPHome i Home Assistant: gå til Innstillinger > Legg til-Ons og klikk ESPHome.
    Skjermbilde av Ravi. NAR
  2. Klikk Åpne Web UI og klikk deretter Ny enhet.
  3. Gi enheten et navn du vil. For denne opplæringen kalte vi den "smart-bell-speaker". Klikk Neste > Hopp over dette trinnet.
  4. Velg deretter ESP8266 tavle fra alternativene og klikk deretter Hopp over.
  5. Dette vil se en ny konfigurasjon kalt smart-bjelle-høyttaler.
  6. På samme måte oppretter du en konfigurasjon til og gir den et navn smart-bjelle-bryter.
  7. Når konfigurasjonene er opprettet, åpner du smart-bjelle-høyttaler konfigurasjon ved å klikke på Redigere knapp.
  8. Deretter limer du inn følgende kode under captive_portal: tekst.
    uart:
    tx_pin: GPIO3
    rx_pin: GPIO1
    baud_rate: 9600

    dfplayer:
    on_finished_playback:
    then:
    logger.log: 'Playback finished event'

    api:
    encryption:
    key: "kQ5tP73N1pOl6XDYtq5RY15IaPsXjTg2A9g5nzHPejE="
    services:
    - service: dfplayer_next
    then:
    -dfplayer.play_next:
    - service: dfplayer_previous
    then:
    -dfplayer.play_previous:
    - service: dfplayer_play
    variables:
    file: int
    then:
    - dfplayer.play: !lambda'return file;'
    - service: dfplayer_play_loop
    variables:
    file: int
    loop_: bool
    then:
    -dfplayer.play:
    file: !lambda'return file;'
    loop: !lambda'return loop_;'
    - service: dfplayer_play_folder
    variables:
    folder: int
    file: int
    then:
    -dfplayer.play_folder:
    folder: !lambda'return folder;'
    file: !lambda'return file;'

    - service: dfplayer_play_loop_folder
    variables:
    folder: int
    then:
    -dfplayer.play_folder:
    folder: !lambda'return folder;'
    loop: true

    - service: dfplayer_set_device_tf
    then:
    -dfplayer.set_device: TF_CARD

    - service: dfplayer_set_device_usb
    then:
    -dfplayer.set_device: USB

    - service: dfplayer_set_volume
    variables:
    volume: int
    then:
    - dfplayer.set_volume: !lambda'return volume;'
    - service: dfplayer_set_eq
    variables:
    preset: int
    then:
    - dfplayer.set_eq: !lambda'return static_cast<: eqpreset="eqpreset">(preset);'

    - service: dfplayer_sleep
    then:
    -dfplayer.sleep

    - service: dfplayer_reset
    then:
    -dfplayer.reset

    - service: dfplayer_start
    then:
    -dfplayer.start

    - service: dfplayer_pause
    then:
    -dfplayer.pause

    - service: dfplayer_stop
    then:
    -dfplayer.stop

    - service: dfplayer_random
    then:
    -dfplayer.random

    - service: dfplayer_volume_up
    then:
    -dfplayer.volume_up

    - service: dfplayer_volume_down
    then:
    -dfplayer.volume_down

  9. Rediger også Wi-Fi SSID og passordhemmeligheter med Wi-Fi-navnet og passordet ditt. Pass på hvor du skal installere smart-bjelle-høyttaler og smart-bjelle-bryter har anstendig Wi-Fi-nettverksdekning.
    wifi: 
    ssid: "MyWiFiName"
    password: "MyWiFiPassword"
  10. Klikk Lagre og klikk deretter Installere.
  11. Velge Manuell nedlasting. Dette vil starte fastvarekompileringen. Når den er kompilert, last ned og lagre fastvaren på systemet ditt.
  12. Åpne nå smart-bell-switch-prosjektet, endre Wi-Fi-hemmelighetene og lim deretter inn følgende kode under captive_portal:
    binary_sensor:
    - platform: gpio
    name: "Smart Bell Switch"
    pin:
    number: 4
    mode: INPUT_PULLUP
    inverted: True
    on_press:
    - switch.toggle: relay1
    internal: True

    switch:
    - platform: gpio
    name: "Smart Door Bell"
    icon: 'mdi: bell'
    id: relay1
    pin:
    number: 2
    mode: OUTPUT
    inverted: True

  13. Klikk Lagre og klikk deretter Installere.
  14. Velge Manuell nedlasting. Etter kompileringen starter nedlastingen av fastvaren automatisk. Lagre begge fastvarene på Skrivebord.

Trinn 2: Last opp MP3-lydfiler til et MicroSD-kort

Ta et microSD-kort med liten kapasitet (så lavt som 512 MB vil fungere). Koble den til din PC. Last ned favorittklokkelydene dine fra internett, eller du kan spille inn din egen eller din stemme, og lagre dem som MP3-filer på microSD-kortet. Sørg for å navngi disse filene som 1.mp3, 2.mp3, etc.

Trinn 3: Flash fastvaren til ESP8266-mikrokontrolleren

For å flashe fastvaren, koble NodeMCU eller D1 Mini til PC-en med en mikro-USB-kabel og følg deretter disse trinnene:

  1. Last ned og start ESPHome-Flasher verktøy.
  2. Velg COM port og klikk deretter Bla gjennom for å velge fastvarefilen du lastet ned i forrige trinn.
  3. Klikk Flash ESP. Vent til fastvaren blinker.
  4. Når det er gjort, vil enheten automatisk koble til Wi-Fi-nettverket.

Følg de samme trinnene for å flashe fastvaren på de to ESP8266-kortene.

Trinn 4: Koble til ESP8266-kort med DFPlayer og høyttaler

Se følgende diagram for å koble DFPlayer til ESP8266 som du blinket på smart-bjelle-høyttaler fastvare.

Du kan bruke jumperledninger for å lage disse tilkoblingene og bruke en loddebolt for å koble høyttaleren til DFPlayer (MP3-spillermodul).

Når alt er koblet til, bruk to jumperledninger (hann til hunn) og koble dem til smart-bjelle-bryter ESP8266-kort. Du må koble en ledning til D2 pin på NodeMCU- eller D1 Mini ESP8266-kortet og en annen til 3V eller 3,3V pin. Koble deretter de to andre endene til din tradisjonelle trykkknappklokkebryter, som vist i diagrammet nedenfor.

Sørg for å dobbeltsjekke ledningene før du fortsetter.

Trinn 5: Legg til enheter i Home Assistant

Vi må legge til begge enhetene i Home Assistant. For å gjøre det, følg disse trinnene:

  1. Gå til Innstillinger > Enheter og tjenester.
  2. Du vil se smart-bjelle-bryter og smart-bjelle-høyttaler (hvis slått på) i Oppdagede enheter liste.
  3. Klikk Konfigurer > Sende inn.
  4. Velg et område fra rullegardinmenyen og klikk Bli ferdig.
  5. På samme måte slår du på og legger til smart-bjelle-høyttaler enheten til Home Assistant.

Trinn 6: Lag automatisering for tilpasset klokkelyd og push-varsler

For å aktivere push-varsler for din smarte DIY Wi-Fi-smart ringeklokke, må du opprette en automatisering i Home Assistant. For å opprette en, følg disse trinnene:

  1. I Hjemmeassistent, gå til Innstillinger > Automatisering og scener.
  2. Klikk Lag automatisering > Lag ny automatisering.
  3. Klikk Legg til trigger og velg Enhet.
  4. Velge smart-bjelle-bryter og velg deretter Smart dørklokke slått på i Avtrekker fall ned.
  5. Klikk Legg til handling og velg Ring service.
  6. Velge ESPHome: smart_speaker_dfplayer_play fra rullegardinmenyen.
  7. I fil, skriv 1, 2 eller 3 for hvilken MP3-klokkelyd du vil spille av.
  8. Klikk deretter Lagre.
  9. Gi automatiseringen et navn og klikk deretter Lagre en gang til.
  10. For push-varsler på telefonen, installer Home Assistant-appen på smarttelefonen, logg på Home Assistant og klikk Legg til handling i automatiseringsvinduet.
  11. Plukke ut Ring service og velg Varsler: Send et varsel via mobile_app_YourPhone.
  12. Skriv inn en melding du vil motta i varselet og klikk Lagre.

Hvis du nå trykker på ringeklokkeknappen, vil ringelyden spille fra smart-bjelle-høyttaler. Du kan sjekke loggene for flere detaljer hvis automatisering fungerer.

Gjør en smart dørklokke smartere

Å bygge din egen DIY Wi-Fi smarte ringeklokke ved hjelp av ESP8266 mikrokontrollerbrett og Home Assistant er et givende og kostnadseffektivt prosjekt.

Når den grunnleggende funksjonaliteten til DIY Wi-Fi-smartringklokken fungerer som den skal, kan du legge til et CCTV IP-kamera, og integrer med Home Assistant ved å bruke Fregate NVR for å lage avansert hjemmeautomatisering og forbedre hjemmesikkerheten. Du kan også integrere en PIR-sensor eller en berøringskapasitiv sensor i stedet for en tradisjonell ringeklokkebryter. Mulighetene med Home Assistant er uendelige.