Bygg en DIY-smart ringeklokke for hjemmeassistent med push-varsler

Bygg en DIY-smart ringeklokke for hjemmeassistent med push-varsler
Lesere som deg er med på å støtte MUO. Når du foretar et kjøp ved å bruke lenker på nettstedet vårt, kan vi tjene en tilknyttet provisjon. Les mer.

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.





MUO Video av dagen RULL FOR Å FORTSETTE MED INNHOLD

Ved å bruke to ESP8266-kort vil vi bygge en fullt funksjonell Wi-Fi smart ringeklokke som integreres med Home Assistant smart home automation-programvare og sender push-varsler til smarttelefonen din hver gang noen ringer på døren. 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 .
  • 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 - Vi og klikk ESPHome .   koble til dfplayer-høyttaler for å lage en smart bjellehøyttaler
    Skjermbilde av Ravi. NAR
  2. Klikk Åpne Web UI og klikk deretter Ny enhet .
  3. Gi enheten navnet hva 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 .   kobler til den tradisjonelle trykkbryteren med smart bell esp8266-modul
  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<dfplayer::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.   sjekk logger for å feilsøke og fikse problemer
  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 MED 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.

sjekk icloud -e -post på Android -telefon

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.

apper for å sende penger til venner

Når den grunnleggende funksjonaliteten til den DIY Wi-Fi smarte ringeklokken fungerer som den skal, kan du legge til et CCTV IP-kamera og integrere 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.