Con un paio di schede microcontrollore ESP8266, puoi creare un campanello wireless intelligente che funzioni con la configurazione della casa intelligente Home Assistant.

Un campanello intelligente è un modo comodo e innovativo per migliorare la tua comodità e la sicurezza domestica e trovare chi c'è alla tua porta, anche quando non sei a casa.

Utilizzando due schede ESP8266, costruiremo un campanello intelligente Wi-Fi completamente funzionale che si integri con Home Assistente software di domotica intelligente e invia notifiche push al tuo smartphone ogni volta che qualcuno squilla campanello di casa. Funziona sia localmente che da remoto.

Cose di cui avrai bisogno

Avrai bisogno dei seguenti componenti per costruire il campanello intelligente Wi-Fi fai-da-te.

  • 2 schede microcontrollore ESP8266, come NodeMCU o D1 Mini, fungeranno da cervello del campanello
  • Interruttore del campanello
  • Alimentazione micro USB
  • DFPlayer Mini (modulo lettore MP3)
  • Scheda microSD (512 MB o superiore)
  • Altoparlante da 2 W o 3 W (1" o 2" di larghezza) per l'uscita audio
  • instagram viewer
  • Rete Wi-Fi da 2,4 GHz
  • Server Home Assistant in esecuzione su un Raspberry Pi, o potresti installa Home Assistant su un PC x86.
  • Cavi jumper per collegare tutti i componenti

Passaggio 1: compilare il firmware

Compileremo due diversi firmware:

  • Firmware dell'altoparlante campanello intelligente (ricevitore)
  • Firmware interruttore campanello intelligente (trasmettitore)

Per compilare il firmware dell'altoparlante del campanello intelligente e dell'interruttore del campanello intelligente, attenersi alla seguente procedura:

  1. Se non è già installato, installa ESPHome in Home Assistant: vai a Impostazioni > Aggiungere-On e fare clic ESPHome.
    Schermata di Ravi. NAR
  2. Clic Apri l'interfaccia utente Web e quindi fare clic Nuovo dispositivo.
  3. Dai al dispositivo il nome che preferisci. Per questo tutorial lo abbiamo chiamato "altoparlante-campanello-intelligente". Clic Avanti > Salta questo passaggio.
  4. Quindi seleziona ESP8266 scheda dalle opzioni e quindi fare clic su Saltare.
  5. Questo vedrà una nuova configurazione denominata altoparlante-campanello-intelligente.
  6. Allo stesso modo, crea un'altra configurazione e assegnale un nome interruttore del campanello intelligente.
  7. Una volta create le configurazioni, aprire il file altoparlante-campanello-intelligente configurazione cliccando su Modificare pulsante.
  8. Quindi incolla il seguente codice sotto il file captive_portal: testo.
    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. Inoltre, modifica l'SSID Wi-Fi e i segreti della password con il nome e la password Wi-Fi. Assicurati dove installerai il file altoparlante-campanello-intelligente E interruttore del campanello intelligente ha una discreta copertura di rete Wi-Fi.
    wifi: 
    ssid: "MyWiFiName"
    password: "MyWiFiPassword"
  10. Clic Salva e quindi fare clic Installare.
  11. Scegliere Scaricamento manuale. Questo avvierà la compilazione del firmware. Una volta compilato, scarica e salva il firmware sul tuo sistema.
  12. Ora apri il progetto smart-bell-switch, modifica i segreti Wi-Fi e poi incolla il seguente codice sotto il file 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. Clic Salva e quindi fare clic Installare.
  14. Scegliere Scaricamento manuale. Dopo la compilazione, il download del firmware inizierà automaticamente. Salvare entrambi i firmware su Desktop.

Passaggio 2: carica i file audio MP3 su una scheda MicroSD

Prendi una scheda microSD di piccola capacità (funzionerà fino a 512 MB). Collegalo al tuo PC. Scarica i tuoi suoni di campana preferiti da Internet oppure puoi registrare la tua voce e salvarli come file MP3 sulla scheda microSD. Assicurati di denominare questi file come 1.mp3, 2.mp3, eccetera.

Passaggio 3: eseguire il flashing del firmware sul microcontrollore ESP8266

