gemu2015 - Danke für die Info, werden mir das mal ansehen
Noschvie - Naja, was soll ich sagen... Ein Tamplate habe ich auch nicht gefunden, dafür ist der GitHub Link von meinem ersten Post Gold wert gewesen, hat viel Arbeit und Zeit gespart. Tasmota ist meiner Meinung nach sehr mächtig (vorallem durch Skripting von User gemu2015 bzw. BerryScript) , jedoch auch überladen und mühsam einzustellen. ZB.: leuchtet die Lampe erst bei 36% PWM Duty Cycle und ich habe keine Einstellung gefunden um den Nullpunkt auf diese 36% einzustellen. Eigenartigerweise bekomme ich beim Drücken der Farbwechseltaste vom Touch-Panel immer den gleichen Code wie vom Power-Button, somit kann ich der obersten Taste keine Funktion zuweisen.
Grundsätzlich kann man ja, vorrausgesetzt alles funktioniert so wie es sollte, mit Tasmota und der Lampe auch sehr kreativ sein. Man könnte zB.: mit der Farbwechseltaste einen Spotify Modus aufrufen, um mit dem Touch-Panel die Lautstärke zu steuern.
Eigentlich ja toll was man nicht alles damit machen könnte, man muss aber halt viel Zeit und Geduld mitbringen und beides habe ich schon sehr strapaziert, um die Lampe überhaupt irgendwie mit dem Touch-Panel steuern zu können.
Beiträge von kokoflip
-
-
Hallo Leute,
ich komme gleich zu meiner sehr konkreten Frage: Kann man bei Tasmota mittels Berry Script oder vielleicht mittels Rules Hardware Interrupts verwenden?
Ich habe eine Xiaomi Bedside Lamp 2. In dieser Lampe ist ein ESP32 S0WD (auch Solo1 genannt), sprich die Single Core Variante des ESP32. Auf diesen habe vor einiger Zeit ohne Probleme eine selbst kompilierte Tasmota Version geflashed, bzw. nun den Offiziellen 10.1.0 Release für den Single Core ESP32 drauf.
Der Github User mmakaay hat hier die technischen Details der Lampe bestens zusammengefasst. Auf der Vorderseite der Lampe befindet sich ein Touchfeld mit welchem sich die Lampe einschalten und die Helligkeit regeln lässt. Dieses Touchfeld hat einen eigenen MC und ist über I2C an den ESP angebunden.
Mittels Berry Script kann ich problemlos über I2C die LEDs des Touchfelds ansteuern, jedoch weiß ich nicht wie ich die erfolgten Berührungen auslesen soll.
Sobald dieses Touchfeld berührt wird, wird GPIO16 für rund 6ms auf LOW gezogen. Hiermit sollte dem ESP signalisiert werden, dass nun über I2C ausgelesen werden kann, welche Schaltfläche Berührt worden ist.
Da dieses Signal so unglaublich kurz ist, wäre natürlich ein Interrupt von Vorteil. Weiß jemand von euch, ob man mit Tasmota überhaupt die Möglichkeit hat, Interrupts zu verwenden? Ansonsten muss ich wohl einfach dieses Signal auf GPIO16 ignorieren und zyklisch über I2C auslesen, was denn nun gedrückt wurde.
Hoffentlich, weiß von euch jemand ob man Interrupts verwenden kann, oder hat einen ganz anderen Ansatz den ich versuchen könnte.
Vielen Dank!