vergiss nicht setoption36 20 zu setzen, sonst ist dein Geschenk schnell breit
up's jetzt steh ich etwas auf dem Schlauch... Ich habe mir die Beschreibung zu dem Commands durchgelesen, steh aber auf dem Schlauch...
vergiss nicht setoption36 20 zu setzen, sonst ist dein Geschenk schnell breit
up's jetzt steh ich etwas auf dem Schlauch... Ich habe mir die Beschreibung zu dem Commands durchgelesen, steh aber auf dem Schlauch...
Das einfachste wird in Zukunft sein, eine LED für den Verbindungsanzeige mit einzuplanen.
Eine Frage noch, gehört jetzt hier nicht zum Thema, ist es bei einem ESP32 möglich jeden"normalen" GPIO für die I2C-Schnittstelle zu nutzen? Oder muss man die vorgegebenen Pins nehmen?
Vielen Dank & Gruß!
Der Ansatz wäre:
Also gibt es keine Variable, die sagt "no Wifi" bzw. connected? Soweit ich bisher weiß ist, dass erst mit einem Event z.Bsp. Wifi#Connected in einer Rule darauf getriggert werden kann. Aber wie sieht es bei einem Systemstart aus?
OK, ich habe mir jetzt Deinen Vorschlag angeschaut, wird wohl darauf hinausgehen, vielen Dank!
Komisch ist nur, dass ich keine schon vorhandene "Variable" nutzen kann, irgend wie muss die Auswertung über eine Verbindung zu einem W-Lan inside von Tasmota vorhanden sein, sonst würde es ja keine Möglichkeit der Einstellung der LED_Link geben.
Guten Morgen Ihr Beiden,
vielen Lieben Dank für Eure Mühen und Hilfe!
Vielleicht muss ich mein Wollen etwas spezifizieren ![]()
Ich habe etwas zum verschenken mit einem ESP gebaut:
* WS2812 Beleuchtung
* 2 kap. Touchtasten
* OLED Display
Manch einer hat es nicht so mit den neuen Medien und für den Fall möchte ich die Installierung bzw. bei Problemen den Umgang mit der Tasmota-Tischleuchte erleichtern.
1. Gerät soll neu ins W-Lan gebracht werden => hinweis über das Oled/WS2812, dass der WifiManager aktiv ist und dieser über ein Handy anwählbar ist
2. wenn Änderungen an der W-Lan ssid vorgenommen wurde, info, dann muss einer der touchsensoren 20x betätigt werden und damit wird ein wificonfig 2 ausgelöst und der Manager startet dann.
Punkt 2 ist kein Problem, da es ja wifi#disconnected Event gibt.
ABer wie kann ich Punkt 1 lösen?
Wenn Tasmota gestartet ist und keine Verbindung zum W-Lan hat, dann gibt es ja die Möglichkeit das über eine z.Bsp. LED dies anzeigen-binking zu lassen. ja und dann noch das Problem mit den rules, hatte ich so auch nicht gewusst (werde ich mir gleich mal anschauen)
Hmmmm.
Liebes Forum,
gibt es eine Variable in Tasmota die anzeigt, dass Tasmota sich erfolgreich mit einem Wifi-Lan verbunden hat? Die Anzeige dazu gibt es ja über die BuiltIn LED bei einem ESP8266. diese Signal möchte ich gern abfragen um nach einem System#Boot heraus zufinden, ob eine W-lanverbindung existiert. Diese würde ich gern über eine ws2812 LED oder über ein angeschlossenes Display anzeigen.
cheers MAT
Moin!
über das habe ich mir auch den Kopf zerbrochen, was diese Zeichenfolge zu bedeuten hatte. Wie gesagt hatte ich dazu auch Hilfe über Git.
Das mit dem Datum war auch nur so eine Idee, hatte auch hier leider nichts in der Doku gefunden.
Wenn ich schon einmal dabei bin, und das auch noch mit lernen, hab ich da noch eine Frage:
ich lese ein TOF Sensor VL53L1X aus. Den Messwert vom Sensor würde ich gern über SerialSend an die serielle Schnittstelle vom ESP8266 senden. Habe über die Konsole es versucht aber keinen Erfolg gehabt.
Wie kann der Messwert direkt an die Serielle geschickt werden oder muss dieser erst in eine Variable verschoben werden. Klar, dass alles muss natürlich in einer Rule geschehen.
Hintergrund ist der, dass ich diesen Messwert und evtl. noch andere seriell auf einen weiteren ESP schicken will, jedoch nicht über die Luft, da es sicherheitskritische Aspekte hat. Wie kann ich den Messwert oder ...te in eine JSON Form bringen und diese versenden?
Vielen lieben Dank!
Alles anzeigendie Rules werden entsprechend aufkommenden event abgearbeitet aber unklar an welcher Stelle das System gerade steht.
=> interessant!
Wenn eine Rule eine Variable setzt, ist sie in der nächsten Rule als erste verfügbar zu Abarbeitung.
=> Und ja das wuste ich schon. Drum stellte ich die Frage, um eine Rule besser definieren zu können.
wenn nicht connect und Taste langegedrückt dann wificonfig 2 - ist sicherlich schneller erreichbar .
=> eine gute Idee! werd ich mal probieren.
beide Rules on switch1#state=4 ... ? das wird nichts
Doch das geht: Switchmode1 11 ergibt bei kurzem Druck State=2 und bei langen Druck State=4
Und es wird mir in der Konsole angezeigt, dass die Variablen 3&4 gefüllt mit Wert 4 werden
Hi Karo,
das Board ist doch ganz einfach
NodeMCU ESP8266 Entwicklungsboard 0.96'' OLED Display Arduino Micropython WIFI HW364.
Ist eigentlich nichts besonderes, eben nur nen ESP8266 12F mit nem SSD1306 Oled.
Das mit dem Datum konnte ich mir denken, hatte gehofft, dass Tasmota die Variablen für den Tag/Monat/Jahr zur Verfügung stellt, da es diese ja auch nutzt/anzeigt ect.
Ist aber nicht so wichtig, da es sich um ein kleines Geschenk handelt und da soll vorrangig Licht gemacht werden. UNd da hat sich am schnellsten Tasmota als SW angeboten.
Aktuell arbeite ich daran die beiden Touch Switchs so zu proggen, dass bei gleichzeitigen Drücken der ESP in wificonfig 2 schaltet. An einen Resettaster vom ESP kommt man nicht ran und wenn der beschenkte mal das WIFI PW ändert, hängt der nicht im retry fest und kann den Manager starten.
in Rule1 on switch1#state=4 do backlog var3 =0; var4 = 0 endon on switch2#state=4 do backlog var3 =0; var4 = 0 endon
Variablen zurück setzen nach Betätigung.
in Rule2 on switch1#state=4 do var3 %value% endon on switch2#state=4 do var4 %value% endon on var3#State do if (%var3%==4 and %var4%==4) wificonfig 2 endif endon on system#boot do wificonfig 4 endon
Hier werden die Variablen gesetzt und ausgewertet...
Irgend wo ist noch der Wurm drinn.
Wie werden eigentlich die Rule abgearbeitet?: erst Rule1 ...2 ....3?
Grüße!
Aber irgendwie funktioniert die IF Abfrage nicht... Da muss ich heute nochmal schauen.
Warum verwendest du nicht einen ESP32 und Berry
Guten Morgen, Du stellst immer nur Fragen und gibst keine Antwort, nicht sehr förderlich....
Aber auch wieder ein Antwort nur für Dich:
weil ich ein ESP8286 Board mit integrierten OLED nutze, ganz einfach!
Und wenn ich einen ESP32 nehmen würde, dann progge ich den gleich in C++ aber aus Zeitgründen hätte ich gedacht, dass ich es mit Tasmota schneller hinbekommen würde, ist halt nicht so.
na - hat sich ja Entwickelt
Jup, das Thema Tasmota ist recht komplex und ungemein useful....
Gern würde ich im Wechsel zur Uhrzeit noch das Datum anzeigen lassen... UNd da waren wieder die drei kleinen Probleme:
1. Datum auseinander nehmen in Tag/Monat/Jahr
2. an der gleichen Stelle wie die Uhrzeit anzeigen
3. aller 30sec zwischen Uhrzeit und Datum wechseln.....
Bei 1. und 3. bräuchte ich Hilfe :D, freiwillige vor ![]()
![]()
![]()
[…]
Soooderle, jetzt läuft alles wie ich es will, falls es jemanden interessiert 0,96" Oled mit ssd1306 hochkant und Zeitanzeige und Touchbutton zur Ansteuerung einer WS2812 LED:
ZitatAlles anzeigen// freien GPIO Pin wählen und OptionA 3 Wählen => universalTreiber für ein Display:
https://github.com/arendst/Tasmot…x64_display.ini
rule3 :H,SSD1306,128,64,1,I2C,3c,*,*,* :S,0,2,1,0,30,20 :I AE D5,80 A8,3F D3,00 40 8D,14 20,00 A1 C8 DA,12 81,9F D9,F1 DB,40 A4 A6 AF :o,AE :O,AF :A,00,10,40,00,00 :i,A6,A7#
Displayrotate 3 // senkrecht gestellt, USB-C zeigt nach unten
CalcRes 0 // keine Kommastelle
displayfont 1
//Rule1 => Zeitermittlung & Switchbutton Zuweisung
rule1 on Time#minute do Backlog var2=%value%%60; var1=(%value%-var2)/60 endon on switch1#state=2 do power on endon on switch2#state=2 do power off endon on switch1#state=4 do dimmer + endon on switch2#state=4 do dimmer - endon
rule1 1
Switchmode1 11 // Switchbutton 1 mode 11 = Taster mit dimmfunktion; 12 invertiert
// state2 = kurzer befehl = on/off
// state4 = langer befehl = dimmen
Switchmode2 11 // Switchbutton 2
setoption32 12 // 1,2sec hold-Time um die Dimmung zu aktivieren
//rule2 => Anzeige der Daten
rule2 on var2#state do DisplayText [zs2l5c1]%value% endon on var1#State do DisplayText [s2l1c1]%value% endon on var2#state do DisplayText [s2l3c2]UHR endon
Rule2 1
// VAR2= Minuten; ([z=lösche Display, s2=Schriftgröße2, |=break, 5= Zeile5, c3= Spalte 3])
// VAR1= Stunde
// anzeige „Uhr“
ob das anders wird mit der Syntax ohne Leerzeichen ?
rule3 on switch6#state=1 do Dimmer +10 endon on switch7#state=1 do Dimmer -10 endon
Das kann ich mal versuchen. Ich denke ich bekomme durch das "POWER1" immer noch die 1 mit in den Dimmer...
Wie schon angedeutet.... hab da noch ein kleines Problem.
Habe an GPIO13 ein WS2812 LED Array, an GPIO 4/5 einen Touchbutton installiert und beide mit Switchmode13 verbunden.
Ein Button soll die LED auf und der andere abdimmen:
rule3 on switch6#state =1 do Dimmer +10 endon on switch7#state =1 do Dimmer -10 endon
Das funktioniert soweit auch, nur beim Abdimmen wird der Dimmwert nicht auf 0 sondern 1 gesetzt.
21:22:45.501 RUL: SWITCH7#STATE =1 performs 'Dimmer -10'
21:22:45.507 RSL: RESULT = {"POWER1":"OFF","Dimmer":1,"Color":"030003","HSBColor":"292,100,1","Channel":[1,0,1]}
Ich habe keine Ahnung weshalb es so geschieht. Oder gibt es noch eine andere Möglichkeit über eine Switch die WS2812 LED zu dimmen?
Grüße MAT
Warum verwendest du nicht Tasmota 15.1.0 ?
ich verwende 15.1.0 und nun, was soll die Frage, was bezweckst Du damit?
Warum verwendest du nicht Tasmota 15.1.0 ?
Ich nutze das jeweils aktuelle Tasmota, compeliere mit dem Tasmocompiler.
Weshalb fragst Du danach?
Eine Frage noch, über den Eintrag OptionA 3 lege ich ja den universellen Displaytreiber fest und mit rule3 :H,SSD1306,128,64,1,I2C,3c,*,*,* :S,0,2,1,0,30,20 :I AE D5,80 A8,3F D3,00 40 8D,14 20,00 A1 C8 DA,12 81,9F D9,F1 DB,40 A4 A6 AF :o,AE :O,AF :A,00,10,40,00,00 :i,A6,A7# sage ich was es für ein Display ist. Nach einem Neustart wird das Display konfiguriert und ich kann damit arbeiten.
a) lässt sich danach die Rule wieder weiterverwenden? Gibt ja nur 3Rule Parametersätze
b) gibt es andere Aktivierungen eines Displays bei der aktuellen Tasmota FW?
Wie konfigurierts Du Deine Displays?
Super, das werde ich mal durchgehen. Hatte da auch noch so einige Ideen noch!
Bis später! Und vielen Dank!
Alles anzeigenSuper - kürzer hätte ich es auch nicht geschafft !
Zur optischen 1. Verbesserung die Nachkommastellen mit tilgen mit Konsoleneingabe CalcRes 0
Dann noch Backlog und Leerzeichen verändern - so !
rule3
on var1#state do DisplayText[z] endon
on var1#state do Backlog DisplayText[s1l1c5]%var1% endon
on var2#state do Backlog DisplayText[s1l2c5]%var2% endonWie das mit deinem Display in der 90 Gradwende klappt ?? würde mich interessieren.
https://github.com/tasmota/docs/blob/master/docs/Displays.md
Hi Karo,
danke für Deine Rückmeldung, habe gestern noch bis 23:00 Uhr gesessen und es hinbekommen.
Zur optischen 1. Verbesserung die Nachkommastellen mit tilgen mit Konsoleneingabe CalcRes 0
Ja das hätte ich heute auch noch gesucht, es wird immer die ermittelte Zeit in der Form 22.00ausgegeben, das stört.
Das Display habe ich mit Displayrotate 1 senkrecht gestellt und
rule2
on var2#state do DisplayText [zs2|5c3]%value% endon ([z=lösche Display, s2=Schriftgröße2, |=break, 5= Zeile5, c3= Spalte 3])
on var1#State do DisplayText [s2|1c3]%value% endon
on var2#state do DisplayText [s2|3c1]UHR endon
die Anzeige schön mittig auf das 0,96" Display bekommen.
1. Frage: ich habe es mit %var1% versucht die Daten angezeigt zu bekommen. Leider hat es nicht geklappt, aber mit %value%.
2. Frage: Warum hast Du ein Backlog in on var1#state do Backlog DisplayText[s1l1c5]%var1% endon drinnen? War nicht ein Backlog für: on var1#state do Backlog DisplayText[s1l1c5]%var1%; DisplayText[s1l2c5]%var2% endon? Ich habe es noch nicht getestet, werde nacher mal damit etwas herumspielen....
Danach werde ich noch 2 Touchbutton mit einbinden, über die dann eine rgb WS2812 LED gesteuert werden soll, mal sehen wie ich mich da anstelle :D. Wenns nicht klappt, würde ich mich sehr über Hilfe von Dir freuen!!!
Danke in advance
MAT
Nun ich bin schon einwenig weiter:
on Time#minute do Backlog var2=%value%%60; var1=(%value%-var2)/60 endon
Jetzt steht in var 1&2 jeweils die Minute und Stunde drinnen, wie kann ich die Variable nun auf das Display bringen?
rule2 on var1 do DisplayText [zs1l1c1]%value% endon geht es jedenfalls erst mal nicht und auch nicht mit
DisplayText [zs1l1c1]%var1%
Wie bekomme ich nun die Variablen angezeigt?