Inhaltsverzeichnis:

IoT Notifier mit ESP-12E - Gunook
IoT Notifier mit ESP-12E - Gunook

Video: IoT Notifier mit ESP-12E - Gunook

Video: IoT Notifier mit ESP-12E - Gunook
Video: Make your own IoT Notifier | ESP 12E + WS2812 2024, Juli
Anonim
IoT Notifier mit ESP-12E
IoT Notifier mit ESP-12E

Sie sitzen zu Hause weg von Ihrem Liebsten? In dieser schwierigen Zeit wird dieses lustige kleine Projekt auf jeden Fall versuchen, ein Lächeln auf Ihre Gesichter zu zaubern.

In diesem Instructable zeige ich Ihnen, wie Sie Benachrichtigungen von Ihrem Mobiltelefon in Form von Animationen auf dem Notifier anzeigen.

Lass uns anfangen

Lieferungen

ESP12E WiFi-Modul x1

WS2812B LEDs x27

AMS1117 3.3V Spannungsregler x1

10k SMD (0805) Widerstand x4

100nF SMD (0805) Widerstand x1

NodeMCU zur Programmierung von ESP12E

Schritt 1: Der Plan

Der Plan
Der Plan
Der Plan
Der Plan

Der Plan ist, IFTTT (If This Then That) zu verwenden, um nach bestimmten Ereignissen auf dem Mobiltelefon zu suchen, die dann eine Webanfrage auslöst. Dweet wird verwendet, um Daten aus dem IFTTT zu veröffentlichen und dann dieselben Daten mit ESP12E abzurufen.

Als ich mit dem Projekt begann, war die Idee, eine Benachrichtigung zu erstellen, die mich informiert, wenn es eine Nachricht, einen Anruf usw. von einer bestimmten Person gibt. Aber dann wurde mir klar, dass mit IFTTT noch viel mehr gemacht werden kann. Also habe ich beschlossen, Benachrichtigungen wie schwacher Akku, Schaltflächen-Widget und Twitter hinzuzufügen. Sie können weitere Ereignisse von IFTTT hinzufügen.

Schritt 2: Wie funktioniert es?

WENN ein Ereignis (Nachricht, schwacher Akku, Anruf, etc.) auftritt, DANN wird eine Webanfrage an Dweet gestellt und die Daten in Form von JSON "gepostet".

Fällt der Akku beispielsweise unter 15 %, wird ein Ereignis ausgelöst, das eine Webanfrage an https://dweet.io/dweet/for/mythingname?Noti=batt stellt. Dadurch wird dem JSON-Code "Noti":"batt" hinzugefügt. Noti ist der 'Schlüssel' und batt ist sein 'Wert'.

ESP12E stellt dann eine Verbindung zu Dweet her und "ruft" die veröffentlichten Daten mit https://dweet.io/get/latest/dweet/for/mythingname ab und parst das obige JSON, um den Wert von "Noti" zu überprüfen. Jedem Ereignis wird ein anderer Wert zugewiesen und so weiß der ESP12E, welches Ereignis ausgelöst wurde.

Der ESP-12E zeigt dann die Animation kontinuierlich an, bis Sie einen Knopf auf der Rückseite drücken.

Schritt 3: Einrichten von IFTTT und Dweet

Einrichten von IFTTT und Dweet
Einrichten von IFTTT und Dweet
Einrichten von IFTTT und Dweet
Einrichten von IFTTT und Dweet
Einrichten von IFTTT und Dweet
Einrichten von IFTTT und Dweet

Dweet einrichten:

  • Sie müssen sich nur einen Namen für das Ding ausdenken.
  • Um zu überprüfen, ob es verfügbar ist, geben Sie https://dweet.io/get/latest/dweet/for/yourthingname. ein
  • Wenn Sie eine Antwort wie in der Abbildung gezeigt erhalten, ist diese verfügbar.

Einrichten eines IFTTT-Applets:

  • Besuchen Sie IFTTT und erstellen Sie ein Konto
  • Klicken Sie auf "Erkunden" und dann auf "Erstellen Sie Ihre eigenen Applets von Grund auf neu"
  • Klicken Sie auf "This" und wählen Sie "Android Battery" aus der Liste
  • Auslöser wählen - "Akku sinkt unter 15%"
  • Klicken Sie auf "Das" und wählen Sie "Webhooks" aus der Liste
  • Aktion auswählen - "Webanfrage stellen"
  • URL -
  • Methode - POST
  • Inhaltstyp - Text/einfach
  • Klicken Sie auf "Aktion erstellen"

Laden Sie die IFTTT Android/iOS App herunter und melden Sie sich bei Ihrem Konto an. Die App fordert Sie automatisch auf, den Zugriff auf verschiedene Dienste abhängig von den erstellten Applets zuzulassen. Andernfalls müssen Sie die Berechtigungen manuell erteilen.

