Kein Support für Arduino Core Version vor 2.4.2.
............................................
............................................
............................................
Funktion Connect Mixed Mode Tab
............................................
Funktion Login Manager Captive Portal Tab
............................................
............................................
............................................
............................................
Individual Button Tab und Webseite
Die Html Datei muss im Filesystem des Esp gespeichert werden.............................................
............................................
Adressen deiner Sensoren scannen
Die Temperatur wird zur Anzeige auf der Webseite jede zweite Sekunde aktuallisiert.Ds18B20 Liste Tab und Webseite
Die Html Datei muss im Filesystem des Esp gespeichert werden. Sollte die Anzahl der Ds18b20 Sensoren nicht mit der der Adressen übereinstimmen, wird Fehler angezeigt.............................................
Installiere die Library für den Bme280 Tab
Es ist auch Möglich zwei Esp.. mit Bme280 Sensor auf einer Webseite darstellen. Sollte der Bme280 Sensor nicht gefunden werden, wird Fehler angezeigt.............................................
............................................
............................................
LittleFS Upload Download Delete von Dateien mittels Browser.
Füge die "LittleFS.ino", vorzugsweise als Tab, zu deinem Webserver Sketch hinzu und rufe anschliesend unter Angabe der IP deines Esp8266 die fs.html über die Adresszeile deines Browsers auf.Filesystem Manager sortiert ab Core Version 2.6.0
Filesystem Manager sortiert ab Core Version 2.7.0
............................................
Spiffs Upload Download Delete von Dateien von einer HTML-Seite
Füge die "spiffs.ino", vorzugsweise als Tab, zu deinem Webserver Sketch hinzu und rufe anschliesend unter Angabe der IP deines Esp8266 die spiffs.html über die Adresszeile deines Browsers auf. Beispielsweise so "http://192.168.179.44/spiffs.html"Spiffs Datei Manager sortiert ab Esp Core Version 2.4.2
Spiffs Datei Manager sortiert ab Esp Core Version 2.6.0
Spiffs Datei Manager sortiert ab Esp Core Version 2.7.0
Jetzt kannst du loslegen. Upload Download Delete Html CSS usw. hochladen LOG Dateien einsehen/runterladen.
Die Sortierung der Dateien ist mittels Klick auf den Pfeil im untersten Listeneintrag möglich.
Der Dateiname dient gleichzeitig als Link zur Seite bzw. zur Ansicht (Textdatei) im Browser.
Es ist nicht möglich Dateien hochzuladen, die größer sind als der noch verfügbare Speicher. Eine gute Erklärung für die notwendige Begrenzung findest du auf Ullis Roboter Seite.
............................................
E-Mail versenden via smtp2go.com
Dazu brauchst du zunächst einen Smtp2Go Free Account.
Die Serverantwort von smtp2go.com, ob die Übertragung erfolgreich war, wird nicht blockierend ausgewertet. Bei Zeitüberschreitung wird eine Fehlermeldung gesendet.
............................................
Unicast ist der Informationsfluss zwischen nur zwei Netzteilnehmern.
............................................
Multicast ist der Informationsfluss an eine Gruppe von Netzteilnehmern auf diesen Port.
............................................
............................................
Dazu brauchst du zunächst einen Pushbullet Account.
Ausserdem die für dein Gerät passende Pushbullet APP.
............................................
Sonoff flashen
Arduino IDE unter Werkzeuge einstellen.
............................................
Installiere die Library für den Zugriff auf die Fritzbox.
Der Wlan-Präsenzmelder kann bei Abwesenheit aller Personen als Anwesenheitssimulator mittels einer Lichtquelle verwendet werden. Oder spezielle Funktionen der Heizung und/oder Lüftung bei Anwesenden Personen auslösen.............................................
Temperatur Luftfeuchte Taupunkt Hitzeindex
Die Klimadaten werden zur Anzeige auf der Webseite aller zwei Sekunden aktuallisiert.Funktioniert erst ab Arduino Core Version 2.4.0 aufwärts.
Installiere die Library für den DHT22 Tab
Die Html Datei muss im Filesystem des Esp gespeichert werden.............................................
Die Spiffs.ino ist zum ausführen der Admin.ino erforderlich.
Die "Admin.ino" funktioniert jetzt auch mit Linux. Danke an Gerhard für die freundliche Unterstüzung.Admin Tab und Webseite bis Core Version 2.5.2
Admin IPv4 Tab und Webseite ab Core Version 2.6.1
Admin IPv6 Tab und Webseite ab Core Version 2.6.1
............................................
Lokalzeit Tab und Webseite ab Core Version 2.4.2
Lokalzeit Tab und Webseite ab Core Version 2.6.0
Anzeige Uhrzeit
Anzeige Uhrzeit und Datum
............................................
............................................
Die Lokalzeit.ino ist für die Zeitschaltuhr erforderlich
Der Tab Zeitschaltuhrdual ist für LOW und HIGH aktive Relais, Solid State Relais oder Mosfet geeignet. Dies muss vor dem Hochladen einmalig im Sketch, im Tab Zeitschaltuhr.ino, eingestellt werden. Es lassen sich bis zu 8 Ein-/Aus-Programme pro Gerät einstellen. Die Anzahl der Schaltprogramme muss im Sketch analog der Anzahl im Html Dokument eingestellt sein! Die optische Schaltzustandsanzeige ist gleichzeitig der Button zum manuellen Ein-/Ausschalten der Ausgänge.Zeitschaltuhr Tab und Webseite
Die Html Datei muss im Filesystem des Esp gespeichert werden. Das erfolgreiche speichern der Schaltzeiten auf dem Esp8266 Webserver wird im Webinterface angezeigt. Ansicht Zeiteinstellung Mobil Device Android............................................
Der Lokalzeit Tab ist für die Zeitschaltuhr erforderlich.
Die Schaltzeiten werden im Spiffs des Esp8266 gespeichert. Auf der Webseite werden die aktuell eingestellten Schaltzeiten angezeigt.Zeitschaltuhr Tab und Webseite
Die Html Datei muss im Filesystem des Esp gespeichert werden. Der aktuelle Status "ON/OFF" wird neben dem Button zum manuellen schalten angezeigt.Es lassen sich alle Schaltzeiten zusammen aktivieren/deaktivieren.
Das erfolgreiche speichern der Schaltzeiten auf dem Esp8266 Webserver wird im Webinterface angezeigt.
............................................
Der Lokalzeit Tab ist für die Berechnung erforderlich
Du musst die geographische Länge, Breite und die Zeitzone für den Ort, für den du die Zeiten berechnen möchtest beim Aufruf der Funktion angeben.Sonnen Auf/Untergang Tab und Webseite
............................................
Installiere die Library für den TX23 Tab
Die Html Datei muss im Filesystem des Esp8266 gespeichert werden.Zum umschalten der Anzeige einfach in die Windrose klicken.
............................................
Installiere die Library für den BH1750 Tab
Der BH1750 ist ein digitaler Sensor zur Messung der Helligkeit in Lux. Er wird über den I2C-Bus angesprochen. Der Messbereich liegt bei 1...65535 Lux.
............................................
Installiere die Library für den AHT10 Tab
Der AHT10 ist ein digitaler Sensor zur Messung der Temperatur und Luftfeuchte. Er wird über den I2C-Bus angesprochen. Der Messbereich liegt zwischen -40°C bis +85°C und 0% bis 100%.
mir ist aufgefallen, dass der Tab "Esp8266 Login Manager mit Captive Portal" nur bis 9, statt bis 29 zählt bis er den AP startet.
Gruß Daniel
Antwort:
"WiFi.status() == WL_NO_SSID_AVAIL"
Was hast du erwartet?
Gruß Fips
Antwort:
Danke für den Hinweis, ich habe den Tab entsprechend angepasst.
Gruß Fips
ich habe das Webserver ino installiert und bin auf folgendes Problem gestoßen:
Gibt man ein falsches PW aber das korrekte ssid ein, hängt sich das System auf und man kann nur noch neu "aufspielen"
Grund scheint der Aufruf ESP.restart im Void connectWifi zu sein.
Ich habe dort nun statt dessen den dns erneut aufgerufen:
dnsServer.start(DNS_PORT, "*", apIP);
server.on("/wifisave", HTTP_POST, handleWifiSave);
server.onNotFound(handleRoot);
Nun wird der AP bei fehlerhaftem connect erneut gestartet.
Wenn das Wifi ausfällt wird dann ebenfalls ein AP gestartet aber nach 5min wird sich wenn das Wifi wieder da ist erneut connectet:
Ist das so ok? oder gäbe es eine elegantere Lösung ?
Grüße Bernd
Antwort:
Ein falsches PW oder wenn es im Router geändert wurde hatte ich nicht auf dem Schirm.
Gruß Fips
ich verwende bereits einige von Deinen tabs, einfach super! Frage: kann man den tab "Esp8266 Connect Mixed Mode Tab" auch für ESP32 nutzen? Wenn nicht, kann man das normale connest zuerstt starten und wenn kein netz gefunden wird das mit dem AP?
Antwort:
Vermutlich kann man es für den Esp32 anpassen.
Gruß Fips
In der ESP8266 Sammlung schleiche ich nun schon ewig um den Sonnenauf/untergang herum und komme mit meinem begrenzten Wissen auf keinen Grünen zweig wie ich die Zeitschaltuhr um Sonnenauf bzw untergang erweitern kann. Das die Zeiten in einer Struktur landen hats mir dann endgültig besorgt =)
Gibts einen Heißen Tipp, wie man eine Zeit der Zeitschaltuhr über die Sonnenzeiten steuern kann?
gruß
Fuppes
Antwort:
In der Esp8266 Zeitschaltuhr Singel ist es integriert.
Dort kannst du es dir anschauen.
Gruß Fips
da ich die Ausgabe compiliert bekommen habe, hatte ich gehofft, dass es so geht. Leider fehlgedacht
Danke mit dem Tip zum JSon-Objekt, das heisst für mich, dass ich die Werte:
hlw8012.getVoltage()
hlw8012.getCurrent()
in die richtige Form bringen muss. Aber wie nur, also vom Wert double zu char oder in einen String? Welches Format würdest Du nehmen? Es ist nicht immer einfach heraus zu bekommen, was es für ein Rückgabewert es ist und wie dieser zu behandeln ist.
Um welche Art von Werten handelt es sich bei denen im Admin-Tab, im String temp?
Die Variable Test war eine Zahl, formatiert als Double, für mich als nicht nachvollziehbar wurde sie mir aber im Admin-Tab richtig angezeigt.
"Warum fügst du kein "Serial.print(temp);" in deinen Sketch ein?"
Das habe ich gemacht und ich habe ja Werte angezeigt bekommen, was mich dann zum Nachdenken und dem "Hilferuf" brachten.
Leider würde ich mehr Zeit der Sache widmen, nur Leider geht es zur Zeit nicht und deshalb frag ich einwenig mehr...
Gruß MAT
Antwort:
Wenn dein Json valide ist, brauchst du den Fehler nicht im Sketch suchen!
Zeit ist ein knappes Gut. Man kann ausschließlich den unterschiedlichen Lebenskomponenten Zeit zuteilen. Zeit in Dinge investieren, die einem wichtig sind.
Gruß Fips
ich suche die ganze Zeit aber ich findde meinen Fhler nicht, vielleicht auch aus Unwissenheit.
Ich möchte in dem Admin-Tab weitere Werte aus meinem Programm anzeigen lassen, nur leider funktioniert meine Erweiterung nicht:
String temp = "{\"File\":\"" + sketchName() + "\", \"Build\":\"" + __DATE__ + " " + __TIME__ + "\", \"SketchSize\":\"" + formatBytes(ESP.getSketchSize()) +
"\", \"SketchSpace\":\"" + formatBytes(ESP.getFreeSketchSpace()) + "\", \"LocalIP\":\"" + WiFi.localIP().toString() + "\", \"IPv6l\":\"" + ipv6Local +
"\", \"IPv6g\":\"" + ipv6Global + "\", \"Hostname\":\"" + WiFi.hostname() + "\", \"SSID\":\"" + WiFi.SSID() + "\", \"GatewayIP\":\"" + WiFi.gatewayIP().toString() +
"\", \"Channel\":\"" + hlw8012.getCurrent() + "\", \"MacAddress\":\"" + WiFi.macAddress() + "\", \"SubnetMask\":\"" + Test +
"\", \"BSSID\":\"" + WiFi.BSSIDstr() + "\", \"ClientIP\":\"" + server.client().remoteIP().toString() + "\", \"DnsIP\":\"" + WiFi.dnsIP().toString() +
"\", \"ResetReason\":\"" + ESP.getResetReason() + "\", \"CpuFreqMHz\":\"" + F_CPU / 1000000 + "\", \"FreeHeap\":\"" + formatBytes(ESP.getFreeHeap()) +
"\", \"HeapFrag\":\"" + ESP.getHeapFragmentation() + "\", \"ChipSize\":\"" + formatBytes(ESP.getFlashChipSize()) +
"\", \"ChipSpeed\":\"" + ESP.getFlashChipSpeed() / 1000000 + "\", \"ChipMode\":\"" + flashChipMode[ESP.getFlashChipMode()] +
"\", \"IdeVersion\":\"" + ARDUINO + "\", \"CoreVersion\":\"" + ESP.getCoreVersion() + "\", \"SdkVersion\":\"" + ESP.getSdkVersion() +
"\", \"E_MonVoltage(V)\":\"" + hlw8012.getVoltage() + "\", \"E_MonCurrent(A)\":\"" + hlw8012.getCurrent() + "\", \"E_MonPower(W)\":\"" + Test + "\"}";
Die letzten Werte nachder "sdkVersion" sollen angezeigt werden, mein Browser sagt nur "undefiniert" für die Werte an.
Setze ich die Werte jedoch an einer anderen Stelle ein, werde sie mir korekt angezeigt.
Die Erweiterungen habe ich in der .ino sowohl auch in der HTML Seite "admin" vergleichbar zu den anderen Werten abgeändert.
Könntest Du mir bitte weiterhelfen bzw. erklären wie der "String temp" zusammengesetzt wird bzw. die Voraussetzungen klären.
Vielen Dank und Gruß MAT
Antwort:
Ich habe mal versucht die fehlenden Informationen im Netz zu finden.
hlw8012.getVoltage() liefert ein unsigned int zurück.
hlw8012.getCurrent() liefert ein double zurück.
Nur, was Test ist und was dessen Inhalt ist fand ich nirgends.
Im Kommentar der nachfolgenden Codezeile steht doch was es ist.
server.send(200, "application/json", temp); // Json als Objekt
Wie Json zusammengesetzt wird steht im Netz.
Die exakte Spezifikation steht in RFC 8259 oder ECMA-404.
Warum fügst du kein "Serial.print(temp);" in deinen Sketch ein?
Ein JSON Validator im Netz zeigt dir dann ob dein Json valide ist.
Gruß Fips
erstmal find ich Toll wieviel Arbeit du dir gemacht hast.
Leider hab ich da ein Probleem, und ich hoffe du kannst mir helffen
Ich habe mir einen Sketch mit dem Webserver,+Tab DHT22,+Tab Loginmanager,+ Tab little.fs.
später soo das ganze mit einem MQQT Manager erweitert werden.(IP-Adresse Broker, Benutzername,Passwort).
Beim Kompilieren, schlägt Arduino immer bei
"top: 0.22em" auf ""exit status 1
exponent has no digits"" Ich nutze IDE 1.8.15 ESP 3.0.0
Das habe ich auf der Webserverseite eingefügt:
#include "DHTesp.h" // Version 1.0.9 https://github.com/beegee-tokyo/DHTesp
const byte DHT_PIN = 13; // Pin für DHT22 einstellen
DHTesp dht;
Wo könnte mein Fehler liegen????
Gruß Arno
Antwort:
Dann wirst du irgendwo die CSS Anweisung "top: 0.22em" im Sketch haben.
In meinen Tab's kann ich das nicht finden.
Gruß Fips
in der NTPUpdateDemo.ino gibt es einen Linkerfehler.
Original ist: extern uint32_t sntp_real_timestamp; // Variable enthält den Unix Zeitstempel
Nach entfernen von "extern" ist alles gut. Programm funktioniert dann auch.
73 de Bernd
Antwort:
Ich schließe daraus, das du schon CoreVersion 3.0.0 verwendest!
Mit 2.7.4 funktioniert es bei mir noch.
Werde ich anpassen!
Danke!
Gruß Fips
Puuh mit Json habe ich mich noch nicht beschäftigt. Ich habe auf unterschiedlichster Weise versucht zu verstehen, wie unter Arduino oder c++ Zeichenketten zusammengesetzt werden. Dann habe ich in Deinem Code Beispiele dafür gefunden und versucht, diese umzubauen. Wie funktioniert es mit dem maskieren, nach welchen Regeln muss ich meine Infos zusammensetzen? Und mit welche Art von Daten funktioniert das System?
Antwort:
Wie man in C++ maskiert oder was Json zu leisten vermag, kann man Googlen!
Zusammensetzen würde ich die Daten immer so wie sie sich nach der Übertragung am besten auswerten lassen.
Gruß Fips