Inhaltsverzeichnis:
- Schritt 1: Benötigte Materialien und Werkzeuge
- Schritt 2: Programmierung
- Schritt 3: So funktioniert der Code (bei Interesse, ansonsten einfach überspringen)
- Schritt 4: Schaltplan
- Schritt 5: Entlöten Sie die Stiftleiste
- Schritt 6: Löten Sie den Schalter
- Schritt 7: Verbinden Sie CH_PD mit VCC
- Schritt 8: Entfernen Sie die Power-LED
- Schritt 9: Lötkonfigurationsschalter
- Schritt 10: Netzteil, Regler und Stecker hinzufügen
- Schritt 11: Sekundenkleber es zusammen
- Schritt 12: Aufladen
- Schritt 13: Konfigurieren
- Schritt 14: Probieren Sie es aus
- Schritt 15: Update: 3D-gedrucktes Gehäuse
Video: Winziger ESP8266 Dash-Button (rekonfigurierbar) - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:17
Dies ist ein winziger ESP8266-basierter Dash-Button. Es bleibt im Tiefschlaf, führt beim Drücken der Taste eine GET-Anfrage an die angegebene URL aus und übergibt, falls konfiguriert, auch die Versorgungsspannung als Variable. Das Beste daran ist, dass Sie durch einfaches Überbrücken von zwei Pins in den Konfigurationsmodus wechseln können. Ermöglicht Ihnen, alle Einstellungen ohne Neuprogrammierung zu ändern.
Um diesem instructable zu folgen, gehe ich davon aus, dass Sie einige Dinge kennen, wie; wie man lötet, wie man einem Schaltplan folgt und wie man ein Programm und SPIFFS-Daten auf ein ESP hochlädt.
Schritt 1: Benötigte Materialien und Werkzeuge
Für dieses Projekt benötigen Sie:
- Ein ESP-01 (offensichtlich)
- Ein 50mAh oder ähnlicher Li-Po Akku
- 2x1 Buchsenleiste
- Ein 3,3 V LDO (sehr zu empfehlen das HT-7333A, es hat einen ausgezeichneten Standby-Strom von 4uA und 170mV Dropout)
- Ein kleiner Druckknopf
- Etwas dünner Draht (Drahtwickeldraht funktioniert großartig)
Sie benötigen außerdem:
- Ein ESP-Programmierboard
- Ein Lötkolben / Lot / Flussmittel
- Eine Entlötpumpe
- Pinzette und/oder Abisolierzange
- Sandpapier
- Sekundenkleber
Schritt 2: Programmierung
Dieses Projekt ist vollständig Open Source, wenn Sie den Code ändern möchten, der sich auf meinem GitHub befindet. Aber das ist nicht nötig. Diese Taste kann ohne Neuprogrammierung neu konfiguriert werden.
Den vorkompilierten Code können Sie hier herunterladen.
Schließen Sie einfach Ihren ESP-Programmierer und Ihren ESP8266 an (denken Sie daran, GPIO_02 mit GND zu verbinden, um in den Programmiermodus zu gelangen) und laden Sie die.bin-Datei und die SPIFFS-Daten hoch.
Es ist sehr wichtig, den SPIFFS-Datenordner hochzuladen, ohne ihn wird der Code nicht booten. Und nach dem Entfernen der Stiftleisten wird es sehr mühsam, wieder neu zu programmieren.
Schritt 3: So funktioniert der Code (bei Interesse, ansonsten einfach überspringen)
Wenn der ESP hochfährt, liest und parst er die Datei ‚config.jsn‘aus dem SPIFFS-Dateisystem mithilfe der ArduinoJSON-Bibliothek. Dadurch werden alle konfigurierbaren Einstellungen in Variablen geladen.
Dann überprüft es, ob GPIO_03[RX] mit Masse verbunden ist, wenn dies der Fall ist, wird der Konfigurationsmodus aufgerufen.
Wenn dies nicht der Fall ist, wird versucht, eine Verbindung zum WLAN und dann zum Server herzustellen. Es schließt eine GET-Anforderung ab und wechselt in den Tiefschlaf, um Strom zu sparen.
Im Konfigurationsmodus können Sie alle Einstellungen vornehmen. (mehr dazu in Schritt 13)
Da hier Energiesparen wichtig ist, blinkt es einfach fünfmal schnell und dann lange, wenn etwas zu lange dauert oder die Verbindung zum WLAN/Server fehlschlägt, um einen Fehler anzuzeigen und in den Tiefschlaf zurückzukehren.
Wenn alles gut geht, blinkt es kurz und dann lange. Um zu zeigen, dass es gelingt. Dann geh in den Tiefschlaf.
Immer noch neugierig? schau mal auf meinem GitHub.
Schritt 4: Schaltplan
Dies sollte Ihnen während der nächsten Schritte beim Erstellen helfen.
Schritt 5: Entlöten Sie die Stiftleiste
Stellen Sie zunächst zu 100 % sicher, dass Sie den ESP8266 richtig programmiert haben und 100 % sicher, dass Sie die SPIFFS-Daten hochgeladen haben.
Dann ist der erste Schritt, die 2x4-Stiftleiste zu entlöten, damit wir unseren Knopf kleiner machen können. Aber es bedeutet auch, dass Sie nicht neu programmieren können, ohne es neu zu löten. Stellen Sie sicher, dass das Programm und SPIFFS geflasht sind.
Sie können die Einstellungen weiterhin neu konfigurieren.
Mit einer spitzen Lötkolbenspitze und einer Entlötpumpe geht das viel einfacher. Meine Strategie besteht darin, zuerst alle acht Pins mit Lötzinn zu überbrücken, dann alle auf einmal zu erhitzen und den Header mit einer Pinzette herauszuziehen. Dann, nachdem ich das überschüssige Lot entfernt habe, stoße ich die Löcher von oben mit dem Bügeleisen und sauge das Lot mit meiner Pumpe durch den Boden ab.
Schritt 6: Löten Sie den Schalter
Als nächstes möchten Sie Ihren Druckschalter zwischen GND und RST verlöten. In meinem Fall waren die Knopfnadeln einfach etwas zu dick, deshalb musste ich sie mit einer Schere etwas dünner schneiden. Stellen Sie sicher, dass der Knopf bündig mit der Platine sitzt, da er sonst mit der Zeit durch den Druck beim Drücken brechen könnte.
Schritt 7: Verbinden Sie CH_PD mit VCC
Damit der ESP den Code ausführen kann, vergessen Sie nicht, CH_PD mit VCC zu verbinden.
Schritt 8: Entfernen Sie die Power-LED
Die Taste muss möglichst wenig Strom verbrauchen. Und da es immer eingeschaltet ist, würde die Strom-LED immer ~ 4 mA verbrauchen. Dies würde die Akkulaufzeit auf zwölf Stunden reduzieren. Also entlöten Sie es oder brechen Sie es ab.
Schritt 9: Lötkonfigurationsschalter
Um in den Konfigurationsmodus zu gelangen, muss GPIO_03[RX] mit GND verbunden sein. Um es einfach zu machen, habe ich einen kleinen Hebel angelötet, der zur Seite geschoben werden kann, um die Verbindung herzustellen.
Schritt 10: Netzteil, Regler und Stecker hinzufügen
Dies ist der längste Teil des Builds. Sie müssen den Akku, den Spannungsregler und den Ladestecker gemäß dem Schaltplan verlöten.
Damit alles in den winzigen Raum unter dem ESP-01 passt, musste ich das TO92-Paket des Spannungsreglers abschleifen. Stellen Sie sicher, dass Sie Ihr Layout vor dem Löten planen, es wird sehr eng sein, sollte aber noch machbar sein.
Wenn Ihre Batterie zu groß ist, können Sie den Spannungsregler weglassen. Dies funktioniert, riskiert jedoch eine Beschädigung des ESP8266. Es ist nur für maximal 3,6 V ausgelegt, aber ein voll aufgeladener LiPo gibt 4,2 V aus. Fahren Sie auf eigene Gefahr fort.
Schritt 11: Sekundenkleber es zusammen
Der letzte Schritt, um alles an Ort und Stelle zu halten, besteht darin, alles mit Sekundenkleber an Ort und Stelle zu kleben.
Schritt 12: Aufladen
Um Ihren Knopf aufzuladen, benötigen Sie eine Art LiPo-Ladegerät. Ich verwende einfach ein generisches USB-Li-Po-Ladeboard, das über den Ladeanschluss mit dem Knopf verbunden ist. Achten Sie darauf, die Polarität nicht zu vertauschen.
Schritt 13: Konfigurieren
Sie sind fast bereit, Ihre Schaltfläche zum ersten Mal zu verwenden.
Um in den Konfigurationsmodus zu gelangen, müssen Sie GPIO_03[RX] mit GND verbinden. Dies wird einfacher, wenn Sie einen Hebel wie in Schritt 9 verlötet haben. Wenn Sie dann die Taste zum Zurücksetzen des ESP drücken, sollte es in den Konfigurationsmodus wechseln. Sie können den Hebel jetzt trennen.
Dann können Sie einfach:
- Verbinden Sie sich mit dem WLAN-Zugangspunkt 'ESP_Button' mit dem Passwort 'wifibutton'
- Besuchen Sie https://192.168.4.1, um die Konfigurationsseite zu öffnen.
- Nachdem Sie Ihre Werte eingestellt haben, klicken Sie auf die Schaltfläche 'Speichern' und dann auf 'Neustart'
- Ihre Schaltfläche wird neu gestartet, führt die Anfrage aus und wechselt in den Tiefschlaf.
Stellen Sie sicher, dass Sie nur den Hostnamen in das Host-Feld eingeben, kein https:// oder https:// und trennen Sie den Rest der URL in den URI-Feldern.
Schritt 14: Probieren Sie es aus
Sie sollten alle startklar sein, das Drücken der Taste wird Ihre GET-Anfrage stellen.
Das obige Video ist meine Schaltfläche, die eine Verbindung zu meiner Website und IFTTT herstellt und einen benutzerdefinierten generierten Tweet postet.
Das Einrichten der GET-Anfrage liegt außerhalb des Umfangs dieser Anleitung, aber Sie sollten dies problemlos mit IFTTT oder einem anderen Dienst verbinden können. Wenn Sie bereit sind, benutzerdefinierten PHP-Code zu schreiben und ihn auf Ihrer eigenen Website zu hosten, wie ich es getan habe, können Sie möglicherweise sogar den Akku überwachen.
Wenn Sie Probleme haben oder Hilfe bei der Fehlerbehebung benötigen, hinterlassen Sie bitte unten einen Kommentar.
Jeder ist willkommen, Ideen zu geben, wie man dies verbessern kann, wie vielleicht einen Fall? xD
Hinterlasse einen Kommentar, wenn du ein Doctor Who-Fan bist.
Danke schön!
Schritt 15: Update: 3D-gedrucktes Gehäuse
Nach einiger Zeit mit dem Dash-Button habe ich beschlossen, einen Fall dafür zu machen. STL- und Fusion 360-Dateien angehängt.
Empfohlen:
2020 ESP8266: 3 Schritte
2020 ESP8266: Also schrieb dieser Lazy Old Geek (LOG) einige Instructables auf ESP8266-Modulen: https://www.instructables.com/id/ESP8266-as-Arduin … https://www.instructables.com/id/ ESP8266-as-Arduin … Ich habe noch mehrere ESP-01s und ESP-03s und habe versucht, sie zum Wo
ESP8266 - Tür- und Fenstersensoren - ESP8266. Hilfe für ältere Menschen (Vergesslichkeit): 5 Schritte
ESP8266 - Tür- und Fenstersensoren - ESP8266. Hilfe für ältere Menschen (Vergesslichkeit): ESP8266 - Tür- / Fenstersensoren mit GPIO 0 und GPIO 2 (IOT). Es kann im Web oder im lokalen Netzwerk mit Browsern angezeigt werden. Auch sichtbar über die "HelpIdoso Vxapp" Anwendung. Verwendet eine 110/220 VAC-Versorgung für 5 VDC, 1 Relais / Spannung
Sauerteigsensor (ESP8266): 4 Schritte
Sauerteigsensor (ESP8266): Ich bin immer noch da draußen, um zu versuchen, die Fermentation meines Sauerteigstarters zu messen und wollte diese Lösung mit einem Sharp-Sensor ausprobieren. Der Sensor misst den Abstand zur Oberfläche der Zubereitung. Je höher es geht, desto fermentierter ist der p
ESP8266 mit Thingspeak und DHT11 Tutorial - Webserver: 7 Schritte
ESP8266 mit Thingspeak und DHT11 Tutorial | Webserver: Hey, was ist los, Leute! Akarsh hier von CETech. Dieses Projekt von mir ist eher eine Lernkurve, um die Thingspeak-Plattform zusammen mit der Idee von MQTT zu verstehen und dann Thingspeak mit einem ESP8266 zu verwenden. Gegen Ende des Artikels werden wir co
Winziger Micro:bit-Roboter - Teil 1: 7 Schritte
Tiny Micro:bit Robot - Teil 1: Ich fand kleine Roboter immer großartig und es wäre ideal, einen mit dem kostengünstigen Microbit zu erstellen. Ich wollte einen Roboter entwickeln, der keine vorgefertigten IO-Boards verwendet, wie ich es in der Vergangenheit verwendet habe, um Motoren anzutreiben oder Sensoreingänge zu erhalten, ich möchte