Gehen Sie in der App zu Einstellungen>Synchronisierungsoptionen und aktivieren Sie "Standort, Android-Akku und WLAN-Verbindungen schneller ausführen".

Ebenso erstellen Sie viele Applets. Ändern Sie einfach den URL-Teil, der fett gedruckt ist

Android-Akku - batt

Twitter - Twitter

Knopf - Knopf

Schritt 4: PCB-Design

PCB-Design
PCB-Design
PCB-Design
PCB-Design
PCB-Design
PCB-Design

Sie können jede beliebige Software zum Designen von Leiterplatten verwenden. Ich verwende EasyEDA, da es für Neulinge wie mich geeignet ist. Den Schaltplan habe ich angehängt. Klicken Sie hier, um die Gerber-Dateien für die Leiterplatte herunterzuladen.

Stellen Sie sicher, dass sich unter den WLAN-Antennen des ESP-12E-Moduls keine Massefläche befindet.

Zu Programmierzwecken stehen Pads für TX, RX, RST, D3 und GND zur Verfügung.

Wenn Sie mit dem Design der Leiterplatte fertig sind, lassen Sie sie vom Hersteller Ihrer Wahl fertigen. Ich habe mich für JLCPCB wegen seines schnellen Service entschieden.

Ich lötete die 27 LEDs mit dem Reflow-Löten mit einem Tucheisen. Ich musste das ESP-12E-Modul sowie einige andere SMD-Komponenten auf der Rückseite der Platine von Hand löten.

Fehler die ich gemacht habe:

  1. Ich habe den Schaltplan nicht überprüft und so eine GND-Verbindung zu einer LED verpasst. Ich musste den Lötstopplack über dem Grundriss abkratzen und die Lötstelle überbrücken.
  2. Ich habe am Ausgang des Spannungsreglers keinen 100nF-Kondensator hinzugefügt. ESP-12E zieht mehr Strom, wenn es eine Verbindung zu WLAN herstellt. Ohne Kondensator fällt die Spannung gerade genug ab, um ESP-12E zurückzusetzen.

Mach dir keine Sorge! Ich habe die korrigierten Dateien für PCB hochgeladen.

Schritt 5: Zeit für die Codierung

Zeit zum Codieren
Zeit zum Codieren
Zeit zum Codieren
Zeit zum Codieren
Zeit zum Codieren
Zeit zum Codieren

Es gibt mehrere Möglichkeiten, ESP-12E zu programmieren. Sie können hier darüber lesen. Ich werde NodeMCU verwenden, um es zu programmieren, und deshalb hatte ich Pads für RX, TX, RST, D3 und GND gemacht. Stellen Sie sicher, dass die Platine eingeschaltet ist (mit 5 V), damit 3,3 V für ESP-12E zur Verfügung stehen. Stellen Sie die Verbindungen zur NodeMCU wie auf der Platine beschriftet her. Verbinden Sie den EN (Enable)-Pin der NodeMCU mit GND. Dadurch wird das Modul auf NodeMCU deaktiviert, sodass das Modul auf unserem Board programmiert werden kann. Verbinden Sie NodeMCU mit Ihrem Computer und öffnen Sie die hier angehängte.ino-Datei.

Nehmen Sie vor dem Hochladen die folgenden Änderungen vor:

  1. Geben Sie Ihre WLAN-SSID ein
  2. Geben Sie Ihr WLAN-Passwort ein
  3. Geben Sie Ihren einzigartigen Dweet-"Ding"-Namen ein.

Installieren Sie die ArduinoJson- und FastLED-Bibliotheken über den Bibliotheksmanager.

Hinweis: Wählen Sie bei der Installation von ArduinoJson eine niedrigere Version (5.13.5).

Wählen Sie Board>NodeMCU 1.0 und klicken Sie auf Upload!

Schritt 6: 3D-Druck

3d Drucken
3d Drucken

Nichts Besonderes hier. Nur ein einfacher Ständer mit dem Körper in Form eines Herzens.

Der Ständer enthält einen Kanal, von dem aus das USB-Kabel von der Basis zum Board führt. Ich habe den Hauptkörper so gestaltet, dass er reibschlüssig ist.

Ich versuche immer noch, das Design zu verbessern. Ich werde die Dateien aktualisieren, sobald ich damit fertig bin.

Schritt 7: Viel Spaß

Schließen Sie es an ein mobiles Ladegerät an und verpassen Sie keine Benachrichtigung!

Vielen Dank, dass Sie bis zum Ende durchgehalten haben. Ich hoffe, Sie alle lieben dieses Projekt und haben heute etwas Neues gelernt. Lassen Sie es mich wissen, wenn Sie selbst eine machen. Abonniere meinen YouTube-Kanal für mehr solcher Projekte. Vielen Dank noch mal!

Herzwettbewerb
Herzwettbewerb
Herzwettbewerb
Herzwettbewerb

Zweiter Preis beim Herzwettbewerb

Empfohlen: