NEWS
OBI Funk-Steckdosenumbau ESP8266 (Generation1 Rund)
-
Sehr gut, denn das einzige, was ich gemacht habe ist die .BIN neu kompiliert, mit dem neueren ESP Core.
Hat dann wohl den Fehler behoben….
Gut, daß es jetzt läuft
Ich hätte sonst noch eine zusätzliche Abfrage einbauen wollen : wifi.BSSID, um die MAC Adresse des AP rauszufiltern.
Quelle :
https://github.com/esp8266/Arduino/blob ... -class.rst
!
BSSID ! Return the BSSID (Basic Service Set Identification) that is another name of MAC address of a network discovered during the scan. ! WiFi.BSSID(networkItem) ! Function returns a pointer to the memory location (an uint8_t array with the size of 6 elements) where the BSSID is saved. ! If you do not like to pointers, then there is another version of this function that returns a String. ! WiFi.BSSIDstr(networkItem) ! The networkItem is a zero based index of network discovered during scan. !
Dann kann ich mich ja wieder schlafen legen
Grüße
Tom
-
Hallo TomT,
dann gutes Schlafen. :mrgreen:
-
Kannst Du als Bonbon eventuell die aktuell laufenden Firmware der jeweiligen Steckdose als Info auf der Website anzeigen lassen?
-
Hallo TomT,
ich würde es gut finden wenn man nachdem man sich mit dem AP 192.168.4.1 verbunden hat, man Weiß ja mit welchem Netzwerk die Steckdose verbunden werden soll, man die IP-Adresse dann selbst vergeben könnte.
Also ich dachte so verbinden mit:
- AP 192.168.4.1
Dann:
- Wlan SSID eingeben
- Wlan Passwort eingeben
- neue IP 192.168.178.10 eingeben
so weis man immer welche Adresse die Steckdose hat/bekommt und man muss nicht suchen über Fritzboxmenu oder ähnliche Router.
Wäre ebenfalls ein Bonbon :mrgreen:
-
Kannst Du als Bonbon eventuellr die aktuell laufenden Firmware der jeweiligen Steckdose als Info auf der Website anzeigen lassen? `
SCHAU mal ganz unten auf der Webseite.
Da findest du dein Bonbon schon lange
-
- Wlan SSID eingeben
- Wlan Passwort eingeben
- neue IP 192.168.178.10 eingeben `
Das wäre das Thema Feste IP.
Muss ich mir mal überlegen
Grüße
Tom
-
Hallo TomT,
dann Überlege mal. :mrgreen:
-
Ich dachte vielleicht oben links zu den Infos und etwas GRÖSSER
-
Hallo,
ich habe eine Steckdose fertig gemacht.
Hat alles super funktioniert. Eingebunden in CUXD, ging auch,
nur die Zeichen haben hier Probleme gemacht (kein copy und paste möglich)
Was ich nicht verstehe, wie ich die ResetSchleife starte?
Ich möchte die Steckdose als Hatdwarewatchdog einsetzen,
D.h. Z.B. 15 Min laufen, dann 10 Sek. Aus. Dann wieder an für immer (Booten dauert ggf. Länger als 10 Minuten)
Alle 10 Min. Wird das Kommando erneut an die Steckdose gesendet und der Timer damit
Zurückgesetzt.
An bei Stromverlust wird ja schon unterstützt.
Optimal wären zwei Kommandos, eines für Watchdog aktivieren, eines für Watchdog reset.
-
Was ich nicht verstehe, wie ich die ResetSchleife starte? `
Moin
Sorry, die Beschreibung auf Seite 1 war falsch. :shock: Ist jetzt korrigiert.
Ich glaube ich muss die Anleitung auf Seite 1 mal komplett überarbeiten :roll:
Die Reset Schleife ist eine geplante Erweiterung und noch nicht fertig gestellt.
Grüße
Tom
-
Hallo,
hab mal ein bischen gebastelt:
In Aktion:
Hab mal eine Version 1.0.6 Beta erzeugt.
1.0.7 - Zeit über ntp-Server.
1.0.8 - Name der Dose vergebbar / teilweise Initialisierung eingeführt
1.0.9 - Steckdose ist unter Namen erreichbar (z.B. obi.local), Feste IP-Adressen vorgebbar.
1.1.0 - Bugfixes / kleine Änderungen in der Oberfläche
1.1.1 - CPU-Frequenz / Performance / Ajax schaltbar
1.1.1c -> Updateproblem Website behoben
(bei Versionen 1.1.1 und 1.1.b kann das durch ip/ajax?=0 umgangen werden)
1.1.3 - SPIFFS hinzugefügt. Bei Powerloss kann auf den Status davor geschaltet werden1.1.4 - Fix für langsame Verbindungen, Ping deaktivierbar.
1.1.4c - Speicher optimiert. Fehler beim lesen des letzten Status gefixt
1.1.5 MQTT eingebaut, VPN sollte jetzt auch gehen
1.1.6 MQTT fertig gestellt. LWIP2.0 aktiviert. Code aufgeräumt. Versteckte SSID geht bei den meisten jetzt auch …Was ist neu:
Blocked = Antwortverhalten des ESP schlecht, deshalb warte x Sekunden bis zum nächsten Versuch
Die Knöpfe etc. sind natürlich nicht geblockt.
Website ist nicht mehr statisch, d.h. Statuswechsel, RSSI, Timer etc. werden upgedatet.
/toggle -> Schaltet zwischen den Status hin und her
/getState -> liefert den aktuellen Schaltzustand
Anzeige bis zum nächsten Schaltvorgang hinzugefügt
WatchDog-Funktion hinzugefügt:
/watchDogOnTime -> so lange wartet er bis zum Power off (guter Wert z.B. 10*60 = 600 Sek)
/watchDogOffTime -> so lange bleibt der Saft weg, dann wieder Power on (und bleibt an) (10 Sek. reichen)
/watchDogRestart
-> Timer wird zurückgesetzt, er wartet wieder "On-Time" bis zum reset
-> sollte der Schalter aus sein, wird er angeschaltet
-> sollte PowerOff nach Stromausfall aktiv sein, dann wird PowerOn nach Strom gesetzt
=> diese Funktion sollte der zu überwachende Host bei 600 Sekunden max ca. alle 180 Sekunden aufrufen (drei Chancen)
Crontab:
*/3 * * * * root /usr/bin/wget -q '192.168.1.21/watchDogRestart'
Wifi-Reconnect-Time wird gespeichert
Paar kleine Schalter in der Oberfläche
Wenn ihr einen "update" über die Weboberfläche macht, bleiben die alten Einstellungen erhalten.
Verwendet ntp-Zugriff von:
Author: German Martin
Website: https://github.com/gmag11/NtpClient
Und Time von:
Autor: Paul Stoffregen
Website: https://github.com/PaulStoffregen/Time
-
Moin
Super …
Geht ja weiter mit der Entwicklung.
Ich habe einen Link auf die Beta 1.0.6 von dir in den 1. Beitrag unten eingefügt.
Grüße
Tom
-
Moin
Super …
Geht ja weiter mit der Entwicklung.
Ich habe einen Link auf die Beta 1.0.6 von dir in den 1. Beitrag unten eingefügt.
Grüße
Tom `
Super, Danke.
Habe aktuell die Zeit über ntp hinzugefügt:
über
/ntp?=0 ntp.pool.org
/ntp?=1 Gateway (also z.B. die Fritzbox).
1.0.7 im letzten Beitrag hinzugefügt
-
@ sissiwup
Du hast ne PN
Grüße
Tom
-
viewtopic.php?f=35&t=12125&p=163799#p163799
/devname?=Name der Steckdose
-
Super !!!
-
Hallo,
kann man die blaue Schriftfarbe und die violette gegen eine andere "besser lesbare" bei der schwarzen Webseite austauschen?
heuet Mitag kann ich die 1.08b einspielen
-
@ sissiwup
Mir sind einige Dinge gerade aufgefallen Version 1.0.8b:
- Der Start der Dose nach Reboot dauert ewig lang. Vermutlich, weil der Router keinen Inet Zugang hat und auch keinen eigenen NTP Server.
Dann wartet er auf den Timeout?
EDIT : Gefunden … Nix mit NTP Server zu tun...
In der <u>firstStartup ()</u> -> <u>for (int i = 1; i < 99; i++) {</u> in Verbindung mit dem <u>delay(1000);</u> in der EEPROM Schreibroutine am Schluß ergibt das 99 Sekunden bis er aus der FirstStart rauskommt.
delay(100) reicht aus…
Nochn EDIT : delay(25); reicht auch
- Bei jedem Start ruft er die FirstStartup Routine auf.
EDIT : Gefunden …
In der firstStartup () -> <u>for (int i = 1; i < 99; i++) {</u> schreibt er nur bis case 98, der Zähler schreibt 99 = First_Startup nicht ins EEPROM.
Mach <u>for (int i = 1; i < 100; i++) {</u> , dann passts
@meierchen :
Wenn du die ino Dateien selbst kompilierst, such mal nach
a:active {color:#ffffff;}
und ersetze es durch :
a:active {color:#fff;}
Dann werden die Links weiß…
Grüße
Tom
-
Mit 1.0.8c behoben:
@ sissiwup
Mir sind einige Dinge gerade aufgefallen Version 1.0.8b:
- Der Start der Dose nach Reboot dauert ewig lang. Vermutlich, weil der Router keinen Inet Zugang hat und auch keinen eigenen NTP Server.
Dann wartet er auf den Timeout?
EDIT : Gefunden … Nix mit NTP Server zu tun...
In der <u>firstStartup ()</u> -> <u>for (int i = 1; i < 99; i++) {</u> in Verbindung mit dem <u>delay(1000);</u> in der EEPROM Schreibroutine am Schluß ergibt das 99 Sekunden bis er aus der FirstStart rauskommt.
delay(100) reicht aus…
Nochn EDIT : delay(25); reicht auch
- Bei jedem Start ruft er die FirstStartup Routine auf.
EDIT : Gefunden …
In der firstStartup () -> <u>for (int i = 1; i < 99; i++) {</u> schreibt er nur bis case 98, der Zähler schreibt 99 = First_Startup nicht ins EEPROM.
Mach <u>for (int i = 1; i < 100; i++) {</u> , dann passts
@meierchen :
Wenn du die ino Dateien selbst kompilierst, such mal nach
a:active {color:#ffffff;}
und ersetze es durch :
a:active {color:#fff;}
Dann werden die Links weiß…
Grüße
Tom `
=> Schleife angepasst (wartet nur noch wenn er auch geschrieben hat)
=> 1..100 angepaßt
=> Farben auf fff geändert.
noch eine kleine Spielerei:
/CCU?cuxd=1 setzt die korrekten Parameter zur Steuerung in die beiden Datenpunkte
/CCU?cuxd=0 löscht diese dann auch wieder!
Also zuerst Device + IP setzen, dann aktivieren
-
Bin mal gespannt, wie sich meine Sensoren verhalten wenn die millis() Function nach 52 Tagen überläuft.
Dann wird sich auch die Anzeige der Laufzeit und wieder bei 0 beginnen.
Ist zwar nicht wirklich tragisch, aber wenn Funktionen während des Überlaufs ausgeführt werden sollen, dann will ich sicher gehen, daß das die Funktion nicht beeinträchtigt. `
Hallo,
durch die unsigned long sollte das funktionieren, nur das gestartet seit wird nicht mehr korrekt sein.