Hallo, anbei ein kleiner Webserver für den ESP8266, mit dem sich eine Schaltsteckdose realisieren lässt. Das Projekt dient mir als Lernprojekt und nutzt bewusst KEIN Arduino sondern das SDK von Espressif (Sorry, aber mit dem Arduino-C-Dialekt kann ich mich nicht anfreunden). Die Hardware ist recht simpel, der ESP Schaltet über einen GPIO-PIN via Transistor ein Relais (Freilaufdiode / Snubber nicht vergessen!). Zusätzlich kann ein Taster (Schliesser) angebunden werden, um Schaltvorgänge lokal auszulösen und bei Bedarf mit einer Default-Konfiguration zu starten. Features: -Portschaltungen können via Webinterface oder GET-Request vorgenommen werden. -Die GPIO-Ports für das Relais und den Taster können frei gewählt werden. -Die Konfiguration und die Schaltvorgänge können per Passwort gesichert werden. -Die Konfiguration kann via Webinterface geändert werden und wird im Flash gespeichert. -Folgende Optionen können zur Zeit konfiguriert werden: Stationsname, Passwort, Wlan SSID, Wlan Passwort, IP-Daten (DHCP/IP/Gateway/Subnet Mask) -Das Gerät arbeitet ausschließlich im Wlan-Client-Mode und kann bei Bedarf via Taster mit einer Defaultkonfig gestartet werden, welche per Headerfile geändert werden kann. Todo: -Timer/Zeitpläne -Code optimieren Bilder der Hardware reiche ich noch nach. Auf einen Schaltplan habe ich verzichtet, da die Hardware in meinen Augen recht simpel ist. Auf Wunsch kann ich aber noch einen Schaltplan erstellen. Als Netzteil nutze ich ein USB-Netzteil, das ich seines Gehäuses beraubt habe. Dieses sitzt zusammen mit dem NodeMCU-Board und dem Schalttransistor/Freilaufdiode etc. auf einer Lochrasterplatte. Das Relais sitzt zusammen mit dem Snubber auf einer eigenen Platine. Beide Platinen sind in ein Zwischenstecker-Gehäuse verbaut. Parallel zur Relaisspule liegt noch eine LED mit Vorwiderstand zur Statusanzeige am Gerät. Als Relais nutze ich ein Finder-Relais 6V 1*UM 7A Wer das nachbaut muss sich über die Gefahren in Zusammenhang mit Netzspannung bewusst sein und die Vorschriften kennen. Auch sollte sich der/diejenige darüber im Klaren sein, das hier etliche Ampere Strom geschaltet werden und was hierfür zu beachten ist. Bedienung: -Gerät initial mit Defaultkonfiguration starten. Passiert beim ersten Start automatisch. Kann auch ausgelöst werden, indem der Taster beim Starten des Geräts für etwa 10 sek gedrückt wird während das Gerät eingesteckt wird. Mein Default sieht folgende Daten vor: Wlan SSID: default Wlan PASS: default123 IP: DHCP Device Password: test_123 Device Name: Schaltsteckdose -Eigene Konfig vornehmen (Device über http://<IP-Adresse> ansprechen und dann auf "configure me" klicken. -Device startet einmal neu und connected sich mit den eingegebenen Wlan-Daten. -Ab sofort ist das Device unter http://<neue IP Adresse> ansprechbar. Alternativ kann der Ausgang im Betrieb auch per kurzem Tastendruck geschaltet werden. gruß tobi [Mod: Threadtitel angepasst]
:
Bearbeitet durch Moderator
> ... anbei ein kleiner Webserver ...
21,2 MB ist endlich mal ein winziger Webserver. Danke.
Mir scheint du hast da was falsch verstanden. Das ZIP ist 21.2 MB gross, da dort alle für den build notwendigen files includiert sind. Das binary für den esp 8266 hat ca 500k.
hacker-tobi schrieb: > Das ZIP ist 21.2 MB gross, da dort alle für den build notwendigen files > includiert sind. Die Objekt- (.o bzw. .d) und Archiv-Dateien (.a) im Ordner "build" bilden den weitaus größten Umfang der ZIP-Datei. Wenn ich das richtig verstehe, hätte dieser Ordner gar nicht (oder zumindest leer) ins ZIP gehört, da die Dateien darin beim Build doch neu generiert werden, oder?
:
Bearbeitet durch Moderator
Das gibts alles fertig beim freundlichen Chinesen für 5-6€. Nennt sich sonoff oder ähnlich, die ESP Firmware nennt sich tasmota und kann alles. Lohnt es sich sowas nochmal selbst zu erfinden?
Ich suche in diesem Forum die Funktion wie man Postings schreibt und dann mit 5-10 Jahren Verzögerung veröffentlichen kann. Sowas muss hier passiert sein. Deine Programmierung in allen Ehren, die ganze Choose gibt es wie schon beschrieben für ein paar Euro in Fernost, für ein wenig mehr auch bei Amazon. Und das in einem schicken Gehäuse.
Genau. Nennt sich hobby ;) Und nur darum hab ichs gebaut. Fertig kaufen kann jeder, aber selber bauen eben nicht.
@frank: ja der Ordner wird erst beim build erstellt. Ich war mir offen gesagt nicht sicher ob es Sinn macht ihn mit einzufügen. Wenn es unnötig ist kann ich ihn gern zukünftig weglassen.
@Hacker-Tobi Schönes Projekt, aber arum verwendest du keinen Sonoff sondern baust dir die Hardware selbst? Eventuell könntest du noch Mqtt zum steuern in die Firmware einbauen.
:
Bearbeitet durch User
100Ω W. schrieb: > Eventuell könntest du noch Mqtt zum steuern in die Firmware einbauen. Ja, deswegen Tasmota ... hat schon alles drin, und jede Menge Bugs auch schon gefixt.
Für mich ist hier der Weg das Ziel. Tasmota ist eine spannende Firmware mit vielen Funktionen aber das einzige was ich dabei lernen würde ist tasmota auf den ESP zu installieren. Daher schreib ich das selbst. Dito auch für die Hardware. Gut dabei hab ich jetzt nicht wirklich viel gelernt aber ich hab die Teile ohnehin da und daher bau ich lieber selbst. @100 ohm: Für mich selbst besteht derzeit kein Bedarf an MQTT, aber wenn du oder jemand anderes da was entwickeln mag, nehm ich es gern mit auf. Was ich noch einbauen werde ist ein timer modus und eine Zeitschaltuhr. Evtl auch https und OTA.
Hi, anbei die neueste Version. Jetzt ist ein Timer-Modus integriert (1-960 min).
hacker-tobi schrieb: > anbei die neueste Version. Zip ist um den Faktor 1000 geschrumpft, gratuliere :-) Aber hier warst Du wohl zu rigoros. Es gibt auch Leute, die würden das fertige Bin-File flashen und fertig. Von daher empfehle ich dir, zukünftig die Datei webserver.bin ins ZIP mit aufzunehmen.
:
Bearbeitet durch Moderator
Die Tage gibts ne neue Version. Aufgenommen wurden: -Planbare Schaltereignisse -OTA (Firmware update) Bin grad noch am Testen ob alles so tut wie es soll. Und -ja- ich weiss das es Tasmota gibt aber selber schreiben macht mehr Spass :)
Hi, update: -Configpage erweitert -Schaltaktionen planbar in beliebigen Intervallen inkl. Serien -UI überarbeitet -Möglichkeit, alle Requests über HTTP GET Kommandos zu steuern -Over-the-air-update über http/https integriert (funktioniert noch nicht perfekt, evtl. mache ich dazu noch einen separaten Thread auf) Todo: -Authentication via HTTP Basic Auth -HTTPS -MQTT (hat da jemand eine gute Beschreibung oder Beispiele für mich?)
Hi, v 0.80 includiert jetzt: -Basic Auth -Überarbeitetes Interface für wiederkehrende Aktionen -OTA ist jetzt "robuster" gegen Timeouts oder Übertragungsfehler gruß tobi
hacker-tobi schrieb: > mit dem Arduino-C-Dialekt kann ich mich nicht anfreunden Du meinst C++? Ist aber heutzutage doch praktisch Standard.
Hi, da ich gerade eine zweite Steckdose gebaut habe, anbei mal ein kleiner Baubericht mit Bildern. Die angehängten Bilder zeigen das Controllerboard (vor und Rückseite). Darauf finden die NodeMCU und das Schaltrelais inkl. Ansteuerung und Snubber Platz. Die NodeMCU steuert das Relais über D8 an. Dieser ist über 150 Ohm mit der Basis eines BC337 verbunden, der das Relais gegen Masse schaltet. Über der Relaisspule hängt eine 1N4007 als Freilaufdiode antiparallel. Das Relais ist ein Finder Relais 6V 1*UM 250V/7(10)A liegend. Leider offline gekauft, daher hab ich aktuell keine Partnr. Ähnlich ist dieses hier: https://www.reichelt.de/steckrelais-1x-um-250v-10a-6v-rm-5-0mm-fin-40-51-9-6v-p26574.html?CCOUNTRY=445&LANGUAGE=de&trstct=pos_13&nbc=1&&r=1 Der Snubber besteht aus einem X2 Kondensator 0.1yF/275V und 300Ohm 2W Metallwiderstand und liegt bei mir über den Schaltkontakten. Der Kondensator muss zwingend X2 sein! Den Aufbau habe ich simpel auf Lochraster gemacht, wobei ich um die Netzspannungs-führenden Lötungen alle Lötpads großräumig entfernt habe. Die Kriechstrecke muss hier mind 5mm betragen, mehr sind besser! Die "Hoch"-stromführenden Leiterbahnen sind mit Draht und Lötzinn verstärkt. Passend habe ich dann noch Löcher zur Verschraubung im Gehäuse gebohrt, insgesamt 3.
Das Netzteil ist ein modifiziertes 5V USB Netzteil. Ich habe die Ausgangsspannung auf 6V erhöht und die Kondensatoren auf der Sekundärseite durch 16V/470yF 105grad low ESR ersetzt, da die originalen mit 6.3V doch etwas arg knapp bemessen waren. Die USB-Buchse habe ich entfernt und Litzen für Ein- und Ausgang angelötet. Netzteil ist dieses hier: https://www.saturn.de/de/product/_ok-ozb-521-2335281.html Warum dieses? Die Platine ist sehr kompakt, die Kondensatoren sind alle 105 Grad, es hat einen "richtigen" Schaltregler mit Feedback und ist nicht bloss ein Sperrschwinger und es hat wenigstens die wichtigsten Sicherungs- und Entstörmaßnahmen (Fuse, Y-Kondensator prim/sek) an Board. Beim Gehäuse habe ich die Rückseite samt USB-Buchse und den Stecker entfernt und verwende es innerhalb meines Gehäuses weiter, um das Netzteil zu halten.
Wie wäre es mit SW in git? In Zips können keine Änderungen verfolgt werden, und Fehlermeldungen /Verbesserungen sind in git als Abläufe deutlich transparenter.
Die Infos zum Gehäuse liefere ich noch nach, aber natürlich geht jedes Zwischenstecker-Gehäuse, das genügend Platz bietet. Anbei ein paar Bilder vom Aufbau. Die Verkabelung ist 1.5mm2 für den Leistungsteil, der Rest ist 0.2mm Litze. Bei meinem Gehäuse werden die Kabel an der Eingangseite verlötet und ausgangsseitig geschraubt.Die Lötungen im Leistungspart habe ich zusätzlich verschrumpft. Beim Verkabeln den Schutzleiter nicht vergessen und LED und Taster Platzieren. Die LED kommt dabei parallel an die Relaisspule, der Taster an D6 und GND. Den Controller habe ich mit dem Gehäuse verschraubt. Alle nicht benötigten Schraubgewinde habe ich entfernt. Das bearbeitete Gehäuse des Netzteil habe ich evenfalls mit dem Gehäuse verschraubt. Hier darauf aufpassen, das die Schraube nicht zu lang ist, und einige Milimeter Abstand zur Netzteilplatine verbleiben.
Die Tests des Geräts habe ich komplett an einem Regel/Trenntrafo durchgeführt. Dabei ist mir aufgefallen, das das Netzteil bereits ab etwa 30V AC anläuft und sich da schon mit 6V/500mA belasten lässt. Auch an einem Labornetzteil mit 30V DC läuft die Schaltung komplett an und lässt sich somit testen. Ich habe Tests mit Schaltströmen bis 7A (Ein/Auschaltmoment) und 10A(eingeschalteter Zustand) bis 60 min durchgeführt und dabei die Wärmeentwicklung über FLIR beobachtet. Das Reläis hat sich während dieser Zeit um etwa 10 Grad erwärmt, der Rest blieb unkritisch. Da im ausgeschalteten Zustand je nach Verbraucher ein geringer Strom (gemessen etwa 2mA) fließen, erwärmen sich der Widerstand und Kondensator des Snubbers um etwa 5 Grad. Achtung, manche Verbraucher mögen es nicht, wenn dieser minimale Strom durch sie fließt. In dem Fall hilft es, den Snubber parallel zum Verbraucher zu schalten oder den Kondensator etwas zu verkleinern. Thats it (for today).
@Johannes: Danke für die Anmerkung. Kommt noch!
@Frank: Nein C++ meine ich nicht. Das nutze ich ebenso gern. Aber Arduino ist mir "zu weit entfremdet von der Hardware" (trifft es nicht ganz, aber ich weiß es nicht besser zu beschreiben). Hat auch seine Vorteile, klar...macht dein Einstieg leicht und Software wird durch die Abstraktion besser portierbar. Aber ich programmiere lieber mit weniger Abstraktion und als "IDE" nutze ich oft nur kwrite/notepad++ und Makefiles.
Es sollte heißen "macht DEN Einstieg leicht" nicht "Macht DEIN Einstieg leicht" ;)
hacker-tobi schrieb: > Die Infos zum Gehäuse liefere ich noch nach, aber natürlich geht jedes > Zwischenstecker-Gehäuse, das genügend Platz bietet. > Steckergehäuse mit Steckdose STG15 Kemo; in der Bucht für 9,40€ sieht halbwegs vertrauenserweckend aus.
@Thomas G. Ja das passt! Danke! Ich hatte das lokal gekauft, deswegen hatte ich die Info nicht parat gehabt.
Da ich mittlerweile einige der wlan-steckdosen brauchen kann, habe ich einige hama wlan-steckdosen gekauft und modifiziert. Diese hier https://www.bauhaus.info/smart-home-steckdosen/hama-smart-steckdose-mini/p/28194552 Original ist da ein tywe2s drin, das mit einem ESP8285 bestückt ist. Ich könnte da problemlos meine Software flashen, müsste nur die Ports für das Relais und den Taster in der Software anpassen. Da der Flash des tywe2s aber für OTA zu klein ist, habe ich diese Module ausgelötet, und statt dessen esp8266 wroom Module verwendet . Am Wroom müssen Rst, en mit vcc verbunden werden, gpio15 (Relais out) über 4k7 gegen gnd. Da das Modul nicht auf die Platine passt habe ich es eingeschrumpft, und vcc,gnd,Relais und Taster über Drähte angebunden. Das Gehäuse lässt sich leicht öffnen , es ist am Steckerteil geklebt. Um das ESP Modul zu tauschen muss die Platine ausgelötet werden. Dazu erst die beiden Ausgangsverbinder auslöten, dann sind die Kontakte für die Eingangsverbinder zugänglich. Die Bilder zeigen den Test am Trenntrafo mit neuem Modul und den zusammengebauten Zustand. Trotz Angabe 16A würde ich eher dazu tendieren, den Geräten max 4A zuzumuten, da die Relais Kontakte doch recht klein sind. Und vom Schalten induktiver Lasten mit mehr als ein paar Watt rate ich ab, da ein Snubber fehlt.
Ich vergass noch zu erwähnen, das ich die wroom Module noch am Gehäuse verklebt hab damit die nicht herum "wandern".
Ich habe das Projekt bei Sourceforge abgelegt. Ich bin aktuell auch dabei, MQTT zu integrieren. Ich überlege auch, die Download-Adresse für OTA auf Sourceforge umzustellen. https://sourceforge.net/projects/wlan-controlled-switch/
Hi, Version 0.82 ist online. Jetzt "sollte" auch MQTT / MQTTS (mit PSK) mit an board sein. Context ist der jeweilige Gerätename. Ein Event mit Data "on" sollte einschalten, eines mit "off" ausschalten. Ich kann es aber aktuell nicht testen, da ich keinen Broker habe. Kann ja jemand gern testen ;) ! gruß tobi
hacker-tobi schrieb: > Ich kann es aber aktuell nicht testen, da ich keinen Broker habe. jeder sollte einen Broker haben. Also zumindest wenn man schon Software schreibt die einen braucht.
Johannes, danke für diese geistreichen Worte :) Wenn ich Zeit habe, werde ich auch einen broker aufsetzen. Vor Ende der Woche wird das aber nix. Daher kann vielleicht aktuell jemand schon mal testen.
nunja, das dauert ca. 2 Minuten. Unter Windows 10 'winget install mosquitto', unter Linux mit dem Paketmanager seiner Wahl ähnlich. In der aktuellen mosquitto Version ist die Sicherheit angezogen worden, für freien Zugriff wie früher muss in die Konfiguration dieses rein:
1 | listener 1883 |
2 | allow_anonymous true |
um etwas zu sehen gibt es bequeme Clients wie mqtt-spy oder mqtt-explorer oder auch Smartphone Apps.
hi Johannes, danke für die info. Da ich nen kleinen Linux Server hab werd ich mosquitto für Linux aufsetzen. Kannst du mir evtl einen Client empfehlen für Smartphone und hast du evtl. die Möglichkeit den mqtt Part zu reviewen? Auch für infos zu mqtt die über Wikipedia hinaus gehen bin ich dankbar. Insbesondere für ein Beispiel wie z.b. konkret das Auslösen einer Schaltaktion oder das Abfragen eines Sensor in mqtt aussieht. Andere mitlesende sind auch gern angesprochen!
also mosquitto auf einem Linux zu installieren ist ja genauso einfach bis einfacher, da nutzt man eben '[sudo] apt-get install mosquitto' , Anleitungen gibt es da ja auch reichlich. Die Konfiguration ist identisch, liegt dann in /etc/mosquitto. als Client auf dem iPhone nutze ich schon lange MQTTool, ist simpel, aber reicht mir zum Testen. https://github.com/bjpetit/MQTTool, gibt aber sicher mehr. Für MQTT gibt es ja reichlich Support, ich nutze es mit ioBroker und NodeRed. In ioBroker muss man nur einen MQTT Adapter mit einem Klick installieren, der bringt auch den mosquitto mit. Aber low level mit JavaScript oder Python sind es auch nur ein paar Zeilen um Messages zu Abonnieren/Veröffentlichen. Zum Testen habe ich erstmal keine Lust, ein paar Tests sollte man als Entwickler auch selber machen. Dazu bin ich zufriedener Anwender von Tasmota und ESPEasy. Dein Projekt verfolge ich trotzdem ein bisschen, man muss sich ja erstmal durch den Dschungel der verschiedenen Tools und Umgebungen kämpfen bis man das für sich passende gefunden hat. Auf einem ESP32 habe ich ein Blinky hinbekommen, mit ESP IDF im VSCode. Ich möchte aber C++ haben, da scheinen die Arduino Libs schon das verbreiteste zu sein. Im IDF ist ein CXX, das ist aber noch frisch und experimental. Andere ESP-C++ Projekte auf github veröden schon angesichts der Espressif und Arduino Konkurrenz. Wünsche weiterhin maximale Erfolge.
V0.83 ist jetzt online. -Features: MQTT überarbeitet -Support für multiple Ein- und Ausgänge, jeder Ausgang individuell konfigrierbar.
Mal blöde gefragt, ist es eine Riesenaktion, einen IR-Empfänger mit einzubauen? Z.B. um den TV mit angeschlossenem Krempel auch über die IR-Fernbedienung zu steuern. Beispielsweise die Farbtasten für ON/OFF und ein bis zwei Sleeptimer. Ein Handy o.ä. habe ich nicht zwangsläufig immer dabei, die FB aber zwangsweise.
dann brauchste als nächstes noch ein Display :-D
Hallo, Thomas G. schrieb: > Mal blöde gefragt, ist es eine Riesenaktion, einen IR-Empfänger mit > einzubauen? Z.B. um den TV mit angeschlossenem Krempel auch über die > IR-Fernbedienung zu steuern. Beispielsweise die Farbtasten für ON/OFF > und ein bis zwei Sleeptimer. Ein Handy o.ä. habe ich nicht zwangsläufig > immer dabei, die FB aber zwangsweise. sowas erledigt bei mir MQTT. Ein IR-Empfänger mit ESP8266 schickt alle empfangenen Codes weiter und das Zielgerät hat die gewünschten abboniert. Was soll ich z.B. mit einem IR-Empfänger in der Steckdose irgendwo hinter einem Schrank? Unter Windows ist MQTT.fx bei mir zum Testen, auf dem Handy habe ich mal MQTT Dashboard installiert, reicht mir dort. Ansonsten hier aber Tasmota oder eigene (Arduino-)Software auf den ESP8266. Broker läuft auf einem RasPi zusammen mit FHEM und noch ein paar Kleinigkeiten. Gruß aus Berlin Michael
Hi, technisch möglich wäre es - die Inputs können Interrupts auslösen, und in der ISR könnte dann die Dekodierung von RC5/6 erfolgen. Ist aber nicht auf meiner Agenda, denn wie mein Vorredner schon schrieb lässt sich das bei Bedarf über MQTT oder eine externe Bridge (RC5/6 zu HTTP-GET-Kommandos) realisieren und bei mir sind die meisten Steckdosen hinter irgendwelchen Möbeln. Ich habe das Projekt ja gerade gestartet, um die Fernbedienung loszuwerden. gruß tobi
V0.84 ist online. -Updates und Restarts funktionieren jetzt seamless, also ohne Unterbrechung. Jeder Port behält seinen Status, auch Timer werden übernommen. Angeschlossene Geräte bleiben an/ausgeschaltet. Dito auch bei Stromausfall/Ausstecken. Genauer gesagt gibt es einen ganz kurzen Glitch von wenigen ms, aber der ist so kurz das bei keinem meiner Geräte die Relais auch nur zucken, auch nicht bei nur 200V und 10A Last. Sollte das bei irgendeiner Hardware doch passieren, hilft ein kleiner Kondensator 1yF/10V vom jeweiligen Ausgang gegen Masse. Gruss tobi
v0.85 online -Bugs im MQTT beseitigt, Funktion getestet -Startseite bei MQTT überarbeitet -MQTT/MQTTs werden jetzt unterstützt
Hi, wie siehts mit der Leistungsaufnahme aus. Ist wohl >0,5 Watt ?
Hi, V1.0 ist draußen. Update zu V0.85 -Support für MQTT Authentication/Password und das Setzen eigener Topics hinzugefügt. -Support für MQTTs nochmal überarbeitet. Wegen begrenztem Platz im RAM müsen die Zertifikate derzeit noch in der Webserver.h gespeichert werden. Ich schaue noch, ob ich das anpassen kann. -Bugfixes für OTA Zum Stromverbrauch: Die ESP8266 Module habe ich wie folgt gemessen: Vss: 3,3V Iidle: 40-100mA, je nach Entfernung zum Wlan-Router. Iload (z.B. beim Aufbau von Webseiten): 60-200mA für einige Sekunden. Meine Eigenau-Steckdosenschalter verbrauchen gemessen mit der Messeinheit am Trenntrafo etwa 0.3W-0.5W im Idle (je nach Entfernung zum Wlan-Router) wenn das Relais aus ist und etwa 0.9-1.2W mit aktivem Relais. Bei Last kommen etwa 0.3W für einige Sekunden dazu. Wobei ich sagen muss, das die Genauigkeit der Messeinrichtung bei derartig kleinen Leistungen nicht spezifiziert ist. Zusätzlich hängt der Verbrauch auch von der verwendeten Hardware ab. Die umgebauten HAMA WIFI Plugs z.B. verbrauchen nur etwa 0.6W-1W mit aktivem Relais.
Update: Neuer Control mode MQTT(publish), damit stehen folgende Modi zur Verfügung: -local: Schaltkommandos via Web oder Button wirken nur am jeweiligen Gerät. -MQTT(publisher): Schaltkommandos via Web oder Button wirken lokal und werden zusätzlich an alle Subscriber gesendet. Dies gilt auch für Timer und geplante Schaltaktionen. Damit kann ein Schaltserver(Publisher) via MQTT eine beliebige Anzahl von Subscribern steuern. MQTT Messages werden mit QoS 1 und ohne retain flag gesendet. -MQTT: Lokale Schaltkommandos via Web sind gesperrt. Der Button wirkt nur lokal.Schaltkommandos werden via MQTT entgegen genommen (Subscriber).
hacker-tobi schrieb: > @moderator: könnt ihr den threadtitel anpassen, z.b. auf "TOISWITCH - > IoT I/O-Server für ESP8266"? Habe ich angepasst. hacker-tobi schrieb: > Btw das Projekt ist umgezogen: > Neue URL: > https://toiswitch.sourceforge.io Page not found. EDIT: Ich finde das Projekt TOISWITCH jedoch unter https://sourceforge.net/projects/wlan-controlled-switch/
:
Bearbeitet durch Moderator
Hi, danke! Momentan scheint die neue page noch nicht online zu sein. Ich kümmer mich drum. Gruss tobi
Hi, mal ein update zum Projekt selbst. Erstmal kurz zum Namen: TOISWITCH = Tobi's IoT Switcher ;) Angefangen hatte es für mich als einfacher I/O-Server für eine Schaltsteckdose, um den ESP8266 kennen zu lernen. Aber es hat sich weiter entwickelt. Der aktuelle Stand ist: -Toiswitch kann bis zu 17 digitale I/Os (Maximum des ESP8266) bedienen. -Jeder Input (z.B. Taster) kann beliebige Ausgänge schalten. -Es können für jeden Ausgang individuelle Timer und Zeitpläne erstellt werden. -Die Geräte können via MQTT sowohl Kommandos entgegen nehmen (Subscriber) als auch versenden (Publisher), die MQTT-Parameter (Broker, Topic etc.) sind dabei konfigurierbar. Auch Authentication und MQTTs werden unterstützt. -Für folgende Devicetypen ist TOISWITCH aktuell geeignet: -WLAN Steckdosen (getestet) -WLAN (Licht-)schalter/Schaltmodule (getestet) -WLAN Bewegungsmelder (getestet) -WLAN Rolladen/Markisenmodule (ungetestet) -weitere Features wie OTA, mDNS etc sind ebenfalls integriert. Nachdem es hier ja auch schon einige Kritik gab und auch die Sinnfrage gestellt wurde, da es bereits andere Projekte dieser Art gibt, habe ich mich jetzt auch gefragt, was damit werden soll. In diesem Zuge habe ich TOISWITCH auch mit TASMOTA verglichen. Das System hat sich zu einem flexiblem I/O-Server entwickelt, und ich werde es weiter entwickeln. Ich plane folgendes: -Sämtliche Features sollen wie bisher immer auch Standalone genutzt werden können, im Rahmen der Fähigkeiten des jeweiligen Devices. -Die Konfiguration wird ausschließlich über Web-Interface erfolgen, eine Konsole (wie z.B. bei Tasmota) plane ich derzeit nicht zu integrieren. Die Tasmota-Konsole ist zwar sehr leistungsstark aber für mein Empfinden nicht intuitiv zu bedienen. -Die Bedienung wird weiterhin über Web und MQTT sowie -sofern vorhanden- lokale Tasten erfolgen. -Als nächstes plane ich eine Integration von One-Channel/RGB/RGBW-Dimmern und Leuchten. Danach evtl. eine Integration von Sensoren (z.B. Temperatur) und einen Port auf ESP32. -Die Entwicklung wird weiterhin auf Basis des SDK von Espressif erfolgen. Ich würde mich über jede Form der Beteiligung an dem Projekt freuen, allen voran über Tests auf Geräten. Aber auch über Kritik, Lob, Erweiterungen etc. gruß tobi
Die letzte Version beinhaltet jetzt auch eine Steuerung für digitales Glühobst ("Glühbirnen") über HTTP/MQTT. Die PWM läuft mit 200Hz und bietet 5000 Schritte (also etwa 10,5 Bit). Es können alle PWM-Kanäle des ESP8266 genutzt werden. PWM-Kanäle / Schaltaus- und Eingänge können beliebig miteinander kombiniert werden. Alle Features der Software, wie z.B. auch die Erstellung von Gruppen über MQTT sind auch für die PWM-Ausgänge verfügbar.
Die neue Projekt-Site ist online. Dort sind ab sofort Updates zu finden: https://sourceforge.net/projects/toiswitch/files/Software/ Ich hab auch mal eine ganze Reihe vom Screenshots und aktuellen Bildern angehängt. Neu ist auch der Support für Profile. Mit diesen können beliebige Ausgangsstati auf Knopfdruck / mit einem Klick gesetzt werden. Zudem wird das Setzen eines Profiles auch via MQTT übermittelt, sofern dies aktiviert ist. Alle Subscriber führen dann das Profil ebenfalls aus, sofern es dort konfiguriert ist. Damit lassen sich dann komplette Scenen auf Knopfdruck oder mit einem Klick herstellen. Profile können durch Tastendruck oder via Web/MQTT aktiviert werden. Ich arbeite aktuell noch an der Unterstützung für analoge Inputs. Diese folgt in der nächsten Zeit. gruß tobi
hacker-tobi schrieb: > Die neue Projekt-Site ist online. Dort sind ab sofort Updates zu finden: Da kann ich die Files nur einzeln runterladen! Mache bitte noch ein Gesamtpacket für das ganze Projekt.
Hi, ich habe wie gewünscht ein ZIP-File aller Dateien erstellt und hochgeladen. Zusätzlich habe ich noch ein paar Bugs gefixed: -OTA hat nicht funktioniert, wenn mDNS enabled ist. Fixed. -Bei der Erstinbetriebnahme oder nach Rücksetzen der Konfiguration wird der Station Type per default mit "ORIGINAL" besetzt, was zu Fehlkonfigurationen führen kann. Fixed. -Ebenfalls bei Erstinbetriebnahme oder nach Rücksetzen der Konfiguration war der Betriebsmodus auf "MQTT" gesetzt und das System erwartete die Angabe von MQTT-Parametern. Der Betriebsmodus wird jetzt auf "LOCAL" gesetzt und es müssen keine MQTT-Parameter angegeben werden.
Noch ein paar Fixes: -Autorefresh auf der Hauptseite stört wenn dort Einstellungen vorgenommen werden. Auto refresh von 10 Sek auf 30 Sek erhöht. -Anzahl Profile von 10 auf 20 erhöht. Im Gegenzug Anzahl der geplanten Aktionen von 40 auf 30 reduziert. -OTA wurde auch bei zu kleiner Flashsize angeboten. OTA deaktiviert, wenn Flash <=2 Mbyte groß ist.
Hi, neues Release online. -Profilverwaltung überarbeitet. Profile werden jetzt korrekt sortiert angezeigt. -Die Aktivierung/Deaktivierung erfolgt jetzt deutlich schneller. -BUGFIX: Beim Löschen eines Profil werden automatisch auch alle mit diesem Profil verknüpften geplanten Aktionen entfernt.
Einer noch: Ausgänge können jetzt sowohl high-active als auch low-active definiert werden.
Und weiter gehts: -Color Picker in Web-UI integriert. -Colorwerte können jetzt auch per MQTT im Hexformat übermittelt werden. -Bugfix: Wildcards in MQTT Topics funktionierten nicht. Fixed.
Kleines Update: MQTT Kommando GET_STATUS Ausgabe sauber formatiert.
Hi, v1.02 ist online. -Support für Ansteuerung von Stromstossrelais hinzugefügt. -Neuer Profileditor -Bugfixes: -wenn ein digitaler Port geschaltet wird wartet die Software einige ms bis die Konfig gespeichert wird. Sollte es z.b. bei schlecht designter Hardware zu einem Reset beim Umschalten kommen, wird so eine Beschädigung des Configfiles vermieden.
V1.03 ist online. Wesentliche Neuerung ist die Möglichkeit, das Verhalten nach dem Einschalten steuern zu können. Es kann entweder der letzte Status wieder hergestellt oder ein beliebiges Profil aufgerufen werden. gruß tobi
Eine Frage, dessen Antwort sicher irgendwo steht, ich wohl überlesen habe: Welches File mit welchem Programm muß man flashen? Eine kurze Beschreibung/Anleitung oder Link würde mir genügen und DANKE für's teilen!
:
Bearbeitet durch User
Hi, im Ordner build findest du die webserver.bin Dies ist die originale software. Dieses file ist für 4 MB Flash ausgelegt. Die Software läuft auch mit 2 MB flash ohne Einschränkungen (z.B. TYWE3S Modul) oder auf 1MB Modulen (TYWE 2S). Bei 1 MB fällt aber die Möglichkeit des Over-The-Air Update (OTA) weg. Auf welchem Gerät willst die Software denn verwenden? Was ist dort für ein Modul verbaut? Weist du, wo welche Signale anliegen? gruß tobi
Noch zur Frage nach dem Flash Tool Ich verwende unter Linux das Tool esptool.py Es lässt sich auch jeder andere Flasher verwenden, z.B. der in Arduino IDE integrierte. Bei den TYWE (TUYA)-Modulen mit älterer Firmware kann auch das Tool tuya-convert verwendet werden, um die Software over-the-air einzuspielen.
Danke Tobi, ich hatte Wemos D1 mini vorgesehen, komme aber erst Morgenabend dazu. Bin gespannt. Wenn Du eine gute Seite für den ESP32 suchst, meine Empfehlung: https://randomnerdtutorials.com/
:
Bearbeitet durch User
V1.05 ist online -Support für BL0937 power measurement IC hinzugefügt -"Standby Killer" = Automatische Abschaltung wenn angeschlossene Verbraucher in Standby gehen hinzugefügt -Gemessene Werte für Leistungsaufnahme wird im Web-Interface angezeigt und via MQTT alle 5 Sekunden published wenn aktiviert. -MQTT commands und publishments auf JSON-Strings umgestellt, um Kompatibilität mit gängigen Apps und Brokern (z.B. MQTT Dashboard App für Android) zu verbessern. -Einige Bereinigungen und Performance-Verbesserungen.
@Helmut: Danke für die Info. Da es sich beim Wemos D1 Mini um ein Entwicklungsboard und nicht um ein bekanntes Device handelt, musst du die I/O-Definitionen in init.c (Funktion init_device() ) selbst erstellen. Du kannst eines der in init_device() verwendeten Geräte als Blaupause nehmen oder anpasssen. Ich kann hier auch gern helfen, wenn gewünscht. Dann benötige ich aber von dir die Info, was du genau an welchen Port anschließen willst.
Hallo Tobi, hast Du die Config auf NodeMCU aufgebaut, oder für welchen Baustein?
Hi Helmut, die geräte-spezifischen Konfigs basieren ausschließlich auf Geräten, auf denen die Software zum Einsatz kommt. Dies sind mit einer Ausnahme kommerziell verfügbare Geräte,welche zum größten Teil auf esp8266-Modulen des Herstellers Tuya basieren (z.B. tywe3s). Dabei hat jeder Gerätetyp seine eigene Konfig, da andere Module und Ports verwendet werden. Es besteht die Möglichkeit, eine neue Konfig zu erstellen. Die Konfigs beschreiben, über welche gpio Pins was angebunden ist und sind in init.c hinterlegt.
Zitat: Es besteht die Möglichkeit, eine neue Konfig zu erstellen. Die Konfigs beschreiben, über welche gpio Pins was angebunden ist und sind in init.c hinterlegt. Nur dann muß ich neu "kompilieren", oder kann ich die Conf auch in der Webseite des Modul ändern?
In der Website kannst du nur bekannte Devices auswählen. Wenn du die Konfig neu erstellen willst, dann musst du neu kompilieren. alternativ schreib mir kurz, was du an welchen Port anbinden willst, dann erstelle ich sie dir und binde sie in den regulären build ein.
Ich wollte eine ältere Platine (230V~ In 230V~ out) mal damit ausstatten. Leider sind die SSR fast nicht mehr zu bekommen bzw teuer. Ev hat ein geneigter Leser eine Adresse für die Teile?
Hi, das sollte machbar sein. Wenn ich das richtig sehe benötigst du 8 digitale outputs, und high ist active korrekt? Wenn du mir das kurz bestätigst dann stell ich die devicekonfig zusammen. Kommen noch inputs, z.b. für Taster dazu? Einen Taster solltest du vorsehen, um bei bedarf die wlankonfig auf default setzen zu können.
8 mal Output, aktiv mit GND, meistens kann dann mehr Strom abfließen. Wie hoch darf der Pin-Strom überhaupt sein bei dem ESP, könnte der ESP32 mehr? Optos detektieren im Moment einen oder mehrere 230V~ Eingang/e und ziehen dann den Kollektor auf GND. Die Config muß nur für alle 8 Out- und 8 Inputs gleich sein. Schonmal vielen Dank für Dein Gehirnschmalz und Deine Zeit.
:
Bearbeitet durch User
Wenn das SSR sind sollte der Strom den der ESP schalten muss doch recht gering sein? Nur damit ich das richtig verstehe: Du hast 8 Eingänge. Low=240v liegen an, high=nix liegt an Und 8 Ausgänge Low=SSR schaltet ein. High=SSR schaltet ab. Korrekt?
Jo, zu den SSR's, aus Kostengründen wollte ich diese nehmen https://www.pollin.de/p/solid-state-relais-ssr-d32a380-5-3-32-v-5-a-380-v-340633 oder https://www.pollin.de/p/solid-state-relais-ssr-d24a240-2-24-v-2-a-240-v-340632?utm_source=google&utm_medium=fshopping&gclid=Cj0KCQiA-qGNBhD3ARIsAO_o7yky1HGJLEhuV1tFCshkiIZXEKsMI2O9Fn6U4diWrbZRczNIaDnie5oaAjQ4EALw_wcB geplant waren die von Sharp SSR S216S02 16A .... aber teuer....
Na bei 3v ist der schaltstrom 6mA pro port, d.h. max 48mA gesamt. Kein Problem für den esp8266. Bei den Eingängen kann es sein, das du das signal noch filtern musst um fehltriggerung zu vermeiden. Ich bin mir nicht sicher, ob die Schaltung die 50/100Hz gut genug glättet. Aber im Zweifel kommt es auf einen Versuch an.
Da ist ein Elko/Kondensator an jedem Optoausgang, der speichert den Pegel
Hi, ich hab die Software angepasst und hochgeladen. Das zugehörige Device heißt "GEN_8CH_IO_BOARD" GPIO0 = Reset Switch GPIO1-8 = Digital Input GPIO9-16 = Digital Output Ich merke an: Damit sind ALLE 17 GPIOs des ESP8266 belegt. Ich weiß nicht, ob dein Breakout Board dir alle GPIOs zur Verfügung stellt. Bedenke bitte auch, das es GPIOs gibt, welche während des Boot bestimmte Pegel annehmen bzw. annehmen müssen. vgl https://randomnerdtutorials.com/esp8266-pinout-reference-gpios/ Du kannst es testen, aber ggf. muss die Anzahl der I/O reduziert werden.
Hallo Helmut, ok. Wenn du mit den Ports nicht hinkommst, melde dich, ggf. können wir dann eine Lösung finden. Was die Software jetzt schon kann, wäre z.B. -einzelne Ports als Umschalter zu nutzen, und über eine kleine Schaltung mit einem Port 2 Relais abwechselnd zu schalten oder -Ein/Ausgänge zusammen zu legen.
Hi Tobi, ich habe es auf NodeMcu v3 geflasht (webserver.bin), bekomme auch auf dem Comport Ausgaben, aber in meinem Router ist kein Eintrag einer neuen IP-Adr oder eine neue WLAN SSId Kann es sein, dass Du eine feste IP vergibst? Ich bin auf 192.168.0.x
:
Bearbeitet durch User
Hi, die Software vergibt keine feste IP, aber sie weiß doch am Anfang noch gar nicht, wohin sie sich connecten soll. Daher versucht sie es mit einem Wlan "default", password "default123". Leg das mal am Wlan-Router oder als Hotspot am Handy an, da wird es sich connecten. Dann im Web-Interface auf "configure me", user admin und password test_123 und dann dort das korrekte Wlan/password hinterlegen.
Hi, ein kleines update: -OUTPUTs können jetzt auch kurze Tastendrücke simulieren (high oder low-active) -Dies habe ich benötigt, um eine Ansteuerung eines Roto-Handsenders zu bauen, um so über TOISWITCH Markisen steuern zu können (DEVICE: ROTO_WINDOW_CTRL) Das sollte analog aber auch mit Handsendern für andere Geräte funktionieren.
Hotspot eingerichtet: 0 Nutzer meldet er....und unter welcher Adresse finde ich ihn... Ich könnte mir vorstellen, dass eine serielle Ausgabe der Verbindungsdaten hilfreich wäre, eine Einrichtung über einen eigenen WLAN Zugangspunkt wie ESPEASY es macht wäre gut. Bin ich der Einzige, der Deinen Webserver ausprobiert?
serielle ausgabe ist enthalten. du schriebst doch auch, das du ausgaben bekommst. welche sind das?
Sind undefinierte Zeichen, häng doch bitte hier mal ein webserver dot bin File ran, ev. ist nur was nicht richtig übertragen worden. Ich habe nur leider i.M. keine Zeit, eilt also nicht.
Hi, die webserver.bin ist die selbe, die du auch im Sourceforge findest. Anbei eine Version mit eingeschaltetem debug log. Damit solltest du eine ganze Menge sehen. Anbei das esptool Commando zum initialen flashen. Du benötigst dafür noch die restlichen files aus dem build folder. Die Verzeichnisse musst du sicherlich anpassen. esptool.py --chip esp8266 --port /dev/ttyUSB0 --baud 115200 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 40m --flash_size 4MB 0xd000 Software/build/ota_data_initial.bin 0x0 Software/build/bootloader/bootloader.bin 0x10000 Software/build/webserver.bin 0x8000 Software/build/partitions_example.bin
Anmerkung noch: Nach dem initialen flashen brauchst du nur noch die webserver.bin zu flashen. Die Software kann auch OTA, allerdings ist derzeit dort der Link und die Zertifikate hart codiert. Das will ich aber in nächster Zeit ändern.
Kannst Du mir die Bin's und die dazugehörigen Adressen nennen, ev SPI und Quarz wenn nötig, usw. Ich bin nämlich mit Window am Start, Du bist ein LinuxFan, eilt nicht
Die Daten stehen alle in dem Kommando : Flash 40mhz Xtal 26mhz Flashsize 4MB = 32Mbit Flashmode DIO (QIO sollte auch gehen je nach Board) 0xd000 ota_data_initial.bin 0x0 bootloader.bin 0x10000 Webserver.bin 0x8000 partitions_example.bin Habe mir das Nodemcu v3 mal angesehen. Das basiert auf dem esp12f mit 4MB. Das muss gehen, denn das Board (esp12f) habe ich selbst in einigen Devices in Verwendung.
Ich weiss nicht wie es bei nodemcu ist aber evtl musst du noch irgendwelche Pins auf bestimmte level legen oder jumper setzen damit das board startet. Beim nackten esp12f müssen RST und EN mit VCC verbunden werden und IO15 über 2k2 mit GND.
Hi, der bootloader sollte auf dem board schon präsent sein. Von daher kannst du den weg lassen. ich kann ihn aber auch noch nachliefern wenn gewünscht.
Hmm, bekomme das Teil nicht zum laufen, was mache ich falsch in den Einstellungen? Debug Ausgaben kommen keine
:
Bearbeitet durch User
Hi stell mal den SPI mode auf qio um. Das ist das was er in der detection angibt.
Und die Adresse für partitions example bin ist 0x8000 nicht 0x80000 Dito für ota data initial. Mit deinen Einstellungen vermute ich das der flash Vorgang fehlschlägt. Was sagt das tool denn beim flashen? Ansonsten kannst du noch eine niedrigere baudrate testen. 78800 z.b.
Hast du denn mit dem tool schonmal erfolgreich etwas geflashed? Wenn ja wie waren die Einstellungen ?
Hallo Tobi, ja hatte ich schonmal gemacht, aber das ist länger her und die Einstellungen weiß ich jetzt nicht mehr. Habe mal probeweise Tasmota online geflasht: Board ist ok. Hab' aber auch nicht so die Zeit für längere Versuche, der WAF you know?
hi, klar versteh ich das. Was heißt online geflashed? Mich würde der Fehler interessieren, auch um ihn auszumerzen falls er in der Software oder den Einstellungen liegt.
Tasmota kann man Online flashen, man muß nicht unbedingt zB tasmotizer benutzen, guggst Du : https://arendst.github.io/Tasmota-firmware/
Ah OK. Damit kann ich dir leider nicht dienen. Alternativ kannst du mir das board auch mal zusenden dann flashe ich es dir. Bei Interesse hacker [minus] tobi [at] gmx [Punkt] net
hacker-tobi schrieb: > Ah OK. > Damit kann ich dir leider nicht dienen. Schau dir dafür mal die ESP-Web-Tools an. https://github.com/esphome/esp-web-tools
Helmut H. schrieb: > Ich wollte eine ältere Platine (230V~ In 230V~ out) mal damit > ausstatten. > Leider sind die SSR fast nicht mehr zu bekommen bzw teuer. > > Ev hat ein geneigter Leser eine Adresse für die Teile? Ali hat die
Kleines bugfix-update: -Wenn im Web-Interface "edit profile" ausgwählt wurde, aber kein Profil angegeben wurde, wurde der Profileditor mit dem ersten Profil geöffnet. Fixed. Jetzt wird der Profileditor in diesem Fall nicht mehr angesprungen. -Eintrag für virtuellen Port "ALL" bei Steckdosenleisten entfernt, da dieser zu Verwirrung beim Ablesen führen kann, wenn "ALL" z.B. auf ON steht, ein einzelner Port aber auf "OFF". @Helmut: Any news?
V1.6 ist online. -MQTT user/pass von 32 auf 128 Zeichen max. Länge erhöht. -Cert check für MQTTs abgeschaltet, Dies war notwendig, da das Zertifikat nur fest hinterlegt werden konnte, und ein Wechsel des Brokers daher mit neu Kompilieren einher ging. -Im Gegenzug sind nur noch sichere Ciphers in Verbindung mit TLSV1.2 erlaubt. So ist z.b. die Nutzung von flespi in Verbindung mit MQTTs und tokenbasierter Authentifizierung möglich.
Hallo Tobi, im Moment habe ich keine Zeit für meine Spielereien. Melde mich, wenn ich weiter komme. Bleib gesund!
V1.07 ist online -OTA überarbeitet: -eigene OTA Routine geschrieben, die Updates von beliebigen URLs akzeptiert, unter der Voraussetzung das die URL mit SSL (https) gesichert ist und TLSV1.2 unterstützt wird. -OTA kann jetzt per MQTT angestoßen werden. -OTA Ergebnis wird detailierter angezeigt.
v1.08 ist online. Im wesentlichen hab ich das Speichermanagement überarbeitet, um die RAM-Nutzung zu optimieren. Auch werden RAM- und SPIFFS-Nutzung jetzt in der Fußzeile angezeigt. Es gibt auch eine neue URL für OTA: https://toiswitch.de/webserver.bin die Domain toiswitch.de wird noch mit mehr "Leben", z.B. einem Handbuch gefüllt werden. Frohes neues noch! Tobi
V1.09 released Überarbeitung der Funktion für neueinrichtung und factory reset: -factory reset ist jetzt auf 2 wegen möglich: -Bei devices mit reset-taster wie gehabt (reset-taster beim Einschalten 10 sek. drücken) -für devices ohne reset-taster, in dem sie in kurzer Abfolge (max 1 min. Abstand) 10 mal hintereinander aus- und eingeschaltet werden. Nach factory-reset macht das Gerät einen eigenen hotspot auf: Name: toiswitch Pass: toiswitch123 IP oder Hostname der Configpage: 192.168.4.1 / toiswitch.local Initial login: admin/test_123
Hi, ich bin gerade dabei, eine Doku für die Software zu schreiben und suche noch Leute die testen oder gegenlesen. Doku unter: https://sourceforge.net/p/toiswitch/wiki/browse_pages/ (noch unvollständig) Also wenn hier jemand unterstützen möchte, würde ich mich freuen. Anregungen, Kommentare, Kritik gern hier posten.
Hi, bugfix: System geht in Reset wenn konfiguriertes WLAN für mehr als 24 std ausfällt, nachdem es zuvor erreichbar war. Fixed.
V1.10 ist online -MQTT response topic eingefügt. Auf diesem Topic meldet ein Device alle ausgeführten Kommandos mit Status zurück.
Hi, Hab an der Doku weiter geschrieben, liegt im Wiki ab.
Hi, ein kleines update: -Support für inverted PWM channel hinzugefügt (low-active) -Beim HAMA TOUCh SWITCH die LEDs dimmbar gemacht
Hi, V1.12 ist online. Die MQTT Kommandostruktur hat sich verändert. Die einzelnen MQTT Kommandos sind jetzt in Untergruppen (Pfade) aufgeteilt, z,B. SYS für System Kommandos OUT zum Schalten für Ausgänge usw. Damit existiert eine Hierarchie, und die Kommandos und ihre Rückgabewerte lassen sich in MQTT Clients besser unterscheiden. Ich werde in der nächsten Zeit auch das Web-Interface angleichen, damit hier die selbe Struktur verwendet wird. Auch will ich einige Kommandos im MQTT hinzufügen, die bis jetzt nur über Web verfügbar sind, z.B. die Anlage von Profilen.
V1.13 ist draußen -Die MQTT Kommandos wurden stark erweitert. Es können jetzt z.B. Profile und Planned actions via MQTT hinzugefügt, geändert und gelöscht werden. -Die Kommandostruktur von MQTT und Web-Interface wurde angeglichen. -Planned Actions wurden überarbeitet. So erhält jede planned action eine eindeutige ID, um sie auch über mehrere devices hinweg eindeutig erkennen zu können. Bisherige MQTT Kommandos funktionieren mit dieser Version nicht mehr und müssen angepasst werden. Auch Planned Actions müssen neu erstellt werden.
Für Details zu den neuen Kommandos siehe Wiki: https://sourceforge.net/p/toiswitch/wiki/5_MQTT%20commands/
V1.14 ist online -Überarbeitetes HTML-Interface. Bilder reiche ich noch nach. -PWM arbeitet jetzt intern mit 10 Bit @ 1 kHz, extern mit 8 Bit -Farben sind Gamma-korrigiert -Bugfixes
Letzten Eintrag bitte ignorieren. Ich wollte das Update nur jemand zur Verfügung stellen der es nicht von toiswitch.de beziehen kann wegen Problemen mit der lokalen Firewall. Gruss tobi
Device QS_WIFI_S03 (Wlan Unterputz Schalter, https://www.ifreeq.com/products/qs-wifi-s03-specs/) aufgenommen.
Es sind jetzt separate Versionen für Devices mit 2 MB flash (z.B. tywe3s-basiert) und 4 MB flash (z.B. ESP12S-basiert) verfügbar. Um die Pflege des Online-Repos nicht zu aufwändig zu machen, werde ich den Sourcecode und die Builds für diese und weitere Versionen nur noch als Binary auf toiswitch.de und als ZIP und via GIT auf sourceforge.net zur Verfügung stellen. Ich werde demnächst noch die Liste der unterstützten Devices erweitern. gruß tobi
V1.15 released Liste der unterstützen devices (2M Version) erweitert.
Release der 1MB-Version für ESP8266-1M oder ESP8285-basierte devices. derzeit kann die 1MB-Version noch kein OTA, ansonsten ist sie mit den größeren Versionen identisch. An OTA für die 1MB-Version arbeite ich noch. Alle Versionen: Bugfix: Für den Monat Mai konnten keine planned actions angelegt werden. Fixed. gruß tobi
Hi, die 1MB Version beherrscht jetzt auch OTA über einen minimal updater. Dafür musste ich bei dieser Version allerdings auf SSL für OTA und MQTT verzichten und den Speicher für Profile/Planned Actions reduzieren. Derzeit kann ich noch keinen eigenen minimal-updater zur Verfügung stellen (kommt noch), daher verweise ich auf diesen hier, falls es jemand testen will: https://github.com/Aircoookie/ESP8266MinimalHTTPUpdater Dieser muss aktuell noch selbst kompiliert und via http bereitgestellt werden. Der Downloadlink in der Konfiguration ist dazu anzupassen. Die Partition Table ist wie folgt. Da der IDF downloader mit asymetrischen Partitionen seine Probleme hat, wird das OTA binary nach erfolgreichem Download direkt auf OTA_0 kopiert. # Name, Type, SubType, Offset, Size, Flags # Note: if you change the phy_init or app partition offset, make sure to change the offset in Kconfig.projbuild nvs, data, nvs, 0x9000, 0x4000 otadata, data, ota, 0xD000, 0x2000 phy_init, data, phy, 0xf000, 0x1000 ota_0, 0, ota_0, 0x10000, 640k, ota_1, 0, ota_1, 0xB0000, 304k, storage, data, spiffs, 0xFC000, 16k, Das OTA für die 1M-Version ist derzeit noch experimentell und sollte nur zum Testen verwendet werden!
Korrektur, war nicht korrekt erklärt: Die 1MB Version beherrscht jetzt auch OTA über einen minimal updater. Dafür musste ich bei dieser Version allerdings auf SSL für OTA und MQTT verzichten und den Speicher für Profile/Planned Actions reduzieren. Derzeit kann ich noch keinen eigenen minimal-updater zur Verfügung stellen (kommt noch), daher verweise ich auf diesen hier, falls es jemand testen will: https://github.com/Aircoookie/ESP8266MinimalHTTPUpdater Dieser muss aktuell noch selbst kompiliert und via http bereitgestellt werden. Der Downloadlink in der Konfiguration ist dazu anzupassen. Die Partition Table ist wie folgt: # Name, Type, SubType, Offset, Size, Flags # Note: if you change the phy_init or app partition offset, make sure to change the offset in Kconfig.projbuild nvs, data, nvs, 0x9000, 0x4000 otadata, data, ota, 0xD000, 0x2000 phy_init, data, phy, 0xf000, 0x1000 ota_0, 0, ota_0, 0x10000, 640k, ota_1, 0, ota_1, 0xB0000, 256k, storage, data, spiffs, 0xFC000, 16k, Für die OTA_1 wären eigentlich 304k verfügbar, aber der Bootloader benötigt nach Doku Partitionen, welche n*64k groß sind. Die üblichen Schutzmaßnahmen (Prüfung des Binary nach Download, Zwei-Partitionen-Schema) sind auch in dieser Version aktiv. Trotzdem: Das OTA für die 1M-Version ist derzeit noch experimentell und sollte nur zum Testen verwendet werden! Der Bootloader sollte aus dem aktuellen ESP8266 IDF-Style SDK stammen, da ältere Versionen ein Problem mit dem Partitionsschema haben. Sobald ich einen eigenen minimal-updater gebaut habe, stelle ich diesen zur Verfügung.
Hallo, ich habe hier eine ältere OBI-WLAN-Schaltsteckdose (Gen. 1, runde Ausführung, z.B. hier beschrieben: https://github.com/martin-ger/ESP8266-WiFi-Socket/blob/master/README.md oder auch hier mit Schaltplan: https://forum.fhem.de/index.php/topic,89803.0.html ). Der verwendete OW8266-02Q ist nur ein ESP8266. Für Tasmota gibt es hier z.B. ein sonoff_template: https://github.com/arendst/Tasmota/issues/1988 Ich würde die OBI-WLAN-Schaltsteckdose jedoch gerne mit Deiner Software befüllen. Lt. meiner bescheidenen Kenntnis wären das die Flash-Einstellungen: OW 8266 ( = wohl nur 1MB (64k SPIFF) ) Board : Generic ESP8266 Module Flash Mode : DIO Flash Size : 1M (64k SPIFFS) Debug Port : disabled Debug Level : none Reset Method : ck Crystal frequency : 26 MHz Flash frequency : 40 MHz CPU frequency : 80 MHz Upload Speed : 115200 Hardware-Ansteuerung: Push Button 1: GPIO 14 Wifi LED (blue): GPIO 4 Relais = Ein: GPIO 12 kurzzeitig auf GND (!) Relais = Aus: GPIO 5 kurzzeitig auf GND (!) Die/meine gesamte Ansteuerung wird sich ja sicherlich per timeplans und short-time-timers-Regel festlegen lassen (?): Das Relais wird durch kurze Masse-Impulse (Besonderheit (!) dieses eines OBI-Gerätes wegen der internen Tyristor-Ansteuerung des Relais, "Tastbetrieb") durch den OW8266-02Q angesteuert. Der Button 1 soll dann zusätzlich das Relais per Hand umschalten, also wenn Relais = Ein: dann kurzer Tasterdruck für Relais = Aus bzw. wenn Relais = Aus: dann kurzer Tasterdruck für Relais = Ein. Zusätzlich soll es 7/8 tägliche Zeitschaltpunkte geben, zu denen das Relais für ca. 5 min Ein- und danach wieder Aus-schaltet. Mehr von Deiner universellen Software brauche ich ja nicht, z.B. kein MQTT, kein dimmen, kein SSL, kein Multicolor usw., das könnte/müßte man ja aus Platzgründen (1MB) sowieso weg lassen/kürzen. OTA wäre später ein Pluspunkt, aber zumindest einmal muß ich ja 'eh "real" flashen (mir würde für das zuküftige OTA aber sowieso eine interne/private IP besser gefallen...). Die timeplans und short-time-timers zu den Schaltregeln bekomme ich sicherlich selbst hin, ggf. kann man ja noch nachfragen, aber mit der originalen SDK von Espressif stehe ich irgendwie auf Kriegsfuß, auch finde/sehe ich die Stellen im Quelltext nicht, wo genau ich die Belegung des Obi-Teiles eintragen muß und/oder mehrfach eintragen muß. So, jetzt die Fragen, wenn Du da noch ggf. etwas Zeit über hast: 1.) Könntest Du mir eine flashfertige binär-Datei nach o.g. Anforderungen erstellen? 2.) Könntest Du den dafür geänderten Quellcode mitliefern, damit ich mir die Änderungen dann ansehen und ggf. selber weiter testen/kompilieren kann? 3.) Die vorgenannte Bootloader-Software zu OTA verstehe ich so auch nicht, brauche ich die zusätzlich zu 1.) dann auch noch (wenn Dein OTA integriert/fertig ist)? Danke schon einmal :-)
Hi, ich kann die Steckdose gern als device mit aufnehmen, da die Software alle Voraussetzungen dafür mitbringt. Das bin file kannst dir dann einfach via toiswitch.de herunterladen. Die Zeitpläne und kurzzeit timer kannst du dann via web interface erstellen. Irgend etwas zu entfernen ist nicht notwendig, nur ein passendes template muss ich erstellen. Ich schreibe hier wenn ich es aufgenommen habe. Gruss tobi
Danke, daß ging ja extrem schnell mit der Antwort. :-) Wenn es per device machbar ist, klar, das reicht mir. Zeitlich ist da kein Druck, wenn es eingepflegt wird, dann ist es eingepflegt. Danke.
Hi, ich hab es mal mit aufgenommen. Die wesentliche Änderung ist die Aufnahme des devices "OBI_WIFI_PLUG" in init.c. Ich empfehle dir für den initialen flash die Datei toiswitch.zip aus dem sourceforge-repo herunterzuladen: https://sourceforge.net/projects/toiswitch/files/ In der Zip-Datei findest du den Ordner 1M, der alle benötigten Files enthält. Flashen dann (hier via esptool) mit: -Zip entpacken -In das Verzeichnis esp8266/1M/Toiswitch/build wechseln -Flashen mit: python /opt/esp8266/ESP8266_RTOS_SDK/components/esptool_py/esptool/esptool.py --chip esp8266 --port /dev/ttyUSB0 --baud 115200 --before default_reset --after hard_reset write_flash -z --flash_mode dout --flash_freq 40m --flash_size 1MB 0xd000 /home/tobias/Documents/Projekte/Elektronik/TOISWITCH/Software/esp8266/1M /Toiswitch/build/ota_data_initial.bin 0x0 /home/tobias/Documents/Projekte/Elektronik/TOISWITCH/Software/esp8266/1M /Toiswitch/build/bootloader/bootloader.bin 0x10000 /home/tobias/Documents/Projekte/Elektronik/TOISWITCH/Software/esp8266/1M /Toiswitch/build/toiswitch_1m.bin 0x8000 /home/tobias/Documents/Projekte/Elektronik/TOISWITCH/Software/esp8266/1M /Toiswitch/build/partitions_1m.bin (Oder halt mit dem Flashtool deiner Wahl). Anpassung in init.c
1 | else if (strcmp(config.type, "OBI_WIFI_PLUG") == 0) |
2 | {
|
3 | is_configured = 1; |
4 | //Port for reset switch
|
5 | device_reset_switch = 14; |
6 | //14 as input
|
7 | gpio_pins[0].enabled = 1; |
8 | gpio_pins[0].pin_type = D_BUTTON; |
9 | gpio_pins[0].gpio = 14; |
10 | strcpy(gpio_pins[0].name, "button_1"); |
11 | //15 as output
|
12 | gpio_pins[1].enabled = 1; |
13 | gpio_pins[1].pin_type = D_TOGGLE; |
14 | gpio_pins[1].gpio = 5; |
15 | gpio_pins[1].complement_gpio = 2; |
16 | gpio_pins[1].is_inverted = 1; |
17 | strcpy(gpio_pins[1].name, "OUT1"); |
18 | //12 as output
|
19 | gpio_pins[2].enabled = 1; |
20 | gpio_pins[2].pin_type = D_TOGGLE; |
21 | gpio_pins[2].gpio = 12; |
22 | gpio_pins[2].complement_gpio = 1; |
23 | gpio_pins[2].is_inverted = 1; |
24 | strcpy(gpio_pins[2].name, "OUT2"); |
25 | //4 as LED
|
26 | gpio_pins[3].enabled = 1; |
27 | gpio_pins[3].pin_type = D_PWM; |
28 | gpio_pins[3].pwm_channel = 0; |
29 | gpio_pins[3].gpio = 4; |
30 | gpio_pins[3].colour_channel = BLUE; |
31 | gpio_pins[3].gamma_corrected = 1; |
32 | gpio_pins[3].status = PORT_ON; |
33 | strcpy(gpio_pins[3].name, "LED"); |
34 | device_ports = 4; |
35 | }
|
Achtung: Die Pfade aus meinem esptool-Aufruf musst du noch anpassen.
Wow, vielen Dank! Ich melde mich, wenn ich es nach dem WE aufgespielt habe. :-)
Hi, klar gern. Denk dran das du beim ersten flashen ggf. die partition table und den bootloader mit einspielen musst, das findest du alles im ZIP file. Ich konnte das Template leider nur insofern testen, das ich die Signale prüfen konnte, die ausgegeben werden, da ich selbst keine solche Steckdose besitze. Ggf muss hier also noch nachjustiert werden. Ich selbst nutze schon seit langem einen Wechselschalter der genauso gesteuert wird, nur mit anderen gpios. Die Software sieht für die Ansteuerung des Relais zwei Ausgänge (out1 und out2) als "Wechselschalter'. Das ist aber kein Problem, die Schaltvorgänge kannst du nachher über beide Ausgänge triggern, da diese wechselseitig geschaltet werden. Gruss Tobi
Ich hab die Erstinstallation vereinfacht. Die Datei Toiswitch.zip, welche unter https://sourceforge.net/projects/toiswitch/files/toiswitch.zip/download heruntergeladen werden kann, enthält nur noch nur die BIN-Files für jede Version (1M,2M,4M). Diese BIN-Files enthalten ein komplettes Flash-Abbild inkl. dem Bootloader, der Partion Table und Toiswitch selbst. Sie können daher mit jedem beliebigen Flashtool direkt auf Adresse 0x0 geflashed werden. Eine Anleitung findet sich unter https://sourceforge.net/p/toiswitch/wiki/1_Installation/ Der komplette Sourcecode incl. der Makefiles und Binaries findet sich wie bisher auch unter im Repo unter https://sourceforge.net/p/toiswitch/code/ci/master/tree/ gruß tobi
Hallo, sorry, ich bin z.Z. etwas gehandicapt. :-( Ich habe mir die rechte Handwurzel gebrochen. Rechtshänder - es ist da schon mehr als schwierig, nur 'ne Hose anzuziehen... ;-( Ich melde mich, wenn der Gips ab ist.
Update: kWh-Zähler: Werte werden jetzt gespeichert und Anzeige etwas anders formatiert ("." durch "," ersetzt).
hacker-tobi schrieb:
Finde ich toll von Dir, das Du trotz dem "bla-bla-bla" am Anfang weiter
gemacht hast !
@Herbert K. Danke ;) Die Software wird immer noch beständig weiter entwickelt. Ich gehe immer lieber "den harten Weg" und entwickle selbst - einfach weil es Spaß macht.
Herbert! Wir sind hier Zeugen von was ganz Großem! Ein kleiner Knirps lernt und macht. Das is doch fantastisch!
@ Postolevksy Such dir nen anderen Thread zum Trollen. Kannst dir ja gern meine Historie im Forum ansehen, dann wirst du feststellen das ich das nicht erst seit gestern mache ;)
Noch ein Mini-Update. Bugfix: Die Langzeitdaten für den Stromverbrauch (kWh) wurden nicht korrekt gespeichert und waren somit nach einem Reset des Geräts nicht mehr verfügbar. Korrigiert.
Support für wifi dual unterputzmodul qs-wifi-s05 ergänzt. Das Modul wird auch unter diversen anderen Namen verkauft, z.b. von Luminea. Es gibt Varianten mit 1MB und 2MB flash. Zumindest bei denen, die ich hier habe, ist die Pinbelegung identisch.
Support für Denver SHP-200 Doppelsteckdose mit Leistungsmessung hinzugefügt.
V1.17 ist online. Power meter support erweitert, erfasst werden jetzt Wirkleistung, Spannung(RMS), Strom(RMS), Power factor (cos phi).
V1.17 power meter noch um eine Kalibrierfunktion erweitert.
Hi Tobi, hättest du das Pinout vom ESP im Denver SHP-200 Stecker? Danke. Tommi
Hi Tommy, klar ;) gpio 4 : Button 1 (active low) gpio 13: Button 2 (active low) gpio 5 : BL0937 CF gpio 14: BL0937 CF1 gpio 3: BL0937 SEL gpio 12: Relay 1 gpio 15: Relay 2 gpio 0: LED link Device Config: else if (strcmp(config.type, "DENVER_SHP-200") == 0) { is_configured = 1; //Port for reset switch device_reset_switch = 4; //4 as input gpio_pins[0].enabled = 1; gpio_pins[0].pin_type = D_BUTTON; gpio_pins[0].gpio = 4; strcpy(gpio_pins[0].name, "button_1"); //13 as input gpio_pins[1].enabled = 1; gpio_pins[1].pin_type = D_BUTTON; gpio_pins[1].gpio = 13; strcpy(gpio_pins[1].name, "button_2"); //5 as input gpio_pins[2].enabled = 1; gpio_pins[2].pin_type = D_PWR_IN; gpio_pins[2].gpio = 5; strcpy(gpio_pins[2].name, "pwr_watt"); //5 as input gpio_pins[3].enabled = 1; gpio_pins[3].pin_type = D_PWR_CF1; gpio_pins[3].gpio = 14; strcpy(gpio_pins[3].name, "pwr_cf1"); //5 as input gpio_pins[4].enabled = 1; gpio_pins[4].pin_type = D_PWR_SEL; gpio_pins[4].gpio = 3; strcpy(gpio_pins[4].name, "pwr_sel"); //12 as output gpio_pins[5].enabled = 1; gpio_pins[5].pin_type = D_OUT; gpio_pins[5].gpio = 12; strcpy(gpio_pins[5].name, "OUT1"); //15 as output gpio_pins[6].enabled = 1; gpio_pins[6].pin_type = D_OUT; gpio_pins[6].gpio = 15; strcpy(gpio_pins[6].name, "OUT2"); //0 as LED out gpio_pins[7].enabled = 1; gpio_pins[7].pin_type = D_PWM; gpio_pins[7].pwm_channel = 0; gpio_pins[7].gpio = 0; gpio_pins[7].colour_channel = BLUE; gpio_pins[7].gamma_corrected = 1; gpio_pins[7].status = PORT_ON; strcpy(gpio_pins[7].name, "LED"); device_ports = 8; }
Hi Tobi, Danke für deine Antwort. Ich meinte eher physikalisch am ESP 8266 :-). Gruß, Tommi
:
Bearbeitet durch User
Hi, das ist imHO kein ESP Modul sondern die neuere Variante mit beken bk7231. Ich hab noch eins dieser module hier liegen und schaue mal nach. Das pinout könnte dem xh-004b entsprechen (siehe https://community.home-assistant.io/t/unkown-tuya-chip/153591/245). Das müsstest du aber nochmal anhand der Platine verifizieren. Die ist ja recht übersichtlich.
Hi, ich hab mich geirrt, auch dieses Modul ist ein esp8266ex Folgendes pinout habe ich ermittelt: Bestückungsseite (ledseite richtung WLAN antenne Vcc -> rxd - io4 - io0 - io13 - io14 - en Rückseite (ledseite richtung WLAN Antenne) Gnd - txd - unklar - io2 - io15 - io12 - adc Rst auf testpunkt
Hi, noch ein paar Infos zum Modul selbst: Connecting... Detecting chip type... ESP8266 Chip is ESP8266EX Features: WiFi Crystal is 26MHz MAC: a4:e5:7c:15:df:c4 Uploading stub... Running stub... Stub running... Manufacturer: 5e Device: 6014 Detected flash size: 1MB IO15 und GND müssen mit 2k2 verbunden werden. EN muss auf 3V3 gelegt werden (Verbindung zu VCC). Flash mode ist DOUT, Freq 40 MHz
Anbei noch 2 Bilder vom Modul mit Beschriftung. Die 1MB Version von Toiswitch läuft darauf problemlos.
Hi nochmal, ich vermute der Pin "?" ist IO5. Das würde zur Pin-Belegung der SHP-200 passen.
V1.18 ist online -Menüstruktur Hauptseite überarbeitet -Tageszähler für kWh / Kosten hinzugefügt -Bugfixes
Noch vergessen: Support für ledvance smart+ multi power socket EU (https://www.ledvance.de/consumer/produkte/smart-home/smart-komponenten/smart-wifi/smart-komponenten-mit-wifi-technologie-zur-anwendung-im-innenbereich/smart-steckdosen-mit-wifi-technologie/smarte-wifi-3-fach-steckdosenleiste-mit-smarten-usb-anschlussen-c173079) hinzugefügt. Hier scheint es wieder 2 Versionen zu geben, eine mit tywe3s Modul und eine mit wb3s modul. Das wb3s modul enthält leider einen Mediatek ARM und muss daher gegen ein pinkompatibles tywe3s oder esp12f getauscht werden.
Support für ledvance smart+ nightlight plug (https://www.ledvance.de/consumer/produkte/smart-home/smart-home-produkte-mit-wifi-technologie/smart-home-komponenten/smarte-steckdose-mit-integriertem-nachtlicht-ueber-wifi-technologie-steuerbar-c141297) hinzugefügt. Unterstützt werden alle Funktionen, also Schalten des Ausgang, Energiemessung und das Nachtlicht.
Noch ein paar infos: Das modul ist ein tywe3l. Die Belegung ist Bl0937 SEL io14 Bl0937 Cf1 io12 Bl0937 CF io13 Button io16 neu io2 Nachtlicht io4 Led io5 invert Relais io15 Den button habe ich von io16 auf io2 um verlegt, da io16 keine Interrupts unterstützt . Das Gerät ist einfach zu zerlegen, da es komplett geschraubt ist. Und netterweise sind sogar die Funktionen der io Pins auf der Platine vermerkt.
Hi, -einige Bugfixes (Anzeige der Spannung war ab und an zu niedrig, Farbe im Color picker wurde nicht korrekt dargestellt) -Reworked http interface Für die Startseite merkt sich die Software jetzt, welche Sektionen geöffnet sind und welche nicht.
Support für ledvance RGB strip Treiber (https://shop.ledvance.com/products/ledvance-smartes-led-band-led-fur-alle-oberflachen-wifi-smart-flex-multicolor-8-50-w-220-240-v-ausstrahlungswinkel-110deg-rgbtw-2000-6500-k-gehausematerial-silikon-ip20) hinzugefügt.
V1.19 Planned actions können jetzt nicht nur anhand fixer Zeitpunkte, sondern auch anhand von Sonnenauf- und untergang ausgelöst werden. Die notwendige Kalibrierung befindet sich auf der Configuration Page. Dort müssen lediglich die Werte für Sonnenauf- und Untergang am 23.6. und 23.12. für den eigenen Standort angegeben werden. Daraus errechnet die Software dann die Sonnenauf- und Untergangszeiten für jeden Tag.
@Helmut H. Ist dein Projekt noch aktuell? Ich habe mir das nochmal angesehen, und gesehen, das ich damals in der Devicekonfig für dein IO Board auch GPIOs "reserviert" hatte, die der ESP für die Kommunikation mit dem Flash braucht. Fakt ist: Ohne Portexpander oder Zusammenlegen von IOs geht es nicht.
Support für WIZ RGBCCT LED Lampe E27 8W/13W hinzugefügt. https://www.wizconnected.com/de-de/p/led-lampe-lampe-13-w--entspr-100-w--a67-e27/8718699786199
"Experimental" Pfad zum Git Repo hinzugefügt. Die Binaries können auch unter https://toiswitch.de/experimental/toiswitch_exp_1m.bin https://toiswitch.de/experimental/toiswitch_exp_2m.bin https://toiswitch.de/experimental/toiswitch_exp_4m.bin heruntergeladen werden. Versionen in diesem Pfad enthalten neue Features, die aber noch nicht komplett oder noch instabil sind.
Kleines update: -Möglichkeit, eine last will Message zu konfigurieren, hinzugefügt
V1.20 -Möglichkeit, ein OTA Update zu via Web-Interface und MQTT rückgängig zu machen, hinzugefügt. -MQTT Ausgabe für Power-Daten um kwh/Kosten für Tag/Monat/Jahr erweitert. -Zeitformat für Planned Actions angepasst. -Möglichkeit, mittels des Parameters api=on die HTML-Ausgabe zu unterdrücken, hinzugefügt (http://toiswitch.device/switch?api=on) -Diverse Fixes
V1.21 JSON requests und responses können ab jetzt zusätzlich zu MQTT auch per HTTP gelesen bzw. versendet werden.
Hi, support für LEDVANCE Tür/Fenstersensor hinzugefügt. https://hermannelectronic.de/Elektromaterial/Smart-Home-Installation/LEDVANCE-Smart-Tuer-Fensterkontakt-4058075730052::35002.html
V1.22 -BUGFIX: Stromaufnahme im Sleepmode bei batteriebetriebenen Geräten zu hoch (> 20 mA), jetzt < 1mA -BUGFIX: Sensorstatusabfrage nach wake-up aus sleep mode liefert jetzt immer korrekte Werte. -system:status json Ausgabe um Wlan Signalstärke und Vcc ergänzt. -Startup-Verhalten optimiert. -"Colorbar" bei Lampen ergänzt -sunrise/sunset Berechnung verbessert.
V1.22 -timer mit ntp synchronisiert -Batteriehandling weiter optimiert (sleep cycle verlängert , wachzeit verkürzt)
V1.22 Bugfix: Timing Problem für Device "Changeover Switch" beseitigt.
V1.22 Timing für batteriebetriebene Geräte angepasst. Ich arbeite grad am support für die ledvance remote.
Einige kleinere Anpassungen im Debouncing und mqtt ungraceful disconnect. Bei der Ledvance remote bin ich noch nicht weiter, hab das tywe3s versehentlich zerstört durch falschpolung :(
Da das wifi modul auf der ledvance remote defekt war hab ich es durch ein esp12f ersetzt. Und das device damit in betrieb genommen. Allerdings lies sich der stm8 auf der Platine nicht zur Zusammenarbeit über reden (ebenfalls defekt argh) deswegen hab ich die tasten direkt verdrahtet. Ich werd mir nochmal eine holen und dann hoffe ich die Kommunikation mit dem yC hinzugekommen.
Beitrag #7354206 wurde von einem Moderator gelöscht.
So jetzt habe ich noch eine ledvance tuya remote und habe in der experimental Version initialen support für tuya Kommunikation hinzugefügt. Derzeit kann toiswitch die Statements vom tuya yC erkennen und zu Buttons oder digitalen Sensorinputs zuordnen. Eine Möglichkeit auch Daten an den tuya yC zu senden, um z.B. Schaltaktionen auszulösen, integriere ich aktuell.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.