Mit ein paar ESP8266-Mikrocontroller-Boards können Sie eine intelligente drahtlose Türklingel bauen, die mit Ihrem Home Assistant-Smart-Home-Setup funktioniert.
Eine intelligente Türklingel ist eine praktische und innovative Möglichkeit, Ihren Komfort und die Sicherheit Ihres Zuhauses zu erhöhen und zu erkennen, wer vor Ihrer Tür steht, auch wenn Sie nicht zu Hause sind.
Mit zwei ESP8266-Boards werden wir eine voll funktionsfähige WLAN-Smart-Türklingel bauen, die sich in Home integrieren lässt Assistant Smart Home-Automatisierungssoftware und sendet Push-Benachrichtigungen an Ihr Smartphone, wenn jemand klingelt Türklingel. Dies funktioniert sowohl lokal als auch remote.
Dinge, die Sie brauchen werden
Sie benötigen die folgenden Komponenten, um die DIY-Wi-Fi-Smart-Türklingel zu bauen.
- Als Gehirn der Türklingel dienen 2 x ESP8266-Mikrocontroller-Boards, wie NodeMCU oder D1 Mini
- Türklingelschalter
- Micro-USB-Stromversorgung
- DFPlayer Mini (MP3-Player-Modul)
- microSD-Karte (512 MB oder größer)
- 2W oder 3W (1" oder 2" breiter) Lautsprecher für die Tonausgabe
- 2,4-GHz-WLAN-Netzwerk
- Home Assistant-Server läuft auf einem Raspberry Pi, oder du darfst Installieren Sie Home Assistant auf einem x86-PC.
- Überbrückungskabel zum Verbinden aller Komponenten
Schritt 1: Kompilieren Sie die Firmware
Wir werden zwei verschiedene Firmwares kompilieren:
- Firmware für Smart Bell-Lautsprecher (Empfänger)
- Smart-Klingelschalter-Firmware (Sender)
Um die Firmware für den Smart Bell Speaker und den Smart Bell Switch zu kompilieren, gehen Sie wie folgt vor:
- Falls noch nicht geschehen, installieren Sie ESPHome im Home Assistant: Gehen Sie zu Einstellungen > Hinzufügen-Ons und klicken ESPHome.
- Klicken Öffnen Sie die Web-Benutzeroberfläche und dann klicken Neues Gerät.
- Benennen Sie das Gerät nach Ihren Wünschen. Für dieses Tutorial haben wir es „Smart-Bell-Speaker“ genannt. Klicken Weiter > Überspringen Sie diesen Schritt.
- Dann auswählen ESP8266 Wählen Sie aus den Optionen das gewünschte Board aus und klicken Sie dann auf Überspringen.
- Daraufhin wird eine neue Konfiguration mit dem Namen angezeigt Smart-Bell-Lautsprecher.
- Erstellen Sie auf ähnliche Weise eine weitere Konfiguration und benennen Sie sie Smart-Klingelschalter.
- Sobald die Konfigurationen erstellt sind, öffnen Sie die Smart-Bell-Lautsprecher Konfiguration, indem Sie auf klicken Bearbeiten Taste.
- Fügen Sie dann den folgenden Code unter dem ein captive_portal: Text.
uart:
tx_pin: GPIO3
rx_pin: GPIO1
baud_rate: 9600dfplayer:
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 - Bearbeiten Sie außerdem die Wi-Fi-SSID und das Passwort mit Ihrem Wi-Fi-Namen und Passwort. Stellen Sie sicher, wo Sie das installieren möchten Smart-Bell-Lautsprecher Und Smart-Klingelschalter verfügt über eine gute WLAN-Netzwerkabdeckung.
wifi:
ssid: "MyWiFiName"
password: "MyWiFiPassword" - Klicken Speichern und dann klicken Installieren.
- Wählen Manueller Download. Dadurch wird die Firmware-Kompilierung gestartet. Laden Sie nach dem Kompilieren die Firmware herunter und speichern Sie sie auf Ihrem System.
- Öffnen Sie nun das Smart-Bell-Switch-Projekt, ändern Sie die WLAN-Geheimnisse und fügen Sie dann den folgenden Code darunter ein captive_portal:
binary_sensor:
- platform: gpio
name: "Smart Bell Switch"
pin:
number: 4
mode: INPUT_PULLUP
inverted: True
on_press:
- switch.toggle: relay1
internal: Trueswitch:
- platform: gpio
name: "Smart Door Bell"
icon: 'mdi: bell'
id: relay1
pin:
number: 2
mode: OUTPUT
inverted: True - Klicken Speichern und dann klicken Installieren.
- Wählen Manueller Download. Nach der Kompilierung beginnt der Download der Firmware automatisch. Speichern Sie beide Firmware auf dem Desktop.
Schritt 2: Laden Sie MP3-Sounddateien auf eine MicroSD-Karte hoch
Nehmen Sie eine microSD-Karte mit geringer Kapazität (nur 512 MB reichen aus). Schließen Sie es an Ihren PC an. Laden Sie Ihre Lieblingsklingeltöne aus dem Internet herunter oder nehmen Sie Ihre eigenen oder Ihre Stimme auf und speichern Sie sie als MP3-Dateien auf der microSD-Karte. Stellen Sie sicher, dass Sie diese Dateien wie folgt benennen 1.mp3, 2.mp3, usw.
Schritt 3: Flashen Sie die Firmware auf den ESP8266-Mikrocontroller
Um die Firmware zu flashen, verbinden Sie den NodeMCU oder D1 Mini über ein Micro-USB-Kabel mit dem PC und befolgen Sie dann diese Schritte:
- Herunterladen und starten ESPHome-Flasher Werkzeug.
- Wählen Sie das COM Geben Sie den Port ein und klicken Sie dann auf Durchsuche, um die Firmware-Datei auszuwählen, die Sie im vorherigen Schritt heruntergeladen haben.
- Klicken Flash-ESP. Warten Sie, bis die Firmware blinkt.
- Sobald dies erledigt ist, stellt das Gerät automatisch eine Verbindung zum Wi-Fi-Netzwerk her.
Befolgen Sie die gleichen Schritte, um die Firmware auf den beiden ESP8266-Boards zu flashen.
Schritt 4: Verkabelung der ESP8266-Karte mit DFPlayer und Lautsprecher
Sehen Sie sich das folgende Diagramm an, um den DFPlayer mit dem ESP8266 zu verbinden, auf dem Sie den geflasht haben Smart-Bell-Lautsprecher Firmware.
Sie können Überbrückungskabel verwenden, um diese Verbindungen herzustellen, und einen Lötkolben verwenden, um den Lautsprecher mit dem DFPlayer (MP3-Player-Modul) zu verbinden.
Sobald alles angeschlossen ist, verwenden Sie zwei Überbrückungskabel (Stecker an Buchse) und verbinden Sie sie mit dem Smart-Klingelschalter ESP8266-Board. Sie müssen ein Kabel an das anschließen D2 Pin auf der NodeMCU- oder D1 Mini ESP8266-Platine und einen weiteren auf dem 3V oder 3,3 V Stift. Verbinden Sie dann die anderen beiden Enden mit Ihrem herkömmlichen Druckknopf-Klingelschalter, wie in der Abbildung unten gezeigt.
Überprüfen Sie unbedingt die Verkabelung, bevor Sie fortfahren.
Schritt 5: Geräte zum Home Assistant hinzufügen
Wir müssen beide Geräte zu Home Assistant hinzufügen. Gehen Sie dazu folgendermaßen vor:
- Gehe zu Einstellungen > Geräte und Dienste.
- Sie werden das sehen Smart-Klingelschalter Und Smart-Bell-Lautsprecher (falls eingeschaltet) im Erkannte Geräte Liste.
- Klicken Konfigurieren > Einreichen.
- Wählen Sie im Dropdown-Menü einen Bereich aus und klicken Sie Beenden.
- Schalten Sie das Gerät ebenfalls ein und fügen Sie es hinzu Smart-Bell-Lautsprecher Gerät mit Ihrem Home Assistant verbinden.
Schritt 6: Erstellen Sie eine Automatisierung für benutzerdefinierte Klingeltöne und Push-Benachrichtigungen
Um Push-Benachrichtigungen für Ihre intelligente DIY-Wi-Fi-Smart-Türklingel zu aktivieren, müssen Sie im Home Assistant eine Automatisierung erstellen. Um eines zu erstellen, führen Sie die folgenden Schritte aus:
- In Heimassistent, gehe zu Einstellungen > Automatisierungen und Szenen.
- Klicken Erstellen Sie Automatisierung > Erstellen Sie eine neue Automatisierung.
- Klicken Trigger hinzufügen und auswählen Gerät.
- Wählen Smart-Klingelschalter und dann auswählen Intelligente Türklingel eingeschaltet im Auslösen runterfallen.
- Klicken Aktion hinzufügen und auswählen Rufen Sie den Service an.
- Wählen ESPHome: smart_speaker_dfplayer_play aus dem Dropdown-Menü.
- Im DateiGeben Sie 1, 2 oder 3 für den MP3-Klingelton ein, den Sie abspielen möchten.
- Dann klick Speichern.
- Geben Sie der Automatisierung einen Namen und klicken Sie dann Speichern wieder.
- Für Push-Benachrichtigungen auf Ihrem Telefon installieren Sie die Home Assistant-App auf Ihrem Smartphone, melden Sie sich bei Ihrem Home Assistant an und klicken Sie dann Aktion hinzufügen im Automatisierungsfenster.
- Wählen Rufen Sie den Service an und wähle Benachrichtigungen: Senden Sie eine Benachrichtigung über mobile_app_YourPhone.
- Geben Sie eine Nachricht ein, die Sie in der Benachrichtigung erhalten möchten, und klicken Sie auf Speichern.
Wenn Sie nun den Klingelknopf drücken, ertönt der Klingelton Smart-Bell-Lautsprecher. Sie können die Protokolle auf weitere Details überprüfen, wenn die Automatisierung funktioniert.
Machen Sie eine intelligente Türklingel intelligenter
Der Bau Ihrer eigenen WLAN-Smart-Türklingel mit ESP8266-Mikrocontroller-Boards und Home Assistant ist ein lohnendes und kostengünstiges Projekt.
Sobald die Grundfunktionalität der DIY-Wi-Fi-Smart-Türklingel ordnungsgemäß funktioniert, können Sie eine CCTV-IP-Kamera hinzufügen. und mit Home Assistant über Frigate NVR integrieren, um eine erweiterte Heimautomatisierung zu schaffen und die Sicherheit zu Hause zu verbessern. Anstelle eines herkömmlichen Türklingelschalters können Sie auch einen PIR-Sensor oder einen kapazitiven Berührungssensor integrieren. Die Möglichkeiten mit Home Assistant sind endlos.