Per aggiornare il firmware, collega NodeMCU o D1 Mini al PC utilizzando un cavo micro USB e quindi segui questi passaggi:

  1. Scarica e avvia ESPHome-Flasher attrezzo.
  2. Scegli il COM porta e quindi fare clic su Navigare per selezionare il file del firmware scaricato nel passaggio precedente.
  3. Clic Flash ESP. Attendi che il firmware esegua il flashing.
  4. Una volta terminato, il dispositivo si connetterà automaticamente alla rete Wi-Fi.

Segui gli stessi passaggi per eseguire il flashing del firmware sulle due schede ESP8266.

Passaggio 4: cablaggio della scheda ESP8266 con DFPlayer e altoparlante

Fare riferimento allo schema seguente per collegare il DFPlayer con l'ESP8266 su cui è stato eseguito il flashing altoparlante-campanello-intelligente firmware.

È possibile utilizzare cavi jumper per effettuare questi collegamenti e utilizzare un saldatore per collegare l'altoparlante al DFPlayer (modulo lettore MP3).

Una volta collegato tutto, utilizzare due cavi jumper (maschio-femmina) e collegarli a interruttore del campanello intelligente Scheda ESP8266. È necessario collegare un filo a D2 pin sulla scheda NodeMCU o D1 Mini ESP8266 e un altro su 3V O 3,3 V spillo. Quindi collega le altre due estremità al tradizionale interruttore a pulsante, come mostrato nello schema seguente.

Assicurati di ricontrollare il cablaggio prima di procedere.

Passaggio 5: aggiungi dispositivi a Home Assistant

Dobbiamo aggiungere entrambi i dispositivi a Home Assistant. Per fare ciò, segui questi passaggi:

  1. Vai a Impostazioni > Dispositivi e servizi.
  2. Vedrai il interruttore del campanello intelligente E altoparlante-campanello-intelligente (se acceso) nel Dispositivi rilevati elenco.
  3. Clic Configura > Invia.
  4. Scegli un'area dal menu a discesa e fai clic Fine.
  5. Allo stesso modo, accendi e aggiungi il file altoparlante-campanello-intelligente dispositivo all'assistente domestico.

Passaggio 6: crea l'automazione per il suono personalizzato della campana e le notifiche push

Per abilitare le notifiche push per il tuo campanello intelligente Wi-Fi fai-da-te, devi creare un'automazione nell'Assistente Domestico. Per crearne uno, segui questi passaggi:

  1. In Assistente domestico, vai a Impostazioni > Automazioni e scene.
  2. Clic Crea automazione > Creare una nuova automazione.
  3. Clic Aggiungi trigger e seleziona Dispositivo.
  4. Scegliere interruttore del campanello intelligente e quindi selezionare Campanello intelligente acceso nel Grilletto cadere in picchiata.
  5. Clic Aggiungi azione e seleziona Chiama il servizio.
  6. Scegliere ESPHome: smart_speaker_dfplayer_play dal menu a discesa.
  7. Nel file, digita 1, 2 o 3 per il suono della campana MP3 che desideri riprodurre.
  8. Quindi fare clic Salva.
  9. Assegnare un nome all'automazione e quindi fare clic Salva Ancora.
  10. Per le notifiche push sul tuo telefono, installa l'app Home Assistant sul tuo smartphone, accedi a Home Assistant, quindi fai clic su Aggiungi azione nella finestra di automazione.
  11. Selezionare Chiama il servizio e scegli Notifiche: invia una notifica tramite mobile_app_YourPhone.
  12. Digita un messaggio che desideri ricevere nella notifica e fai clic su Salva.

Se ora premi il pulsante del campanello, il suono del campanello verrà riprodotto da altoparlante-campanello-intelligente. Puoi controllare i log per maggiori dettagli se l'automazione funziona.

Rendi più intelligente un campanello per porte intelligente

Costruire il tuo campanello intelligente Wi-Fi fai-da-te utilizzando le schede microcontrollore ESP8266 e Home Assistant è un progetto gratificante ed economico.

Una volta che le funzionalità di base del campanello intelligente Wi-Fi fai-da-te funzionano correttamente, puoi aggiungere una telecamera IP CCTV, e integrarsi con Home Assistant utilizzando Frigate NVR per creare un'automazione domestica avanzata e migliorare la sicurezza domestica. Puoi anche integrare un sensore PIR o un sensore tattile capacitivo invece del tradizionale interruttore per campanello. Le possibilità con Home Assistant sono infinite.