FHEM Forum

FHEM - Hausautomations-Systeme => Sonstige Systeme => Thema gestartet von: eki am 02 Oktober 2019, 10:24:53

Titel: Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 02 Oktober 2019, 10:24:53
Hallo zusammen,

ich habe mich jetzt auch mal an ein eigenes Modul gewagt. Es steuert EInk Anzeigeelemente (z. B. https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_(C) (https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_(C))) von Waveshare über das ESP8266 Treiber Modul https://www.waveshare.com/wiki/E-Paper_ESP8266_Driver_Board (https://www.waveshare.com/wiki/E-Paper_ESP8266_Driver_Board) der gleichen Firma an, und kann sowohl Bilder, als auch FHEM readings als Text auf diesen Devices darstellen.

Voraussetzungen: siehe Commandref zum Modul.

Features:

Das Modul ist angehängt und aktuell in einem Beta Status würde ich sagen. Ich habe selbst nur eine variante des ePapers und kann also damit testen. Wäre also interessiert, wenn jemand solche Devices hat und als Tester mitmachen könnte.
Natürlich wäre ich auch an Tipps von erfahrenen Modulentwicklern interessiert.

Edit 4.11.2019:
Neue version
Achtung, Name ist geändert, bestehende Devices müssen mit neuem Namen neu definiert werden)
Zusätzliche Features:

Edit 25.11.2019:
Neue version
Zusätzliche Features:
Titel: Antw:Neues Modul: ESP8266EInk für e-Paper Displays
Beitrag von: reibuehl am 02 Oktober 2019, 12:26:47
Das hört sich ja spannend an. Könntest Du mal ein paar Bilder posten, wie das dann aussieht?
Titel: Antw:Neues Modul: ESP8266EInk für e-Paper Displays
Beitrag von: eki am 02 Oktober 2019, 12:43:31
Hier mal Bilder, wie das aussieht. Die rohen Displays gibt es in verschiedene Größen zu kaufen (ab 1.5 Zoll so für 5 Euro bis ca. 7.5 Zoll Diagonale für 45 Euro z.B. bei Alibaba). Der Treiber (ca. 15 Euro) basiert auf einem ESP8266, der über Arduiono Softwarepakete konfiguriert wird und dann über WLAN von FHEM aus erreichbar ist. Man kann die Displays also dann irgendwo verbauen, und über USB entweder aus einer Batterie oder per Stromanschluss mit Strom versorgen.
Anwendungsbeispiele sind jegliche Art von Anzeigen, die sich nicht sehr häufig ändern (also keine Filme oder so etwas) und die wenig Strom brauchen sollen. Also z.B. als variables Türklingelschild oder Türschild oder eben als Statusanzeige für FHEM irgendwo.
Titel: Antw:Neues Modul: ESP8266EInk für e-Paper Displays
Beitrag von: reibuehl am 02 Oktober 2019, 12:53:34
Sorry, ich meinte wie eine Ausgabe mit Deinem Modul aussieht... ich hab nämlich hier schon ein paar von den Displays liegen :-)
Titel: Antw:Neues Modul: ESP8266EInk für e-Paper Displays
Beitrag von: eki am 02 Oktober 2019, 13:22:22
Na das ist ja weitestgehend variabel (wie gesagt, auf Basis eines Bildes auf dem alles drauf sein kann und mit beliebigen Texten and beliebiger Stelle mit beliebigem TTF Font und beliebiger Farbe und beliebiger Rotation). Ich werde demnächst mal Beispiele posten.
Darüber hinaus kannst Du im Modul Dir auch immer anschauen, wie das Bild aussehen wird. Das Blid, das an das Display übertragen wird, wird als Reading im Modul angezeigt wenn man "set convert" macht (siehe angehängter Snapshot).
Titel: Antw:Neues Modul: ESP8266EInk für e-Paper Displays
Beitrag von: andies am 02 Oktober 2019, 21:53:34
was ist denn der Unterschied dieser Displays zu den Nextion-Displays?
Titel: Antw:Neues Modul: ESP8266EInk für e-Paper Displays
Beitrag von: eki am 02 Oktober 2019, 22:18:55
Von Nextion kenne ich nur LCDs.

Der Hauptunterschied zwischen ePaper und LCD ist, dass das ePaper auch ohne Storm wochenlang das Bild anzeigt. Der Treiber braucht natürlich etwas Strom, geht aber in einen deep sleep Modus wenn er nicht gebraucht wird. Damit lassen sich relativ gut Displays mit Batterien irgendwo abgesetzt aufbauen. Dafür dauert das Ändern eine gewisse Zeit, somit macht das nur Sinn wenn man etwas anzeigen will, das Sicht nicht zu oft ändert.
Titel: Antw:Neues Modul: ESP8266EInk für e-Paper Displays
Beitrag von: max333 am 08 Oktober 2019, 20:48:45
Ich habe dein Modul ausprobiert, aber leider startet mein ESP32 bei jedem upload neu. Brauche ich da eine andere Firmware für den ESP32? Als display habe ich das 7.5inch_e-Paper_HAT_(B).
Titel: Antw:Neues Modul: ESP8266EInk für e-Paper Displays
Beitrag von: eki am 09 Oktober 2019, 09:25:49
Ich habe bisher nur mit dem ESP8266 getestet (den ESP32 habe ich nicht). Ich müsste mir mal anschauen, was da die Unterschiede sind. Ich melde mich wieder.
Titel: Antw:Neues Modul: ESP8266EInk für e-Paper Displays
Beitrag von: eki am 10 Oktober 2019, 15:55:13
ZitatIch habe dein Modul ausprobiert, aber leider startet mein ESP32 bei jedem upload neu. Brauche ich da eine andere Firmware für den ESP32? Als display habe ich das 7.5inch_e-Paper_HAT_(B).

Beim ESP32 läuft die Kommunikation etwas anders, das müsste ich anpassen (dann würde ich auch den Namen von ESP8266EInk auf ESPEInk ändern). Allerdings habe ich, wie gesagt, kein ESP32 board, Du müsstest mir beim Testen also ein bisschen helfen (wird sicher einige Male hin und her gehen, und ein bisschen Aufwand auch für Dich).
Titel: Antw:Neues Modul: ESP8266EInk für e-Paper Displays
Beitrag von: max333 am 10 Oktober 2019, 19:45:45
Klar ich helfe doch gern  :)

Mit GxEPD experimentiere ich auch noch, aber da bekomme ich den ESP32 von Waveshare nicht zum laufen.
Titel: Antw:Neues Modul: ESP8266EInk für e-Paper Displays
Beitrag von: eki am 29 Oktober 2019, 13:46:37
So, hier wäre mal eine Version, die neben diversen anderen Verbesserungen (z.B. Darstellung von beliebigen Icons, auch auf Basis von Readings, jede Menge Fehlerkorrekturen und Verbesserungen, ...) auch ein erster Versuch für das ESP32 Board ist.
Es gibt dazu ein Attribut boardtype, welches standardmäßig auf ESP8266 steht, das man aber auf ESP32 setzen kann. Dann wird der Uploadmechanismus entsprechend angepasst. Wie gesagt, ich konnte nicht mit der echten HW testen, daher nicht enttäuscht sein, wenn es nicht auf Anhieb funktioniert  ;)
Noch ein Beispiel wie das Ergebnis aussehen kann.
Titel: Antw:Neues Modul: ESP8266EInk für e-Paper Displays
Beitrag von: max333 am 30 Oktober 2019, 18:29:38
Vielen Dank für das Update.

Wenn ich in Paint eine PNG-Datei erstelle, hängt sich der ESP32 auf. Mit Corel erstellte lassen sich anzeigen.
Titel: Antw:Neues Modul: ESP8266EInk für e-Paper Displays
Beitrag von: eki am 31 Oktober 2019, 09:43:10
Verstehe ich das richtig, die Daten über ESP32 auf's Display schieben klappt auf Anhieb (zumindest mit den "guten" png Dateien??

Der zweite Teil wundert mich. Kannst Du mir mal Beispiele der funkionierenden und nicht funktionierenden png Dateien schicken, und auch Deine Device Definition (list <name> in FHEM).
Titel: Antw:Neues Modul: ESP8266EInk für e-Paper Displays
Beitrag von: max333 am 02 November 2019, 12:21:20
Den Fehler mit der PNG-Datei von Paint kann ich leider nicht reproduzieren, da ich die "fehlerhafte" mit der von Corel überschrieben habe und glücklich war, dass es jetzt funktioniert.

Hilfreich wären noch paar Beispiele, wie man dynamische Inhalte darstellen kann.
Titel: Antw:Neues Modul: ESP8266EInk für e-Paper Displays
Beitrag von: eki am 04 November 2019, 10:03:30
Na gut, falls es weitere Infos aus dem Betrieb gibt, lass es mich wissen. Ich werde die Version also jetzt mal so im ersten Post "freigeben".

Als Beispiel für dynamische Inhalte siehe die Definition der Wetteranzeige für das 2.9 Inch Display:

defmod testInk ESPEInk /opt/fhem/www/images/test_fhem.png

attr testInk convertmode dithering
attr testInk devicetype 2.9inch_e-Paper_Module_(C)

set testInk addtext Wettervorhersage#10#100#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
set testInk textreading AgroWeather:fc0_date#10#10#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
set testInk iconreading AgroWeather:fc0_weatherDayIcon#170#0#90
set testInk addicon thermometer-full#10#30#25
set testInk addicon thermometer-empty#10#60#25
set testInk textreading AgroWeather:fc0_tempMax#35#32#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
set testInk textreading AgroWeather:fc0_tempMin#35#64#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
set testInk addtext °C#55#32#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
set testInk addtext °C#55#64#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
set testInk addicon tint#90#32#23
set testInk textreading AgroWeather:humidity#115#32#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
set testInk addtext %#150#32#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
set testInk addicon umbrella#90#64#23
set testInk textreading AgroWeather:fc0_chOfRainDay#115#64#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
set testInk addtext %#150#64#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 16 November 2019, 14:17:44
Hab gestern endlich das ESP8266-Treiberboard und ein 7,5"-Waveshare-Display (Gelb/Schwarz/Weiß) bekommen.

Mal die Software auf den ESP geladen und dein Modul installiert.

Jetzt hab ich aber immer folgendes Problem (Egal, ob vom Modul aus oder von der Weboberfläche).
EINMAL kann ich das Display aktualisieren, danach reagiert der ESP nicht mehr. Also auch die Webseite kann nicht mehr geladen werden und läuft in ein Timeout.

Kennt das Problem jemand? Ideen/Lösungsansätze dazu?

lg, Stefan
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 16 November 2019, 19:50:34
Also, ich habe das Thema jetzt so gelöst, dass ich im Sourcecode nach jedem Bild-Upload einfach mal den ESP resette. Funktioniert soweit.

Nach ein paar Stunden herumexperimentieren mit dem Modul hier mal ein paar Änderungswünsche / Verbesserungsvorschläge:
1) "set convert" nach Möglichkeit im Hintergrund ausführen. Die Umwandlung dauert auf meinem Cubietruck (der ansonsten recht performant ist) ca. 20-30 Sekunden, in dieser Zeit blockiert FHEM komplett.
2) Statt "set textreading" etc. würde ich EIN Attribut mit :textlong machen, in dem die ganzen Defs sind.
     Bei Änderung des Attributs einfach die Readings neu erstellen. Würde Änderungen immens erleichtern, gerade in der Experimentierphase.
     Ausserdem wären dann die ganzen UserReadings 1-x, 1-y etc. unnötig.
3) Möglichkeit, Texte links/zentriert/rechtsbündig anzuordnen.

Kommen sicher noch einige Vorschläge, falls gewünscht.

Vorerst wären mal 1) und 2) wichtig :)

lg, Stefan

Edit: Noch was ist mir grade aufgefallen:
Ich hab ein Farbdisplay. FHEM speichert die Attribute in alphabetischer Reihenfolge.
Somit bekomm ich beim starten einen Fehler, weil "colormode color" VOR dem Boardtype gesetzt wird.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Laffer72 am 16 November 2019, 21:18:24
Hallo Eki,

tolle Idee. Scheitere aber leider schon bei der Definition. Kann Modul nicht laden.

Wenn ich  ein Reload des Moduls mache kommt folgende Meldung:
Can't locate GD.pm in @INC (you may need to install the GD module) (@INC contains: fhem.p/lib fhem.p/FHEM/lib ./FHEM/lib ./lib ./FHEM ./ /usr/local/FHEM/share/fhem/FHEM/lib . /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.24.1 /usr/local/share/perl/5.24.1 /usr/lib/arm-linux-gnueabihf/perl5/5.24 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl/5.24 /usr/share/perl/5.24 /usr/local/lib/site_perl /usr/lib/arm-linux-gnueabihf/perl-base) at ./FHEM/89_ESPEInk.pm line 8.
BEGIN failed--compilation aborted at ./FHEM/89_ESPEInk.pm line 8.


Php-gd hab ich schon installiert. Muss ich noch was installieren?

Danke schonmal für die Mühe

Reinhard
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 16 November 2019, 21:20:56
sudo apt-get install libgd-perl
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Laffer72 am 16 November 2019, 21:34:11
Danke, jetzt klappt die Definition.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 18 November 2019, 08:51:30
Zitat von: Icinger am 16 November 2019, 19:50:34
Also, ich habe das Thema jetzt so gelöst, dass ich im Sourcecode nach jedem Bild-Upload einfach mal den ESP resette. Funktioniert soweit.

Nach ein paar Stunden herumexperimentieren mit dem Modul hier mal ein paar Änderungswünsche / Verbesserungsvorschläge:
1) "set convert" nach Möglichkeit im Hintergrund ausführen. Die Umwandlung dauert auf meinem Cubietruck (der ansonsten recht performant ist) ca. 20-30 Sekunden, in dieser Zeit blockiert FHEM komplett.
2) Statt "set textreading" etc. würde ich EIN Attribut mit :textlong machen, in dem die ganzen Defs sind.
     Bei Änderung des Attributs einfach die Readings neu erstellen. Würde Änderungen immens erleichtern, gerade in der Experimentierphase.
     Ausserdem wären dann die ganzen UserReadings 1-x, 1-y etc. unnötig.
3) Möglichkeit, Texte links/zentriert/rechtsbündig anzuordnen.

Kommen sicher noch einige Vorschläge, falls gewünscht.

Vorerst wären mal 1) und 2) wichtig :)

lg, Stefan

Edit: Noch was ist mir grade aufgefallen:
Ich hab ein Farbdisplay. FHEM speichert die Attribute in alphabetischer Reihenfolge.
Somit bekomm ich beim starten einen Fehler, weil "colormode color" VOR dem Boardtype gesetzt wird.

Kannst Du mal Deine Änderung in Source Code hier posten, dann würde ich das mit übernehmen und alle könnten profitieren  ;).

Zu 1) Das ist leicht gesagt. Dazu fällt mir aktuell nur ein, die Konvertierung in ein extra script auszulagern und dann per "system" Kommando aufzurufen (das wäre eine ziemlich große Änderung) oder ein fork (damit habe ich aber keine Erfahrung). Oder hast Du eine andere Idee wie das gehen soll (bin leider auch nicht so der Perl Guru)?
Zu 2) Lässt sich machen, würde ich aber nur als zusätzliche Möglichkeit zur Definition vorsehen und trotzdem die readings belassen. Ansonsten müsste ich das ganze Modul mehr oder weniger neu machen.
Zu 3) Das ist wahrscheinlich der Einfachste von den 3 Wünschen (ist ja wie bei Kinderüberraschung  ;) ). Mache ich bei Gelegenheit.

Ergänzung zu 1). Habe gerade gesehen, dass es da etwas in FHEM gibt (Blocking Modul). Muss ich mir mal genauer anschauen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 18 November 2019, 18:14:21
Hi Eki,

also, zum Thema SourceCode beim ESP. Da hab ich direkt in dem Waveshare-Treiber ein ESP.restart eingefügt:
void EPD_Show()
{
  Serial.println("SHOW");
  // Show results and Sleep
  EPD_dispMass[EPD_dispIndex].show();
  server.send(200, "text/plain", "Show ok\r\n");
  Serial.println("Back from SHOW");
  ESP.restart();
}


Ist also leider nichts, was du im Modul übernehmen könntest.
Eigentlich bin ich absolut gegen solche Holzhammer-Methoden, genauso wie gegen irgendwelche regelmäßigen Reboots von Pi's oder so. Da gehört die Ursache selbst gelöst, nicht das Problem.
Aber aktuell hab ich einfach keine Zeit, mich damit weiter zu beschäftigen.

Zu 1):
Stichwort Non-Blocking-Modul, ja genau. Hab zwar selbst noch nciht damit gearbeitet, ist aber schon ziemlich verbreitet, sollte also problemlos zum laufen zu bekommen sein.

Zu 2) Wenn du die Readings lässt, brauchst du ja nur zusätzlich in der AttrFn auf ein Attribut lauschen, und bei dessen Änderung halt immer die Readings löschen und neu anlegen.
Ist halt einfach vom Bearbeiten her leichter. Ausserdem gilt ja immer der Grundtenor "Attribute gehören den Usern!" :)
Und es ist halt einfacher, EIN Attribut zu ändern, als zig einzelne, um zB Einen Text anders zu formatieren oder so.

lg, Stefan
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 19 November 2019, 08:10:38
Zu 1) läuft bei mir schon war tatsächlich nicht schwer. Wenn ich es ein bisschen getestet habe, füge ich es an.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 19 November 2019, 08:40:06
Guten Morgen,

noch einen Vorschlag/Wunsch: ein x-format-Eintrag, um Readings zu formatieren. Im Idealfall mit "eval" ausgewertet, um auch Perl-Code ausführen zu können.
So wie beim FReplacer das "RepxxExpr".

attr fr_EInk Rep03Expr {sprintf("%.1f°C",ReadingsVal("Temp_Aussen","statTemperatureDayMin",0))}

lg, Stefan

Edit: Oder vlt. ganz einfach: Das x-def-Reading mit RegEx auswerten....Wenn in {} eingeschlossen, ists ein Perl-Ausdruck, also mit "eval" behandeln....Andernfalls ists ein Device:Readings-Name, also wie bisher auswerten.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 19 November 2019, 12:52:05
Zu 2) hätte ich einen Vorschlag. Es gibt ja schon die Readings, die die gesamte Definition enthalten (habe ich dafür angelegt, die Attributbasierten Änderungen zurück zu nehmen, wenn man die Attribute wieder löscht (dann wird das Ganze wieder auf die Startdefinition gesetzt).
Wenn ich nun ein Attribut vorsehen würde das genau diese x-def Werte setzt, wäre das dann entsprechend das, was Du Dir dachtest?

Edit: Ich habe jetzt mal eine Version zum testen angehängt. Kann 1) und 2). Für 2) gibt es ein Attribut "definition" in dem Zeilenweise mit genau der gleichen Syntax wie bei den anderen defs (siehe x-def) Objekte definiert werden können, die dann zusätzlich zu denen, die es bisher gab, dargestellt werden.

Beispiel:

addicon#icoTemp#190#100#12#0#FFFFFF
addtext#Hallo#210#100#12#0#FFFFFF#giant
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 20 November 2019, 20:10:03
ZitatIch habe jetzt mal eine Version zum testen angehängt. Kann 1) und 2). Für 2) gibt es ein Attribut "definition" in dem Zeilenweise mit genau der gleichen Syntax wie bei den anderen defs (siehe x-def) Objekte definiert werden können, die dann zusätzlich zu denen, die es bisher gab, dargestellt werden.

Cool, genau so war's gemeint :)

lg, Stefan

PS: Empfehlung: Ersetze das Modul im ersten Post, statt die neuere Version in dem Beitrag hier drüber zu posten.
Wenn mal jemand das Modul runterladen will, hat er so immer die aktuellste Version, statt den ganzen Thread durchsuchen zu müssen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 20 November 2019, 21:39:53
Also, irgendwie klappt das noch nicht, oder ich mach was falsch.

Neues Modul geladen, reload gemacht (Convert im Hintergrund funktioniert)
Die alten Readings alle gelöscht, dann ein
attr EInk definition textreading#Weather2:current_date_time#100#29#12#0#DDFF00#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
iconreading#Weather2:fc1_icon#130#235#90\
textreading#Weather2:HeuteMax#95#247#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#Weather2:HeuteMin#35#247#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#Weather2:fc1_condition#35#320#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#Temp_Aussen:TempText#80#85#28#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#Temp_Aussen:statTemperatureDayMin#75#150#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#Temp_Aussen:statTemperatureDayMax#75#165#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#myAstro:MoonPhaseS#190#180#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#myAstro:SunRise#240#150#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#myAstro:SunSet#240#165#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#myAstro:MoonRise#320#150#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#myAstro:MoonSet#320#165#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
addicon#weather_moon_phases_3_half#290#150#25\
addicon#weather_sun#210#150#25#0#DDFF00\
textreading#myLuftdaten:pressure#180#120#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf

hinzugefügt.

Danach ein Convert angestossen.
Ergebnis siehe Bild. :(
Die Icons werden geladen, aber die textreadings nicht richtig umgewandelt.

lg, Stefan
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 21 November 2019, 00:02:57
ups, ich habe bisher nur addicon und addtext eingebaut. Neue Version folgt und wenn die einigermaßen stabil ist und ich die anderen Sachen auch noch drin habe, ersetze ich natürlich auch den Link im ersten Post.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 22 November 2019, 17:14:37
Angehängte Version müsste jetzt eigentlich auch mit "textreading" und "iconreading" gehen.
Darüber hinaus habe ich die Möglichkeit eingebaut, dass man bei den event basierten Objekten auch ein Format angeben kann (eval auf einen vom Nutzer eingegebenen Text gefällt mir nicht so, das macht jede Menge Türen für komische Dinge auf und ich habe keine Lust da 1000 Prüfungen einzubauen). Man kann jetzt normale Formatierungen wie bei sprintf in "{}" nach dem Reading eingeben also z.B.


textreading#AgroWeather:fc0_tempMax{%.1f °C}#35#32#14#0#000000#C:\Windows\Fonts\arial.ttf


Das mit rechtsbündig/zentriert etc. ist etwas tricky (weil man bei nichtproportionalen Fonts erst mal heraus bekommen muss, wie lang der Text wird, da muss ich noch forschen) und kommt später.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 22 November 2019, 21:05:54
Yup, funktioniert.

Zum Thema
Zitateval auf einen vom Nutzer eingegebenen Text gefällt mir nicht so, das macht jede Menge Türen für komische Dinge auf und ich habe keine Lust da 1000 Prüfungen einzubauen).
Prüfungen brauchst keine.....Entweder es wird ein korrekter Text zurückgegeben, oder ein fehler....Fehler kann man ja anzeigen lassen.
Ist aber nicht so tragisch, ich löse das halt weiterhin mit Userreadings im Quell-Device :)

Was mir noch aufgefallen ist: Das "disable"-Attribut wertest du nicht aus, oder? gg

Jetzt muss ich nur noch herausfinden, wie ich meinen SVG-Kalender halbwegs hinbekomme, ohne dass er gedithert wird.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 23 November 2019, 14:21:22
Zitat
Prüfungen brauchst keine.....Entweder es wird ein korrekter Text zurückgegeben, oder ein fehler....Fehler kann man ja anzeigen lassen.
Ist aber nicht so tragisch, ich löse das halt weiterhin mit Userreadings im Quell-Device
Ich hatte eher an so Ausdrücke wie eval ,,system 'rm -r /'" gedacht  ;). Mit der Nutzung der Format Funktion in {} müsste ja auch einiges gehen.

Disable werte ich schon aus. Der Timer für's automatische Aktualisieren wird gestoppt und die Events werden nicht mehr berücksichtigt.

Um dithering zu umgehen, solltest Du genau die Farben im Kalender haben, die das Device originär kann. Das sind in Deinem Fall folgende:
[0,0,0],[255,255,255],[220,180,0]
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 23 November 2019, 15:06:54
ZitatIch hatte eher an so Ausdrücke wie eval ,,system 'rm -r /'" gedacht
Dazu bräuchte ich dein Modul nicht zu definen.......Das kann ich direkt in der Eingabezeile mittels "system 'rm -r /"  :P

ZitatMit der Nutzung der Format Funktion in {} müsste ja auch einiges gehen.
Einiges schon, aber zB die große Temp/Hum-Anzeige nicht, das sind ja zwei readings (wie gesagt, ist aber egal, hab eh das UserReading dafür)

ZitatDisable werte ich schon aus.
Hmm, hab das EInk-Device mit attr disable 1 versehen, es aktualisiert aber trotzdem weiterhin das Vorschau-Bild und sendet es auch ans Display.
Grad eben letzter Eintrag im Log:
Zitat2019.11.23 14:39:45 3: EInk: sending HTTP request to http://192.168.1.235/EPDu_ with data:
obwohl es seit 2 Tagen auf disabled steht.

Thema dithering: Ansich habe ich in dem SVG nur 0xffffff und 0x000000 in verwendung (ausser dem gelben Quadrat, welches den aktuellen Tag markiert.
Trotzdem sind die Linien teilweise mehr gelb als schwarz.
Muss ich mal schaun, evtl. eine Skalierungssache?

Schönes WE noch,

Stefan
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Laffer72 am 24 November 2019, 09:13:08
Hallo,

vielen Dank für das Modul, funktioniert soweit sehr gut.

Wenn ich Intervall auf 0 setzte aktualisiert er dann nur bei Änderung eines Readings?

Irgendwie krieg ich das mit den Icons noch nicht richtig zum Laufen. Ich bekommen nur Icons in png-Format angezeigt. Die svg-Icons werden mir nicht angezeigt. (Icons in opt/fhem/www/images/fhemSVG)

Wie kriegt Ihr die aktuelle Uhrzeit (also die Erstellungszeit der Grafik) in das Bild. Ich habe es mit einem UserReading mit strftime probiert, da wurde jede Minute das Bild convertiert und ein upload gestartet. Mit addtext funktioniert ja kein perl, wenn ich das richtig mitbekommen habe.

Viele Grüße und danke schonmal für die Antworten

Reinhard
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 25 November 2019, 09:25:14
Ja, wenn interval auf 0 steht, dann wird bei jeder Änderung eines der Readings, die an der Ausgabe beteiligt sind, ein "convert" und danach ein "upload" gemacht.

SVG Icons funktionieren nur, wenn Du, wie in der Commandref angegeben, https://metacpan.org/pod/XML::LibRSVG (https://metacpan.org/pod/XML::LibRSVG) installiert hast.

Wenn Du für die Erstellungszeit ein userReading des ESPEInk devices selbst nimmst und das Interval auf 0 setzt, wird aus meiner Sicht so eine Art Endlosschleife generiert, weil das userReading selbst ja auch wieder ein update triggert.
Am besten wäre es, aus meiner Sicht, die Uhrzeit aus den Readings des Devices zu nehmen, welches die Daten liefert.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 25 November 2019, 16:44:01
Ich habe im ersten Beitrag oben jetzt eine neue Version angehängt, die auch die Positionierung per left/mid/right/top/bottom kann.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 08 Dezember 2019, 16:54:24
Danke für diese tolle Modul für FHEM. Als ich zum ersten Mal davon gelesen habe, hat es mich gleich so begeistert, dass ich mir ein e-paper Display besorgte. Es ist ein 7.5inch_e-Paper_HAT_(B) geworden (also mit Rot als 3. Farbe).

Ich habe damit 2 Probleme:


edit: Fehlermeldungen im LOG:
libpng warning: iCCP: known incorrect sRGB profile
2019.12.08 16:34:13 1: PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 1037.
2019.12.08 16:46:12 1: einkDiplay01: problems with communication to device, max retries (3) reached

Devicedefintion:
defmod einkDiplay01 ESPEInk /opt/fhem/www/images/test_SWBalken.png
attr einkDiplay01 boardtype ESP8266
attr einkDiplay01 colormode color
attr einkDiplay01 convertmode dithering
attr einkDiplay01 definition attr einkDiplay01 definition \
addtext#Haussteuerung Augasse 5#100#10#24#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#Wetter:current_date_time#200#45#18#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
addtext#Wetter heute#10#80#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#Wetter:fc1_condition#10#100#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
addtext#aktuelle Temperatur °C#10#120#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#Wetterstation:temperature#210#120#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
addtext#Luftfeuchte %#10#140#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#Wetterstation:humidity#210#140#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
addtext#Tageshoch °C#10#160#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#Wetter:fc1_high_c#210#160#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
addtext#(Tagestief  Ozon °C)#10#180#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#Wetter:fc1_ozone#210#180#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
addtext#Wind km/h#10#200#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#Wetterstation:windSpeed#210#200#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
addtext#Wettervorschau#10#225#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
iconreading#Wetter:fc2_icon#25#235#50#0#FF1000\
iconreading#Wetter:fc3_icon#120#235#50#0#FF1000\
iconreading#Wetter:fc4_icon#210#235#50#0#FF1000\
addtext#Regen %#5#295#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
addtext#Hoch °C#5#315#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
addtext#Tief °C#5#335#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#myProPlanta:fc2_chOfRain12#66#295#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
textreading#Wetter:fc2_high_c#66#315#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
textreading#Wetter:fc2_low_c#66#335#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
\
textreading#myProPlanta:fc3_chOfRain12#145#295#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
textreading#Wetter:fc3_high_c#145#315#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
textreading#Wetter:fc3_low_c#145#335#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
\
textreading#myProPlanta:fc4_chOfRain12#240#295#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
textreading#Wetter:fc4_high_c#240#315#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
textreading#Wetter:fc4_low_c#240#335#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
addtext#  morgen         übermorgen          3.Tag#20#350#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
addtext#Energie#315#80#12#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
addtext#Photovoltaik kWh#315#100#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#Solar:Daily.Energy#500#100#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
addtext#Stromverbrauch#315#120#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
addtext#Gasverbrauch m³#315#140#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#c_Gaszaehler:verbrTagM#500#140#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
\
addtext#Status im Haus#315#200#12#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
addtext#Eingangstuer#315#220#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#NUKIDevice353363333:state#500#220#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
addtext#AV-Anlage heute kW#315#240#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#wzavplf:statEnergyDay_kWh#500#240#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
addtext#Buecherregal W#315#260#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#wzbuecherregal:power#500#260#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
addtext#LAN heute kW#315#280#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#fb_stromazpc:statEnergyDay_kWh#500#280#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
addtext#Linux heute kW#315#300#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#azklinuxpc:statEnergyDay_kWh#500#300#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf\
addtext#USB-Lader W#315#320#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
textreading#c_zSchaltpower:power#500#320#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
attr einkDiplay01 devicetype 7.5inch_e-Paper_HAT_(B)
attr einkDiplay01 group Device
attr einkDiplay01 interval 7200
attr einkDiplay01 picturefile /opt/fhem/www/images/test_SWBalkenStrich.png
attr einkDiplay01 room System
attr einkDiplay01 scale2fit 1
attr einkDiplay01 url 10.0.0.130
attr einkDiplay01 verbose 1

setstate einkDiplay01 Successfully uploaded image to device
setstate einkDiplay01 2019-12-08 16:34:24 result_picture <html><img src=/fhem/images/einkDiplay01/result.png?dummy=610050.586037545></img><div>/fhem/images/einkDiplay01/result.png</div></html>
setstate einkDiplay01 2019-12-08 10:06:54 source_picture <html><img src=/fhem/images/einkDiplay01/test_SWBalkenStrich.png?dummy=690635.125798369></img><div>/fhem/images/einkDiplay01/test_SWBalkenStrich.png</div></html>
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 09 Dezember 2019, 10:52:49
Könntest Du bitte noch Dein Basisbild (test_SWBalken.png) posten. Dann kann ich das bei mir besser nachstellen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 09 Dezember 2019, 11:01:51
Natürlich (logo inzwischen eingefügt). Und großen Dank für Deine Hilfsbereitschaft bei diesem tollen Modul !!
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 09 Dezember 2019, 13:29:06
Hier habe ich mal eine neue Version, die den Fehler mit den 0en nicht mehr haben sollte. Das 2. Problem kann ich nicht nachvollziehen (ich kann allerdings nur die Daten vergleichen, die per HTTP an das Device geschickt werden und die sind identisch in der Oberfläche von Waveshare und bei meinem Modul).
max333 einige Beiträge weiter oben, hat ja das gleiche Display wie Du und er scheint es ja hinbekommen zu haben, er benutzt allerdings das ESP32 und nicht ESP8266, wie Du.
Icininger hat eine Modifikation im Treiber gemacht (reset). Vielleicht hilft das ja?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 09 Dezember 2019, 16:24:09
Vielen Dank !!

Mit der Installation meines perl-gd unter Ubuntu 18.04.3 LTS (GNU/Linux 4.15.0-71-generic x86_64) scheint etwas nicht zu stimmen. Ich sehe Fehler bedingt durch (ein altes?) GD.so -  ich mache gerade ein update des gesamten cpan. Ein install von GD::SVG schlug zuerst fehl.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 09 Dezember 2019, 21:34:52
Mal eine kleine Info:

In Vorbereitung auf einen evtl. Akku-Betrieb habe ich die Software von meinem ESP32 jetzt dahingehend verändert, dass der ESP nach einem empfangenen Bild in den Deep-Sleep geht, und nach (aktuell 10 Minuten) wieder aufwacht.
Danach wartet er einfach auf das nächste Bild und geht wieder pennen.
Zusätzlich habe ich noch einen MQTT-Client eingebaut, der ein "online" sendet, bzw. als LWT halt "offline".
Somit könnte ich jetzt sogar die Bildübertragung direkt anstoßen und wäre nicht auf ein Intervall-Attribut angewiesen.

Ich teste das mal ein paar Tage, dann kann ich gern die Software hier zur Verfügung stellen.

lg, Stefan
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 10 Dezember 2019, 08:03:40
Das hört sich interessant an. Das müsste dann ja auch für den ESP8266 übertragbar sein oder?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 10 Dezember 2019, 09:46:01
ZitatDas müsste dann ja auch für den ESP8266 übertragbar sein oder
Leider nicht, weil der 8266 keine eingebaute RTC hat, welche für den Aufwach-Vorgang benötigt wird.
Der 8266 ist auf einen externen Interrupt angewiesen, um wieder aktiv zu werden.

Aber in diesem Zusammenhang noch eine neue und eine alte Bitte:
"Alt": Bei einem FHEM-Restart wird immer noch das colormode-Attribut gelöscht, weil es (alphabetisch, in der config) VOR dem devicetype kommt.
Und somit hab ich die Meldung
ZitatInvalid argument color to colormode. Device does not support color mode.

Neu: Vielleicht beim "interval"-Attribut eine 0 akzeptieren, um das automatische updaten ganz auszuschalten. Aktuell hab ichs halt auf 100000 gestellt, weil ich den Update-Prozess ja manuell anstoße.

lg, Stefan
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 11 Dezember 2019, 09:36:27
Zitat
"Alt": Bei einem FHEM-Restart wird immer noch das colormode-Attribut gelöscht, weil es (alphabetisch, in der config) VOR dem devicetype kommt.
Und somit hab ich die Meldung
Zitat

    Invalid argument color to colormode. Device does not support color mode.


Neu: Vielleicht beim "interval"-Attribut eine 0 akzeptieren, um das automatische updaten ganz auszuschalten. Aktuell hab ichs halt auf 100000 gestellt, weil ich den Update-Prozess ja manuell anstoße.

Zu Alt: Ich habe noch keine schlaue Möglichkeit gefunden, das zu vermeiden, bin aber dran.
Zu Neu: Die 0 ist ja schon reserviert (dann wird automatisch ein Update und Upload gemacht, wenn sich etwas an irgend einem der Readings, die zum Bild beitragen, ändert). Du kannst den Wert aber auf -1 setzen, dann sollte eigentlich auch in der aktuellen Version schon nichts mehr automatisch passieren.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 11 Dezember 2019, 16:55:29
ZitatIch habe noch keine schlaue Möglichkeit gefunden, das zu vermeiden, bin aber dran.
Ganz einfach:

In der xx_set-Routine auf "Global:initialized" prüfen......Solange das false ist, ist FHEM noch nicht richtig hochgefahren, also liegt die Vermutung nahe, dass das "set" vielleicht gültig sein könnte :)

lg, Stefan
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 12 Dezember 2019, 11:28:53
@ eki:
Nachdem ich auf meiner Hauptinstanz von Fhem noch immer Probleme herrschen (Can't locate object method "newFromPng" via package "GD::Image" at ./FHEM/89_ESPEInk.pm line 1295 - obwohl libgd3 und GD istalliert sind), habe ich schnell einen Raspi4 aufgesetzt, FHEM und die libraries installiert. Über FHEM2FHEM mit der Hauptinstanz verbunden und die einzelnen clone devices angelegt.

Anfangs sah es genau so wirr aus, dann habe ich am Raspi4 im ePaper-Device von "7.5inch_e-Paper_HAT_(B)" auf "7.5inch_e-Paper_HAT_(C)" umgestellt --> alles ok und wird korrekt dargestellt. Sogar die gelbe Farbe wird in rot umgewandelt. Für mich jetzt alles bestens, nochmal danke für das tolle Modul.

@Icinger:
Akkubetrieb des e-paper-Displays schwebt mir auch vor. Ich habe an einen "dicken" Bilderrahmen gedacht und hinter dem Display noch eine dünne Powerbank wie das hier: https://www.amazon.de/dp/B073FJ9X2J/?coliid=I10YWJBYXDODAD&colid=34S3O002OOO4K&psc=1&ref_=lv_ov_lig_dp_it (https://www.amazon.de/dp/B073FJ9X2J/?coliid=I10YWJBYXDODAD&colid=34S3O002OOO4K&psc=1&ref_=lv_ov_lig_dp_it)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 12 Dezember 2019, 15:50:55
Zitat
Ganz einfach:

In der xx_set-Routine auf "Global:initialized" prüfen......Solange das false ist, ist FHEM noch nicht richtig hochgefahren, also liegt die Vermutung nahe, dass das "set" vielleicht gültig sein könnte :)

Na ja, so ganz einfach ist es dann doch nicht gewesen (lag aber eher daran, zu verstehen, was die Funktion notifyRegexpChanged macht bzw. nicht macht) und außerdem erlaubt das dann halt fehlerhafte Settings wenn einer im Configfile rumeditiert und dabei inkonsistente Settings macht. Aber wie sagt Olaf Schubert immer "... ich kann mich nicht um alles kümmern".
In der anghängten Version sollten jetzt also Settings mit colormode color beim Starten auch funktionieren. Außerdem laufen jetzt auch nur noch die Notifies auf, die auch wirklich gebraucht werden, was hoffentlich auch die CPU schont.

Bitte gern mal testen und Rückmeldung geben, dann aktualisiere ich die Version auch im ersten Beitrag oben wieder.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 12 Dezember 2019, 18:03:25
Nach 4x shutdown+restart ist jedesmal das Device verschwunden.

Möglicherweise weil es (bei mir) das source PICTUREFILE im Pfad ...www/images/(Device-)NAME/image.ext gelöscht hat. Image zurückkopiert, edit fhem.cfg, save und das Device ist wieder da.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 13 Dezember 2019, 07:13:44
Achja, noch ein Vorschlag/Bitte:

Soweit ich das im Code gesehen habe, bezieht sich left/right/center usw ja nur auf den Bildschirmrand, oder?
Also right ist ganz rechtsbündig.

Schön wäre es, einen Text an einer bestimmten x/y-Position rechtsbündig zu haben.

zB die Positionen mit
Zitat
textreading#myAstro:SunSet#240#>165#12#0#000000
textreading#myAstro:MoonRise#320#|150#12#0#000000
angeben. Also > für rechts, | für mittig....Linksbündig ist eigentlich unnötig, weil ja eh Standard.

lg, Stefan
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 13 Dezember 2019, 17:09:51
Ist ja kurz vor Weihnachten :), Wunsch erfüllt (siehe Anhang).

Wenn jetzt in der x Position ein > enthalten ist, dann ist der Bezugspunkt rechts (>300 bedeutet der Text/ das Icon hört bei 300 pixeln auf) wenn ein | enthalten ist dann ist der Bezugspunkt die Mitte (|300 bedeutet die Mitte des Textes/Icons liegt bei 300 pixeln). Gleiches gilt für die y Position > bedeutet hier dass der Bezugspunkt oben ist | entsprechend wieder in der Mitte (< geht auch ist aber das Gleiche als wenn nichts da steht).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 14 Dezember 2019, 07:50:24
Coole Sache, danke.

Funktioniert einwandfrei :)

lg und schönes Wochenende,

Stefan
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 16 Dezember 2019, 10:47:44
Das Flex-Display "2.9inch e-Paper HAT (D)" ist beim devicetype nicht vorhanden und wird nach Auswahl von 2.9inch_e-Paper_Module, 2.9inch_e-Paper_Module_(B) oder 2.9inch_e-Paper_Module_(C) auch nicht richtig upgeloaded. Nur schwarzes Display obwohl die Konvertierung funktioniert. Zu diesem Display auch eine Bitte (alles ohne jede Eile): den Text um 90° rechts rotieren ermöglichen.

2019.12.16 10:08:30 3: eDisplayFlex: sending HTTP request to http://10.0.0.133/EPD with data: ja
2019.12.16 10:08:40 3: eDisplayFlex: problems with communication to device, trying once more (1 of 3 done)
2019.12.16 10:08:50 3: eDisplayFlex: problems with communication to device, trying once more (2 of 3 done)
2019.12.16 10:09:00 3: eDisplayFlex: problems with communication to device, trying once more (3 of 3 done)
2019.12.16 10:09:10 1: eDisplayFlex: problems with communication to device, max retries (3) reached
2019.12.16 10:09:14 3: eDisplayFlex: sending HTTP request to http://10.0.0.133/EPD with data: ka
2019.12.16 10:09:24 3: eDisplayFlex: problems with communication to device, trying once more (1 of 3 done)
2019.12.16 10:09:34 3: eDisplayFlex: problems with communication to device, trying once more (2 of 3 done)
2019.12.16 10:09:44 3: eDisplayFlex: problems with communication to device, trying once more (3 of 3 done)
2019.12.16 10:09:52 3: eDisplayFlex: sending HTTP request to http://10.0.0.133/EPD with data: la
2019.12.16 10:09:54 3: eDisplayFlex: problems with communication to device, trying once more (1 of 3 done)
2019.12.16 10:10:02 3: eDisplayFlex: problems with communication to device, trying once more (2 of 3 done)
2019.12.16 10:10:04 3: eDisplayFlex: problems with communication to device, trying once more (3 of 3 done)
2019.12.16 10:10:12 1: eDisplayFlex: problems with communication to device, max retries (3) reached
2019.12.16 10:10:14 1: eDisplayFlex: problems with communication to device, max retries (3) reached
2019.12.16 10:40:14 4: Start forked process to convert output picture
2019.12.16 10:40:14 4: File /opt/fhem/www/images/296x128.jpg opened, sizes is 128 x 296
2019.12.16 10:40:16 4: Finished conversion in background
2019.12.16 10:40:33 3: eDisplayFlex: sending HTTP request to http://10.0.0.133/EPD with data: ka
2019.12.16 10:40:43 3: eDisplayFlex: problems with communication to device, trying once more (1 of 3 done)


Direktupload über die Weboberfläche des ESP 8266 funktioniert.

edit: Durchgestrichenes existiert ja bereits im tollen Modul (RTFM für mich)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 16 Dezember 2019, 16:42:28
Das schwarz-weiße Display "7.5inch_e-Paper_HAT" wird mit der Auswahl von "7.5inch_e-Paper_HAT_(C)" korrekt dargestellt. Weiters empfiehlt es sich dafür schon aus dem zugrundeliegenden Picturefile die Farben zu entfernen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 17 Dezember 2019, 11:01:53
Ich habe gesehen, dass es eine Neue Version der Waveshare Web Applikation gibt, da ist jetzt das 2.9 D Display enthalten, kann ich also einbauen, etwas Geduld.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 17 Dezember 2019, 11:33:04
Danke. Lass Dir Zeit. Das 2.9-D-Display richte ich erst nach Weihnachten ein, ich hatte vorerst nur rumprobiert.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 31 Dezember 2019, 05:33:46
Guten Morgen,

mein Display läuft jetzt schon einige Zeit superstabil.
Grad vorhin wäre mir noch ein nettes Gimmick dazu eingefallen, allerdings bräuchte es dazu evtl. eine Änderung im Modul: Mehrzeiligen Text.
Ich würde gerne ein "Zitat des Tages" anzeigen. Das könnte zB vom fortune-Kommando (https://wiki.ubuntuusers.de/fortune/ (https://wiki.ubuntuusers.de/fortune/)) kommen, oder evtl. auch per HTTPMOD von irgendeiner Website.

Leider unterstützt GD ja keine NewLines, daher müsste das im Modul selbst umgesetzt werden.

Gibts da evtl. auch eine Möglichkeit, das zu implementieren? Sonst mach ich das nur hier in meinem lokalen Modul.

lg, Stefan
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 03 Januar 2020, 15:16:01
Hallo Stefan,

Zitat von: Icinger am 31 Dezember 2019, 05:33:46
mein Display läuft jetzt schon einige Zeit superstabil.

Würdest du deine ESP32-Sourcen hier zur Verfügung stellen?

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 07 Januar 2020, 11:33:32
Zitat von: Icinger am 31 Dezember 2019, 05:33:46
Guten Morgen,

mein Display läuft jetzt schon einige Zeit superstabil.
Grad vorhin wäre mir noch ein nettes Gimmick dazu eingefallen, allerdings bräuchte es dazu evtl. eine Änderung im Modul: Mehrzeiligen Text.
Ich würde gerne ein "Zitat des Tages" anzeigen. Das könnte zB vom fortune-Kommando (https://wiki.ubuntuusers.de/fortune/ (https://wiki.ubuntuusers.de/fortune/)) kommen, oder evtl. auch per HTTPMOD von irgendeiner Website.

Leider unterstützt GD ja keine NewLines, daher müsste das im Modul selbst umgesetzt werden.

Gibts da evtl. auch eine Möglichkeit, das zu implementieren? Sonst mach ich das nur hier in meinem lokalen Modul.

lg, Stefan

Ich könnte so etwas wie eine maximale Breite für die texte einführen und dann manuell einen Zeileinumbruch machen, wenn diese Breite erreicht ist. Das würde dann Textblöcke mit "Flatterrand" erzeugen.
Eine zweite, leichter zu implementierende Möglichkeit wäre, einen special Character (also so etwas wie \n) in den Texten als Zeilenumbruch zu interpretieren und dann entsprechend im Modul die Zeilenumbrüche zu setzen.
Was wäre Deine Präferenz?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 07 Januar 2020, 15:35:15
In meinem Fall müsste ich zu (1) tendieren, da fortune die Texte mit einer fixen Breite von 80 ausgibt.
Ich hab das jetzt mit RegExen gelöst, so daß die Zeilenumbrüche entfernt werden.
Und diesen Text würd ich halt jetzt gern am Display unterbringen :)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: xs3bt am 08 Januar 2020, 17:35:47
irgendwie kann ich zu dem Modul im commandref leider nichts finden, würde es auch gerne testen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 09 Januar 2020, 13:44:30
Zitat von: xs3bt am 08 Januar 2020, 17:35:47
irgendwie kann ich zu dem Modul im commandref leider nichts finden, würde es auch gerne testen.
Das ist bisher ja noch kein offizielles Tool und kommt (noch) nicht mit FHEM mit. Daher ist auch nix in der FHEM Commandref zu finden. Allerdings ist die ganze Beschreibung schon im Modul vorhanden.
Du musst einfach das .pl file im ersten Beitrag oben in Deinen FHEM Ordner kopieren und dann FHEM neu starten. Wenn Du dann ein Device dieses Typs anlegst (mit define <name> ESPEInk ...), dann kannst Du unten auf "Device specific help" klicken und siehst die ganze Beschreibung.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 09 Januar 2020, 13:55:02
Zitat von: Icinger am 07 Januar 2020, 15:35:15
In meinem Fall müsste ich zu (1) tendieren, da fortune die Texte mit einer fixen Breite von 80 ausgibt.
Ich hab das jetzt mit RegExen gelöst, so daß die Zeilenumbrüche entfernt werden.
Und diesen Text würd ich halt jetzt gern am Display unterbringen :)
ZitatDas Flex-Display "2.9inch e-Paper HAT (D)" ist beim devicetype nicht vorhanden und wird nach Auswahl von 2.9inch_e-Paper_Module, 2.9inch_e-Paper_Module_(B) oder 2.9inch_e-Paper_Module_(C) auch nicht richtig upgeloaded. Nur schwarzes Display obwohl die Konvertierung funktioniert. Zu

Es gibt jetzt eine neue Version (erst mal nur zum Testen an diesen Beitrag angehängt). Dort sind 3 neue Devicetypes dazu gekommen, das gewünschte 2.9D und 2 neue 7.5 Zoll (V2).

Zusätzlich gibt es dort auch das gewünschte Feature mit dem Umbruch. Ich habe hier beide Varianten realisiert. Man kann entweder \n in den String einfügen dann wird an dieser Stelle umgebrochen, oder man setzt 2 zusätzliche Parameter ans Ende hinter die Font Definition (geht bei definition und auch bei set addtext oder set textreading), der erste gibt die Möglichkeit die Zeilenabstände zu variiren (zusätzlicher Wert in Pixeln zur normalen Zeilenhöhe), der zweite ist die Breite des Textblockes in Pixeln die den automatischen Umbruch bestimmt. Man kann auch beides kombinieren, dann wird bei \n im Text immer umgebrochen und darüber hinaus wenn die Breite des Textblockes überschritten würde.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 18 Januar 2020, 11:55:54
Danke !
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: bhaal am 18 Januar 2020, 20:57:47
Hallo zusammen,

Auch von meiner Seite aus vielen Dank für das Modul. Läuft bei mir bisher auch wunderbar, sogar seit einigen Tagen mit der 7.5" V2 (800 x 480px).  :)

Ich hatte jedoch beim Einrichten das Problem, dass beim nachträglichen Löschen von Einträgen alles durcheinander kommt.
Ich habe z.B. Position, Trigger und Größe mit der Nr. 8 angepasst (über attr) und dann Eintrag Nr. 7 komplett gelöscht. Dann bleiben die attr auf Nr 8, obwohl sich alles um einen Eintrag verschieben müsste. Ich hoffe das war verständlich...  :o

Ich habe also viel probiert und nachdem es jetzt soweit passt alles neu hinzugefügt. Aktueller Stand siehe Screenshot.  8)

Viele Grüße
Max
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 20 Januar 2020, 10:33:16
Kann es sein, dass die Modulsteuerung etwas durcheinander kommt wenn mehrere Displays genutzt werden? Manchmal sehe ich wieder nur wirre Zeichen darauf.

Das Modul versucht die 2 oder mehr Displays immer zur gleichen Zeit zu aktualisieren. Ich habe Intervall = 3600 eingestellt und alle Displays werden (bis auf wenige Sekunden) immer um zB XX:32 sychronsiert. Das ist mM nach die Minuten-Zahl zu der FHEM gestartet wurde. Maxretries steht bei mir auf 3. Ich würde den Uploadzeitpunkt lieber über AT steuern, um so verstreut über den Tag die Displays zu aktualisieren. Das scheitert aber mM daran, dass Intervall = 0 dann bei jedem Readingsupdate triggert (If this value is set to 0 there will be automatical updates in case a triggering device is specified (see set textreading). Otherwise 0 means no automatic updates. ). Allerdings muss ich gestehen, dass ich Intervall 0 noch ausprobiert habe. Besteht Deiner Meinung nach die Möglichkeit disable = 1 zu setzen und dann mit AT upzuloaden?

Außerdem beobachte ich, dass die Statusmeldung "Successfully uploaded image to device" lautet, obwohl ein Display gar nicht mit Stom versorgt wird, also offline ist. Stört mich aber nicht.

Anbei einmal ein Auszug aus dem Log (Verbose = 0):
2020.01.20 07:32:36 1: PERL WARNING: Argument "0.0 W" isn't numeric in sprintf at ./FHEM/89_ESPEInk.pm line 1143.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $linegap in int at ./FHEM/89_ESPEInk.pm line 1123.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $blockwidth in int at ./FHEM/89_ESPEInk.pm line 1124.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 1135.
2020.01.20 08:32:34 1: PERL WARNING: Invalid conversion in sprintf: end of string at ./FHEM/89_ESPEInk.pm line 1143.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $linegap in int at ./FHEM/89_ESPEInk.pm line 1123.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $blockwidth in int at ./FHEM/89_ESPEInk.pm line 1124.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 1135.
2020.01.20 08:32:34 1: PERL WARNING: Invalid conversion in sprintf: end of string at ./FHEM/89_ESPEInk.pm line 1143.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $linegap in int at ./FHEM/89_ESPEInk.pm line 1123.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $blockwidth in int at ./FHEM/89_ESPEInk.pm line 1124.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 1135.
2020.01.20 08:32:34 1: PERL WARNING: Invalid conversion in sprintf: end of string at ./FHEM/89_ESPEInk.pm line 1143.
2020.01.20 08:32:35 1: PERL WARNING: Argument "FF1000" isn't numeric in division (/) at ./FHEM/89_ESPEInk.pm line 1132.
2020.01.20 08:32:35 1: PERL WARNING: Argument "/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf" isn't numeric in int at ./FHEM/89_ESPEInk.pm line 1123.
2020.01.20 08:32:35 1: PERL WARNING: Argument "0.0 W" isn't numeric in sprintf at ./FHEM/89_ESPEInk.pm line 1143.
2020.01.20 08:32:35 1: PERL WARNING: Argument "FF1000" isn't numeric in int at ./FHEM/89_ESPEInk.pm line 1123.
2020.01.20 08:32:35 1: PERL WARNING: Argument "/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf" isn't numeric in int at ./FHEM/89_ESPEInk.pm line 1124.
2020.01.20 08:32:36 1: PERL WARNING: Argument "/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf" isn't numeric in int at ./FHEM/89_ESPEInk.pm line 1123.
2020.01.20 08:32:36 1: PERL WARNING: Argument "0.0 W" isn't numeric in sprintf at ./FHEM/89_ESPEInk.pm line 1143.
2020.01.20 08:32:36 1: PERL WARNING: Argument "0.0 W" isn't numeric in sprintf at ./FHEM/89_ESPEInk.pm line 1143.


Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 21 Januar 2020, 10:17:40
So, ich habe jetzt disable auf 1 gestellt sowie ein DOIF gestaltet, das nur je 2-3x am Tag die Darstellung der Displays updated und belädt.  Keine wirren Zeichen mehr - ich bin zu 100% zufrieden. Mit diesem tollen Modul sowieso!

edit: und die an das Board angeschlossene Powerbank hält jetzt auch viel länger (der Upload scheint im Board viel Energie zu verbrauchen).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 22 Januar 2020, 10:41:18
Vielen Dank eki für das Modul!

Benutzt jmd. das EInk-Display auch ohne waveshare-Treibermodul, also direkt mit einem ESP32(/ESP8266)? Falls ja, würde er seine Sourcen freundlicherweise hier auch zur Verfügung stellen? Falls nicht public, zumindest als PM?

Vielen Dank im Voraus!
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 22 Januar 2020, 22:16:35
Zitat von: kkoeniger am 20 Januar 2020, 10:33:16
Kann es sein, dass die Modulsteuerung etwas durcheinander kommt wenn mehrere Displays genutzt werden? Manchmal sehe ich wieder nur wirre Zeichen darauf.

Das Modul versucht die 2 oder mehr Displays immer zur gleichen Zeit zu aktualisieren. Ich habe Intervall = 3600 eingestellt und alle Displays werden (bis auf wenige Sekunden) immer um zB XX:32 sychronsiert. Das ist mM nach die Minuten-Zahl zu der FHEM gestartet wurde. Maxretries steht bei mir auf 3. Ich würde den Uploadzeitpunkt lieber über AT steuern, um so verstreut über den Tag die Displays zu aktualisieren. Das scheitert aber mM daran, dass Intervall = 0 dann bei jedem Readingsupdate triggert (If this value is set to 0 there will be automatical updates in case a triggering device is specified (see set textreading). Otherwise 0 means no automatic updates. ). Allerdings muss ich gestehen, dass ich Intervall 0 noch ausprobiert habe. Besteht Deiner Meinung nach die Möglichkeit disable = 1 zu setzen und dann mit AT upzuloaden?

Außerdem beobachte ich, dass die Statusmeldung "Successfully uploaded image to device" lautet, obwohl ein Display gar nicht mit Stom versorgt wird, also offline ist. Stört mich aber nicht.

Anbei einmal ein Auszug aus dem Log (Verbose = 0):
2020.01.20 07:32:36 1: PERL WARNING: Argument "0.0 W" isn't numeric in sprintf at ./FHEM/89_ESPEInk.pm line 1143.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $linegap in int at ./FHEM/89_ESPEInk.pm line 1123.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $blockwidth in int at ./FHEM/89_ESPEInk.pm line 1124.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 1135.
2020.01.20 08:32:34 1: PERL WARNING: Invalid conversion in sprintf: end of string at ./FHEM/89_ESPEInk.pm line 1143.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $linegap in int at ./FHEM/89_ESPEInk.pm line 1123.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $blockwidth in int at ./FHEM/89_ESPEInk.pm line 1124.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 1135.
2020.01.20 08:32:34 1: PERL WARNING: Invalid conversion in sprintf: end of string at ./FHEM/89_ESPEInk.pm line 1143.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $linegap in int at ./FHEM/89_ESPEInk.pm line 1123.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $blockwidth in int at ./FHEM/89_ESPEInk.pm line 1124.
2020.01.20 08:32:34 1: PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 1135.
2020.01.20 08:32:34 1: PERL WARNING: Invalid conversion in sprintf: end of string at ./FHEM/89_ESPEInk.pm line 1143.
2020.01.20 08:32:35 1: PERL WARNING: Argument "FF1000" isn't numeric in division (/) at ./FHEM/89_ESPEInk.pm line 1132.
2020.01.20 08:32:35 1: PERL WARNING: Argument "/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf" isn't numeric in int at ./FHEM/89_ESPEInk.pm line 1123.
2020.01.20 08:32:35 1: PERL WARNING: Argument "0.0 W" isn't numeric in sprintf at ./FHEM/89_ESPEInk.pm line 1143.
2020.01.20 08:32:35 1: PERL WARNING: Argument "FF1000" isn't numeric in int at ./FHEM/89_ESPEInk.pm line 1123.
2020.01.20 08:32:35 1: PERL WARNING: Argument "/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf" isn't numeric in int at ./FHEM/89_ESPEInk.pm line 1124.
2020.01.20 08:32:36 1: PERL WARNING: Argument "/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf" isn't numeric in int at ./FHEM/89_ESPEInk.pm line 1123.
2020.01.20 08:32:36 1: PERL WARNING: Argument "0.0 W" isn't numeric in sprintf at ./FHEM/89_ESPEInk.pm line 1143.
2020.01.20 08:32:36 1: PERL WARNING: Argument "0.0 W" isn't numeric in sprintf at ./FHEM/89_ESPEInk.pm line 1143.


Ich könnte eine zufällig berechnete Verzögerung beim ersten Start der Timer einbauen, dann sollte es bei interval>0 die Gleichzeitigkeit unwahrscheinlicher werden. Darüber hinaus könnte man auch eine vorgebaute Verzögerung pro Device vorsehen, dann würde auch im Fall Display=0 eine Entkopplung möglich.
Grundsätzlich werde ich mir aber erst mal anschauen, warum das Modul bei mehreren Devices durcheinander kommt. Das müsste auch trotz mehrerer Devices parallel gehen.

Zitat von: bhaal am 18 Januar 2020, 20:57:47

Ich hatte jedoch beim Einrichten das Problem, dass beim nachträglichen Löschen von Einträgen alles durcheinander kommt.
Ich habe z.B. Position, Trigger und Größe mit der Nr. 8 angepasst (über attr) und dann Eintrag Nr. 7 komplett gelöscht. Dann bleiben die attr auf Nr 8, obwohl sich alles um einen Eintrag verschieben müsste. Ich hoffe das war verständlich...  :o

Ich habe also viel probiert und nachdem es jetzt soweit passt alles neu hinzugefügt. Aktueller Stand siehe Screenshot.  8)

Viele Grüße
Max

Kann ich nachstellen, wir repariert.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 27 Januar 2020, 18:00:39
ZitatKann es sein, dass die Modulsteuerung etwas durcheinander kommt wenn mehrere Displays genutzt werden? Manchmal sehe ich wieder nur wirre Zeichen darauf.

... hier nun mal eine Testversion, die dieses Problem hoffentlich beseitigt. Lag daran, dass ich in den non blocking Callbacks nicht zwischen den startenden Aufrufen unterschieden habe und dadurch alles durcheinander kam.
Ich kann das leider nicht richtig testen, weil ich nur ein Board habe, also intensiv ausprobieren und Bescheid geben.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 28 Januar 2020, 10:56:33
verbose = 4
2020.01.28 10:46:31 4: Start forked process to convert output picture
2020.01.28 10:46:31 1: PERL WARNING: Use of uninitialized value $linegap in int at ./FHEM/89_ESPEInk.pm line 1123.
2020.01.28 10:46:31 1: PERL WARNING: Use of uninitialized value $blockwidth in int at ./FHEM/89_ESPEInk.pm line 1124.
2020.01.28 10:46:31 1: PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 1135.
2020.01.28 10:46:31 1: PERL WARNING: Invalid conversion in sprintf: end of string at ./FHEM/89_ESPEInk.pm line 1143.
2020.01.28 10:46:33 1: PERL WARNING: Argument "/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf" isn't numeric in int at ./FHEM/89_ESPEInk.pm line 1123.
2020.01.28 10:46:33 1: PERL WARNING: Argument "0.0 W" isn't numeric in sprintf at ./FHEM/89_ESPEInk.pm line 1143.
2020.01.28 10:46:33 4: File /opt/fhem/www/images/test_SWBalkenStrichLogo.png opened, sizes is 640 x 384
2020.01.28 10:46:49 4: Finished conversion in background
2020.01.28 10:47:01 3: einkDisplaySW: sending HTTP request to http://10.0.0.133/EPD with data: fb
2020.01.28 10:47:01 3: einkDisplaySW: problems with communication to device, trying once more (1 of 3 done)
2020.01.28 10:47:01 3: einkDisplaySW: problems with communication to device, trying once more (2 of 3 done)
2020.01.28 10:47:01 3: einkDisplaySW: problems with communication to device, trying once more (3 of 3 done)
2020.01.28 10:47:01 1: einkDisplaySW: problems with communication to device, max retries (3) reached


Die Displays sind definitiv im Netzwerk erreichbar (Weboberfläche des ESP8266). Es ist kein Upload möglich.

PS: Sorry, aber in den nächsten 2.5 Wochen kann ich leider nicht testen (Auslandsurlaub).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 28 Januar 2020, 15:38:34
Da war ich wohl doch zu schnell  :-[

Hier noch mal eine neue Version. Bitte noch mal testen (nach dem Urlaub, viel Spaß).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 07 Februar 2020, 09:23:06
Hallo,

ich habe ein 7.5B (die erste Version mit 640x384, id=20), angebunden an ein ESP32 (nicht das waveshare-Modul).
Dabei ist mir folgendes aufgefallen, was zum Betrieb geändert werden sollte:

- $cparams->{url} = 'http://'.ESPEInk_GetSetting($name,"url").'/'.$cparams->{command};
+ $cparams->{url} = 'http://'.ESPEInk_GetSetting($name,"url").'/'.$params->{command};

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 09 Februar 2020, 19:24:49
Hallo zusammen,

ich hatte etwas Zeit um mein ESP32-Driver-Board und ein 1.54"B Modul zu testen.
Nach anfänglichen Problemen habe ich nun zum ersten mal etwas angezeigt bekommen  ;D

So ganz zufrieden bin ich nicht.

Ich musste beim flashen den Boot-Knopf drücken. Im Schaltplan sieht man aber das dies doch "eigentlich" durch den COM-Port gesteuert werden sollte (wie das auch bei NodeMCU für den ESP8266 der Fall ist).

Weiter bin ich auch etwas unschlüssig ob WaveShare in ihrem Demo-Code ein Fehler haben oder ob das egal ist wie das geschrieben wird.

Was ich meine sind die "*" bei ssid und password.
Original im Source:
/* SSID and password of your WiFi net ----------------------------------------*/
const char *ssid = "FB6490"; //"your ssid";
const char *password = "Blallla";   //"your password";


Das Internet sagt aber das es so zu schreiben ist:
/* SSID and password of your WiFi net ----------------------------------------*/
const char* ssid = "FB6490"; //"your ssid";
const char* password = "Blallla";   //"your password";


Schön wäre es natürlich wenn man auch noch etwas an FHEM senden könnte, z.B. Tastendrücke.
Hat das schon jemand umgesetzt?


Danke schon mal fürs Modul und die Idee :=)

Gruss Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 09 Februar 2020, 20:42:35
Hallo zusammen,

bei mir funktioniert das nicht stabil. Ich muss dauernd den EN-Knopf betätigen das ich die Web-Oberfläche wieder erreiche.
Wenn ich das doch richtig gelesen habe wird als Betriebs-Software die Demo von WaveShare benutzt?

Bisher habe ich es nicht geschafft ein Bild von FHEM zu übertragen.

Meine Einstellungen:
defmod myEInk ESPEInk /opt/fhem/www/images/200x200.png
attr myEInk userattr 1-angle 1-blockwidth 1-color:colorpicker,RGB 1-font 1-linegap 1-size 1-text 1-trigger 1-x 1-y 2-angle 2-blockwidth 2-color:colorpicker,RGB 2-font 2-linegap 2-size 2-text 2-trigger 2-x 2-y 3-angle 3-blockwidth 3-color:colorpicker,RGB 3-font 3-linegap 3-size 3-text 3-trigger 3-x 3-y
attr myEInk boardtype ESP32
attr myEInk colormode color
attr myEInk convertmode level
attr myEInk devicetype 1.54inch_e-Paper_Module_(B)
attr myEInk interval 0
attr myEInk picturefile /opt/fhem/www/images/200x200.png
attr myEInk url 192.168.178.63
attr myEInk verbose 1

setstate myEInk Finished conversion in background
setstate myEInk 2020-02-09 20:19:21 1-angle 0
setstate myEInk 2020-02-09 20:19:21 1-blockwidth 0
setstate myEInk 2020-02-09 20:19:21 1-color 000000
setstate myEInk 2020-02-09 20:19:21 1-def addtext#Bla
setstate myEInk 2020-02-09 20:19:21 1-font medium
setstate myEInk 2020-02-09 20:19:21 1-isIcon 0
setstate myEInk 2020-02-09 20:19:21 1-linegap 0
setstate myEInk 2020-02-09 20:19:21 1-size 10
setstate myEInk 2020-02-09 20:19:21 1-text Bla
setstate myEInk 2020-02-09 20:19:21 1-x 0
setstate myEInk 2020-02-09 20:19:21 1-y 0
setstate myEInk 2020-02-09 20:19:44 2-angle 0
setstate myEInk 2020-02-09 20:19:44 2-blockwidth 0
setstate myEInk 2020-02-09 20:19:44 2-color 000000
setstate myEInk 2020-02-09 20:19:44 2-def addtext#bla
setstate myEInk 2020-02-09 20:19:44 2-font medium
setstate myEInk 2020-02-09 20:19:44 2-isIcon 0
setstate myEInk 2020-02-09 20:19:44 2-linegap 0
setstate myEInk 2020-02-09 20:19:44 2-size 10
setstate myEInk 2020-02-09 20:19:44 2-text bla
setstate myEInk 2020-02-09 20:19:44 2-x 0
setstate myEInk 2020-02-09 20:19:44 2-y 0
setstate myEInk 2020-02-09 20:25:42 3-angle 0
setstate myEInk 2020-02-09 20:25:42 3-blockwidth 0
setstate myEInk 2020-02-09 20:25:42 3-color 000000
setstate myEInk 2020-02-09 20:25:42 3-def addtext#blblblblblblblbl
setstate myEInk 2020-02-09 20:25:42 3-font medium
setstate myEInk 2020-02-09 20:25:42 3-isIcon 0
setstate myEInk 2020-02-09 20:25:42 3-linegap 0
setstate myEInk 2020-02-09 20:25:42 3-size 10
setstate myEInk 2020-02-09 20:25:42 3-text blblblblblblblbl
setstate myEInk 2020-02-09 20:25:42 3-x 0
setstate myEInk 2020-02-09 20:25:42 3-y 0
setstate myEInk 2020-02-09 20:25:42 deftexts 3
setstate myEInk 2020-02-09 20:25:49 result_picture <html><img src=/fhem/images/myEInk/result.png?dummy=950048.774690121></img><div>/fhem/images/myEInk/result.png</div></html>
setstate myEInk 2020-02-09 19:48:02 source_picture <html><img src=/fhem/images/myEInk/200x200.png?dummy=583153.879619569></img><div>/fhem/images/myEInk/200x200.png</div></html>


Funktioniert das bei irgend jemand stabil mit dem ESP32--Driver-Board?

Wenn ich im Web-Interface des ESP ein paar mal etwas schicke ist dieser dann nicht mehr erreichbar.
Beim dritten mal hochladen über die ESP32-Web-Seite bleibt die Anzeige bei 2.5% stehen und das wars.
Liegt das eventl. an der zu kurzen Update-Zeit?

@Icinger, willst Du dein Code eventl. hier zur Verfügung stellen?

Danke,

Gruss Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 10 Februar 2020, 08:33:28
Hallo Gerd,

Zitat von: Maista am 09 Februar 2020, 19:24:49
Weiter bin ich auch etwas unschlüssig ob WaveShare in ihrem Demo-Code ein Fehler haben oder ob das egal ist wie das geschrieben wird.

Was ich meine sind die "*" bei ssid und password.
Original im Source:
/* SSID and password of your WiFi net ----------------------------------------*/
const char *ssid = "FB6490"; //"your ssid";
const char *password = "Blallla";   //"your password";


Das Internet sagt aber das es so zu schreiben ist:
/* SSID and password of your WiFi net ----------------------------------------*/
const char* ssid = "FB6490"; //"your ssid";
const char* password = "Blallla";   //"your password";


Das ist gleichbedeutend uns spielt keine Rolle. Bei mir funktioniert der Democode auch soweit auf einem "normalen" ESP32.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 10 Februar 2020, 17:12:22
Zitat von: Jendaw am 07 Februar 2020, 09:23:06
Hallo,

ich habe ein 7.5B (die erste Version mit 640x384, id=20), angebunden an ein ESP32 (nicht das waveshare-Modul).
Dabei ist mir folgendes aufgefallen, was zum Betrieb geändert werden sollte:


  • mein URL-Parameter muss "EPDu_" lauten (statt "EPDa_")
  • in Zeile 1852 (letzte Version) befindet sich ein Bug (?) bei der Übertragung, die Parameter werden nicht mitgegeben
- $cparams->{url} = 'http://'.ESPEInk_GetSetting($name,"url").'/'.$cparams->{command};
+ $cparams->{url} = 'http://'.ESPEInk_GetSetting($name,"url").'/'.$params->{command};

  • Beachtung der Refreshtime, das 7.5B hat bspw. 31s, wenn zwischenzeitlich ein erneutes Update kommt, dann ist es nicht mehr ansprechbar (siehe Refreshtimings bei https://diyprojects.io/test-waveshare-epaper-eink-2-7-spi-screen-raspberry-pi-python/ (https://diyprojects.io/test-waveshare-epaper-eink-2-7-spi-screen-raspberry-pi-python/), hier sollte kein Update durchgeführt werden, wenn das letzte noch innerhalb des Refreshzeitraums liegt
  • auch mein ESP32 bleibt nach dem ersten Update stehen, ich habe aber auch den Workaround mit ESP.restart()eingebaut. Mittelfristig werde ich vermutlich auch einen MQTT-Client einbauen
  • die Farbangabe bei iconreading wird bei mir nicht beachtet - es ist nach dem Konvertieren immer schwarz

VG

Hier mal eine Version, die Deine Wünsche erfüllen sollte, bitte ausgiebig testen.
- Statt einer "refresh Time" warte ich jetzt, bis ein aktueller Upload fertig ist und erlaube dann erst wieder einen Neuen.
- Warum die ESP32 Devices nach dem Update stehen bleiben, ist mir ein Rätsel und kann ich, weil ich keinen ESP32 habe, auch nicht nachvollziehen.
- Die Icons berücksichtigen jetzt die Farbe und zwar folgendermaßen: Wenn keine Farbe gegeben ist, bleibt das Original erhalten (mit allen Farben), wenn eine Farbe gegeben ist, werden alle Pixel, die nicht weiß sind, auf diese Farbe gesetzt.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 10 Februar 2020, 17:54:58
Hi,

anbei mal mein ESP32-Code.

Änderungen gegenüber dem "normalen" Sketch:

srvr.h
-) ssid und password ändern
-) myIP ändern (bei mir eine fixe IP)
ggf das Topic anpassen:
-) mqTopic

Loader_esp32wf
-) mqtt_server ändern
-) TIME_TO_SLEEP ändern (die Zeit, wie lange der ESP schlafen soll)

lg, Stefan
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 10 Februar 2020, 18:03:39
Hallo ihr zusammen

Danke für die Infos.
Mal schauen wann ich motiviert bin. Die Nacht war hier etwas laut   :o

Melde mich wieder

Gruß Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 10 Februar 2020, 22:13:11
Zitat von: eki am 10 Februar 2020, 17:12:22
Hier mal eine Version, die Deine Wünsche erfüllen sollte, bitte ausgiebig testen.

Vielen Dank!

Zitat- Statt einer "refresh Time" warte ich jetzt, bis ein aktueller Upload fertig ist und erlaube dann erst wieder einen Neuen.

Das sollte auch genügen. Das SHOW kehrt nach meinen Beobachtungen der seriellen ESP32-Konsole erst zurück, wenn der Inhalt dargestellt wurde. Bis jetzt hilft diese Änderung - ich werde das weiter beobachten :)

Zitat- Warum die ESP32 Devices nach dem Update stehen bleiben, ist mir ein Rätsel und kann ich, weil ich keinen ESP32 habe, auch nicht nachvollziehen.

Im ESP32-Code wird nach dem Show die Verbindung erst geflusht und dann ein HTTP200 mit einem "Ok!"-Text gesendet, wird diese Seite abgeholt? Mir scheint, als wäre das die Ursache für die stehen bleibenden ESP32 - wenn ich das im Treiber auskommentiere, bleibt der ESP32 nicht mehr "stehen" (Originaltreiber, ohne ESP.reset()).
client.flush();
client.print("HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n");
client.print("Ok!");
client.print("\r\n");


Zitat
- Die Icons berücksichtigen jetzt die Farbe und zwar folgendermaßen: Wenn keine Farbe gegeben ist, bleibt das Original erhalten (mit allen Farben), wenn eine Farbe gegeben ist, werden alle Pixel, die nicht weiß sind, auf diese Farbe gesetzt.

Sollten nicht eher alle weißen Pixel auf die angegebene Farbe gesetzt werden oder verstehe ich das falsch? Ich verwende für offene Fenster das icon "rc_dot", welches einen schwarzen Kreis im Hintergrundbild überdeckt, wenn gesetzt.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 11 Februar 2020, 08:21:31
ZitatIm ESP32-Code wird nach dem Show die Verbindung erst geflusht und dann ein HTTP200 mit einem "Ok!"-Text gesendet, wird diese Seite abgeholt? Mir scheint, als wäre das die Ursache für die stehen bleibenden ESP32 - wenn ich das im Treiber auskommentiere, bleibt der ESP32 nicht mehr "stehen" (Originaltreiber, ohne ESP.reset()).
Code: [Auswählen]

Abgeholt wird da nichts mehr, wartet Dein ESP32 denn auf eine Antwort?

ZitatSollten nicht eher alle weißen Pixel auf die angegebene Farbe gesetzt werden oder verstehe ich das falsch? Ich verwende für offene Fenster das icon "rc_dot", welches einen schwarzen Kreis im Hintergrundbild überdeckt, wenn gesetzt.

Das ist genau so ein bisschen das Problem. Ich bin davon ausgegangen, dass die weißen Pixel eher der Hintergrund sind und alle nicht weißen (hintergrund) Pixel damit zu ändern sind. Damit muss ich, denke ich, noch ein bisschen rumexperimentieren.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 11 Februar 2020, 08:43:35
Zitat von: eki am 11 Februar 2020, 08:21:31
Abgeholt wird da nichts mehr, wartet Dein ESP32 denn auf eine Antwort?

Antwort nicht, aber scheinbar, dass es abgeholt wird. Ansonsten kommt er nicht aus der Serverloop raus. Das Problem werden jedoch auch die waveshare-ESP32 haben, da sie die selbe Firmware haben. Unterschied zu meinem Board ist lediglich, dass ich die Verdrahtung selbst vornehmen muss, beim waveshare-ESP32 muss man nur die Flachbandleitung draufstecken.

ZitatDas ist genau so ein bisschen das Problem. Ich bin davon ausgegangen, dass die weißen Pixel eher der Hintergrund sind und alle nicht weißen (hintergrund) Pixel damit zu ändern sind. Damit muss ich, denke ich, noch ein bisschen rumexperimentieren.

Da kenne ich mich leider nicht aus. Ursprünglich ist das eine svg-Grafik im RGB-Farbraum, wo es nur schwarz gibt, der Hintergrund ist transparent. Möglicherweise wird das von der UI je nach FHEM-Style umgewandelt, bevor du es nutzt? Mein Workaround sieht derzeit so aus, dass ich eine Grafik (png) über meinen Hintergrund lege - mit deiner Änderung, dass die Farbe, falls nicht angegeben, nicht geändert wird, sollte es passen - muss ich jedoch noch testen.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 11 Februar 2020, 13:33:18
Was passiert denn, wenn Du statt über FHEM das ESP32 über den Browser ansprichst? Blockiert das ESP32 dann auch? Falls nicht, wäre es gut, wenn Du mal mit dem Browser Entwicklungswerkzeug mir den Mitschnitt der Kommunikation für diesen Fall (ESP32 <-> Browser direkt) hier postest.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 11 Februar 2020, 14:14:29
Zitat von: eki am 11 Februar 2020, 13:33:18
Was passiert denn, wenn Du statt über FHEM das ESP32 über den Browser ansprichst? Blockiert das ESP32 dann auch?
Nein, da geht es. Erst, wenn ich zwischendurch per FHEM uploade, geht die ESP32-Webseite auch nicht mehr.

ZitatFalls nicht, wäre es gut, wenn Du mal mit dem Browser Entwicklungswerkzeug mir den Mitschnitt der Kommunikation für diesen Fall (ESP32 <-> Browser direkt) hier postest.
Die XHR/AJAX-Kommunikation sehe ich nicht direkt im Mitschnitt (FF), ich hoffe, er bringt dir dennoch etwas, siehe Anhang.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 11 Februar 2020, 14:44:03
Da drin ist leider auch nicht mehr zu sehen als das, was ich schon kenne. Die letzte Kommunikation ist das SHOW_ von der Browser Seite, danach sehe ich nichts mehr.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 11 Februar 2020, 17:00:12
Zitat von: eki am 11 Februar 2020, 14:44:03
Da drin ist leider auch nicht mehr zu sehen als das, was ich schon kenne. Die letzte Kommunikation ist das SHOW_ von der Browser Seite, danach sehe ich nichts mehr.

Ich hab das noch einmal verglichen: die Webseite verwendet scheinbar ein synchrones SHOW, das FHEM-Modul ein asynchrones mit einem (für mein waveshare-Modul) zu kurzem Timeout - der Client ist somit gar nicht mehr da, um das "Ok!" vom Server zu empfangen. Ich habe es testweise auf 35s gestellt - damit geht es (wenn ich jetzt mit den Softwareständen nicht durcheinander gekommen bin).

edit
Die Timeout-Änderung allein reicht nicht, der ESP ist über Nacht hängen geblieben.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 12 Februar 2020, 08:25:49
Ich könnte den HTTP timeout als parameter einbauen, dann kann man das anpassen. Siehst Du das als Lösung des Problems?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 12 Februar 2020, 08:33:40
Zitat von: eki am 12 Februar 2020, 08:25:49
Ich könnte den HTTP timeout als parameter einbauen, dann kann man das anpassen. Siehst Du das als Lösung des Problems?

Bin mir nicht sicher, ob das wirklich das Problem löst. Ich würde daher noch mal die Original-waveshare-Firmware und den letzten Modulstand+Timeoutänderung aufspielen und tagsüber laufen lassen.
Wird bei der Ermittlung, ob noch ein Upload läuft das SHOW mitgezählt oder ist das nur das LOAD?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 12 Februar 2020, 08:39:08
Aktuell wird nach dem Abschicken des SHOW_ der nächste Upload wieder freigegeben. Ich könnte natürlich auf die Antwort auf das SCHOW_ warten (natürlich auch hier mit Timeout) und erst dann wieder freigeben.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 12 Februar 2020, 08:49:16
Zitat von: eki am 12 Februar 2020, 08:39:08
Aktuell wird nach dem Abschicken des SHOW_ der nächste Upload wieder freigegeben. Ich könnte natürlich auf die Antwort auf das SCHOW_ warten (natürlich auch hier mit Timeout) und erst dann wieder freigeben.

IMO würde das helfen, da die Serverloop erst verlassen wird, wenn das SHOW "durch" ist. Es würde ggf. auch das Problem lösen, dass die Anzeige nicht sauber ist (wenn während des SHOW bereits neue Daten angeliefert werden).

Das erhöhte Timeout habe ich eben noch mal mit der Orig-Firmware manuell getestet - das sieht soweit gut aus. Ich konnte ein paar Uploads hintereinander absetzen und lt. ESP-Konsole wird die Serverloop auch immer verlassen  :D
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 12 Februar 2020, 09:39:21
Dann mal mit dieser Version testen (würde ich bei positivem Feedback dann auch im ersten Beitrag hier mal "freigeben".
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 12 Februar 2020, 09:54:13
Zitat von: eki am 12 Februar 2020, 09:39:21
Dann mal mit dieser Version testen (würde ich bei positivem Feedback dann auch im ersten Beitrag hier mal "freigeben".

Sieht sehr gut aus, gute Arbeit! :)
Durchgeführte Tests:
-mehrere Uploads hintereinander: ok, Server bleibt nicht mehr stehen (timeout-Attr auf 50s für das 7.5 gestellt)
-Upload, während noch ein anderer Upload stattfindet: ok, es wird die Meldung "Upload of image currently running, try again later" ausgegeben und der aktuelle Upload wird nicht gestört - erfolgt der Upload automatisch oder wird dieser abgebrochen?
-Konvertierung: ich erhalte u.a. Warnungen, liegt das ggf. an meiner Konfiguration?
PERL WARNING: Use of uninitialized value $linegap in int at ./FHEM/89_ESPEInk.pm line 1124.
PERL WARNING: Use of uninitialized value $blockwidth in int at ./FHEM/89_ESPEInk.pm line 1125.
PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 1137.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 12 Februar 2020, 10:06:30
Gut,
Ein upload wird, wenn gerade schon einer läuft, nicht automatisch angestoßen (könnte man natürlich auch noch einbauen).
Die Warnungen sind meiner Schlamperei geschuldet (ich muss mal alle nicht im Code initialisierten Variablen suchen  :-[), sind aber nicht kritisch,
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 12 Februar 2020, 12:30:05
Der ESP32-Webserver scheint sich auch zu verhaspeln, wenn unmittelbar nach einem Upload ein neuer Upload kommt. In dem Fall liegen nur 3ms dazwischen:

[12:07:48:022] <<<LOAD>>>␍␊
[12:07:48:062] <<<␍␊
[12:08:21:465] SHOW>>>␍␊
[12:08:21:468] <<<␍␊
[12:08:21:469] EPD␍␊
[12:08:21:469] EPD 7.5 inch b


Könnte da bei einem erneuten Update eine Verzögerung (1s?) helfen?

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 12 Februar 2020, 22:27:44
Hallo zusammen,

heute etwas Zeit gefunden zum probieren.

Ich konnte mit ekis letzten Update des Moduls nun tatsächlich ein Bild an den ESP32 schicken!

@Icinger
Aber ersteinmal die alte IDE 1.8.10 löschen müssen. Gab irgend welches gemecker wegen doppelten Wifi.h.
Habt ihr die Fehlermeldungen auch?
In file included from sketch\srvr.h:19:0,

                 from E:\Daten\CFG\ePaper_ESP32\Loader_esp32wf\Loader_esp32wf.ino:24:

sketch\epd.h:35:0: warning: "LOW" redefined

#define LOW             0

^

In file included from E:\Tools\Arduino_1_8_11\hardware\espressif\esp32\cores\esp32/esp32-hal.h:53:0,

                 from E:\Tools\Arduino_1_8_11\hardware\espressif\esp32\cores\esp32/Arduino.h:35,

                 from sketch\Loader_esp32wf.ino.cpp:1:

E:\Tools\Arduino_1_8_11\hardware\espressif\esp32\cores\esp32/esp32-hal-gpio.h:29:0: note: this is the location of the previous definition

#define LOW               0x0

^

In file included from sketch\srvr.h:19:0,

                 from E:\Daten\CFG\ePaper_ESP32\Loader_esp32wf\Loader_esp32wf.ino:24:

sketch\epd.h:36:0: warning: "HIGH" redefined

#define HIGH            1

^

In file included from E:\Tools\Arduino_1_8_11\hardware\espressif\esp32\cores\esp32/esp32-hal.h:53:0,

                 from E:\Tools\Arduino_1_8_11\hardware\espressif\esp32\cores\esp32/Arduino.h:35,

                 from sketch\Loader_esp32wf.ino.cpp:1:

E:\Tools\Arduino_1_8_11\hardware\espressif\esp32\cores\esp32/esp32-hal-gpio.h:30:0: note: this is the location of the previous definition

#define HIGH              0x1

^

In file included from sketch\srvr.h:19:0,

                 from E:\Daten\CFG\ePaper_ESP32\Loader_esp32wf\Loader_esp32wf.ino:24:

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

};

^

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

sketch\epd.h:532:1: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

In file included from E:\Daten\CFG\ePaper_ESP32\Loader_esp32wf\Loader_esp32wf.ino:24:0:

sketch\srvr.h: In function 'bool Srvr__loop()':

sketch\srvr.h:141:65: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

             if (Buff__signature(Buff__bufInd - 11, "/styles.css"))

                                                                 ^

sketch\srvr.h:142:58: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

                 return Srvr__file(client, 0, "styles.css");

                                                          ^

sketch\srvr.h:144:65: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

             if (Buff__signature(Buff__bufInd - 11, "/scriptA.js"))

                                                                 ^

sketch\srvr.h:145:58: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

                 return Srvr__file(client, 1, "scriptA.js");

                                                          ^

sketch\srvr.h:147:65: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

             if (Buff__signature(Buff__bufInd - 11, "/scriptB.js"))

                                                                 ^

sketch\srvr.h:148:58: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

                 return Srvr__file(client, 2, "scriptB.js");

                                                          ^

sketch\srvr.h:150:65: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

             if (Buff__signature(Buff__bufInd - 11, "/scriptC.js"))

                                                                 ^

sketch\srvr.h:151:58: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

                 return Srvr__file(client, 3, "scriptC.js");

                                                          ^

sketch\srvr.h:153:65: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

             if (Buff__signature(Buff__bufInd - 11, "/scriptD.js"))

                                                                 ^

sketch\srvr.h:154:58: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

                 return Srvr__file(client, 4, "scriptD.js");

                                                          ^

sketch\srvr.h:164:56: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

             if (Buff__signature(Buff__bufInd - 4, "EPD"))

                                                        ^

sketch\srvr.h:180:57: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

             if (Buff__signature(Buff__bufInd - 4, "LOAD"))

                                                         ^

sketch\srvr.h:193:57: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

             if (Buff__signature(Buff__bufInd - 4, "NEXT"))

                                                         ^

sketch\srvr.h:220:57: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

             if (Buff__signature(Buff__bufInd - 4, "SHOW"))

                                                         ^

Der Sketch verwendet 764896 Bytes (58%) des Programmspeicherplatzes. Das Maximum sind 1310720 Bytes.
Globale Variablen verwenden 42868 Bytes (13%) des dynamischen Speichers, 284812 Bytes für lokale Variablen verbleiben. Das Maximum sind 327680 Bytes.


Welche MQTT-Libs werden den von Dir vorausgesetzt? Es scheint da ja eine grosse Auswahl an gleichen benannten Libs zu geben.
Das ist blöd wenn man nicht weis welche das sein soll.

Kann man den DeepSleep einfach zum Testen ausschalten? Hab das nur kurz testen können.

MQTT2-Server mit drei Tasmota und Aquara-Sensoren hab ich hier laufen, aber mehr noch nicht gemacht;)

Danke schon mal, scheint ja stabiler zu werden.

Nachtrag: Der ESP32 findet nach dem Aufwecken den AP nicht. Erst wenn ich den EN-Taster drücke gibt es eine Verbindung. Das Problem haben meine 9 ESP8266 nicht.

Gruss Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 13 Februar 2020, 18:37:29
@Icinger

Benötigt der von dir verwendete Deepsleep ein GPIO um aufzuwecken?
Wie ich im Internet gelesen habe gibt es drei Möglichkeiten.

Gruß Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Icinger am 13 Februar 2020, 20:33:30
@Maista: Nein, wird kein GPIO benötigt, der ESP32 hat eine interne RTC.

lg, Stefan
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 14 Februar 2020, 09:06:47
Zitat von: Maista am 12 Februar 2020, 22:27:44
Aber ersteinmal die alte IDE 1.8.10 löschen müssen. Gab irgend welches gemecker wegen doppelten Wifi.h.
Habt ihr die Fehlermeldungen auch?
Bei mir kompiliert der aktuelle waveshare-Code ohne Probleme. Der Code von Stefan scheint zwar eine ältere Version zu sein, sollte aber auch nicht zu diesen Problemen führen. Die Fehlermeldungen deuten eher darauf hin, dass etwas mit deinen Include-Pfaden nicht passt (doppelt, einmal in Tools und einmal lokal im Projekt).

ZitatWelche MQTT-Libs werden den von Dir vorausgesetzt? Es scheint da ja eine grosse Auswahl an gleichen benannten Libs zu geben.
Das scheint mir, lt. eingebundenem Header der PubSubClient zu sein.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: pepe_11 am 14 Februar 2020, 11:19:01
Hallo,

ich verfolge eure Diskussion und die Lösung seit einiger Zeit. ich konnte die ESP32 Version erfolgreich kompelieren und mit dem Netzwerk verbinden. Webservice ist erreichbar und ich könnte die Images zum Display schicken,
Soweit so gut aber ich weiss nicht wie ich das Display mit dem ESP verbinden soll bzw. wie ich die Einstellungen konfigurieren soll , das Display arbeitet nicht. Ich gehe davon aus , dass ich ihm falsch verkabelt habe.. Ich habe ein ePaper 2.13 Shield im Einsatz -->https://www.wemos.cc/en/latest/d1_mini_shiled/epd_2_13.html?spm=a2g0o.detail.1000023.1.294d19b6ntvUpZ. Meine Test mit dem GxEPD_Example haben tadellos funktioniert, das Display arbeitet.
Kann mir einer von euch weiterhelfen? Vielleicht verstehe ich da etwas falsch und bin auf dem falschen Dampfer.

VG
Peter
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 14 Februar 2020, 12:03:06
Zitat von: pepe_11 am 14 Februar 2020, 11:19:01
Soweit so gut aber ich weiss nicht wie ich das Display mit dem ESP verbinden soll bzw. wie ich die Einstellungen konfigurieren soll , das Display arbeitet nicht. Ich gehe davon aus , dass ich ihm falsch verkabelt habe.. Ich habe ein ePaper 2.13 Shield im Einsatz -->https://www.wemos.cc/en/latest/d1_mini_shiled/epd_2_13.html?spm=a2g0o.detail.1000023.1.294d19b6ntvUpZ.

Der waveshare-ESP32-Treiber verwendet die u.a. Pins (epd.h):
/* SPI pin definition --------------------------------------------------------*/
#define PIN_SPI_SCK  13
#define PIN_SPI_DIN  14
#define PIN_SPI_CS   15
#define PIN_SPI_BUSY 25//19
#define PIN_SPI_RST  26//21
#define PIN_SPI_DC   27//22


*edit* Noch ein Hinweis: es gibt verschiedene ESP32-Ausführungen, mit unterschiedlicher Pin-Anzahl - hier muss man aufpassen, dass man die korrekte Zuordnung vornimmt.

hth
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: pepe_11 am 14 Februar 2020, 13:08:12
Zitat von: Jendaw am 14 Februar 2020, 12:03:06
Der waveshare-ESP32-Treiber verwendet die u.a. Pins (epd.h):
/* SPI pin definition --------------------------------------------------------*/
#define PIN_SPI_SCK  13
#define PIN_SPI_DIN  14
#define PIN_SPI_CS   15
#define PIN_SPI_BUSY 25//19
#define PIN_SPI_RST  26//21
#define PIN_SPI_DC   27//22


*edit* Noch ein Hinweis: es gibt verschiedene ESP32-Ausführungen, mit unterschiedlicher Pin-Anzahl - hier muss man aufpassen, dass man die korrekte Zuordnung vornimmt.

hth
Danke für die schnelle Antwort. Großartig
Wie es aussieht habe ich richtig gedacht. Ich habe die Pins entsprechend geschaltet SCK-->G14 usw.). Was mir nicht klar ist, was haben die zwei shlashes zu bedeuten? (#define PIN_SPI_RST  26//21) entweder oder?
Mit den verschiedenen Ausführung der ESP's habe ich es nicht berücksichtigt. Ich habe einen von AZDelivery ESP32 NodeMCU (https://www.amazon.de/dp/B071P98VTG/ref=cm_sw_r_em_apa_i_EXOrEbP293NJD)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 14 Februar 2020, 13:11:15
Zitat von: pepe_11 am 14 Februar 2020, 13:08:12
Was mir nicht klar ist, was haben die zwei shlashes zu bedeuten? (#define PIN_SPI_RST  26//21) entweder oder?
Der Doppelslash ist nur eine Kommentareinleitung im Quelltext, vermutlich hat der waveshare-Programmierer den Code auch für andere Module (ESP9266?) benutzt. Alles was in der Zeile dahinter steht, ist irrelevant.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: pepe_11 am 14 Februar 2020, 13:37:29
Alles klar, danke dir. Vielleicht habe ich mich bei der Verkabelung irgendwo vertan.

VG
Peter
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 14 Februar 2020, 19:17:28
@Jendaw

Danke für die Info. Muss ich mir am Samstag anschauen.
Als ich die 1.8.10 installiert hatte kamen die Doppel Meldungen aber eindeutiger.

Und bei euch kommen gar keine Meldungen ? :-[
Vielleicht muss ich nur das Verzeichnis im User löschen.
Da schreibt die IDE auch Zeugs hin.

Bis dann

Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: pepe_11 am 16 Februar 2020, 14:17:18
Zitat von: pepe_11 am 14 Februar 2020, 13:37:29
Alles klar, danke dir. Vielleicht habe ich mich bei der Verkabelung irgendwo vertan.

VG
Peter

Hi,

Nach dem ich die PIN Belegung geändert habe funktioniert mein Display. :)

@Jendaw: Danke dir nochmal.

Ich habe jetzt allerdings ein anderes Problem. Ich habe im Gimp eine png Datei mit 122x250 Pixel erstellt. Die Vorlage hat nur einen weißen Hintergrund.
Wenn das espink Modul diese überträgt, zeigt das Display 6 Schwarze Balken bzw. Striche--> Siehe Bild. Die Feuchtigkeit mit Text, das ich mitsende wird angezeigt. Was mache ich hier falsch? Ich vermute, dass die png Vorlage das Problem verursacht.

VG
Peter


Internals:
   BOARDTYPE  ESP8266
   COLORMODE  monochrome
   CONVERTMODE level
   DEF        /opt/fhem/images/122x250.png 192.168.8.41 monochrome level
   DEVICETYPE 1.54inch_e-Paper_Module
   FUUID      5e483f6c-f33f-0de6-0759-eaabdf747c202e1d
   INTERVAL   level
   NAME       myEInk
   NOTIFYDEV  global,Sensor_Aussen,myEInk
   NR         863
   NTFY_ORDER 50-myEInk
   PICTUREFILE /opt/fhem/images/122x250.png
   STATE      Successfully uploaded image to device
   SUBFOLDER  images
   TYPE       ESPEInk
   URL       
   OLDREADINGS:
   READINGS:
     2020-02-16 13:35:00   1-angle         0
     2020-02-16 12:57:49   1-blockwidth    2
     2020-02-16 12:57:09   1-color         000000
     2020-02-16 12:57:08   1-def           addtext#Feuchte:#30#100#70#90#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
     2020-02-16 12:57:09   1-font          medium
     2020-02-16 12:57:08   1-isIcon        0
     2020-02-16 12:57:09   1-linegap       0
     2020-02-16 13:23:03   1-size          30
     2020-02-16 12:57:08   1-text          Feuchte:
     2020-02-16 13:50:08   1-x             50
     2020-02-16 13:19:02   1-y             90
     2020-02-16 13:36:48   2-angle         0
     2020-02-16 13:36:11   2-blockwidth    0
     2020-02-16 13:36:11   2-color         000000
     2020-02-16 13:36:11   2-def           textreading#Sensor_Aussen:humidity#2#55#300#90#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
     2020-02-16 13:36:11   2-font          medium
     2020-02-16 13:36:11   2-isIcon        0
     2020-02-16 13:36:11   2-linegap       0
     2020-02-16 13:36:11   2-size          300
     2020-02-16 13:57:58   2-text          62
     2020-02-16 13:36:11   2-trigger       Sensor_Aussen:humidity
     2020-02-16 13:49:05   2-x             103
     2020-02-16 13:50:40   2-y             85
     2020-02-16 13:36:11   deftexts        2
     2020-02-16 14:00:45   result_picture  <html><img src=/fhem/images/myEInk/result.png?dummy=724001.441024424></img><div>/fhem/images/myEInk/result.png</div></html>
     2020-02-16 14:00:40   source_picture  <html><img src=/fhem/images/myEInk/122x250.png?dummy=713277.999786399></img><div>/fhem/images/myEInk/122x250.png</div></html>
   helper:
Attributes:
   1-angle    0
   1-blockwidth 2
   1-size     30
   1-x        50
   1-y        90
   2-angle    0
   2-x        103
   2-y        85
   boardtype  ESP32
   colormode  monochrome
   convertmode level
   devicetype 2.13inch_e-Paper_HAT
   interval   30
   placement  top-left
   room       ESPEasy
   scale2fit  0
   url        192.168.8.41
   userattr   1-angle 1-blockwidth 1-color:colorpicker,RGB 1-font 1-linegap 1-size 1-text 1-trigger 1-x 1-y 2-angle 2-blockwidth 2-color:colorpicker,RGB 2-font 2-linegap 2-size 2-text 2-trigger 2-x 2-y
   verbose    1

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 16 Februar 2020, 16:02:19
letztes PM geladen, bei mir sehen die Icons unvollständig aus (siehe Bild).

und ich erhalte "Error uploading image to device, max retries (3) reached", verbose=4:
2020.02.16 15:49:44 3: einkDiplay01: sending HTTP request to http://10.0.0.130/EPD with data: eb
2020.02.16 15:49:48 3: einkDiplay01: problems with communication to device, trying once more (1 of 3 done)
2020.02.16 15:50:05 3: einkDiplay01: problems with communication to device, trying once more (2 of 3 done)
2020.02.16 15:50:06 3: einkDiplay01: problems with communication to device, trying once more (3 of 3 done)
2020.02.16 15:50:06 1: einkDiplay01: problems with communication to device, max retries (3) reached
2020.02.16 15:52:24 4: Start forked process to convert output picture
2020.02.16 15:52:24 1: PERL WARNING: Use of uninitialized value $linegap in int at ./FHEM/89_ESPEInk.pm line 1124.
2020.02.16 15:52:24 1: PERL WARNING: Use of uninitialized value $blockwidth in int at ./FHEM/89_ESPEInk.pm line 1125.
2020.02.16 15:52:24 1: PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 1137.
2020.02.16 15:52:24 1: PERL WARNING: Invalid conversion in sprintf: end of string at ./FHEM/89_ESPEInk.pm line 1145.
2020.02.16 15:52:25 1: PERL WARNING: Argument "FF1000" isn't numeric in division (/) at ./FHEM/89_ESPEInk.pm line 1134.
2020.02.16 15:52:25 1: PERL WARNING: Argument "FF1000" isn't numeric in int at ./FHEM/89_ESPEInk.pm line 1124.
2020.02.16 15:52:25 1: PERL WARNING: Argument "/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf" isn't numeric in int at ./FHEM/89_ESPEInk.pm line 1125.
2020.02.16 15:52:25 1: PERL WARNING: Argument "16.6 W" isn't numeric in sprintf at ./FHEM/89_ESPEInk.pm line 1145.
2020.02.16 15:52:25 4: File /opt/fhem/www/images/test_SWBalkenStrichLogo.png opened, sizes is 640 x 384
2020.02.16 15:52:42 4: Finished conversion in background
2020.02.16 15:52:51 3: einkDiplay01: sending HTTP request to http://10.0.0.130/EPD with data: eb
2020.02.16 15:53:05 3: einkDiplay01: problems with communication to device, trying once more (1 of 3 done)
2020.02.16 15:53:15 3: einkDiplay01: problems with communication to device, trying once more (2 of 3 done)
2020.02.16 15:53:25 3: einkDiplay01: problems with communication to device, trying once more (3 of 3 done)
2020.02.16 15:53:35 1: einkDiplay01: problems with communication to device, max retries (3) reached
2020.02.16 15:54:14 3: einkDiplay01: sending HTTP request to http://10.0.0.130/EPD with data: fb
2020.02.16 15:54:18 3: einkDiplay01: problems with communication to device, trying once more (1 of 3 done)
2020.02.16 15:54:28 3: einkDiplay01: problems with communication to device, trying once more (2 of 3 done)
2020.02.16 15:54:38 3: einkDiplay01: problems with communication to device, trying once more (3 of 3 done)
2020.02.16 15:54:48 1: einkDiplay01: problems with communication to device, max retries (3) reached
2020.02.16 15:55:22 3: einkDiplay01: sending HTTP request to http://10.0.0.130/EPD with data: fb
2020.02.16 15:55:26 3: einkDiplay01: problems with communication to device, trying once more (1 of 3 done)
2020.02.16 15:55:36 3: einkDiplay01: problems with communication to device, trying once more (2 of 3 done)
2020.02.16 15:55:46 3: einkDiplay01: problems with communication to device, trying once more (3 of 3 done)
2020.02.16 15:55:56 1: einkDiplay01: problems with communication to device, max retries (3) reached


altes PM vom 28.1.20 funktioniert (icons und upload).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 17 Februar 2020, 09:37:43
Kannst Du bitte mal mit folgender Version schauen, ob der Upload jetzt klappt. Bei den Icons ist das noch nicht perfekt. Aktuell habe ich es jetzt so gemacht: Wenn Du keine Farbe setzt, dann lässt die Konversion die Icons so wie sie sind. Falls eine Farbe gesetzt ist, wird die Farbe aller Icon Pixel, die Farbwerter größer 0 enthalten, auf den gegebenen Farbwert gesetzt (das funktioniert eigentlich nur sinnvoll für 2-farbige icons, ich habe aber noch keine bessere Lösung). Also schau mal, ob Du bei den Icons Farben ungleich '000000' gesetzt hast und korrigiere das.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Ridchi1980 am 20 Februar 2020, 17:31:32
Hallo,

ich hab ein 2.13 e-Paper mit ESP8266 und ich bekomm das bild nicht draufgeladen.
Es erscheint die Meldung: Error uploading image to device, max retries (3) reached

an welcher schraube muss ich drehen?

vg Ridchi
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 21 Februar 2020, 08:47:26
Zitat von: Ridchi1980 am 20 Februar 2020, 17:31:32
ich hab ein 2.13 e-Paper mit ESP8266 und ich bekomm das bild nicht draufgeladen.
Es erscheint die Meldung: Error uploading image to device, max retries (3) reached

Nutzt du die Original-waveshare-Firmware? Wie sieht das FHEM-Log für den Vorgang aus? Klappt der direkte Upload, wenn du den ESP8266 im Browser aufrufst?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 21 Februar 2020, 10:00:23
Zitat von: Ridchi1980 am 20 Februar 2020, 17:31:32
Hallo,

ich hab ein 2.13 e-Paper mit ESP8266 und ich bekomm das bild nicht draufgeladen.
Es erscheint die Meldung: Error uploading image to device, max retries (3) reached

an welcher schraube muss ich drehen?

vg Ridchi

Um dazu etwas sagen zu können, bräuchte ich mehr Infos (FHEM device listing, Logeinträge mit verbose 4).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 21 Februar 2020, 15:51:37
Zitat von: eki am 17 Februar 2020, 09:37:43
Kannst Du bitte mal mit folgender Version schauen, ob der Upload jetzt klappt. Bei den Icons ist das noch nicht perfekt. Aktuell habe ich es jetzt so gemacht: Wenn Du keine Farbe setzt, dann lässt die Konversion die Icons so wie sie sind. Falls eine Farbe gesetzt ist, wird die Farbe aller Icon Pixel, die Farbwerter größer 0 enthalten, auf den gegebenen Farbwert gesetzt (das funktioniert eigentlich nur sinnvoll für 2-farbige icons, ich habe aber noch keine bessere Lösung). Also schau mal, ob Du bei den Icons Farben ungleich '000000' gesetzt hast und korrigiere das.

Da war für ESP8266 Boards leider noch ein Fehler enthalten. Bitte mit der hier angehängten Version testen, und melden, fals OK.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Ridchi1980 am 21 Februar 2020, 16:22:24
Zitat von: eki am 21 Februar 2020, 10:00:23
Um dazu etwas sagen zu können, bräuchte ich mehr Infos (FHEM device listing, Logeinträge mit verbose 4).
2020.02.21 16:17:22 4: Start forked process to convert output picture
2020.02.21 16:17:22 4: File /opt/fhem/www/images/2in13bc-b.png opened, sizes is 104 x 212
2020.02.21 16:17:23 4: Finished conversion in background doing automatic upload as requested
2020.02.21 16:17:23 3: Diplay01: sending HTTP request to http:///EPD with data: fa
2020.02.21 16:17:23 3: Diplay01: problems with communication to device, trying once more (1 of 3 done)
2020.02.21 16:17:23 3: Diplay01: problems with communication to device, trying once more (2 of 3 done)
2020.02.21 16:17:23 3: Diplay01: problems with communication to device, trying once more (3 of 3 done)
2020.02.21 16:17:23 1: Diplay01: problems with communication to device, max retries (3) reached
2020.02.21 16:17:33 3: Diplay01: sending HTTP request to http:///EPD with data: fa
2020.02.21 16:17:33 3: Diplay01: problems with communication to device, trying once more (1 of 3 done)
2020.02.21 16:17:33 3: Diplay01: problems with communication to device, trying once more (2 of 3 done)
2020.02.21 16:17:33 3: Diplay01: problems with communication to device, trying once more (3 of 3 done)
2020.02.21 16:17:33 1: Diplay01: problems with communication to device, max retries (3) reached

das ist der log...

oder hab ich irgendwas vergessen? Oder fehlen mir noch irgend welche Packete?

Ridchi
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 21 Februar 2020, 16:47:08
Du hast keine URL angegeben (IP Adresse des ESP8266).

So etwas wie:

attr Diplay01 url 192.168.178.xxx
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Ridchi1980 am 21 Februar 2020, 17:14:30
was für IP adresse? das Modul steckt doch ganz normal auf der Raspberry Pinleiste und wird über SPI angesprochen

https://www.waveshare.com/wiki/2.13inch_e-Paper_HAT_(D) (https://www.waveshare.com/wiki/2.13inch_e-Paper_HAT_(D))
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 21 Februar 2020, 20:23:05
Das Modul heißt ja ESPEink.
Und nicht HATEink.

Gruß Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 21 Februar 2020, 21:29:35
Zitat von: Ridchi1980 am 21 Februar 2020, 17:14:30
was für IP adresse? das Modul steckt doch ganz normal auf der Raspberry Pinleiste und wird über SPI angesprochen

https://www.waveshare.com/wiki/2.13inch_e-Paper_HAT_(D) (https://www.waveshare.com/wiki/2.13inch_e-Paper_HAT_(D))

Das Modul unterstützt leider nur die Anbindung der EInk Displays über ein ESP Modul. Das ESP ist ein Arduino kompatibler Microcontroller mit WLAN (kostet so um die 6 Euro). Wenn man auch direkt am Pi verbundene Displays unterstützen wollte, müsste man die komplette Kommunikation mit dem Device anpassen (neu machen). Ich kann mir mal überlegen, ob das machbar ist, kann aber nichts versprechen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Ridchi1980 am 22 Februar 2020, 09:20:03
ich musste zum betreibern aber auch den ESP Treiber installieren... von daher dachte ich das wär das gleiche.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 22 Februar 2020, 14:47:42
Zitat von: Ridchi1980 am 22 Februar 2020, 09:20:03
ich musste zum betreibern aber auch den ESP Treiber installieren... von daher dachte ich das wär das gleiche.

Es gibt mehrere Varianten, das Display zu betreiben:
* direkt mit einem HAT (siehe https://www.waveshare.com/wiki/E-Paper_Driver_HAT)
* WLAN via ESP8266/ESP32
* Bluetooth via ESP32

Für die HAT-Variante benötigt man keinen ESP, da die Verbindung direkt über den RPi abgewickelt wird. Dort sollten nur die Bins/Libs für WiringPi, bcm2835 und Python benötigt werden.
Ich selbst habe zwar auch die HAT-Platine, diese habe ich jedoch über einen (normalen, d.h. kein "waveshare driver board") ESP32 angeschlossen, anstatt diese auf den PI zu stecken (der wo anders wohnt als das Display).

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: pepe_11 am 22 Februar 2020, 15:51:41
Zitat von: pepe_11 am 16 Februar 2020, 14:17:18
Hi,

Nach dem ich die PIN Belegung geändert habe funktioniert mein Display. :)

@Jendaw: Danke dir nochmal.

Ich habe jetzt allerdings ein anderes Problem. Ich habe im Gimp eine png Datei mit 122x250 Pixel erstellt. Die Vorlage hat nur einen weißen Hintergrund.
Wenn das espink Modul diese überträgt, zeigt das Display 6 Schwarze Balken bzw. Striche--> Siehe Bild. Die Feuchtigkeit mit Text, das ich mitsende wird angezeigt. Was mache ich hier falsch? Ich vermute, dass die png Vorlage das Problem verursacht.

VG
Peter


Internals:
   BOARDTYPE  ESP8266
   COLORMODE  monochrome
   CONVERTMODE level
   DEF        /opt/fhem/images/122x250.png 192.168.8.41 monochrome level
   DEVICETYPE 1.54inch_e-Paper_Module
   FUUID      5e483f6c-f33f-0de6-0759-eaabdf747c202e1d
   INTERVAL   level
   NAME       myEInk
   NOTIFYDEV  global,Sensor_Aussen,myEInk
   NR         863
   NTFY_ORDER 50-myEInk
   PICTUREFILE /opt/fhem/images/122x250.png
   STATE      Successfully uploaded image to device
   SUBFOLDER  images
   TYPE       ESPEInk
   URL       
   OLDREADINGS:
   READINGS:
     2020-02-16 13:35:00   1-angle         0
     2020-02-16 12:57:49   1-blockwidth    2
     2020-02-16 12:57:09   1-color         000000
     2020-02-16 12:57:08   1-def           addtext#Feuchte:#30#100#70#90#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
     2020-02-16 12:57:09   1-font          medium
     2020-02-16 12:57:08   1-isIcon        0
     2020-02-16 12:57:09   1-linegap       0
     2020-02-16 13:23:03   1-size          30
     2020-02-16 12:57:08   1-text          Feuchte:
     2020-02-16 13:50:08   1-x             50
     2020-02-16 13:19:02   1-y             90
     2020-02-16 13:36:48   2-angle         0
     2020-02-16 13:36:11   2-blockwidth    0
     2020-02-16 13:36:11   2-color         000000
     2020-02-16 13:36:11   2-def           textreading#Sensor_Aussen:humidity#2#55#300#90#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
     2020-02-16 13:36:11   2-font          medium
     2020-02-16 13:36:11   2-isIcon        0
     2020-02-16 13:36:11   2-linegap       0
     2020-02-16 13:36:11   2-size          300
     2020-02-16 13:57:58   2-text          62
     2020-02-16 13:36:11   2-trigger       Sensor_Aussen:humidity
     2020-02-16 13:49:05   2-x             103
     2020-02-16 13:50:40   2-y             85
     2020-02-16 13:36:11   deftexts        2
     2020-02-16 14:00:45   result_picture  <html><img src=/fhem/images/myEInk/result.png?dummy=724001.441024424></img><div>/fhem/images/myEInk/result.png</div></html>
     2020-02-16 14:00:40   source_picture  <html><img src=/fhem/images/myEInk/122x250.png?dummy=713277.999786399></img><div>/fhem/images/myEInk/122x250.png</div></html>
   helper:
Attributes:
   1-angle    0
   1-blockwidth 2
   1-size     30
   1-x        50
   1-y        90
   2-angle    0
   2-x        103
   2-y        85
   boardtype  ESP32
   colormode  monochrome
   convertmode level
   devicetype 2.13inch_e-Paper_HAT
   interval   30
   placement  top-left
   room       ESPEasy
   scale2fit  0
   url        192.168.8.41
   userattr   1-angle 1-blockwidth 1-color:colorpicker,RGB 1-font 1-linegap 1-size 1-text 1-trigger 1-x 1-y 2-angle 2-blockwidth 2-color:colorpicker,RGB 2-font 2-linegap 2-size 2-text 2-trigger 2-x 2-y
   verbose    1


Hallo zusammen,

Kann mir jemand einen Tip geben, warum ich diese komische Balken im Display habe? Es ist noch zu ergänzen, dass die Bilder die ich direkt über den Webserver hochlade, einwandfrei dargestellt werden (egal welche Auflösung).
Ich bin kein Entwickler aber ich könnte mir vorstellen, dass der ESPEInk Modul die LibRSVG Bibliothek zum konvertieren der Bilder in eine Vector Grafik nutzt.
Ich nutze den ESP32-Code vom Icinger, der uns den freundlicherweise zur Verfügung gestellt hat. Ich finde die ESPEInk Lösung scharmant und hätte gerne das in Action gesehen aber ich komme leider jetzt nicht weiter. :(

Gruß
Peter
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 23 Februar 2020, 09:08:23
An der libSVG wird es wohl nicht liegen, da in Deinen gepusteten Bildern der FHEM Anzeige ja alles OK aussieht und nur dort diese lib genutzt wird.
Da muss irgendwie etwas bei der Übertragung zum Device schief gehen. Kannst Du mal posten was das Log bei verbose 5 ausgibt.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: pepe_11 am 23 Februar 2020, 17:27:12
Zitat von: eki am 23 Februar 2020, 09:08:23
An der libSVG wird es wohl nicht liegen, da in Deinen gepusteten Bildern der FHEM Anzeige ja alles OK aussieht und nur dort diese lib genutzt wird.
Da muss irgendwie etwas bei der Übertragung zum Device schief gehen. Kannst Du mal posten was das Log bei verbose 5 ausgibt.

Hi,

hier das Log in Verbose 5. Sieht für mich wunderbar aus.


2020-02-23_17:20:36 myEInk 1-trigger: Sensor_Aussen:humidity
2020-02-23_17:20:36 myEInk 1-text: 87
2020-02-23_17:20:36 myEInk 1-isIcon: 0
2020-02-23_17:20:36 myEInk 1-def: textreading#Sensor_Aussen:humidity#100#50#5#90#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
2020-02-23_17:20:36 myEInk 1-x: 100
2020-02-23_17:20:36 myEInk 1-y: 50
2020-02-23_17:20:36 myEInk 1-size: 5
2020-02-23_17:20:36 myEInk 1-angle: 90
2020-02-23_17:20:36 myEInk 1-color: 000000
2020-02-23_17:20:36 myEInk 1-font: medium
2020-02-23_17:20:36 myEInk 1-linegap: 0
2020-02-23_17:20:36 myEInk 1-blockwidth: 0
2020-02-23_17:20:47 myEInk convert
2020-02-23_17:20:48 myEInk source_picture: <html><img src=/fhem/images/myEInk/122x250.png?dummy=73652.5993661772></img><div>/fhem/images/myEInk/122x250.png</div></html>
2020-02-23_17:20:53 myEInk result_picture: <html><img src=/fhem/images/myEInk/result.png?dummy=73652.5993661772></img><div>/fhem/images/myEInk/result.png</div></html>
2020-02-23_17:21:10 myEInk upload
2020-02-23_17:21:19 myEInk 1-text: 86


hier das Listing des Devices
Internals:
   BOARDTYPE  ESP32
   COLORMODE  monochrome
   CONVERTMODE dithering
   DEF        /opt/fhem/images/122x250.png 192.168.8.41 monochrome dithering
   DEVICETYPE 2.13inch_e-Paper_HAT
   FUUID      5e483f6c-f33f-0de6-0759-eaabdf747c202e1d
   INTERVAL   1800
   NAME       myEInk
   NOTIFYDEV  global,Sensor_Aussen,myEInk
   NR         854
   NTFY_ORDER 50-myEInk
   PICTUREFILE /opt/fhem/images/122x250.png
   STATE      Successfully uploaded image to device
   SUBFOLDER  images
   TYPE       ESPEInk
   URL        192.168.8.41
   OLDREADINGS:
   READINGS:
     2020-02-23 17:20:36   1-angle         90
     2020-02-23 17:20:36   1-blockwidth    0
     2020-02-23 17:20:36   1-color         000000
     2020-02-23 17:20:36   1-def           textreading#Sensor_Aussen:humidity#100#50#5#90#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf\
     2020-02-23 17:20:36   1-font          medium
     2020-02-23 17:20:36   1-isIcon        0
     2020-02-23 17:20:36   1-linegap       0
     2020-02-23 17:20:36   1-size          5
     2020-02-23 17:21:54   1-text          86
     2020-02-23 17:20:36   1-trigger       Sensor_Aussen:humidity
     2020-02-23 17:20:36   1-x             100
     2020-02-23 17:20:36   1-y             50
     2020-02-23 17:20:36   deftexts        1
     2020-02-23 17:20:53   result_picture  <html><img src=/fhem/images/myEInk/result.png?dummy=73652.5993661772></img><div>/fhem/images/myEInk/result.png</div></html>
     2020-02-23 17:06:19   source_picture  <html><img src=/fhem/images/myEInk/122x250.png?dummy=915638.801041968></img><div>/fhem/images/myEInk/122x250.png</div></html>
   helper:
Attributes:
   boardtype  ESP32
   colormode  monochrome
   convertmode dithering
   devicetype 2.13inch_e-Paper_HAT
   interval   1800
   room       ESPEasy
   url        192.168.8.41
   userattr   1-angle 1-blockwidth 1-color:colorpicker,RGB 1-font 1-linegap 1-size 1-text 1-trigger 1-x 1-y


VG
Peter
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 24 Februar 2020, 08:44:18
Ich brauche nicht das Log des Devices sondern das von FHEM.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: pepe_11 am 24 Februar 2020, 11:22:40
Zitat von: eki am 24 Februar 2020, 08:44:18
Ich brauche nicht das Log des Devices sondern das von FHEM.

Hi Eki,

alles klar. Habe  nach ESPEINK gefiltert, da das Fhem.log in verbose 5 sehr mächtig ist. Anbei die Datei.

Gruß
Peter

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 24 Februar 2020, 18:53:11
Hallo zusammen,

hier mal meine Info zum Thema ESP32, EInk-Display und der DeepSleep. An den 3V3 hängt seit Anfang ein 1000uF Elko.
Als Source habe ich das Packet vom Icinger verwendet.
Ich habe hier eine FB 6490 (OG) / AP (EG) und schon diverse ESP8266 mit Tasmota und ESPEasy am laufen.
Ein ESPEasy ist Akku-Betrieben und legt sich per DeepSleep schlafen.

Der ESP32 scheint hier aber eine Zicke zu sein. Wie man in diversen Foren lesen kann hat der seine Probleme nach dem Aufwachen.
Er will sich dann einfach nicht mit dem AP verbinden. Ich habe auch die letzten Wochenenden einige Vorschläge aus den Foren
versucht. Z.B. https://github.com/espressif/arduino-esp32/issues/2501 (https://github.com/espressif/arduino-esp32/issues/2501) .
Von WLAN reseten vor und nach dem DeepSleep. Auch habe ich alle Parameter beim WLAN-Begin mit übergeben, wie
Statische IP, DNS, Gateway und Kanal-Nummer. Erst seit ich die mit angebe gibt es auch keine Fehlermeldungen beim compilieren ?!
Immer wenn ich dachte nun läuft die Gurke und ich schreibe das hier, kam Murphy um die Ecke und dreht mir eine Nase.

Dann will sich der ESP32 nicht mehr mit dem AP verbinden
ZitatReason: 202 - AUTH_FAIL
oder aber er hängt nach dem Start und musste geresettet werden  ::) >:(

Das Modul von eki funktioniert hingegen ohne Probleme.

Ich wollte das ganze Energie-Sparend betreiben, was bei einem EInk-Display ja auch Sinn machen würde.
Wenn meine Motivation nicht zu sehr leidet werde ich mir noch ein ESP8266 mit Stecker für die EInk bestellen.
Eventl. funktioniert der besser mit DeepSleep und der FB.

Gruss Gerd

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 25 Februar 2020, 15:24:35
Zitat von: eki am 21 Februar 2020, 15:51:37
Da war für ESP8266 Boards leider noch ein Fehler enthalten. Bitte mit der hier angehängten Version testen, und melden, fals OK.

Perfekt, herzlichen Dank wieder einmal !
Upload funktioniert.

Ich habe jetzt die Farbanweisung bei den Icons entfernt (zB: iconreading#cmyProPlanta:fc2_weather12Icon#60#235#50#0#) und es ist ist so wie ich mir es vorgestellt hatte  :)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 25 Februar 2020, 16:17:21
Beim weiter ausprobieren fällt mir auf:
Ein Upload zeigt mir wiederholt "Error uploading image to device, max retries (3) reached" an, jedoch wird er fehlerfrei ausgeführt.

verbose = 4
2020.02.25 16:12:31 4: Start forked process to convert output picture
2020.02.25 16:12:31 1: PERL WARNING: Invalid conversion in sprintf: end of string at ./FHEM/89_ESPEInk.pm line 1148.
2020.02.25 16:12:32 1: Number of colors used: 64
2020.02.25 16:12:32 1: Number of colors used: 64
2020.02.25 16:12:33 1: Number of colors used: 64
2020.02.25 16:12:33 1: PERL WARNING: Argument "FF1000" isn't numeric in division (/) at ./FHEM/89_ESPEInk.pm line 1134.
2020.02.25 16:12:33 1: PERL WARNING: Argument "FF1000" isn't numeric in int at ./FHEM/89_ESPEInk.pm line 1124.
2020.02.25 16:12:33 1: PERL WARNING: Argument "/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf" isn't numeric in int at ./FHEM/89_ESPEInk.pm line 1125.
2020.02.25 16:12:33 1: PERL WARNING: Argument "0.0 W" isn't numeric in sprintf at ./FHEM/89_ESPEInk.pm line 1148.
2020.02.25 16:12:33 4: File /opt/fhem/www/images/test_SWBalkenStrichLogo.png opened, sizes is 640 x 384
2020.02.25 16:12:50 4: Finished conversion in background
2020.02.25 16:12:55 3: einkDiplay01: sending HTTP request to http://10.0.0.130/EPD with data: eb
2020.02.25 16:13:11 3: einkDiplay01: problems with communication to device, trying once more (1 of 3 done)
2020.02.25 16:13:21 3: einkDiplay01: problems with communication to device, trying once more (2 of 3 done)
2020.02.25 16:13:31 3: einkDiplay01: problems with communication to device, trying once more (3 of 3 done)
2020.02.25 16:13:41 1: einkDiplay01: problems with communication to device, max retries (3) reached


edit: nur beim 7.5inch_e-Paper_HAT_(B)
edit2: 7.5inch_e-Paper_HAT [=SW] tritt das nicht auf
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 26 Februar 2020, 08:50:59
Zitat von: kkoeniger am 25 Februar 2020, 16:17:21
2020.02.25 16:12:31 4: Start forked process to convert output picture
2020.02.25 16:12:31 1: PERL WARNING: Invalid conversion in sprintf: end of string at ./FHEM/89_ESPEInk.pm line 1148.
2020.02.25 16:12:32 1: Number of colors used: 64
2020.02.25 16:12:32 1: Number of colors used: 64
2020.02.25 16:12:33 1: Number of colors used: 64
2020.02.25 16:12:33 1: PERL WARNING: Argument "FF1000" isn't numeric in division (/) at ./FHEM/89_ESPEInk.pm line 1134.
2020.02.25 16:12:33 1: PERL WARNING: Argument "FF1000" isn't numeric in int at ./FHEM/89_ESPEInk.pm line 1124.
2020.02.25 16:12:33 1: PERL WARNING: Argument "/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf" isn't numeric in int at ./FHEM/89_ESPEInk.pm line 1125.
2020.02.25 16:12:33 1: PERL WARNING: Argument "0.0 W" isn't numeric in sprintf at ./FHEM/89_ESPEInk.pm line 1148.


Unabhängig von der Übertragung: mir scheint, als wäre deine "definition" nicht iO. Es muss etwas verrutscht sein (Raute an der falschen Stelle, Font nicht gefunden etc), dann kommen solche Warnungen wie oben. In einem solchen Fall habe ich den Inhalt von "definition" in einen Texteditor geladen und dann nur die erste Hälfte konvertieren lassen. Falls da keine Warnung kam, dann die Hälfte vom Rest dazu genommen usw. ("sukzessive Approximation" :) ).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 26 Februar 2020, 09:01:39
Zitat von: kkoeniger am 25 Februar 2020, 16:17:21
Beim weiter ausprobieren fällt mir auf:
Ein Upload zeigt mir wiederholt "Error uploading image to device, max retries (3) reached" an, jedoch wird er fehlerfrei ausgeführt.

Ich habe mit einem 7.5inch_e-Paper_HAT_(B) keine (solchen) Probleme. Du nutzt doch auch ein ESP32, da wundert mich deine URL, die müsste imo so aussehen "http://10.0.0.130/EPDu_".

Ich nutze derzeit die unmodifizierte waveshare-Firmware vom 16.12.19 und die ESPEInk vom 21 Februar 2020 an einem "normalen" ESP32 (kein waveshare-Modul).
Mein Log:
4: Start forked process to convert output picture
1: PERL WARNING: Use of uninitialized value $usedcolors in concatenation (.) or string at ./FHEM/89_ESPEInk.pm line 1216.
1: Number of colors used:
1: Number of colors used:
1: Number of colors used:
1: Number of colors used:
1: Number of colors used:
1: Number of colors used:
1: Number of colors used:
1: Number of colors used:
1: Number of colors used:
1: Number of colors used:
1: Number of colors used:
1: Number of colors used:
1: Number of colors used:
1: Number of colors used:
1: Number of colors used:
4: File /opt/fhem/www/images/displayBackground.png opened, sizes is 640 x 384
4: Finished conversion in background
3: system_display: sending HTTP request to http://eink-panel/EPDu_ with data:


hth

edit: sehe grad, dass es eine neue waveshare-Firmware vom 19.02.20 gibt: https://www.waveshare.com/wiki/File:E-Paper_ESP32_Driver_Board_Code.7z
edit2: In den waveshare-Treiber sind nur Examples hinzugefügt worden, Änderungen am Treiber selbst gibt es keine.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 26 Februar 2020, 10:37:08
ZitatIch habe jetzt allerdings ein anderes Problem. Ich habe im Gimp eine png Datei mit 122x250 Pixel erstellt. Die Vorlage hat nur einen weißen Hintergrund.
Wenn das espink Modul diese überträgt, zeigt das Display 6 Schwarze Balken bzw. Striche--> Siehe Bild. Die Feuchtigkeit mit Text, das ich mitsende wird angezeigt. Was mache ich hier falsch? Ich vermute, dass die png Vorlage das Problem verursacht.

Kannst Du mal mit der angehängten Version schauen, ob das Problem damit beseitigt ist. Dein Display ist eines, das "Spezialbehandlung" im Code braucht, und da war noch ein Fehler.

Zitatedit: sehe grad, dass es eine neue waveshare-Firmware vom 19.02.20 gibt: https://www.waveshare.com/wiki/File:E-Paper_ESP32_Driver_Board_Code.7z
Zumindest auf die Kommunkation mit dem Board hat diese Version keine Änderungen und damit keine Relevanz für 89_ESPEInk.pm.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 26 Februar 2020, 11:20:50
Zitat von: Jendaw am 26 Februar 2020, 08:50:59
Unabhängig von der Übertragung: mir scheint, als wäre deine "definition" nicht iO. Es muss etwas verrutscht sein (Raute an der falschen Stelle, Font nicht gefunden etc), dann kommen solche Warnungen wie oben. In einem solchen Fall habe ich den Inhalt von "definition" in einen Texteditor geladen und dann nur die erste Hälfte konvertieren lassen. Falls da keine Warnung kam, dann die Hälfte vom Rest dazu genommen usw. ("sukzessive Approximation" :) ).

Danke. Ich hatte Kommentare mit "##" in der definition. Nach deren Entfernung sind diese Fehlermeldungen weg (hatten mich bisher nicht gestört).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 26 Februar 2020, 11:24:12
Zitat von: Jendaw am 26 Februar 2020, 09:01:39
Ich habe mit einem 7.5inch_e-Paper_HAT_(B) keine (solchen) Probleme. Du nutzt doch auch ein ESP32, da wundert mich deine URL, die müsste imo so aussehen "http://10.0.0.130/EPDu_".

...

Nein, ist nutze hier als board die ESP8266 von Waveshare. Der ESP32 wartet noch auf seinen Einsatz.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 26 Februar 2020, 16:32:53
Zitat von: kkoeniger am 26 Februar 2020, 11:20:50
Danke. Ich hatte Kommentare mit "##" in der definition. Nach deren Entfernung sind diese Fehlermeldungen weg (hatten mich bisher nicht gestört).
Das wäre auch von mir ein Wunschpunkt: Kommentare in der Definition. Und die Definition vllt. ganz in eine separate Datei auslagern, bei mir ist sie schon recht groß :)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 26 Februar 2020, 19:22:27
Kommentare kann ich vorsehen, Auslagerung in eine Datei wäre auch kein großes Ding, finde ich aber dann doch ein bisschen an den Grundprinzipien von FHEM vorbei?!
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: pepe_11 am 26 Februar 2020, 19:36:50
Zitat von: eki am 26 Februar 2020, 10:37:08
Kannst Du mal mit der angehängten Version schauen, ob das Problem damit beseitigt ist. Dein Display ist eines, das "Spezialbehandlung" im Code braucht, und da war noch ein Fehler.
Zumindest auf die Kommunkation mit dem Board hat diese Version keine Änderungen und damit keine Relevanz für 89_ESPEInk.pm.

Hallo Eki,

It works, bin begeistert! Saubere Arbeit. Wo kann ich deine Kaffe-Kasse befüllen? habe nur einen kleinen Test heute machen können aber es sieht wirklich gut aus--> siehe Bild.

Schöne Grüße
Peter
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 26 Februar 2020, 22:23:18
Zitat von: eki am 26 Februar 2020, 19:22:27
Auslagerung in eine Datei wäre auch kein großes Ding, finde ich aber dann doch ein bisschen an den Grundprinzipien von FHEM vorbei?!
Vom Speicher wird es keinen großen Unterschied machen, da alle Attribute afair auch im Speicher gehalten werden. Beim Editieren ist es jedoch bereits unübersichtlich, obwohl ich viele statische Elemente im Hintergrundbild habe. Ich meine dazu auch etwas gelesen zu haben, finde es nur grad nicht. Nur diese Empfehlung:
https://forum.fhem.de/index.php/topic,87213.msg796528.html#msg796528 (https://forum.fhem.de/index.php/topic,87213.msg796528.html#msg796528)
Ist jedoch nur ein Vorschlag von mir, wird vermutlich weniger gebraucht ;)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 26 Februar 2020, 23:33:36
Ich denk mal drüber nach, wenn Rudi das vorschlägt, kann es ja nicht so falsch sein. Würde ich auf jeden Fall dann als zusätzliches Attribut "definitionFile" vorsehen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 27 Februar 2020, 08:55:52
OK, hier die Version mit einem neuen Attribut "definitionFile" in welchem man einen Filenamen angeben kann, der Definition enthält (gleiche Syntax wie bei "definition").
und mit der Möglichkeit zu Kommentaren (Zeilen in "definition" oder "definitionFile", die mit "#" (oder mit Leerzeichen und dann "#") starten).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 27 Februar 2020, 09:14:08
Zitat von: eki am 27 Februar 2020, 08:55:52
OK, hier die Version mit einem neuen Attribut "definitionFile" in welchem man einen Filenamen angeben kann, der Definition enthält (gleiche Syntax wie bei "definition").
und mit der Möglichkeit zu Kommentaren (Zeilen in "definition" oder "definitionFile", die mit "#" (oder mit Leerzeichen und dann "#") starten).
Bist du schnell, funktioniert perfekt, auch mit den Kommentaren! So kann ich die Config im Fullscreen-Editor von FHEM bearbeiten.

Zur Veranschaulichung hab ich mal meine Config sowie die verwendeten Bilder angehängt.

edit: zu früh gefreut: im Internal NOTIFYDEF befinden sich jetzt nur sehr wenige Devices, eine automatische Aktualisierung erfolgt auch nicht mehr.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 27 Februar 2020, 09:44:26
Sieht echt gut aus, hast Du das irgendwo an der Wand hängen?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 27 Februar 2020, 10:02:44
Zitat von: eki am 27 Februar 2020, 09:44:26
Sieht echt gut aus, hast Du das irgendwo an der Wand hängen?
Danke. Derzeit steht es noch auf meinem Schreibtisch, da ich noch mit der Hard- und Firmware sowie FHEM spiele (Sleepmode, MQTT). Es soll jedoch in einem Ribba-Rahmen an eine zentrale Stelle installiert werden.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 28 Februar 2020, 17:05:00
Was bedeutet die Fehlermeldung im Log:
GD Warning: one parameter to a memory allocation multiplication is negative or zero, failing operation gracefully
gdImageCreateTrueColor error at /usr/lib/arm-linux-gnueabihf/perl5/5.28/GD/Image.pm line 86.


Sie entsteht am Flex Display 2.9" am Waveshare-ESP32 bei folgendem Code sobald ich das icon um 270 grad drehe (0° = ohne Fehler):

iconreading#cmyProPlanta:fc2_weather12Icon#10#10#30#270

Starting conversion in background bleibt stehen, aber FHEM läuft normal weiter.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 28 Februar 2020, 18:00:11
Gleiche Fehlermeldung bei:
addicon#fhemicon#110#250#25#270

Werden nur icons aus /opt/fhem/www/images/default für Bildchen herangezogen? SVGs (selbst bei Pfadangabe) aus /opt/fhem/www/images/fhemSVG nicht?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 28 Februar 2020, 19:29:08
@Jendaw
Mein ESP8266 kam gestern.
Magst du dein Code mit Deepsleep mit mir Teilen?
Dann muss ich das Rad nicht neu erfinden ;D

Danke

Gruss Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 28 Februar 2020, 22:24:09
Zitat von: Maista am 28 Februar 2020, 19:29:08
Mein ESP8266 kam gestern.
Magst du dein Code mit Deepsleep mit mir Teilen?
Da kann ich dir leider nicht weiterhelfen, ich verwende einen ESP32 v1 mit derzeit Stock-Firmware. Der ESP8266 kann afair nur per externem Interrupt wieder aufwachen. Der ESP32 kann das von selbst, da er einen separaten ULV-Chip dafür hat, der immer läuft. In anderen Projekten verwende ich dazu einen ATTiny85 mit dem ESP8266.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 29 Februar 2020, 00:03:46
Ah ok.
War der Meinung du hast den esp8266 mit Deepsleep laufen.
Mit dem Esp32 klappt bei mir leider nicht Dauerhaft.
Funktioniert das den bei dir zuverlässig?

Eventuell lässt du mir dein Code zum testen zu schicken?

Dann probiere ich das selbst mit dem esp8266. Sensor mit Deepsleep hat 2 Jahre mit einem LUA-Script funktioniert und jetzt mit Espeasy.
Muss man ja nur zwei Pins verbinden.

Gruß Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 29 Februar 2020, 23:07:54
Zitat von: kkoeniger am 28 Februar 2020, 17:05:00
Was bedeutet die Fehlermeldung im Log:
GD Warning: one parameter to a memory allocation multiplication is negative or zero, failing operation gracefully
gdImageCreateTrueColor error at /usr/lib/arm-linux-gnueabihf/perl5/5.28/GD/Image.pm line 86.


Sie entsteht am Flex Display 2.9" am Waveshare-ESP32 bei folgendem Code sobald ich das icon um 270 grad drehe (0° = ohne Fehler):

iconreading#cmyProPlanta:fc2_weather12Icon#10#10#30#270

Ich muss mal schauen, könnte mir aber vorstellen, dass es irgendwas mit einem Berechnungsoverflow bei genau 270 hat. Was passiert denn bei 271 oder 269?

Starting conversion in background bleibt stehen, aber FHEM läuft normal weiter.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 01 März 2020, 09:22:29
Ab 132 tritt das auf. Und ab 319 funktioniert die Rotation wieder, bis 360.

Aber mache Dir keinen Stress, ich drehe einfach das zugrunde liegende Picturefile , dann wird die Rotation wieder obsolet.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 02 März 2020, 08:39:13
War kein Stress, mit der angehängten Version sollte es gehen. Da sind einige andere Änderungen drin, die ich aufgrund von ein paar Tips von Rudi gemacht habe (ich werde demnächst das Modul auch als offizielles Modul freigeben), also bitte gut testen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 02 März 2020, 10:05:07
Zitat von: Maista am 29 Februar 2020, 00:03:46
Mit dem Esp32 klappt bei mir leider nicht Dauerhaft.
Funktioniert das den bei dir zuverlässig?
Bei "dauerhaft" bin ich leider noch nicht, derzeit immer noch im Testbetrieb (am Rechner). Mein Display benötigt ein erhöhtes Timeout von min. 40s.

Zitat
Eventuell lässt du mir dein Code zum testen zu schicken?
Ich verwende noch die Originalfirmware: https://www.waveshare.com/wiki/File:E-Paper_ESP32_Driver_Board_Code.7z
Stefan hatte jedoch schon etwas in der Richtung gepostet: https://forum.fhem.de/index.php/topic,104171.msg1022935.html#msg1022935

Zitat
Dann probiere ich das selbst mit dem esp8266. Sensor mit Deepsleep hat 2 Jahre mit einem LUA-Script funktioniert und jetzt mit Espeasy.
Muss man ja nur zwei Pins verbinden.
Wie willst du das prinzipiell machen? Wann willst/musst du das Display updaten? Der ESP8266 kann nur max. ~70min schlafen, danach müsstest du etwas tun.

Ich möchte bei mir die Fenster-Status darstellen, benötige deshalb (tagsüber) lediglich einen kurzen Sleep (da würde also ein ESP8266 reichen). Nach dem Sleep würde ich per MQTT bei FHEM anfragen, ob es ein neues Bild gibt, falls nicht, geht das Display wieder schlafen. Ansonsten wird der Upload getriggert.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 02 März 2020, 10:21:04
Zitat von: eki am 02 März 2020, 08:39:13
War kein Stress, mit der angehängten Version sollte es gehen. Da sind einige andere Änderungen drin, die ich aufgrund von ein paar Tips von Rudi gemacht habe (ich werde demnächst das Modul auch als offizielles Modul freigeben), also bitte gut testen.

Nach dem Einspielen des neuen Files, einem Update von FHEM und dessen Neustart ist als erstes mein 4. definiertes Display (2.9"-Flex) verschwunden. Grund? das zugrundeliegende Picturefile ist gelöscht worden?

Die drei restlichen vorhandenen Displays sind als Added as new device gekennzeichnet. Die waren doch schon vorhanden.

Edit: ESP32
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 02 März 2020, 10:37:56
Auf meinen zwei 7.5"-Displays erfolgt kein erfolgreicher Upload.

Uploading image to device wird in FHEM nicht aktualisiert. erst nach einem manuellen Reload der Seite steht Successfully uploaded image to device

Log (verbose = 4):
2020.03.02 10:32:02 4: Start forked process to convert output picture
2020.03.02 10:32:03 1: PERL WARNING: Invalid conversion in sprintf: end of string at ./FHEM/89_ESPEInk.pm line 1194.
2020.03.02 10:32:04 4: File /opt/fhem/www/images/test_SWBalkenStrichLogo.png opened, sizes is 640 x 384
2020.03.02 10:32:21 4: Finished conversion in background
2020.03.02 10:32:33 3: einkDiplay01: sending HTTP request to http://10.0.0.130/ with data: eb


Edit: beide ESP8266
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 02 März 2020, 10:59:58
Grrr. Kannst Du bitte Deine Definitionen posten (list <devicename>).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 02 März 2020, 11:15:38
ESP32, 2.9"-Flex, funktioniert:
Internals:
   BOARDTYPE  ESP32
   CFGFN     
   COLORMODE  monochrome
   CONVERTMODE level
   DEF        /opt/fhem/www/images/eDisplayFlex/296x128.png
   DEVICETYPE 2.9inch_e-Paper_Module_(D)
   FUUID      5e5ccf94-f33f-5656-c375-c93d24b585f484b7
   INTERVAL   604800
   NAME       eDisplayFlex
   NOTIFYDEV  cmyAbfall,fp_date,fp_time,global,eDisplayFlex,cNuki
   NR         67
   NTFY_ORDER 50-eDisplayFlex
   PICTUREFILE /opt/fhem/www/images/eDisplayFlex/296x128.png
   STATE      Successfully uploaded image to device
   SUBFOLDER  images
   TYPE       ESPEInk
   URL        10.0.0.131
   .attraggr:
   .attrminint:
   READINGS:
     2020-03-02 10:49:33   result_picture  <html><img src=/fhem/images/eDisplayFlex/result.png?dummy=765010.967259311></img><div>/fhem/images/eDisplayFlex/result.png</div></html>
     2020-03-02 10:19:16   source_picture  <html><img src=/fhem/images/eDisplayFlex/296x128.png?dummy=232959.158082025></img><div>/fhem/images/eDisplayFlex/296x128.png</div></html>
   helper:
Attributes:
   alias      Flex Display 2.9" .131
   boardtype  ESP32
   colormode  monochrome
   convertmode level
   definition attr eDisplayFlex definition
textreading#fp_date:state#10#10#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
textreading#fp_time:state#105#10#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
addtext#LUFTGÜTE#150#9#11#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
addtext#------------------------------------------------------#1#16#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
addicon#fhemicon#260#2#30#0#

addtext#PM 2.5 in µg/m³#1#25#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
addtext#12,5#150#25#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
addtext#PM 10 in µg/m³#1#40#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
addtext#Helligkeit Lux#1#55#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
addtext#UV-Index (0-3)#1#70#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
addtext# - #1#85#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf

addtext#Eingang#1#100#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cNuki:aufzu#100#100#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#Abfall#1#115#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf
textreading#cmyAbfall:Anzeige#65#115#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf

   devicetype 2.9inch_e-Paper_Module_(D)
   disable    1
   group      Device
   icon       terminal
   interval   604800
   maxretries 3
   picturefile /opt/fhem/www/images/eDisplayFlex/296x128.png
   placement  top-left
   room       Displays
   scale2fit  0
   url        10.0.0.131
   verbose    0


7.5", ESP8266 convert=ok, kein Upload (Hier 7.5-B=rot, 2. Display=SW im Wesentlichen gleich):
Internals:
   BOARDTYPE  ESP8266
   COLORMODE  color
   CONVERTMODE dithering
   DEF        /opt/fhem/www/images/test_SWBalkenStrichLogo.png
   DEVICETYPE 7.5inch_e-Paper_HAT_(B)
   FUUID      5df261e7-f33f-5656-6753-33b686a9f40a4a33
   INTERVAL   604800
   NAME       einkDiplay01
   NOTIFYDEV  cwzbuecherregal,czSchaltpower,cazklinuxpc,cmyProPlanta,cWetter,czufalldummy,cfb_stromazpc,global,cSolar,cNuki,cvztemp,cnetatmow,einkDiplay01,cmyAbfall,fp_date,fp_time,cWetterstaion,cGaszaehler,cwzavplf
   NR         35
   NTFY_ORDER 50-einkDiplay01
   PICTUREFILE /opt/fhem/www/images/test_SWBalkenStrichLogo.png
   STATE      Successfully uploaded image to device
   SUBFOLDER  images
   TYPE       ESPEInk
   URL        10.0.0.130
   .attraggr:
   .attrminint:
   READINGS:
     2020-03-02 10:12:29   deftexts        0
     2020-03-02 10:44:15   result_picture  <html><img src=/fhem/images/einkDiplay01/result.png?dummy=19903.7965239945></img><div>/fhem/images/einkDiplay01/result.png</div></html>
     2020-03-02 10:12:29   source_picture  <html><img src=/fhem/images/einkDiplay01/test_SWBalkenStrichLogo.png?dummy=929805.819018945></img><div>/fhem/images/einkDiplay01/test_SWBalkenStrichLogo.png</div></html>
   helper:
Attributes:
   alias      rotes Display 7.5" .130
   boardtype  ESP8266
   colormode  color
   convertmode dithering
   definition attr einkDiplay01 definition
addtext#Haussteuerung#|300#10#24#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
textreading#fp_date:state#|300#45#16#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#Aktualisierung:#530#75#8#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#fp_time:state#605#75#8#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf

addtext#Wetter heute#10#80#12#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
textreading#cWetter:fc1_condition#10#100#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
addtext#aktuelle Temperatur#10#120#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cWetterstaion:temperature{%.1f °C}#|220#120#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#Luftfeuchte#10#140#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cWetterstaion:humidity{%.1f %}#|220#140#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#Tageshoch#10#160#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cWetter:fc1_high_c{%.1f °C}#|220#160#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#Tagestief#10#180#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cWetter:fc1_low_c{%.1f °C}#|220#180#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#Windgeschwindigkeit#10#200#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cWetterstaion:windSpeed{%.1f km/h}#|220#200#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf

addtext#Wettervorschau#10#225#12#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
iconreading#cmyProPlanta:fc2_weather12Icon#60#235#50#0
iconreading#cmyProPlanta:fc3_weather12Icon#140#235#50#0
iconreading#cmyProPlanta:fc4_weather12Icon#220#235#50#0
addtext#Regen %#7#295#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
addtext#Hoch °C#7#315#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
addtext#Tief °C#7#335#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf

textreading#cmyProPlanta:fc2_chOfRain12#|90#295#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
textreading#cWetter:fc2_high_c#|90#315#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
textreading#cWetter:fc2_low_c#|90#336#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf

textreading#cmyProPlanta:fc3_chOfRain12#|170#295#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
textreading#cWetter:fc3_high_c#|170#315#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
textreading#cWetter:fc3_low_c#|170#335#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf

textreading#cmyProPlanta:fc4_chOfRain12#|250#295#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
textreading#cWetter:fc4_high_c#|250#315#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
textreading#cWetter:fc4_low_c#|250#335#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#           morgen      übermorgen       3.Tag#20#360#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf

addtext#Energie heute#315#80#12#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#Photovoltaik#315#100#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cSolar:Daily.Energy{%.1f kWh}#|530#100#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#Stromverbrauch                noch nicht vorhanden#315#120#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
addtext#Gasverbrauch#315#140#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cGaszaehler:verbrTagM{%.1f M3}#|530#140#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf

addtext#Status im Haus#315#160#12#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#Abfall#315#180#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cmyAbfall:Anzeige#|525#180#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#Eingangstuer#315#200#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cNuki:aufzu#|530#200#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#Zufallslicht im WZ#315#220#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#czufalldummy:onoff#|530#220#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#AV-Anlage heute#315#240#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cwzavplf:statEnergyDay_kWh{%.1f kWh}#|530#240#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#Buecherregal#315#260#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cwzbuecherregal:power{%.1f W}#|530#260#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#LAN heute#315#280#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cfb_stromazpc:statEnergyDay_kWh{%.1f kWh}#|530#280#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#Linux heute#315#300#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cazklinuxpc:statEnergyDay_kWh{%.1f kWh}#|530#300#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#USB-Lader#315#320#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#czSchaltpower:power_2{%.1f W}#|530#320#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#Holzhaus Grad#315#340#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cvztemp:temperature#|530#340#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
addtext#Wohnzimmer Grad#315#360#10#0#000000#/usr/share/fonts/truetype/msttcorefonts/Arial.ttf
textreading#cnetatmow:temperature#|530#360#10#0#FF1000#/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf
   devicetype 7.5inch_e-Paper_HAT_(B)
   disable    1
   group      Device
   icon       terminal
   interval   604800
   maxretries 3
   picturefile /opt/fhem/www/images/test_SWBalkenStrichLogo.png
   room       Displays
   scale2fit  1
   url        10.0.0.130
   verbose    4
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 02 März 2020, 13:18:22
Bei meinem 7.5B @ESP32 funktioniert sowohl die manuelle Konvertierung als auch der Upload.
Was bei mir nicht funktioniert, ist seit dem letzten Update die automatische Konvertierung. Das Internal NOTIFYDEV ist noch immer recht leer. Sowohl mit definitionFile als auch mit definition.

Internals:
   BOARDTYPE  ESP32
   COLORMODE  color
   CONVERTMODE level
   DEF        /opt/fhem/www/images/displayBackground.png
   DEVICETYPE 7.5inch_e-Paper_HAT_(B)
   FUUID      5e0a2eed-f33f-062a-705d-d867dd93f669f529
   INTERVAL   0
   NAME       system_display
   NOTIFYDEV  system_display,global
   NR         630
   NTFY_ORDER 50-system_display
   PICTUREFILE /opt/fhem/www/images/displayBackground.png
   STATE      Successfully uploaded image to device
   SUBFOLDER  images
   TYPE       ESPEInk
   URL        eink-panel
   READINGS:
     2020-02-21 15:59:02   deftexts        0
     2020-03-02 13:15:49   result_picture  <html><img src=/fhem/images/system_display/result.png?dummy=485152.098152415></img><div>/fhem/images/system_display/result.png</div></html>
     2020-02-21 15:59:01   source_picture  <html><img src=/fhem/images/system_display/displayBackground.png?dummy=795515.52887224></img><div>/fhem/images/system_display/displayBackground.png</div></html>
   helper:
Attributes:
   alias      Statusanzeige
   boardtype  ESP32
   colormode  color
   convertmode level
   definition textreading#system_time:date_w#92#18#30#0#FFFFFF#/usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf#0#0
textreading#system_time:date_w#91#17#30#0#FF0000#/usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf#0#0

textreading#weather_sunrise_time:state#60#100#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#weather_sunset_time:state#220#100#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

textreading#weather_sensor1:temperature{% 2.1f}#40#150#32#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#°C#140#170#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#weather_sensor1:humidity#210#158#24#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#%#250#170#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

addtext#heute#35#205#12#0#FF0000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#system_weather:fc0_Tn{% 2.f°C - }#20#225#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#system_weather:fc0_Tx{% 2.f°C}#60#225#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#system_weather:fc1_weekday#140#205#12#0#FF0000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#system_weather:fc1_Tn{% 2.f°C - }#110#225#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#system_weather:fc1_Tx{% 2.f°C}#150#225#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#system_weather:fc2_weekday#230#205#12#0#FF0000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#system_weather:fc2_Tn{% 2.f°C - }#200#225#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#system_weather:fc2_Tx{% 2.f°C}#240#225#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0


textreading#system_abfallAbholungen:displayText#20#270#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

iconreading#system_display_status:status_heating#45#341#20#0#
iconreading#system_display_status:status_shutter#120#341#20#0#
iconreading#system_display_status:status_sunblind#190#341#20#0#

textreading#system_time:date_time#150#370#8#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

# rechte Seite

iconreading#system_display_status:status_dg_bad_dach_fenster#320#80#12#0#000000

iconreading#system_display_status:status_dg_bad_fenster#320#100#12#0#000000
textreading#HM_dg_bad_thermostat:1.ACTUAL_TEMPERATURE{% 2.1f}#520#100#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#HM_dg_bad_thermostat:1.HUMIDITY#590#100#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

iconreading#system_display_status:status_dg_kizi_fenster#320#120#12#0#000000
textreading#HM_dg_kizi_thermostat:1.ACTUAL_TEMPERATURE{% 2.1f}#520#120#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#HM_dg_kizi_thermostat:1.HUMIDITY#590#120#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

iconreading#system_display_status:status_HM_dg_schlaZiL_tuer#320#140#12#0#000000
iconreading#system_display_status:status_HM_dg_schlaZiR_tuer#320#160#12#0#000000
textreading#HM_dg_schlazi_hzgThermostat:1.ACTUAL_TEMPERATURE{% 2.1f}#520#160#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

iconreading#system_display_status:status_eg_wizi_fenster#320#190#12#0#000000
textreading#weather_sensor3:temperature{% 2.1f}#520#190#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#weather_sensor3:humidity#590#190#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

iconreading#system_display_status:status_eg_bad_fenster#320#210#12#0#000000
iconreading#system_display_status:status_eg_kueche_fenster#320#230#12#0#000000
iconreading#system_display_status:status_eg_azi_fenster#320#250#12#0#FF0000

iconreading#system_display_status:status_HM_eg_wozi_linkeTerrassen_tuer#320#270#12#0#000000
textreading#HM_eg_wozi_thermostat:1.ACTUAL_TEMPERATURE{% 2.1f}#520#270#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#HM_eg_wozi_thermostat:1.HUMIDITY#590#270#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

iconreading#system_display_status:status_HM_eg_wozi_rechteTerrassen_tuer#320#290#12#0#000000

iconreading#system_display_status:status_kg_dusche_fenster#320#320#12#0#000000
textreading#weather_sensor2:temperature{% 2.1f}#520#320#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#weather_sensor2:humidity#590#320#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

   devStateIcon Starting.conversion.in.background:hm-dis-wm55@green Finished.conversion.in.background:hm-dis-wm55@yellow Uploading.image.to.device:hm-dis-wm55@red Successfully.uploaded.image.to.device:hm-dis-wm55@grey
   devicetype 7.5inch_e-Paper_HAT_(B)
   group      Global
   icon       hm-dis-wm55
   interval   0
   picturefile /opt/fhem/www/images/displayBackground.png
   room       System
   timeout    50
   url        eink-panel
   verbose    4
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 02 März 2020, 16:01:22
Ich denke, das Problem liegt nicht an den Displays sondern am ESP8266 setting . Ich kann aber leider aktuell kein Problem erkennen. Kannst Du mal ein log mit verbose = 5 posten?

Das Problem mit NOTIFYDEV habe ich gefunden, kommt mit der nächsten korrigierten Version.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 02 März 2020, 17:30:16
Ist das das komplette Log? Da scheint irgendetwas abzubrechen. Die Zahlen vorne sollten bis 245760 gehen und das letzte Kommando müsste /SHOW am Ende haben.
Bei mir gerade noch mal mit mehr oder weniger Deinen Settings ausprobiert. Geht das denn mit der vorherigen Version gut?.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 02 März 2020, 17:36:54
Ich kann das Log nur als txt-file anhängen.
Im Anschluss folgten 2 Minuten lang nur mehr Events von den devices.

Jetzt habe ich eine ältere Version des 89_ESPInk.pm in FhEM geladen, dort funktioniert der Upload. Mangels Versionsangabe kann ich nur die Größe angeben, 106.338 KB, ich hatte sie am 25.2. geladen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 02 März 2020, 17:44:03
Die letzten V heruntergeladen und Größe verglichen - die bei mir funktionierende Version ist aus Antwort #110 am: 21 Februar 2020, 15:51:37
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 02 März 2020, 23:37:06
Hier nun eine Version, die das Problem hoffentlich beseitigt und mit der auch das NOTIFYDEV Problem und die Fehler mit der Drehung korrigiert sind.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 03 März 2020, 09:10:20
ESP32 funktioniert.

ESP8266 sieht schwarzweiß vergrieselt wie im Bild aus.

verbose=4 (1x convert, 2x upload):
2020.03.03 09:03:53 4: Start forked process to convert output picture
2020.03.03 09:03:53 1: PERL WARNING: Invalid conversion in sprintf: end of string at ./FHEM/89_ESPEInk.pm line 1194.
2020.03.03 09:03:55 4: File /opt/fhem/www/images/test_SWBalkenStrichLogo.png opened, sizes is 640 x 384
2020.03.03 09:04:12 4: Finished conversion in background
2020.03.03 09:04:19 3: einkDiplay01: sending HTTP request to http://10.0.0.130/EPD with data: eb
2020.03.03 09:04:32 3: einkDiplay01: problems with communication to device, trying once more (1 of 3 done)
2020.03.03 09:04:42 3: einkDiplay01: problems with communication to device, trying once more (2 of 3 done)
2020.03.03 09:04:52 3: einkDiplay01: problems with communication to device, trying once more (3 of 3 done)
2020.03.03 09:04:52 2: einkDiplay01: Upload of image currently running, try again later
2020.03.03 09:05:02 1: einkDiplay01: problems with communication to device, max retries (3) reached
2020.03.03 09:05:31 3: einkDiplay01: sending HTTP request to http://10.0.0.130/EPD with data: eb
2020.03.03 09:05:44 3: einkDiplay01: problems with communication to device, trying once more (1 of 3 done)
2020.03.03 09:05:54 3: einkDiplay01: problems with communication to device, trying once more (2 of 3 done)
2020.03.03 09:06:04 3: einkDiplay01: problems with communication to device, trying once more (3 of 3 done)
2020.03.03 09:06:14 1: einkDiplay01: problems with communication to device, max retries (3) reached
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 03 März 2020, 09:27:45
Zitat von: kkoeniger am 02 März 2020, 10:21:04
Nach dem Einspielen des neuen Files, einem Update von FHEM und dessen Neustart ist als erstes mein 4. definiertes Display (2.9"-Flex) verschwunden. Grund? das zugrundeliegende Picturefile ist gelöscht worden?

...
Das scheint mir immer dann aufzutreten, wenn das picturefile der devicedefinition im Unterordner (zB /opt/fhem/www/images/eDisplayFlex/) des Displays liegt. Seit ich es in den Ordner /opt/fhem/www/images/ verschoben habe, wird das device nicht mehr gelöscht.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: pepe_11 am 03 März 2020, 10:24:37
Hallo,

endlich hatte ich gestern etwas Zeit mich dem Display intensiver zu beschäftigen. Ich kann vermelden, dass zumindest bei meinem Display alle so wie erwartet funktioniert. Upload, Konvertierung funktioniert ohne Beanstandung. Das einzige was mir aufgefallen ist, ist  der Löschung der Definitionen über "removeobject". Manchmal werden nicht alle die Ausgewählt wurden, gelöscht. Eine Kleinigkeit, die nicht wirklich störend ist. Ich benutze die Version aus dem Beitrag #128.
Als nächstes ist der Dauerbetrieb an der Reihe.

Gruß
Peter
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 03 März 2020, 10:44:20
Zitat von: eki am 02 März 2020, 23:37:06
Hier nun eine Version, die das Problem hoffentlich beseitigt und mit der auch das NOTIFYDEV Problem und die Fehler mit der Drehung korrigiert sind.
Danke. NOTIFYDEV funktioniert (jetzt wieder) nur mit dem Attribut "definition", nicht jedoch mit "definitionFile".
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 03 März 2020, 14:38:39
Noch ein Versuch bezüglich Problem mit ESP8266, sollte jetzt auch bezüglich NOTIFYDEF für definitionfile gehen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 03 März 2020, 15:01:21
Das wars. ESP32 und ESP8266 uploaden jetzt perfekt. DANKE !!
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 03 März 2020, 16:52:02
Zitat von: kkoeniger am 03 März 2020, 09:27:45
Das scheint mir immer dann aufzutreten, wenn das picturefile der devicedefinition im Unterordner (zB /opt/fhem/www/images/eDisplayFlex/) des Displays liegt. Seit ich es in den Ordner /opt/fhem/www/images/ verschoben habe, wird das device nicht mehr gelöscht.

Die Ordner, die in Images mit dem Namen des Devices angelegt werden, kommen vom Modul ESPEInk selbst. Dort sollten eigentlich nur die temporären Daten des Devices verwaltet werden (die Ordner werden vom Modul bei define angelegt und bei delete auch wieder aufgeräumt). Wie genau der von Dir genannte Seiteneffekt zustande kommt (zumal noch bei reload des Moduls oder so) muss ich auch erst mal schauen. Aber der Hinweise war schon mal weiterführen, danke.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 03 März 2020, 16:56:23
Danke für die Erklärung. Passt ja wenn ich es weiß.
Ich würde einfach in die device specific help reinschreiben, dass in diese Ordner keine picturefiles reingehören. Damit würden sich weitere Nachforschungen erübrigen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 04 März 2020, 14:23:56
Zitat von: eki am 03 März 2020, 14:38:39
sollte jetzt auch bezüglich NOTIFYDEF für definitionfile gehen.
Geht nach einem FHEM-Restart  :D

Wie konfiguriere ich das Modul so, dass zwar eine automatische Konvertierung, nicht jedoch ein Upload durchgeführt wird? Wäre ein zusätzliches Attribut "doUpload" (o.ä.) mit dem Default=1 denkbar? Mit dieser Konstellation kann ich ein DOIF triggern, welches nach erfolgter Konvertierung (ggf. noch Vergleich mittels md5, ob sich etwas am Bild geändert hat) ein MQTT-Topic setzt, welches nach dem Aufwachen des ESPs abgefragt werden kann. Der ESP kann dann seinerseits den Webserver starten und einen Upload per MQTT-Topic in einem zweiten DOIF triggern.

edit
Zum experimentieren (Fehlerbehandlung gibt es noch nicht wirklich) hab ich die angepassten ESP32-waveshare-Sourcen (zur Besseren Übersicht zusätzlich als Patch) angehängt. In der srvr.h müssen die eigenenen WLAN-Credentials sowie MQTT-Daten eingetragen werden. Da der ESP in den Sleep geht, subscribed er auf ein Topic (Setzen bspw mit "mosquitto_pub -q 1 -d -t epaper/needUpdate -m true"), welches mit QOS=1 auf der Serverseite persistiert werden muss. Findet er im Topic den Wert "true", so startet er seinerseits den Webserver und publisht auf dem State-Topic ein "rdy", welches als Trigger für den Upload genutzt wird).
Die DOIFs habe ich leider noch nicht fertig, hier habe ich noch Probleme die Nachricht mit QOS=1 abzusetzen (kann MQTT2_* leider nicht, "retain" ist hierfür ungeeignet, da es bestehen bleibt).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 04 März 2020, 17:42:48
ZitatWie konfiguriere ich das Modul so, dass zwar eine automatische Konvertierung, nicht jedoch ein Upload durchgeführt wird? Wäre ein zusätzliches Attribut "doUpload" (o.ä.) mit dem Default=1 denkbar? Mit dieser Konstellation kann ich ein DOIF triggern, welches nach erfolgter Konvertierung (ggf. noch Vergleich mittels md5, ob sich etwas am Bild geändert hat) ein MQTT-Topic setzt, welches nach dem Aufwachen des ESPs abgefragt werden kann. Der ESP kann dann seinerseits den Webserver starten und einen Upload per MQTT-Topic in einem zweiten DOIF triggern.

Das geht bisher nicht, kommt auf die Liste.
Titel: FYI:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 06 März 2020, 15:29:18
@Midrag hat in einem Forumsbeitrag: https://forum.fhem.de/index.php/topic,87778.msg1029755.html#msg1029755 (https://forum.fhem.de/index.php/topic,87778.msg1029755.html#msg1029755) ein Gehäuse für das Waveshare 7,5" 800x480 Display gepostet, das man sich - auf dem 3D-Drucker - selbst ausdrucken kann.
Titel: ESPEInk: ESP32-Sourcen II
Beitrag von: Jendaw am 06 März 2020, 16:43:55
Ich habe ein wenig Zeit gefunden und auch den FHEM-Part mittels MQTT umgesetzt, vllt. ist es für den ein oder anderen interessant. Mein Vorgehen ist wie folgt:

Benötigt werden:
defmod system_display ESPEInk /opt/fhem/www/images/displayBackground.png
attr system_display boardtype ESP32
attr system_display colormode color
attr system_display convertmode level
attr system_display definitionFile /opt/fhem/FHEM/eink.cfg
attr system_display devStateIcon Starting.conversion.in.background:hm-dis-wm55@green Finished.conversion.in.background:hm-dis-wm55@yellow Uploading.image.to.device:hm-dis-wm55@red Successfully.uploaded.image.to.device:hm-dis-wm55@grey
attr system_display devicetype 7.5inch_e-Paper_HAT_(B)
attr system_display icon hm-dis-wm55
attr system_display interval 48600
attr system_display picturefile /opt/fhem/www/images/displayBackground.png
attr system_display timeout 50
attr system_display url eink-panel

defmod mqtt_device MQTT <mqtt-server>:1883
defmod system_display_status_doif DOIF ([system_display_status]) (\
    set system_display convert\
)
attr system_display_status_doif do always

defmod system_display_doif DOIF ([system_display:result_picture]) (\
    set mqtt_device publish qos:1 stat/flur/system_display/needUpdate true\
)
attr system_display_doif do always

defmod system_display_mqtt MQTT_DEVICE
attr system_display_mqtt IODev mqtt_device
attr system_display_mqtt subscribeReading_cmd {fhem("set system_display upload")} cmd/flur/system_display/upload

ESP-Sourcen sowie zusätzlich das diff sind anghängt.

edit bei mir bleibt das Display noch ab und an hängen, hier muss ich noch schauen, woran es liegt.
edit2 mit dem ESP32-Code vom 08.03. bleibt mein Display nicht mehr hängen
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 07 März 2020, 20:36:21
@Jendaw

Danke für deine Daten. Muss ich mal probieren ob dein Code sich bei mir eher mit der Fritzbox verbinden mag.
Funktioniert das den bei Dir stabil (an einer Fritzbox)?

Habe jetzt am Wochenende leider keine Motivation gehabt. Lag ab Mittwoch für 2 Tage im Bett (zum Glück kein Corona).

Bis jetzt ist die Motivation auch sehr begrenzt deswegen.

Bin ich gespannt ob deine Version eher mit der FB sprechen mag. Eine Wirkliche Erklärung habe ich nicht im Netz gefunden warum sich der ESP32 hier so zickig verhält.

Ansonsten versuch ichs mit dem ESP8266

Gruss Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 07 März 2020, 21:05:47
Zitat von: Maista am 07 März 2020, 20:36:21
Funktioniert das den bei Dir stabil (an einer Fritzbox)
Mit dem reconnect hatte ich nie Probleme (auch an einer FriBo). Der Code lässt den ESP32 allerdings auch nur eine Minute schlafen. Was für ein ESP32-Board hast du? Ich habe ein ESP32 WROOM Devkit v1 Board. Es bekommt eine statische IP-Adresse per DHCP, vllt ist das ein Punkt?
Aktuell habe ich nur das Problem, dass das Display einfriert und nicht mehr ansprechbar ist. Ursache ist noch unbekannt.
Titel: ESPEInk: ESP32-Sourcen III
Beitrag von: Jendaw am 08 März 2020, 11:08:26
Zitat von: Jendaw am 07 März 2020, 21:05:47
Aktuell habe ich nur das Problem, dass das Display einfriert und nicht mehr ansprechbar ist. Ursache ist noch unbekannt.

Zwei Änderungen im ESP32-Code sind hinzugekommen, die die Stabilität (zumindest bei mir) erhöhen:
* es werden (bis zu) 100 Updatemeldungen bei jedem Durchlauf abgeholt, damit werden Mehrfachmeldungen während des Sleeps als eine Meldung bearbeitet
* Timeout für den Webserver eingebaut, damit er nicht endlos wartet, falls es Kommunikationsprobleme gibt
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 08 März 2020, 11:44:08
Zitat von: Jendaw am 07 März 2020, 21:05:47
Mit dem reconnect hatte ich nie Probleme (auch an einer FriBo). Der Code lässt den ESP32 allerdings auch nur eine Minute schlafen. Was für ein ESP32-Board hast du? Ich habe ein ESP32 WROOM Devkit v1 Board. Es bekommt eine statische IP-Adresse per DHCP, vllt ist das ein Punkt?
Aktuell habe ich nur das Problem, dass das Display einfriert und nicht mehr ansprechbar ist. Ursache ist noch unbekannt.

Ich habe das Original waveshare ESP32 Board.
Ich hatte mein Code so weit umgebogen das ich alles relevante im Code eingestellt habe.
Erst danach konnte der ESP sich mit der FB verbinden.
Meine Dauerlauf Versuche hatte ich auf 30sekunden gesetzt.
Maximum ohne Aussetzer waren 243 booten hinterreinnander.

Das funktionierte auch manchmal mit vielen connects.
Manchmal aber schon nach dem 6mal mit Unlust.
Manchmal Verband sich der ESP auch noch aber blieb dann stehen.

Und irgendwann war das Wochenende und Fasnacht vorbei und meine Lust ebenso.

Wie ich davor schon schrieb scheint das ein bekanntes Problem zu sein ohne eindeutigen Lösungsweg.

Im Moment nehme ich auch noch mit der Couch vorlieb  :o

Ich bleib dran.

Danke und Gruß
Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: pepe_11 am 08 März 2020, 21:32:03
Zitat von: Maista am 07 März 2020, 20:36:21
@Jendaw

Danke für deine Daten. Muss ich mal probieren ob dein Code sich bei mir eher mit der Fritzbox verbinden mag.
Funktioniert das den bei Dir stabil (an einer Fritzbox)?

Habe jetzt am Wochenende leider keine Motivation gehabt. Lag ab Mittwoch für 2 Tage im Bett (zum Glück kein Corona).

Bis jetzt ist die Motivation auch sehr begrenzt deswegen.

Bin ich gespannt ob deine Version eher mit der FB sprechen mag. Eine Wirkliche Erklärung habe ich nicht im Netz gefunden warum sich der ESP32 hier so zickig verhält.

Ansonsten versuch ichs mit dem ESP8266

Gruss Gerd

ich kann die reconnect Probleme mit FB bestätigen.

Gruß
Peter
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: kkoeniger am 09 März 2020, 17:29:46
Kann es sein, dass der DEVICETYPE "7.5inch_e-Paper_HAT_V2_(B)" in der Vorschau gelb angezeigt wird obwohl er rot ist? Auch die Farbdefinition FF0000 nutzt nichts - immer gelb. Am Display selbst kann ich es nicht testen, da ich keines habe.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 09 März 2020, 18:14:36
Moin zusammen,

@Jendaw
Konnte mich heute wieder aufraffen :=)

Ich habe deine Version aufgespielt aber hier ist das gleiche Spiel zu sehen wie mit den anderen Standard-Sourcen.
Im Monitor der IDE sehe ich nun sogar sporadisch ein "Brownout detector was triggered". Da wird irgendwie sehr schnell etwas im ESP gemacht.
Wenn ich dann Reset drücke habe ich Glück das er sich dann irgend wann ein mal mit der FB verbindet. Danach dann aber wieder nicht.

@pepe_11
Im Anhang meine Version der Sourcen (Übername vom Icinger). Ich habe hier diverse Ausgaben eingebaut um zu sehen ob sich da mit irgend welchen Änderungen besser klappt.
MQTT ist da so lange unwichtig wie sich das Teil nicht zuverlässig verbindet.

Vielleicht probierst DU damit ob deine Fritte eher gewillt ist sich connecten zu lassen.
Ich gebe die SSID, PW, Kanal (Zeile 52 in srvr.h), die IP, Gateway, Subnet, Hostname (Zeile 75 in srvr.h)  mit an.
Erst damit wollte sich der ESP eher mit der FB verbinden.
Ohne Angabe des Gateway & Subnet gab es zudem beim compilieren Fehlermeldungen (wieso auch immer).
Im Kopf von der srvr.h stehen zudem die (Fehler)Codes welche beim Status ausgegeben werden können.

Bei der Kanalwahl ist zu beachten (Zeile 52 in srvr.h), das hier bei NULL angefangen wird zu zählen  ::)
Wenn man wie ich, auf Kanal 13 schalten will, ist im Source "12" einzugeben (muss man erst mal drauf kommen ....).

Hier also meine zwei Sourcen zum probieren. Am MQTT vom Icinger habe ich nichts verändert.

Viel Erfolg

Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 09 März 2020, 18:42:30
So, der ESP8266 funktioniert schon mal im Prinzip.
Jetzt fehlt noch das DeepSleep.
Hat das schon jemand in seinem ESP8266-Source eingebaut und kann das hier einspielen?

Danke schon mal.

Gruss Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: pepe_11 am 09 März 2020, 19:55:39
Zitat von: Maista am 09 März 2020, 18:14:36


@pepe_11
Im Anhang meine Version der Sourcen (Übername vom Icinger). Ich habe hier diverse Ausgaben eingebaut um zu sehen ob sich da mit irgend welchen Änderungen besser klappt.
MQTT ist da so lange unwichtig wie sich das Teil nicht zuverlässig verbindet.

Vielleicht probierst DU damit ob deine Fritte eher gewillt ist sich connecten zu lassen.
Ich gebe die SSID, PW, Kanal (Zeile 52 in srvr.h), die IP, Gateway, Subnet, Hostname (Zeile 75 in srvr.h)  mit an.
Erst damit wollte sich der ESP eher mit der FB verbinden.
Ohne Angabe des Gateway & Subnet gab es zudem beim compilieren Fehlermeldungen (wieso auch immer).
Im Kopf von der srvr.h stehen zudem die (Fehler)Codes welche beim Status ausgegeben werden können.

Bei der Kanalwahl ist zu beachten (Zeile 52 in srvr.h), das hier bei NULL angefangen wird zu zählen  ::)
Wenn man wie ich, auf Kanal 13 schalten will, ist im Source "12" einzugeben (muss man erst mal drauf kommen ....).

Hier also meine zwei Sourcen zum probieren. Am MQTT vom Icinger habe ich nichts verändert.

Viel Erfolg

Gerd

Hi Maista,

habe gerade deine Sourcen aufgespielt. Ich hatte an der FB Kanal 9 eingestellt gehabt (am ESP 8 eingetragen). Damit wollte  der ESP nicht connecten. Mit dem Kanal 13 läuft es, sehr dubios. Grr..
Ich lasse das jetzt laufen und schaue, ob der dauertest genauso funktioniert und bin auf deep Sleep gespannt. Danke

Gruß
Peter
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 09 März 2020, 20:10:56
Zitat von: Maista am 09 März 2020, 18:14:36
Ich habe deine Version aufgespielt aber hier ist das gleiche Spiel zu sehen wie mit den anderen Standard-Sourcen.
Im Monitor der IDE sehe ich nun sogar sporadisch ein "Brownout detector was triggered". Da wird irgendwie sehr schnell etwas im ESP gemacht.
Wenn ich dann Reset drücke habe ich Glück das er sich dann irgend wann ein mal mit der FB verbindet. Danach dann aber wieder nicht.
Sry, wenn es nicht so deutlich geworden ist: das ist eine MQTT-Version und funktioniert nur in der Umgebung, wie in https://forum.fhem.de/index.php/topic,104171.msg1029864.html#msg1029864 beschrieben, ist also keinesfalls ein Standard-Ersatz. Der Brownout kommt vermutlich daher, dass bei dir auf FHEM-Seite das MQTT-Kommando nicht korrekt ausgewertet wird, oder? Dann rennt der Webserver kurz durch, weil kein Client verfügbar ist. Würde man dort noch ein delay() unterbringen, so würde das nur den normalen Betrieb verzögern.

Ich schau mir bei Gelegenheit auch mal die ESP8266-Version an, da ich vermutlich auf diesen umsteigen werden, damit der ESP32 für ein anderes Projekt frei wird. Das wird dann jedoch auch eine MQTT-Version, wie oben beschrieben.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 09 März 2020, 22:49:42
Zitat von: Maista am 09 März 2020, 18:14:36
MQTT ist da so lange unwichtig wie sich das Teil nicht zuverlässig verbindet.

Ich habe eine (ungetestete) ESP8266-Version aus dem waveshare-Code erstellt, die einen Assistenten für die WLAN-Konfiguration beinhaltet - vllt. bekommt ihr die Verbindungsprobleme damit besser in den Griff? Außerdem ist diese Version OTA-Updatefähig. Die WLAN-Zugangsdaten werden im ESP gespeichert, die Einrichtung ist also nur initial notwendig. Dazu wird ein AccessPoint mit dem Namen "ESPEInk-APSetup" erstellt, an den ihr euch mit WLAN verbinden könnt. Im Browser könnt ihr dann auf dessen IP-Adresse gehen (bspw. "http://192.168.4.1") und wählt dort eure FriBo aus und gebt die Zugangdaten ein. Danach startet sich der ESP8266 neu und sollte sich verbinden und wie der normale waveshare-Server verhalten. Falls bereits Zugangsdaten im Speicher des ESP8266 liegen können die einmalig mit "wifiManager.resetSettings()" gelöscht werden. Bei Bedarf kann ich hier auch ein "Löschimage" dafür erstellen.
Leider ist das ungetestet, da ich noch keinen freien ESP8266 habe. Ich hänge die Sourcen wie auch das Binary an. Zum selber kompilieren benötigt man noch zusätzlich die Lib "Wifi-Manager" (https://github.com/tzapu/WiFiManager/archive/master.zip).
Der MQTT- sowie der Deepsleep-Part ist noch nicht enthalten.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 09 März 2020, 22:58:37
Hallo Jendaw

bei mir läuft zwar mqtt2 aber genauer habe ich mich bisher damit nicht beschäftigt. Es werden damit 3 SONOFF angesprochen und ein paar Aquara-Sensoren.
Aber wirklich beschäftigt habe ich mich mit mqtt noch nicht. Icingers Code hat es zumindest geschafft sich anzumelden.
Was nun für deine Idee benötigt wird steht für mich erst mal hinten an, so lange sich der ESP32 nicht stabil verhält.

Das mit dem WLAN-Assistenten hatte ich auch gelesen das es das gibt. Aber sich damit zu befassen wurde dann von anderen Dingen überholt :=)

Zitatvllt. bekommt ihr die Verbindungsprobleme damit besser in den Griff?

Unsere Probleme bestehen nicht beim ESP8266 sondern mit dem ESP32 !
ESP8266 habe ich einen im Haus der sich seit Jahren ohne Probleme aus dem DeepSleep aufwachen lässt, sich mit der FB verbindet und bei FHEM meldet.
Das ist ja eben nicht das/mein Problem.

Werd ich bei Gelegenheit probieren.

Danke und Gruss
Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 10 März 2020, 08:47:30
Zitat von: Maista am 09 März 2020, 22:58:37
Unsere Probleme bestehen nicht beim ESP8266 sondern mit dem ESP32 !
ESP8266 habe ich einen im Haus der sich seit Jahren ohne Probleme aus dem DeepSleep aufwachen lässt, sich mit der FB verbindet und bei FHEM meldet.
Das ist ja eben nicht das/mein Problem.
Sorry, ich komme nicht mehr mit. Vor ein paar Tagen hattest du noch nach dem Deepsleep-Modus für den ESP8622 gefragt. Nun bin ich am Erstellen eines Codes dafür und nun bist du wieder beim ESP32 - warum bleibst du nicht bei dem, was bereits funktioniert? Btw: mein ESP32 tut seit der letzten Änderung vom Sonntag immer noch seinen Dienst. Dazu muss man aber auch die FHEM-Gegenseite entsprechend einrichten. Wenn du das vorerst nicht möchtest, so kann dir mein ESP32-Code nicht helfen. Wie ist überhaupt dein Anwendungsfall, weil du immer nach einem Deepsleep fragst? Das ESPEInk-Modul arbeitet derzeit noch nach dem Push-Prinzip, das Display sollte dann also gerade nicht schlafen, wenn Daten zur Übertragung bereit stehen. Diese Problematik kann man mit MQTT umschiffen.
Ich werde meine MQTT-Idee erst mal auf den ESP8266 portieren (da ich diesen einsetzen werde, da mir kurze Sleepzeiten genügen). Ggf. kann ich danach, wenn Bedarf besteht, die Autokonfiguration und OTA auf den ESP32 portieren.

Kannst du bitte beschreiben, was du tun willst und wie die Sleepzeiten dazu passen müssen? Es stellt ja jeder etwas anderes auf dem Display dar. Manchen genügt eine Aktualisierung am Tag, bei mir ist es ~minütlich, da ich offene Fenster und Türen zeitnah darstellen möchte.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 10 März 2020, 12:18:54
@Jendaw
ZitatVor ein paar Tagen hattest du noch nach dem Deepsleep-Modus für den ESP8622 gefragt. Nun bin ich am Erstellen eines Codes dafür und nun bist du wieder beim ESP32 - warum bleibst du nicht bei dem, was bereits funktioniert?
Das ist auch löblich, ich habe dein ESP32-Code auch nur probiert weil Du ihn hier eingestellt hattest.
Und anständig wie ich bin habe ich Dir nur die Rückmeldung geben wollen wie bei mir das Verhalten mit der FB ist.
Ich war der Meinung das dies von Dir so beabsichtigt war.

Wie gesagt, so lange der ESP32 sich nicht sicher mit den Fritzboxen verbindet, was man auch nachlesen kann, so lange werde ich den daher auch nicht bei mir im Netz verwenden können.
Und da dieses nicht-verbinden-wollen nicht mit mqtt zu tun hat, habe ich das auch gar nicht erst bei mir weiter verfolgt.
Ich wollte nur schauen ob deine Vorgehensweise bei dem Verbindungsaufbau irgend ein Positiven Effekt bei mir haben könnte.

ZitatWie ist überhaupt dein Anwendungsfall, weil du immer nach einem Deepsleep fragst?
Wie die Idee vom Icinger bei seinem Code schon war, wenn ich ein E-Papier verwende, möchte ich das auch so nutzen.
So lange nichts übertragen wird kann sich die HW dann auch entsprechend schlafen legen. Ansonsten kann ich auch gleich ein OLED o.ä.
verbauen wenn kein Deepsleep funktioniert.

ZitatDas ESPEInk-Modul arbeitet derzeit noch nach dem Push-Prinzip, das Display sollte dann also gerade nicht schlafen, wenn Daten zur Übertragung bereit stehen
Das ist mir auch klar. Mit dem Code vom Icinger hat das aber trotz allem funktioniert. Weil er sich nach dem Empfang dann erst schlafen legt.

Aber, wie oben schon geschrieben, wenn der ESP32 sich nicht stabil nach dem Deepsleep und im allgemeinen mit der FB verbinden will, ist der im Netz bei mir nicht zu gebrauchen.
Aus diesem Grund werde ich das dann auch mit dem ESP8266  weiter machen. Der ESP32 ist da eh "Oversized" finde ich. Zumindest in der Konstellation.

ZitatKannst du bitte beschreiben, was du tun willst und wie die Sleepzeiten dazu passen müssen
Ich habe bisher nur ein 1.54" Display. Und das aus dem Grund weil ich erst ein mal probieren will in wie weit ich damit was anfangen kann.

Meine Test liefen mit 30/60 Sekunden DeepSleep. Die 30 Sekunden aber auch nur um zu schauen ob der ESP32 sich immer sicher verbindet.
Ich denke mal alle 60 Sekunden aufwachen sollte ausreichen um hier Sinnvoll etwas anzuzeigen.
Wenn ich Echtzeit hätte haben wollen, hätte ich Nextion nehmen müssen. Das brauch ich aber nicht.

Soweit nun alles klar?

Gruss Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 10 März 2020, 13:16:04
Zitat von: Maista am 10 März 2020, 12:18:54
Das ist auch löblich, ich habe dein ESP32-Code auch nur probiert weil Du ihn hier eingestellt hattest.
....
Ich denke mal alle 60 Sekunden aufwachen sollte ausreichen um hier Sinnvoll etwas anzuzeigen.
Wenn ich Echtzeit hätte haben wollen, hätte ich Nextion nehmen müssen. Das brauch ich aber nicht.

Soweit nun alles klar?
Danke für deine nochmaligen Ausführungen, damit ist mir dein Anwendungsfall immer noch nicht klar - also was du mit deinem Display eigentlich tun möchtest. "60s schlafen lassen" ist ja bereits eine Lösung für eine Aufgabenstellung. Für mich klingt es damit so, als würdest du etwas Unpassendes ("es funktioniert ja trotzdem") auf dein Problem anwenden. Soll jetzt aber nicht mehr Thema sein, betrachte ich hiermit als erledigt.

Wie dem auch sei, mein ESP32 ist mittlerweile (mit meiner MQTT-Lösung) ~3.000 (>2d) schlafen gegangen und hat sich genauso oft erfolgreich mit meiner FriBo verbunden. Also etwas mehr als deine ~250x. Wenn ich in den ESP8266-Code das Deepsleep eingebaut habe, werde ich noch mal eine "60s-Version" posten.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 10 März 2020, 14:27:08
@eki
Zitat von: eki am 27 Februar 2020, 08:55:52
OK, hier die Version mit einem neuen Attribut "definitionFile" in welchem man einen Filenamen angeben kann, der Definition enthält (gleiche Syntax wie bei "definition").
und mit der Möglichkeit zu Kommentaren (Zeilen in "definition" oder "definitionFile", die mit "#" (oder mit Leerzeichen und dann "#") starten).

Neu dazu gesetzte Attribute erzeugen aber keine neues Readings im Device?! Ist das Richtig?
Die Daten werden korrekt in das Bild gerechnet.

Ein Hinweis das die Config-Datei "definitionFile" unter "FHEM/meine.cfg" stehen muss fehlt noch in der Hilfe.

Ich habe die alten Readings gelöscht um nur noch über "definition" oder "definitionFile" zu editieren.
Aber nun werden die Texthöhen nicht mehr berücksichtigt?

textreading#BSB:Uhrzeit#01#198#13#90#000000
addtext#WW: #35#180#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
textreading#Nina_Device:WarnCount#35#110#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
addtext#T: #65#180#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
textreading#BSB:8700-Aussentemperatur#65#150#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
textreading#W132_22:state#95#180#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
textreading#SD_WS07_TH_1:state#125#180#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
textreading#MQTT2_WetterDisplay:state#188#198#13#90#000000
addtext#HT: #155#180#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
textreading#HM.EG.fl.TK.Haustuer:hmstate#155#180#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf


Wenn ich in der Zweiten Zeile den Pfad zur Schrift gegen "giant" tausche wird der Text in allen folgenden Zeilen ebenfalls so "gross" dargestellt.
Aber wesentlich kleiner als mit DejaVuSans.ttf.

Als ich die Readings noch alle hatte wurden die Schriftarten berücksichtigt.

Hab ich hier irgend etwas überlesen?
Gruss
Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 10 März 2020, 14:39:59
Zitat von: Jendaw am 10 März 2020, 13:16:04
Danke für deine nochmaligen Ausführungen, damit ist mir dein Anwendungsfall immer noch nicht klar - also was du mit deinem Display eigentlich tun möchtest. "60s schlafen lassen" ist ja bereits eine Lösung für eine Aufgabenstellung. Für mich klingt es damit so, als würdest du etwas Unpassendes ("es funktioniert ja trotzdem") auf dein Problem anwenden. Soll jetzt aber nicht mehr Thema sein, betrachte ich hiermit als erledigt.
Von Unpassend habe ich nie etwas geschrieben. Die Aufgabe von einem Display ist etwas anzeigen. Was das alles ist wird sich dann zeigen wenn es bei mir Funktioniert.
Dafür brauche ich jetzt erst mal nicht einen speziellen Anwendungsfall? Und nur das er 60s schläft habe ich nicht als Funktion deklariert.
Dazu brauch ich kein Display oder ein ESP. Aber auch das ist eigentlich nicht mein Thema gewesen.
So lange man etwas probiert gibt es auch nicht unbedingt ein Anwendungsfall.

ZitatWie dem auch sei, mein ESP32 ist mittlerweile (mit meiner MQTT-Lösung) ~3.000 (>2d) schlafen gegangen und hat sich genauso oft erfolgreich mit meiner FriBo verbunden.
Ein ESP8266 Akku lief zwei Jahre mit LUA und hatte nie Probleme sich nach dem DeepSleep mit der FB zu verbinden. Und auch mit der ESPEasy-Version ist das kein Thema.
Das funktioniert nun auch schon über ein Jahr.

ZitatWenn ich in den ESP8266-Code das Deepsleep eingebaut habe, werde ich noch mal eine "60s-Version" posten.
Danke. Werde ich dann testen.

Gruss Gerd
Titel: ESPEInk: ESP8266-Sourcen II
Beitrag von: Jendaw am 11 März 2020, 16:31:37
Ich hab mich weiter mit dem ESP8266 beschäftigt. Leider hängt mein Display immer noch am ESP32, der Code ist daher noch nicht von mir unter Realbedingungen getestet worden. Was kann er/sollte er können:

Ich hänge die Hauptsource (ersetzt das INO-File von waveshare, muss also in Loader.ino umbenannt werden) sowie das aktuelle Image an, damit man es nicht mehr übersetzen muss (vor dem Upload entpacken). Ich hoffe, ich habe nicht zu viele Fehler drin, testen konnte ich es hardwaremässig leider noch nicht :(

Manuell kann der Upload so aussehen (muss natürlich auf eure Umgebung angepasst werden):
% python3 ~/.arduino15/packages/esp8266/hardware/esp8266/2.6.3/tools/upload.py --chip esp8266 --port /dev/ttyUSB0 --baud 460800 --before default_reset --after hard_reset write_flash 0x0 /tmp/ESPEInk_ESP8266_v9.ino.bin

edit: Der Einfachheit halber ist ESP8266-Code und Image jetzt auch zu finden auf github (https://github.com/Yattien/ESPEInk_ESP8266)

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 11 März 2020, 23:19:27
Zitat von: Maista am 10 März 2020, 14:27:08
Neu dazu gesetzte Attribute erzeugen aber keine neues Readings im Device?! Ist das Richtig?
Ich musste nach dem Tausch erst FHEM restarten. Wichtig ist, die letzte Version von ESPEInk zu nutzen, erst da gingen die Readings in der Datei wieder.

Zitat
Ein Hinweis das die Config-Datei "definitionFile" unter "FHEM/meine.cfg" stehen muss fehlt noch in der Hilfe.
Muss es afair nicht, aber so ist es bequemer (direkt in FHEM) zu editieren.

ZitatIch habe die alten Readings gelöscht um nur noch über "definition" oder "definitionFile" zu editieren.
Aber nun werden die Texthöhen nicht mehr berücksichtigt?

textreading#BSB:Uhrzeit#01#198#13#90#000000
addtext#WW: #35#180#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
textreading#Nina_Device:WarnCount#35#110#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
addtext#T: #65#180#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
textreading#BSB:8700-Aussentemperatur#65#150#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
textreading#W132_22:state#95#180#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
textreading#SD_WS07_TH_1:state#125#180#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
textreading#MQTT2_WetterDisplay:state#188#198#13#90#000000
addtext#HT: #155#180#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
textreading#HM.EG.fl.TK.Haustuer:hmstate#155#180#20#90#000000#/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf


Wenn ich in der Zweiten Zeile den Pfad zur Schrift gegen "giant" tausche wird der Text in allen folgenden Zeilen ebenfalls so "gross" dargestellt.
Aber wesentlich kleiner als mit DejaVuSans.ttf.
Für Gewöhnlich passiert dass, wenn man einen Fehler in der Config hat. Schau dir am Besten die Zeilen an, ab der es nicht mehr wie gewünscht aussieht. Meist fehlt eine Raute "#" oder eine Angabe ist falsch (Schreibung, Pfad etc.).
Bspw. sieht die erste (und alle anderen) Zeile seltsam aus, das Format ist device:reading#x#y#size#angle#color#font#linegap#blockwidth es fehlen also noch Angaben. Schau dir dazu Modulhilfe an, da hat sich ggf. etwas im Laufe der Zeit geändert.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 12 März 2020, 10:21:35
Moin
Im Moment steht das Projekt hinten an.
Musste wegen Todesfall unvermittelt abbrechen.

Gruß Gerd
Titel: ESPEInk: neue ESP32- und ESP8266-Sourcen
Beitrag von: Jendaw am 12 März 2020, 21:13:07
@Maista mein Beileid

Ich habe die ESP32-Sourcen nun auch angepasst, sie haben einen ähnlichen Funktionsumfang wie die ESP8266-Sourcen (Einrichtungsmanager, OTA-Update, optionales MQTT, ...). Die Sourcen und die Images befinden sich auf github (https://github.com/Yattien?tab=repositories) unter "Releases". Für das OTA-Update ist die Releasenummer ohne das "v" anzugeben (d.h. für den ESP8266 aktuell die "11").

@eki Sorry für die Entführung und das Vollspamen deines Threads mit dem ESP-Zeugs 8)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 19 März 2020, 15:30:20
So, um mal den Thread wieder zurück zu kapern, das Modul ist jetzt auch Teil des normalen FHEM Packets und kommt mit normalen updates mit.
Ich werde hier also nur noch Testversionen posten, die aktuell freigegebene Version kommt ab heute über das normale FHEM Update.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Andreas.H18 am 23 März 2020, 08:52:56
Moin

@eki Darf ich fragen auf welchem System du das Modul entwickelst?

Ich versuche seit einiger Zeit XML::LibRSVG auf einem Raspberry 3B+ (Buster) zu installieren, scheitere jedoch daran, dass der Compiler Dateien nicht findet. Die entsprechenden Biblietheken habe ich nach und nach installiert (apt install ...), diese landen auch in /usr/include/ , nur sieht der compiler dort nicht hin.

Installationsversuch:
cpanm (App::cpanminus) 1.7044 on perl 5.028001 built for arm-linux-gnueabihf-thread-multi-64int
Work directory is /home/pi/.cpanm/work/1584900022.1401
You have make /usr/bin/make
You have LWP 6.43
You have /bin/tar: tar (GNU tar) 1.30
Copyright © 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Geschrieben von John Gilmore und Jay Fenlason.
You have /usr/bin/unzip
--> Working on .
Entering /usr/include
Configuring /usr/include
-> N/A
-> FAIL The distribution doesn't have a proper Makefile.PL/Build.PL See /home/pi/.cpanm/work/1584900022.1401/build.log for details.
Searching XML::LibRSVG () on cpanmetadb ...
--> Working on XML::LibRSVG
Fetching http://www.cpan.org/authors/id/M/MS/MSERGEANT/XML-LibRSVG-0.01.tar.gz
-> OK
Unpacking XML-LibRSVG-0.01.tar.gz
Entering XML-LibRSVG-0.01
META.yml/json not found. Creating skeleton for it.
Configuring XML-LibRSVG-0.01
Running Makefile.PL
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for XML::LibRSVG
Writing MYMETA.yml and MYMETA.json
-> OK
Checking dependencies from MYMETA.json ...
Checking if you have ExtUtils::MakeMaker 0 ... Yes (7.44)
Building and testing XML-LibRSVG-0.01
cp LibRSVG.pm blib/lib/XML/LibRSVG.pm
Running Mkbootstrap for LibRSVG ()
chmod 644 "LibRSVG.bs"
"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- LibRSVG.bs blib/arch/auto/XML/LibRSVG/LibRSVG.bs 644
"/usr/bin/perl" "/usr/share/perl/5.28/ExtUtils/xsubpp"  -typemap '/usr/share/perl/5.28/ExtUtils/typemap' -typemap '/home/pi/.cpanm/work/1584900022.1401/XML-LibRSVG-0.01/typemap'  LibRSVG.xs > LibRSVG.xsc
mv LibRSVG.xsc LibRSVG.c
arm-linux-gnueabihf-gcc -c  -I/usr/include/libxml2 -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g   -DVERSION=\"0.01\" -DXS_VERSION=\"0.01\" -fPIC "-I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE"   LibRSVG.c
LibRSVG.xs:13:10: fatal error: gdk-pixbuf/gdk-pixbuf.h: Datei oder Verzeichnis nicht gefunden
#include <gdk-pixbuf/gdk-pixbuf.h>
          ^~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:336: LibRSVG.o] Fehler 1
-> FAIL Testing XML::LibRSVG failed. See /home/pi/.cpanm/work/1584900022.1401/build.log for details. Retry with --force to force install it.


die gesuchte Datei:
/usr/include/gdk-pixbuf-2.0/gdk-pixbuf

Compiler-pfade:
pi@rasfhem:~ $ arm-linux-gnueabihf-gcc -print-search-dirs
install: /usr/lib/gcc/arm-linux-gnueabihf/8/
programs: =/usr/lib/gcc/arm-linux-gnueabihf/8/:/usr/lib/gcc/arm-linux-gnueabihf/8/:/usr/lib/gcc/arm-linux-gnueabihf/:/usr/lib/gcc/arm-linux-gnueabihf/8/:/usr/lib/gcc/arm-linux-gnueabihf/:/usr/lib/gcc/arm-linux-gnueabihf/8/../../../../arm-linux-gnueabihf/bin/arm-linux-gnueabihf/8/:/usr/lib/gcc/arm-linux-gnueabihf/8/../../../../arm-linux-gnueabihf/bin/arm-linux-gnueabihf/:/usr/lib/gcc/arm-linux-gnueabihf/8/../../../../arm-linux-gnueabihf/bin/
libraries: =/usr/lib/gcc/arm-linux-gnueabihf/8/:/usr/lib/gcc/arm-linux-gnueabihf/8/../../../../arm-linux-gnueabihf/lib/arm-linux-gnueabihf/8/:/usr/lib/gcc/arm-linux-gnueabihf/8/../../../../arm-linux-gnueabihf/lib/arm-linux-gnueabihf/:/usr/lib/gcc/arm-linux-gnueabihf/8/../../../../arm-linux-gnueabihf/lib/:/usr/lib/gcc/arm-linux-gnueabihf/8/../../../arm-linux-gnueabihf/8/:/usr/lib/gcc/arm-linux-gnueabihf/8/../../../arm-linux-gnueabihf/:/usr/lib/gcc/arm-linux-gnueabihf/8/../../../:/lib/arm-linux-gnueabihf/8/:/lib/arm-linux-gnueabihf/:/lib/:/usr/lib/arm-linux-gnueabihf/8/:/usr/lib/arm-linux-gnueabihf/:/usr/lib/


:GD und Image::LibRSVG sind installiert.

Irgendwelche Ideen?

LG Andreas
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 23 März 2020, 13:49:11
Ich fürchte, dass ich da einen falschen Link in der Doku eingebaut habe (ich hatte damit mal experimentiert). Ich verwende lediglich Image:LibRsvg. Müsste also ach ohne XML:LibRsvg gehen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Andreas.H18 am 23 März 2020, 14:46:48
OH
Danke für die Antwort - leider sehe ich die SVG icons nicht alle auf dem convertierten Bild.
Es kommt immer nur das FHEM Häuschen beim Wetter - Forecast.

Layer 8 Fehler mal wieder - die beiden anderen Icons werden ja korrekt angezeigt.
..ich such mal weiter...

edit:
interressant, das wird als fhemicon.png convertiert:

8-angle   0
8-blockwidth   0
8-color   000000
8-def   iconreading#DarkSkyweather:fc1_icon#10#50#80
8-icon   sunny
8-isIcon   1
8-linegap   0
8-size   70
8-trigger   DarkSkyweather:fc1_icon
8-x   10
8-y   55


aber das als sunny.png:

1-angle   0
1-color   000000
1-def   addicon#temp_temperature#10#30#25
1-icon   sunny
1-isIcon   1
1-size   25
1-x   10
1-y   15


Edit2:
Habe die gleichnamigen Ikonendateien bereinigt und verwende für das EInkdisplay andere Namen. Damit funktionierts.

LG Andreas
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: arthur_dent_2015 am 23 März 2020, 17:34:08
muss es unbedingt waveshare sein oder funktioniert der Sketch auch mit andere eInk Displays z.B dem Inkplate 6 https://www.crowdsupply.com/e-radionica/inkplate-6 ?

Gruß
Arthur
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 23 März 2020, 22:45:29
Zitat von: arthur_dent_2015 am 23 März 2020, 17:34:08
muss es unbedingt waveshare sein oder funktioniert der Sketch auch mit andere eInk Displays z.B dem Inkplate 6 https://www.crowdsupply.com/e-radionica/inkplate-6 ?

Die in diesem Thread vorgestellten Sketche sind (meist) auf Basis der waveshare-Treiber erstellt worden. Beim Inkplate wird die Darstellung im ESP mittels GFX-Library (https://github.com/e-radionicacom/Inkplate-6-Arduino-library) gerendert, in diesem Projekt hier wird bereits in FHEM das Bild berechnet und "nur noch" hochgeladen. Zudem hat es andere technische Daten als die Waveshare-Displays - ich fürchte, es ist inkompatibel mit den waveshare-Displays.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Maista am 24 März 2020, 09:21:27
Moin

Wenn man sich das Video anschaut und etwas weiter liest findet man Vergleiche zwischen
dem Inkplate und Waveshare Display.

https://www.crowdsupply.com/e-radionica/inkplate-6#details-top
(https://www.crowdsupply.com/e-radionica/inkplate-6#details-top)

Von daher ist das vermutlich andere Technik.

Gruß Gerd
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 24 März 2020, 13:02:09
Ich habe mir die Seite mal angeschaut. Aktuell ist das komplett anders als die waveshare displays. Das Teil hat zwar einen ESP32 drin, aber aktuell wohl keine Software fertig, mit der man per WLAN da Daten rüber schieben kann (das Einzige, was ich gelesen habe, waren Anwendungen, die aus SD Karte oder über USB Daten auf das Display schaufeln). Das müsste aber jemand machen, der das Modul zur Verfügung hat.
Was man machen müsste (zumindest) wäre, einen Webserver auf den Arduino bringen, der Bilder entgegen nimmt und dann auf das Display schiebt. Falls das vorhanden wäre, könnte ich das sicher auch in das FHEM Modul mit einbauen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 24 März 2020, 14:03:33
Zitat von: eki am 24 März 2020, 13:02:09
Was man machen müsste (zumindest) wäre, einen Webserver auf den Arduino bringen, der Bilder entgegen nimmt und dann auf das Display schiebt. Falls das vorhanden wäre, könnte ich das sicher auch in das FHEM Modul mit einbauen.
Mit der Inkplate-Lib könnte man die Bilder als Vollbild darstellen. Webserver ist auch kein Problem. Zusätzlich müsste man sich noch anschauen, wie das Image zwischengespeichert wird, das macht der Waveshare-Treiber direkt.
Als Übertragungsprotokoll könnte man dann das bisherige ESP32-Protokoll nutzen, kommt ja nur auf das Bild an.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 24 März 2020, 14:12:34
Wenn das Arduino image direkt mit Bildern, die über WLAN reinkommen in irgendeiner Form umgehen kann, dann passe ich das EInk Modul gern an (das aktuelle Übertragungsprotokoll ist direkt an den Webserver von Waveshare angepasst, das wird so direkt keinen Sinn machen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 24 März 2020, 14:22:10
Zitat von: eki am 24 März 2020, 14:12:34
Wenn das Arduino image direkt mit Bildern, die über WLAN reinkommen in irgendeiner Form umgehen kann, dann passe ich das EInk Modul gern an (das aktuelle Übertragungsprotokoll ist direkt an den Webserver von Waveshare angepasst, das wird so direkt keinen Sinn machen.
Wird das Bild nicht nur zerstückelt oder wird es noch irgendwie umgerechnet? Falls ersteres, würde es den Pflegeaufwand in ESPEInk verringern, ggf. kann man auch ein Sketch für beides nehmen. Beim nächsten Display geht es dann von vorn los...
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Andreas.H18 am 24 März 2020, 16:19:04
@ eki

Vielen Dank für das Modul!  :)

Ich verwende jetzt auch 'definitionFile' und habe damit keine Unklarheiten bei der Iconsuche, es darf halt nur eins gefunden werden

LG Andreas
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 25 März 2020, 11:05:31
Zitat von: Jendaw am 24 März 2020, 14:22:10
Wird das Bild nicht nur zerstückelt oder wird es noch irgendwie umgerechnet? Falls ersteres, würde es den Pflegeaufwand in ESPEInk verringern, ggf. kann man auch ein Sketch für beides nehmen. Beim nächsten Display geht es dann von vorn los...

Das Bild wird nicht nur zerstückelt. In der aktuellen Version macht das Modul schon etwas mehr. Letztendlich bildet das Modul das komplette Waveshare Protokolle als Gegenstück zur Arduino Seite nach. Dazu gehören Aufteilung in Päckchen entsprechend der maximalen Datengrößen für die Übertragung, aber auch das Umrechnen der Pixelinformationen in ASCII Zeichen so wie die Arduino Software das braucht, das Aufteilen in die verschiedenen Farbkanäle und sequentielles Schicken dieser Teilinformationen. Außerdem gibt es noch einige spezielle Dinge die von der Art des Displays abhängen.
Ich sehe eingentlich 2 Möglichkeiten:
1. Das ESP Modul macht die Unterscheidung und muss sich dann an alle möglichen neuen Displays anpassen (viel Aufwand auf meiner Seite  :-\)
2. Wir definieren eine Art generisches Protokoll zwischen dem Modul und Arduino und der Aufwand für die Anpassung an die jeweiligen Displays findet im Arduino statt. Dann bräuchten wir aber einen Freiwilligen, der die Arduino Seite betreut, dazu reicht meine Freie Zeit trotz Corona leider nicht.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Andreas.H18 am 26 März 2020, 09:59:03
@eki

Moin!

Anmerkung:
Beim Neustart des fhem Servers kommt es bei mir vor, dass diverse mqtt-Geräte noch nicht 'anwesend' sind.

Das führt zu diesen Logeinträgen (readings haben keine Werte, da nicht vorhanden):

2020.03.26 09:36:30 1: PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 644.
.
.
.
2020.03.26 09:36:31 1: PERL WARNING: Use of uninitialized value $text in split at ./FHEM/89_ESPEInk.pm line 552.
2020.03.26 09:36:31 1: PERL WARNING: Use of uninitialized value $text in split at ./FHEM/89_ESPEInk.pm line 553.


...funktioniert natürlich trotzdem...

LG Andreas
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 30 März 2020, 09:51:44
Zitat von: eki am 25 März 2020, 11:05:31
Ich sehe eingentlich 2 Möglichkeiten:
1. Das ESP Modul macht die Unterscheidung und muss sich dann an alle möglichen neuen Displays anpassen (viel Aufwand auf meiner Seite  :-\)
2. Wir definieren eine Art generisches Protokoll zwischen dem Modul und Arduino und der Aufwand für die Anpassung an die jeweiligen Displays findet im Arduino statt. Dann bräuchten wir aber einen Freiwilligen, der die Arduino Seite betreut, dazu reicht meine Freie Zeit trotz Corona leider nicht.
Das zweite klingt gut, wobei ich gerade wegen Corona (Ganztages-Kinderbetreuung) keine Zeit habe :)
Ansonsten könnte ich, falls überhaupt Bedarf besteht, die Betreuung übernehmen. Ich bin mir nicht mal sicher, ob meine bisherigen Änderungen überhaupt jmd. nutzt oder diese auf anderer Hardware funktionieren.
Titel: Antw:ESPEInk: ESP8266-Sourcen II
Beitrag von: pepe_11 am 30 März 2020, 15:49:41
Zitat von: Jendaw am 11 März 2020, 16:31:37
Ich hab mich weiter mit dem ESP8266 beschäftigt. Leider hängt mein Display immer noch am ESP32, der Code ist daher noch nicht von mir unter Realbedingungen getestet worden. Was kann er/sollte er können:

  • Einrichtungsmanager für WiFi, MQTT und Deepsleep-Zeit
    - Verbinden mit dem AP "ESPEInk-APSetup" und im Browser die URL "http://192.168.4.1" aufrufen
    - MQTT-Server ist optional, falls keiner angegeben wird, wird kein MQTT verwendet
    - Sleeptime in Sekunden ist optional, wird keine angegeben, läuft der ESP ständig
    - Firmware-Basis-URL ist optional
    - die Einrichtungsdaten werden damit im ESP gespeichert und nicht mehr im Quellcode
  • OTA-Firmware-Update
    - unterhalb der Firmware-Basis-URL werden zwei Dateien erwartet, Hauptnamensbestandteil ist die klein geschriebene (WiFi-)MAC-Adresse des ESP
    - "<MAC>.version" eine Datei, die nur eine Zahl enthält, das ist die Versionsnummer des zugehörigen Firmwareimages
    - "<MAC>.bin" das Firmware-Image
    - ein Update erfolgt nur, wenn die aktuelle Versionsnummer kleiner als die auf dem Webserver ist (ja, ist derzeit viel Handarbeit ;) )
  • Deepsleep: der ESP-Webserver wird für 10s für Aktionen gestartet, danach geht er schlafen, falls eine Schlafdauer konfiguriert ist
    - wird ein manueller Upload über die Webseite oder ein ESPEInk-Upload gestartet, wird der Schlaf solange verzögert
  • MQTT-Szenario, wie in diesem Beitrag (https://forum.fhem.de/index.php/topic,104171.msg1029864.html#msg1029864) beschrieben. Funktioniert nicht standalone, benötigt also eine eingerichtete FHEM-Gegenseite
  • Reset-Seite "http://<esp>/reset", um den Einrichtungsassistenten (ohne Rückfrage) zu starten
  • Abort-Seite "http://<esp>/abort", um einen verzögerten Schlaf (bspw. abgebrochener manueller Upload) sofort auszulösen

Ich hänge die Hauptsource (ersetzt das INO-File von waveshare, muss also in Loader.ino umbenannt werden) sowie das aktuelle Image an, damit man es nicht mehr übersetzen muss (vor dem Upload entpacken). Ich hoffe, ich habe nicht zu viele Fehler drin, testen konnte ich es hardwaremässig leider noch nicht :(

Manuell kann der Upload so aussehen (muss natürlich auf eure Umgebung angepasst werden):
% python3 ~/.arduino15/packages/esp8266/hardware/esp8266/2.6.3/tools/upload.py --chip esp8266 --port /dev/ttyUSB0 --baud 460800 --before default_reset --after hard_reset write_flash 0x0 /tmp/ESPEInk_ESP8266_v9.ino.bin

edit: Der Einfachheit halber ist ESP8266-Code und Image jetzt auch zu finden auf github (https://github.com/Yattien/ESPEInk_ESP8266)

VG
Hallo Jendaw,

ich habe mich heute mit dem ES8266 beschäftigt da ein ESP bei mir frei geworden ist. Alles nach deiner Anleitung auf dem FHEM konfiguriert und deine Sourcen ohne Probleme kompiliert.
Nach dem Flashen wie erwartet meine AP Daten + Mqtt Server eingetragen. Das ESP startet und Verbindet sich mit dem AP aber der Webserver ist nicht da.

Hier das Protokoll:
15:31:26.824 -> *WM: Adding parameter
15:31:26.824 -> *WM: server
15:31:26.824 -> *WM: Adding parameter
15:31:26.824 -> *WM: port
15:31:26.824 -> *WM: Adding parameter
15:31:26.824 -> *WM: updateTopic
15:31:26.824 -> *WM: Adding parameter
15:31:26.824 -> *WM: commandTopic
15:31:26.824 -> *WM: Adding parameter
15:31:26.824 -> *WM: sleepTime
15:31:26.824 -> *WM: Adding parameter
15:31:26.824 -> *WM: firmwareUrl
15:31:26.824 -> *WM:
15:31:26.824 -> *WM: AutoConnect
15:31:26.824 -> *WM: Connecting as wifi client...
15:31:26.824 -> *WM: Status:
15:31:26.824 -> *WM: 6
15:31:26.824 -> *WM: Using last saved values, should be faster
15:31:29.723 -> *WM: Connection result:
15:31:29.723 -> *WM: 3
15:31:29.757 -> *WM: IP Address:
15:31:29.757 -> *WM: 192.168.8.45
15:31:29.757 -> Connected.
15:31:29.757 -> *WM: freeing allocated params!
15:31:29.757 ->  MQTT Server: 192.168.8.35 :1883, Client: ESPEInk_ecfabcc2b1a9
15:31:29.757 ->  MQTT UpdateStatusTopic: stat/display/needUpdate
15:31:29.757 ->  MQTT CommandTopic: cmd/display/upload
15:31:29.757 ->  sleep time: 60
15:31:29.757 ->  firmware base URL:
15:31:29.757 -> Setup complete.
15:31:29.757 -> Connecting to MQTT...
15:31:29.790 ->  subscribed to stat/display/needUpdate
15:31:29.790 ->  reconnected, waiting for incoming MQTT message
15:31:39.795 -> Going to sleep for 60 seconds.
15:32:36.401 -> sd $ܟ<


Was noch seltsam ist, sind nach dem Aufwachen irgendwelche wilde Zeichen, der der ESP anzeigt (die bekomme ich per copy and paste nicht hier eingefügt).
Mit deiner bin, die Du mal hier hochgeladen hast, funktioniert der WebServer und der Upload tadellos.

VG
Peter
Titel: Antw:ESPEInk: ESP8266-Sourcen II
Beitrag von: Jendaw am 30 März 2020, 17:22:11
Hallo Peter, danke für den Test! Ich habe gleich einen neuen Thread für die Firmware (https://forum.fhem.de/index.php?topic=109690) erstellt.

Zitat von: pepe_11 am 30 März 2020, 15:49:41
Nach dem Flashen wie erwartet meine AP Daten + Mqtt Server eingetragen. Das ESP startet und Verbindet sich mit dem AP aber der Webserver ist nicht da.
Der Webserver wird bei MQTT-Verwendung erst gestartet, wenn das Topic stat/display/needUpdate ein "true" enthält, also geänderte Daten zur Übertragung bereitstehen (aus diesem Grund ist die MQTT-Wachzeit auch kürzer und Display-schonender, da nur bei Bedarf ein Update erfolgt).

Zitat
15:31:39.795 -> Going to sleep for 60 seconds.
15:32:36.401 -> sd $ܟ<


Was noch seltsam ist, sind nach dem Aufwachen irgendwelche wilde Zeichen, der der ESP anzeigt (die bekomme ich per copy and paste nicht hier eingefügt).
Mit deiner bin, die Du mal hier hochgeladen hast, funktioniert der WebServer und der Upload tadellos.
Das gucke ich mir mal an, weißt du noch, welche Version das war, die du vorher genutzt hast (hatte die bereits den WifiManager und deepsleep)? Nutzt du das ESP8266-Board v2 von waveshare?

Können wir die Diskussion hier (https://forum.fhem.de/index.php?topic=109690) weiter verfolgen?
Titel: Antw:ESPEInk: ESP8266-Sourcen II
Beitrag von: pepe_11 am 30 März 2020, 17:37:06
Zitat von: Jendaw am 30 März 2020, 17:22:11
Hallo Peter, danke für den Test! Ich habe gleich einen neuen Thread für die Firmware (https://forum.fhem.de/index.php?topic=109690) erstellt.
Der Webserver wird bei MQTT-Verwendung erst gestartet, wenn das Topic stat/display/needUpdate ein "true" enthält, also geänderte Daten zur Übertragung bereitstehen (aus diesem Grund ist die MQTT-Wachzeit auch kürzer und Display-schonender, da nur bei Bedarf ein Update erfolgt).
Das gucke ich mir mal an, weißt du noch, welche Version das war, die du vorher genutzt hast (hatte die bereits den WifiManager und deepsleep)? Nutzt du das ESP8266-Board v2 von waveshare?

Können wir die Diskussion hier (https://forum.fhem.de/index.php?topic=109690) weiter verfolgen?

Hi Jendaw,

ich habe die bin aus dem Beitrag #181 installiert, diese wenn ich mich richtig erinnere war ohne deep sleep aber dafür mit WifiManager. Ich nutze den D1 mini mit 2.13 Display

Viele Grüße
Peter
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: viegener am 04 Mai 2020, 11:45:09
Bin ich der einzige, der Probleme mit freezes durch ESPEink hat?

Hintergrund ich habe meine eigene Lösung (basierend auf 02_RSS und DoorsignEPD) testweise umgebaut auf ESPEink. Gerade weil 02_RSS freezes bei der Konvertierung erzeugt.

Nun stosse ich in ESPEink auf das Problem, dass beim upload nachvollziehbar regelmässig freezes auftreten (Nicht lange, meistens unter 2 sek).
ich habe ein 7,5Inch epaper Display (alte Auflösung 640x384 oder so) und einen ESP32 mit der Loader-Firmware geflasht.

Die freezes treten auch beim manuellen upload (set ... upload) auf, liegen also nach der Konvertierung ich vermute aber nicht im http-Transfer sondern beim Öffnen der Image-Datei und transfer nach GD

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 04 Mai 2020, 12:24:58
Also das Einzige, was meiner Ansicht nach zu (kurzen) Freezes führen könnte, ist die Umwandlung der pixel aus dem Bild in für die Anzeige "verdaubare" Werte. Dazu gehe ich die pixel einzeln durch und wandle um. Das könnte man natürlich auch noch in den Hintergrund schicken (so wie das Erzeugen des Bildes). Ich muss mal schauen, wie aufwändig das wäre.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: viegener am 04 Mai 2020, 14:54:42
@eki: Danke für die schnelle Antwort, Ja das war auch meine Vermutung.
Ich baue bei mir mal temporär ein paar logs ein, damit ich das genauer nachvollziehen kann
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: viegener am 04 Mai 2020, 15:34:28
Zitat von: viegener am 04 Mai 2020, 14:54:42
@eki: Danke für die schnelle Antwort, Ja das war auch meine Vermutung.
Ich baue bei mir mal temporär ein paar logs ein, damit ich das genauer nachvollziehen kann


Und hier ist das Ergebnis:


2020.05.04 14:59:39 2: epaper: Enter ..._upload
2020.05.04 14:59:39 2: epaper: upload: state set
2020.05.04 14:59:39 2: epaper: upload: files found
2020.05.04 14:59:39 2: epaper: upload: file closed
2020.05.04 14:59:39 2: epaper: upload: GD image created
2020.05.04 14:59:39 2: epaper: upload: start looping
2020.05.04 14:59:41 2: epaper: upload: finalized data creation
2020.05.04 14:59:41 2: epaper: upload: start post to device
2020.05.04 14:59:41 2: epaper: upload: ended
2020.05.04 14:59:41 1: [Freezemon] freezemon: possible freeze starting at 14:59:40, delay is 1.126 possibly caused by: no bad guy found :-(


zu folgendem Code:


#---------------------------------------------------------------------------------------------------
# code converted picture and send it to eInk driver board (and thus to the connected eInk display)
sub ESPEInk_Upload(@) {
    my ($hash) = @_;
    my $name = $hash->{NAME};

  Log3 ($hash, 2, "$name: Enter ..._upload");
my $url = ESPEInk_GetSetting($name,"url");
if (!defined $url) {
return "Error, missing url. Define url to device first";
}

if ($hash->{STATE} =~ /Uploading/) {
Log3 ($hash, 2, "$name: Upload of image currently running, try again later");
return $hash->{STATE};
}

$hash->{STATE} = "Uploading image to device";
  Log3 ($hash, 2, "$name: upload: state set");

my @outarray;

my $devtype = ESPEInk_GetSetting($name,"devicetype");
my $boardtype = ESPEInk_GetSetting($name,"boardtype");
my $devind = $ESPEInk_devices{$devtype}{"id"};

my $rootname = $FW_dir; #File::Spec->rel2abs($FW_dir); # get Filename of FHEMWEB root
my $filename = catfile($rootname,$hash->{SUBFOLDER},$name,"result.png");
  Log3 ($hash, 2, "$name: upload: files found");
if (!open(RESULT,$filename)) {
Log3 $hash, 1, "File $filename cannot be opened";
return "Error opening image file $filename for upload";
} else {
close RESULT;
  Log3 ($hash, 2, "$name: upload: file closed");
my $image = GD::Image->newFromPng($filename);
  Log3 ($hash, 2, "$name: upload: GD image created");
my ($w,$h) = $image->getBounds;
my ($r,$g,$b);
my $i = 0;

  Log3 ($hash, 2, "$name: upload: start looping");
for (my $iy=0; $iy<$h; $iy++) {
for (my $ix=0; $ix<$w; $ix++) {
($r,$g,$b) = $image->rgb($image->getPixel($ix,$iy));
$outarray[$i] = ($r==0&&$g==0)?0:(($r==255&&$g==255)?1:(($r==127&&$g==127)?2:3)); #convert color values to values between 0 and 3
$i++;
}
}
}
  Log3 ($hash, 2, "$name: upload: finalized data creation");

$ESPEInk_uploadcontrol{"retries"} = 0; # actual number of retries
$ESPEInk_uploadcontrol{"maxretries"} = AttrVal($name,"maxretries",3); # maximum number of retries
$ESPEInk_uploadcontrol{"timeout"} = AttrVal($name,"timeout",10); # timout for HTTP calls
$ESPEInk_uploadcontrol{"stepindex"} = 0; # step currently performed (for multi color displays each color is transferred separately)
$ESPEInk_uploadcontrol{"srcindex"} = 0; # index of source array currently transferred (we might need to split due to the limit on arduino code in data transfer length via HTTP)
  Log3 ($hash, 2, "$name: upload: start post to device");
ESPEInk_PostToDevice($hash,($boardtype eq "ESP32")?'EPDx_':'EPD',$devind,\%ESPEInk_uploadcontrol,\@outarray); # convert data from conversion result in appropriate format and send it to the device via HTTP
  Log3 ($hash, 2, "$name: upload: ended");
return $hash->{STATE};
}



Die Schleife läuft bei mir ca 1-2 Sekunden (Raspberry 3 ohne grosse Last) - was nc ht vollständig überraschend ist, denn wir sprechen von ca 250K Durchläufen - mit jeweils einem Pixel, das abgefragt wird und das heisst mehr als 100000 Durchläufe pro Sekunde, was jetzt nicht so schecht ist, aber auch genug für einen Freeze...
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: viegener am 04 Mai 2020, 20:48:58
Habe mir gerade mal den Code angeschaut - es wäre vermutlich eine Lösung das image (und die Grösseninfos) über params bis zu ESPEInk_CodePixel2Bits mit zu schleifen und dann dort die Berechnungen zu den Pixeln zu machen in dem statt einem Aufruf von ${$array}[$indx] immer dort aus dem image das Pixel berechnet wird.

Habe dazu mal eine neue Version hier angehängt.

Achtung - dabei habe ich noch zwei Probleme korrigiert
-Behandlung von \\n im Blocksatz korrigiert - da gab es ein Problem (ESPEInk_FormatBlockText)
- Ausserdem für lange Strings wurde die texthöhe falsch berechnet

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 05 Mai 2020, 11:31:47
Vielen Dank.

Sieht für mich erst mal OK aus (ich hatte eher daran gedacht das upload einfach, so wie die Konvertierung, per BlockingCall komplett in den Hintergrund zu legen, aber so geht es natürlich auch).
Ich werde das noch ein bisschen weiter testen und dann so in einer Woche ins "Release" übernehmen.

Falls es andere "Testwillige" gibt, gern mit der von hier feedback posten.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: appi am 14 Mai 2020, 16:00:28
Hallo
bräuchte etwas Hilfe bei der Installation des Moduls ESPInk -> kriege kein Image auf das 4.2 EPaper ( von Ali.....)

- E-paper Display läuft perfekt mit anderen Sketches welche die Bibliothek GxEPD benutzen. z.B. https://github.com/G6EJD/ESP32-e-Paper-Weather-Display
- Mit derm Sketch Loader_esp32wf.ino bringe ich kein Bild auf das Display, weder aus dem ESPEInk Modul noch aus der Webpade des ESP32, mit der selben Verdrahtung und der selben HW, Pinbelegung im Loader_esp32wf.ino angepasst.

Ich werde langsam ungeduldig und  verstehe die Welt nicht mehr .....

Was habe ich übersehen oder falsch gelesen? Bin extrem froh um einen Tipp

Remo



Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 19 Mai 2020, 07:55:17
Wenn Du mit Webpade die Webpage des ESP32 Eink Treiber Moduls von Waveshare meinst, und es dort auch nicht funktioniert, dann liegt es eher nicht am FHEM Modul sondern auf der ESP Seite würde ich sagen. Wie genau sieht denn Dein Aufbau aus?
Hast Du denn auf dem ESP den Waveshare sketch oder was läuft da?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: appi am 24 Mai 2020, 12:13:50
danke für deine Antwort. 
Auf dem ESP32 ist der Waveshare Sketch (Loader_ESP32wf.ino). Allerdings ist es ein ganz normaler Wemos Lolin ESP32 lite und kein ESP32 von Waveshare. Mehrere andere Sketches laufen mit dem Wemos Lolin ESP32 lite und dem EPaper 4.2 perfekt . Wenn ich aber die Pinzuordnung aus einem funktionierenden Sketch im Loader_ESP32wf.ino anpasse auf:
/* SPI pin definition --------------------------------------------------------*/

#define PIN_SPI_SCK  18
#define PIN_SPI_DIN  23
#define PIN_SPI_CS   5
#define PIN_SPI_BUSY 4
#define PIN_SPI_RST  16
#define PIN_SPI_DC   17

Bringe ich weder aus dem  Webinterface auls aus Fhem nichts auf E-paper

Suche weiter und berichte wenn ich Erfolg habe.
Danke und Gruss

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 25 Mai 2020, 14:48:12
Was sagt denn die serielle Konsole dazu? Kannst du das bitte posten?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jojocra am 31 Mai 2020, 21:47:26
Hallo Leute,

tolles Modul. Ich habe das 7.5" Rot/Schwarz V2 Display und bekomme es nicht zum Laufen. pngs werden konvertiert, aber der upload schlägt fehl:

Zitat2020.05.31 21:30:25 1: inky: problems with communication to device, max retries (3) reached

Ich habe den "demo code" von der Wiki installiert. Ist das richtig so? Unter der IP, die ich angegeben habe läuft die "price tag" website und funktioniert auch.

Vielen Dnak für eure Hilfe
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: viegener am 31 Mai 2020, 22:29:46
Zitat von: Jojocra am 31 Mai 2020, 21:47:26
Hallo Leute,

tolles Modul. Ich habe das 7.5" Rot/Schwarz V2 Display und bekomme es nicht zum Laufen. pngs werden konvertiert, aber der upload schlägt fehl:

Ich habe den "demo code" von der Wiki installiert. Ist das richtig so? Unter der IP, die ich angegeben habe läuft die "price tag" website und funktioniert auch.

Vielen Dnak für eure Hilfe

Es geht nicht um den Democode auf dem ESP32 (oder ESP8266), sondern um den Loader-Code. Beim ESP32 ist es der Loader_esp32wf Sketch der geladen werden muss.

https://www.waveshare.com/wiki/File:E-Paper_ESP32_Driver_Board_Code.7z (https://www.waveshare.com/wiki/File:E-Paper_ESP32_Driver_Board_Code.7z)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jojocra am 03 Juni 2020, 21:37:04
Ok, danke für deine antwort. Ich habe diese Datei entpackt:

https://www.waveshare.com/wiki/File:E-Paper_ESP8266_Driver_Board_Code.7z

und die Datei loader/loader.ino auf den esp8226 geladen.
Einen andere sketch find ich nicht. kann mir da jemand helfen?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 03 Juni 2020, 22:41:32
Zitat von: Jojocra am 03 Juni 2020, 21:37:04
Ok, danke für deine antwort. Ich habe diese Datei entpackt:

https://www.waveshare.com/wiki/File:E-Paper_ESP8266_Driver_Board_Code.7z

und die Datei loader/loader.ino auf den esp8226 geladen.
Einen andere sketch find ich nicht. kann mir da jemand helfen?
Der Pricetag-Democode ist schon die richtige Firmware. Wenn du mit dieser Bilder angezeigt bekommst, dann ist das Display bereit für das FHEM-Modul. Wie sieht deine Konfiguration des Moduls aus? Hast du ggf. einen Tippfehler bei der Display-Adresse?

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jojocra am 03 Juni 2020, 22:50:03
Ja, auf dem price tag kann ich bilder laden.
Also das hier sind meine Internals und Attribute:

Internals
BOARDTYPE ESP8266
CFGFN
COLORMODE color
CONVERTMODE level
DEF   /opt/fhem/www/images/test-png.png
DEVICETYPE 7.5inch_e-Paper_HAT_(B)
FUUID 5ecd84d1-f33f-c5b4-cf3e-3094dedec8ff3c98
INTERVAL 300
NAME inky
NOTIFYDEV global,inky
NR 1134
NTFY_ORDER 50-inky
PICTUREFILE /opt/fhem/www/images/test-png.png
STATE Error uploading image to device, max retries (3) reached
SUBFOLDER images
TYPE ESPEInk
URL 192.168.1.180

Attributes
colormode color
devicetype 7.5inch_e-Paper_HAT_(B)
url 192.168.1.180


und hier der relevante logeintrag:
2020.06.03 22:44:17 3: inky: sending HTTP request to http://192.168.1.180/EPD with data: eb
2020.06.03 22:44:23 3: inky: problems with communication to device, trying once more (1 of 3 done)
2020.06.03 22:44:29 3: inky: problems with communication to device, trying once more (2 of 3 done)
2020.06.03 22:44:33 3: inky: problems with communication to device, trying once more (3 of 3 done)
2020.06.03 22:44:36 1: inky: problems with communication to device, max retries (3) reached
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 04 Juni 2020, 16:01:59
Du schreibst oben, dass Du das 7.5 V2 rot/schwarz/weiß ePaper hast. Als Device hast Du aber das ohne V2 gewählt. Das habe ich irgendwann mal nachgepflegt, ist aber im ,,offiziellen" Release drin.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jojocra am 05 Juni 2020, 19:18:09
Ah ja, danke. Ich habe das "normale" ohne V2. Also die Konfiguration müsste richtig sein.
Ich versuche es mal mit einer neuen Raspberry pi Installation. Ich habe irgendwann mal manuell von jessie auf strech und dann auf buster geupgraded. Wahrscheinlich ist mal alles neumachen dran.
Ich melde mich, sollte das das Problem lösen oder es noch bestehen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: appi am 15 Juni 2020, 16:15:31
Hallo
bei mir läuft es nun auch endlich   :) ...... mit dem neuesten Waveshare Loader auf einem ESP32 Wemos Lite.
Frage: Ich arbeite auf einem Readonly Filesystem und würde gerne das Source PNG und das Result PNG auf eine USB Stich gemountet lagern.
Den Pfad für die Source kann ich definieren, allerdings würde ich auch gerne die Destination des Result.png als Attr definieren.  Wäre das möglich?

Danke für das super Modul und Gruss
Remo
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 15 Juni 2020, 19:49:18
Du kannst als Parameter nach dem Namen des Picturefiles noch den Namen eines Subfolders angeben (unterhalb de FHEM Verzeichnisses und bisher nur beim Define und nicht als Attribut). Wenn das auf einen USB Share laufen soll müsstest Du dann einen Link in den FHEM Ordner legen und den als Subfolder angeben.
Ich könnte das aber auch noch als Attribut in der nächsten Version vorsehen, denke ich.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: appi am 15 Juni 2020, 20:42:21
danke, werde ich probieren.
Was mir auch noch aufgefallen ist, nach einem Fhem restart ( z.B. shutdown restart ), bekomme ich den Fehler: define Ink_Display ESPEInk www/images/Ink_Display/remo10.png: ESPEInk: Invalid filename www/images/Ink_Display/remo10.png. Must point to a readable file

Das File wird tatsächlich gelöscht, verstehe ich nicht. Wenn ich das File wieder an den obigen Pfad kopiere kann ich mit einem rereadcfg mein ESPInk Device wieder benutzen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 16 Juni 2020, 07:52:27
Das Verzeichnis images/<EInkName> ist eigentlich als temporäres Verzeichnis gedacht (wird, falls es nicht exisitiert, vom Modul angelegt). Dort sollten eigentlich nur die temporären Dateien liegen und diese werden beim Beenden (z.B. beim Löschen des Devices) gelöscht (ob das auch beim Shutdown passiert, muss ich noch mal schauen). Dein Template Bild sollte also möglichst woanders liegen (und beim Anlegen mit "define..." auch mit einem anderen Pfad als der vorher beschriebene Verzeichnisname festgelegt werden.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: mi.ke am 13 August 2020, 14:14:12
***mitlesen***

sehr spannendes Thema
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: arthur_dent_2015 am 24 August 2020, 14:49:22
Zitat von: eki am 24 März 2020, 13:02:09
Was man machen müsste (zumindest) wäre, einen Webserver auf den Arduino bringen, der Bilder entgegen nimmt und dann auf das Display schiebt. Falls das vorhanden wäre, könnte ich das sicher auch in das FHEM Modul mit einbauen.

Ein example für einen Webserver ist jetzt vorhanden: https://github.com/e-radionicacom/Inkplate-6-Arduino-library/blob/master/examples/2.%20Advanced%20Inkplate%20Features/9-Inkplate_Web_Server
Kannst Du Dir ja mal ansehen und gucken ob Du das irgendwie in Dein Modul integrieren kannst.
Meins ist heute angekommen, macht nen guten Eindruck, und soll jetzt asap seinen Dienst in Fhem aufnehmen ;)

Danke & Gruß
Arthur
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: viegener am 24 August 2020, 15:04:50
Zitat von: arthur_dent_2015 am 24 August 2020, 14:49:22
Ein example für einen Webserver ist jetzt vorhanden: https://github.com/e-radionicacom/Inkplate-6-Arduino-library/blob/master/examples/2.%20Advanced%20Inkplate%20Features/9-Inkplate_Web_Server
Kannst Du Dir ja mal ansehen und gucken ob Du das irgendwie in Dein Modul integrieren kannst.
Meins ist heute angekommen, macht nen guten Eindruck, und soll jetzt asap seinen Dienst in Fhem aufnehmen ;)

Danke & Gruß
Arthur

Nun ja der Webserver ist ja recht rudimentär. ich denke was eki meinte ist ein WebServer, der das gesamte Bild entgegennimmt wie bei waveshare und dann auf das Display bringt.

Generell ist auch das machbar, denn auch der Code für das Waveshare ist ja Arduino-Code und in beiden Fällen werkelt ein ESP32 (oder ESP8266) - Generell erscheint mir das inkplate sogar besser geeignet, denn das Rendering der Seite in FHEM ist schon relativ aufwändig und erzeugt erhebliche Last (und freezes bei mir).

In einem ersten Schritt müsste also der Code des Waveshare-Webservers auf den Inkplate portiert werden und die Ansteuerung für das Display mit den Daten auf die Inkplate library verändert werden.
Generell kein zu kompliziertes Unterfangen, allerdings muss man dafür auch ein inkplate display haben...


Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 24 August 2020, 15:20:54
Zitat von: viegener am 24 August 2020, 15:04:50
Generell erscheint mir das inkplate sogar besser geeignet, denn das Rendering der Seite in FHEM ist schon relativ aufwändig und erzeugt erhebliche Last (und freezes bei mir).
Wenn das Display das Rendering durchführen soll, dann muss jeder die (ESP-)Firmware seinen Wünschen anpassen. Es muss ja jede Form einzeln gezeichnet werden. Oder wie meinst du das?
Mein Vorschlag wäre, das Rendering weiterhin in FHEM durchzuführen und mit der Inkplate-Lib nur als Vollbild darzustellen. Würde dir aber nicht helfen.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: arthur_dent_2015 am 24 August 2020, 15:48:09
Zitat von: Jendaw am 24 August 2020, 15:20:54
Mein Vorschlag wäre, das Rendering weiterhin in FHEM durchzuführen und mit der Inkplate-Lib nur als Vollbild darzustellen. Würde dir aber nicht helfen.
Käme auf nen Versuch an, mein Raspi 4 mit 8GB sollte da nicht so das Problem haben, denke ich. Da ich wohl der Einzige mit Inkplate hier bin wird sich niemand hinsetzen und nen kompletten Webserver dafür entwickeln oder portieren, selbst wenn ich meins für die Entwicklung zur Verfügung stellen würde :(  Aber vielleicht bestellt ja noch der eine oder andere und die Nachfrage steigt. Die Dinger sind ja jetzt real verfügbar. Meins hat 3 Tage aus Texas zu mir gebraucht ;)

Gruß
Arthur
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: jowe am 24 August 2020, 16:12:30
Ich habe auch ein inkplate und wäre begeistert, es für fhem nutzen zu können!
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: viegener am 24 August 2020, 17:34:35
Zitat von: arthur_dent_2015 am 24 August 2020, 15:48:09
Käme auf nen Versuch an, mein Raspi 4 mit 8GB sollte da nicht so das Problem haben, denke ich. Da ich wohl der Einzige mit Inkplate hier bin wird sich niemand hinsetzen und nen kompletten Webserver dafür entwickeln oder portieren, selbst wenn ich meins für die Entwicklung zur Verfügung stellen würde :(  Aber vielleicht bestellt ja noch der eine oder andere und die Nachfrage steigt. Die Dinger sind ja jetzt real verfügbar. Meins hat 3 Tage aus Texas zu mir gebraucht ;)

Gruß
Arthur

Der begrenzende Faktor ist nicht die generelle Kapazität des Rechners, sondern das FHEM im Grundsatz ein einzelner Prozess ist. Damit gilt für das Modul in der jetzigen Form, dass alle anderen Dinge warten müssen (auch die Bearbeitung von Events und Schaltbefehlen). Es müsste entweder das Modul die Erzeugung in einen separaten Prozess (Blocking call) auslagern oder eben auf das Displaymodul.

Mein Punkt ist, dass
1) Unterschiedliche Displays auch unterschiedliche Ansteuerungen haben
2) Ein ESP-32 mit 2 Kernen sich sowieso eher langweilt
3) Eine lokale Erzeugung zwar eine komplexere Übergabe erfordert aber auch mehr Möglichkeiten schafft auch andere Dinge anzuzeigen (und häufiger) - Beispiel Uhrzeit, Status des ESP32, ...

Ich habe ja siehe früheren Beitrag die Umwandlung schonmal umgebaut, so dass sie deutlich weniger Zeit in Anspruch nimmt aber bei einem grossen Display (7,5 '' waveshare) dauert es immer noch regelmässig über 1 Sek und das Inkplate hat sogar deutlich mehr Pixel...

Vielleicht muss ich mir so ein Ding bestellen, ab 90€ ist ja eigentlich kein Schnäppchen wenn man berücksichtigt, dass das Display ja recycltet ist....



Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 24 August 2020, 17:59:37
Zitat von: viegener am 24 August 2020, 17:34:35
Der begrenzende Faktor ist nicht die generelle Kapazität des Rechners, sondern das FHEM im Grundsatz ein einzelner Prozess ist. Damit gilt für das Modul in der jetzigen Form, dass alle anderen Dinge warten müssen (auch die Bearbeitung von Events und Schaltbefehlen). Es müsste entweder das Modul die Erzeugung in einen separaten Prozess (Blocking call) auslagern oder eben auf das Displaymodul.

Mein Punkt ist, dass
1) Unterschiedliche Displays auch unterschiedliche Ansteuerungen haben
2) Ein ESP-32 mit 2 Kernen sich sowieso eher langweilt
3) Eine lokale Erzeugung zwar eine komplexere Übergabe erfordert aber auch mehr Möglichkeiten schafft auch andere Dinge anzuzeigen (und häufiger) - Beispiel Uhrzeit, Status des ESP32, ...

Ich habe ja siehe früheren Beitrag die Umwandlung schonmal umgebaut, so dass sie deutlich weniger Zeit in Anspruch nimmt aber bei einem grossen Display (7,5 '' waveshare) dauert es immer noch regelmässig über 1 Sek und das Inkplate hat sogar deutlich mehr Pixel...
Ich verstehe deinen Punkt. Und genau bei der komplexeren Übergabe sehe ich das Problem, dass es für die meisten Anwender nicht mehr händelbar ist. Möglicherweise könnte man die Werteübergabe noch mit JSON kapseln. Wenn man dann jedoch mit (Wetter)Icons usw. hantiert, wird es mMn unnötig kompliziert.
Je nachdem, wo FHEM läuft, könnte man einen separaten Prozess (/Thread) für die Umwandlung vorsehen, wie du vorgeschlagen hast. Wenn ein Blocking Call das ist, was der Name suggeriert, würde er nicht helfen, da FHEM dann auch warten muss, oder? Ich für meinen Teil finde ESPEInk, aufgrund seiner Einfachheit mit dem Rendern in FHEM, bestechend.
Btw. mit einer angepassten ESP32-Firmware kann sich der ESP auch schlafen legen und wird per MQTT auf neue Daten aufmerksam gemacht.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: arthur_dent_2015 am 24 August 2020, 19:06:08
Zitat von: viegener am 24 August 2020, 17:34:35
Der begrenzende Faktor ist nicht die generelle Kapazität des Rechners, sondern das FHEM im Grundsatz ein einzelner Prozess ist. Damit gilt für das Modul in der jetzigen Form, dass alle anderen Dinge warten müssen (auch die Bearbeitung von Events und Schaltbefehlen). Es müsste entweder das Modul die Erzeugung in einen separaten Prozess (Blocking call) auslagern oder eben auf das Displaymodul.

Mein Punkt ist, dass
1) Unterschiedliche Displays auch unterschiedliche Ansteuerungen haben
2) Ein ESP-32 mit 2 Kernen sich sowieso eher langweilt
3) Eine lokale Erzeugung zwar eine komplexere Übergabe erfordert aber auch mehr Möglichkeiten schafft auch andere Dinge anzuzeigen (und häufiger) - Beispiel Uhrzeit, Status des ESP32, ...

Ich habe ja siehe früheren Beitrag die Umwandlung schonmal umgebaut, so dass sie deutlich weniger Zeit in Anspruch nimmt aber bei einem grossen Display (7,5 '' waveshare) dauert es immer noch regelmässig über 1 Sek und das Inkplate hat sogar deutlich mehr Pixel...

Vielleicht muss ich mir so ein Ding bestellen, ab 90€ ist ja eigentlich kein Schnäppchen wenn man berücksichtigt, dass das Display ja recycltet ist....
Das Modul müsste auf Blocking Call umgeschrieben werden. Ein Raspi 4 mit RAM > 1GB sollte damit dann locker umgehen können.
Deine 3 Punkte unterschreibe ich. Ich denke aber dass dann ein eigenes Modul für das Inkplate her müsste. Mehrere Displays mit einem Modul ansteuern, der Code dürfte schnell unübersichtlich werden. Leider ist die Dokumentation für das Inkplate noch unvollständig https://inkplate.readthedocs.io/en/latest/index.html
Ja, für €129 (inkl. Rahmen und Porto) bekommst Du 3 Waveshare mit ähnlichen Eigenschaften, aber eben kein Kindle ;) , keine Elektronik für die Ansteuerung und keinen ESPxxxx. Außerdem bewahrt man damit einige vor der Verschrottung :)

Zitat von: Jendaw am 24 August 2020, 17:59:37
Ich verstehe deinen Punkt. Und genau bei der komplexeren Übergabe sehe ich das Problem, dass es für die meisten Anwender nicht mehr händelbar ist. Möglicherweise könnte man die Werteübergabe noch mit JSON kapseln. Wenn man dann jedoch mit (Wetter)Icons usw. hantiert, wird es mMn unnötig kompliziert.
Je nachdem, wo FHEM läuft, könnte man einen separaten Prozess (/Thread) für die Umwandlung vorsehen, wie du vorgeschlagen hast. Wenn ein Blocking Call das ist, was der Name suggeriert, würde er nicht helfen, da FHEM dann auch warten muss, oder? Ich für meinen Teil finde ESPEInk, aufgrund seiner Einfachheit mit dem Rendern in FHEM, bestechend.
Btw. mit einer angepassten ESP32-Firmware kann sich der ESP auch schlafen legen und wird per MQTT auf neue Daten aufmerksam gemacht.

VG
Ein Blocking Call macht genau das Gegenteil von dem was der Name suggeriert (wenn ich das richtig verstanden habe) siehe https://wiki.fhem.de/wiki/Blocking_Call.
Das Inkplate kann wohl Web Seiten out of the box darstellen, aber dann langweilt sich der ESP. Wie viegener schon geschrieben hat, die Möglichkeiten, die sich damit auftun, wären viel größer :)
Da wir jetzt schon 2 Interssenten sind, sollten wir vielleicht einen eigenen Thread für das Inkplate aufmachen??? Vielleicht outen sich dann noch mehr Inkplate Besitzer...
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: rcmcronny am 25 August 2020, 08:51:44
Hallo,

ich habe zwar keins, lese aber auch mit, weil ich auch mit dem Gedanken spiele (nur weiss ich noch nicht ob Inkplate oder Waveshare .. aber das Inkshare klingt gut und der Preis ist auch noch okay für das Paket.

Vielleicht wäre es Modulmässig doch besser, das in Submodule je Display umzubauen. So das die generelle Logik usw zentral im "Mastermodul" ist und die spezifischen Modulsachen dann jeweils im entsprechenden Submodul fürs Modell.
Das wäre auch für Erweiterungen usw ein sehr passender Weg. Die Frage ist nur, wie aufwendig ein Umbau / Anpassung initial wäre :)

Ansonsten lese ich erstmal mit. WO habt Ihr das denn bestellt, bei Crowssupply oder direkt in Kroatien bei https://e-radionica.com/hr/inkplate.html ?

Ronny
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: arthur_dent_2015 am 25 August 2020, 09:42:00
Direkt in Kroatien zu bestellen dürfte etwas günstiger sein. Die Transportkosten, je nach Transporteur, werden geringer sein, die Zollabfertigung und eventuelle Provisionszahlungen an Crowd Supply entfallen.
Dann wären wir schon 3, die Gemeinde wächst...  8)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: rcmcronny am 28 August 2020, 13:55:43
Moin,

ich habe mir mal eins in Kroatien bestellt. Lese also noch interessierter mit :D

Ronny
Titel: Attributformat oder Dummy
Beitrag von: m.zielinski am 20 September 2020, 16:07:46
Hi,

Ich würde gerne Temepraturen ohne Nachkommastellen ausgeben. wenn ich das Attribut temperature nehme, kommen die Werte mit einer Nachkommastelle. Den Device-Status habe ich bereits für andere zwecke verändert.
Wie bekomme ich das am besten hin?

auch ist es scheinbar nicht möglich, dummy's auszugeben weder mit dem dummynamen noch mit dummyname:state bekomme ich den Inhalt angezeigt.

Dann noch zu Icons.
Ich habe bei Fenstern das Icon so definiert:
devStateIcon Open:fts_door_right_open Closed:fts_door:10px-kreis-gelb

Leider bekomme ich mit iconreading#kueche_balkontuer:icon aber nur ein inverses icon (dunkler Hintergrund) von einem Haus.



Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 21 September 2020, 08:31:25
Bisher gibt es keine Möglichkeit, die Readings bei der Übergabe an das Modul noch zu formatieren. Am Besten machst Du ein userreading, wandelst dort die Temperatur in einen Wert ohne Nachkommastellen um und verwendest dann dieses Userreading für die Darstellung.

Dummies sollten auf jeden Fall funktionieren, die sind ja auch nichts anderes als FHEM Devices. Bitte poste mal die Definition des ESPEInk devices und des dummy devices (mit list <device>), dann kann ich nachschauen, ob da im Modul noch was falsch ist. Genauso für das Icon.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 21 September 2020, 08:50:56
Zitat von: eki am 21 September 2020, 08:31:25
Bisher gibt es keine Möglichkeit, die Readings bei der Übergabe an das Modul noch zu formatieren. Am Besten machst Du ein userreading, wandelst dort die Temperatur in einen Wert ohne Nachkommastellen um und verwendest dann dieses Userreading für die Darstellung.
Sicher? Ich würde meinen, mit einer Formatangabe geht das. Ich mache das bsp. mit den Temperaturen (man achte auf die geschweiften Klammern) so:
textreading#system_weather:fc0_Tn{% 2.f°C}#5#225#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0


Oder ist etwas anderes gemeint?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 21 September 2020, 15:57:05
Du hast recht, natürlich geht das. Ich kenne mein eigenes Modul nicht mehr  :-[
Titel: Antw:Attributformat oder Dummy
Beitrag von: m.zielinski am 22 September 2020, 07:57:16
Zitat von: m.zielinski am 20 September 2020, 16:07:46
Ich würde gerne Temepraturen ohne Nachkommastellen ausgeben.
Läuft



Icons
Ich habe das Problem weiter eingegrenzt mit einem
addicon#fts_window_1w#600#48#48
-> obwohl das svg unter openautomation liegt, wird das fhem-Haus-Icon zurückgeliefert



Dummy
Weder mit
textreading#d_time#410#432#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf
noch mit
textreading#d_time:STATE#410#432#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf

klappt es.

Internals:
  CFGFN      fhemmz.cfg
  FUUID      5c9521b8-f33f-4524-4e20-11aa57302b492f6d
  NAME       d_time
  NR         217
  STATE      07:33:02
  TYPE       dummy
Attributes:
  fp_lcars   410,708,0,


Titel: Antw:Attributformat oder Dummy
Beitrag von: m.zielinski am 22 September 2020, 08:29:26
Zitat von: m.zielinski am 22 September 2020, 07:57:16
Icons
Ich habe das Problem weiter eingegrenzt mit einem
addicon#fts_window_1w#600#48#48
-> obwohl das svg unter openautomation liegt, wird das fhem-Haus-Icon zurückgeliefert
Nach einem installieren von Libsvg und restart bekomme ich nun statt des fhem-haus ein schwarzes Rechteck.  Mysteriös
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 22 September 2020, 08:30:34
Welchen Display Type verwendest Du denn?
Hast Du Fehlermeldungen im Logfile?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: m.zielinski am 22 September 2020, 08:40:56
Internals:
   BOARDTYPE  ESP8266
   COLORMODE  monochrome
   CONVERTMODE dithering
   DEF        /opt/fhem/www/images/800x480.png
   DEVICETYPE 7.5inch_e-Paper_HAT_V2
   FUUID      5f65a0ba-f33f-4524-c8ba-d35ff3a12726a55b
   INTERVAL   120
   NAME       epaper
   NOTIFYDEV  kueche_balkontuer,bad_fenster,netatmo_M02_00_00_03_9c_4c,netatmo_M03_00_00_09_1c_ba,netatmo_M03_00_00_08_d9_a4,wohn_aussen_temp,global,kiana_fenster,Feinstaub,bad_temperatur,netatmo_M03_00_00_08_db_d2,d_time,epaper,schlaf_fenster,wohn_fenster,netatmo_D70_ee_50_03_80_88
   NR         1334
   NTFY_ORDER 50-epaper
   PICTUREFILE /opt/fhem/www/images/800x480.png
   STATE      Successfully uploaded image to device
   SUBFOLDER  images
   TYPE       ESPEInk
   URL        192.168.1.189
   Helper:
     DBLOG:
       result_picture:
         logdb:
           TIME       1600756812.16413
           VALUE      <html><img src=/fhem/images/epaper/result.png?dummy=633048.348425838></img><div>/fhem/images/epaper/result.png</div></html>
       state:
         logdb:
           TIME       1600755985.13761
           VALUE      convert
   READINGS:
     2020-09-22 08:17:38   deftexts        0
     2020-09-22 08:40:12   result_picture  <html><img src=/fhem/images/epaper/result.png?dummy=633048.348425838></img><div>/fhem/images/epaper/result.png</div></html>
     2020-09-22 08:17:34   source_picture  <html><img src=/fhem/images/epaper/800x480.png?dummy=712164.636852094></img><div>/fhem/images/epaper/800x480.png</div></html>
   helper:
Attributes:
   convertmode dithering
   definition addtext#Küche##0#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
textreading#netatmo_M03_00_00_09_1c_ba:co2#250#0#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf
textreading#netatmo_M03_00_00_09_1c_ba:temperature{%2.f°}#410#0#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf
textreading#kueche_balkontuer:state#600#0#48#0#0#/usr/share/fonts/truetype/msttcorefonts/arial.ttf

addtext#Bad##48#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
textreading#bad_temperatur:temperature{%2.f°}#410#48#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf
textreading#bad_fenster:state#600#48#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf
addicon#fts_window_1w#580#48#48

addtext#Schlaf##96#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
textreading#netatmo_M03_00_00_08_d9_a4:co2#250#96#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf
textreading#netatmo_M03_00_00_08_d9_a4:temperature{%2.f°}#410#96#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf
textreading#schlaf_fenster:state#600#96#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf

addtext#Wohn##144#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
textreading#netatmo_D70_ee_50_03_80_88:co2#250#144#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf
textreading#netatmo_D70_ee_50_03_80_88:temperature{%2.f°}#410#144#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf
textreading#wohn_fenster:state#600#144#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf

addtext#Kind##192#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
textreading#netatmo_M03_00_00_08_db_d2:co2#250#192#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf
textreading#netatmo_M03_00_00_08_db_d2:temperature{%2.f°}#410#192#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf
textreading#kiana_fenster:state#600#192#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf

addtext#.##240#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf

addtext#Straße##288#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
textreading#wohn_aussen_temp:temperature{%2.f°}#410#288#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf
textreading#wohn_aussen_temp:humidity{%2.f%}#530#288#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf

addtext#Balkon##336#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
textreading#netatmo_M02_00_00_03_9c_4c:temperature{%2.f°}#410#336#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf
textreading#netatmo_M02_00_00_03_9c_4c:humidity{%2.f%}#530#336#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf

addtext#Feinstaub##384#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf
textreading#Feinstaub:PM2.5#410#384#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf

textreading#d_time#410#432#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf

   devicetype 7.5inch_e-Paper_HAT_V2
   interval   120
   room       Alarm
   url        192.168.1.189
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 23 September 2020, 14:16:56
Ich habe das jetzt mal bei mir genauso nachgestellt, und da sehe ich sowohl das STATE reading des Dummies als auch das Icon.

Steht irgendwas komisches im Logfile?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: m.zielinski am 23 September 2020, 15:04:49
Ich habe die definition nochmal gekürzt
addicon#fts_window_1w#580#0#48
textreading#d_time#10#0#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf
textreading#d_time:STATE#120#0#48#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf

auch einzeln diese Zeilen bringen nicht die gewünschten Ergebnisse. Ich bekomme immer nur einen schwarzen Block statt des icon und vom Dummy wird nichts ausgegeben

Manchmal bei verbose 5 habe ich diese Meldung gesehen: 2020.09.23 14:40:10 1: Timeout for ESPEInk_DoConvert reached, terminated process 20583
Ohne Verbose 5 wird die Grafik nach ca 4 Sekunden aktualisiert im WebFrontend und es steht ""Conversion done" da.

Ich hänge nochmal meine leere Grafik an sowie eine Result-Grafik.


Das verbose 5 Logfile wäre etwas sehr lang - auch wenn es nur kurz läuft.

PNG-Icons scheinen zu funktionieren aber wegen monochrome sehen die nicht so richtig aus.

# $Id: 89_ESPEInk.pm 21519 2020-03-26 06:41:38Z eki $

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 02 November 2020, 08:40:14
ch habe mal wieder eine neue Version gemacht. Folgendes ist neu:


Wäre schön, wenn der Ein oder Andere mal testen könnte. Wenn ich in den nächsten paar Tagen nichts Negatives höre, würde ich die Version dann offiziell freigeben.

@m.zielinski: Habe leider noch keine Idee woran die Probleme bei Dir liegen. Was die Icons betrifft, könnte ich mir allenfalls eine falsch installierte SVGLib vorstellen. Hast Du die Icons im Standarddirectory der FHEM Installation liegen?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: m.zielinski am 02 November 2020, 13:07:36
Zitat von: eki am 02 November 2020, 08:40:14
@m.zielinski: Habe leider noch keine Idee woran die Probleme bei Dir liegen. Was die Icons betrifft, könnte ich mir allenfalls eine falsch installierte SVGLib vorstellen. Hast Du die Icons im Standarddirectory der FHEM Installation liegen?

SVG habe ich so installiert:
sudo apt-get install librsvg2-dev
sudo apt-get install libimage-librsvg-perl


Die Icons liegen unter /opt/fhem/www/images/openautomation
Wenn ich die Endung svg Weglassse, kommt ein schwarzes kästchen, mache ich .svgf dahinter, wird gar nichts ausgegeben.

Würde LibSVG auch das nicht angezeigte Uhrzeit-Dummy erklären?





Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 02 November 2020, 14:10:38
zu den Icons: Wenn da ein schwarzes Rechteck kommt, dann deutet das darauf hin, dass SVG zwar installiert ist und dass das entsprechende File auch gefunden wird, dass aber beim Einfügen in das Bild etwas nicht richtig klappt.  Wenn das FHEM Haus angezeigt wird, dann liegt es daran, dass das angegebene Icon nicht gefunden wird. Hast Du im Device "global" das attribut "modpath" gesetzt, wie heißt Dein FHEMWEB Device und ist dort das Attibut "iconPath" gesetzt? Welche GD Library verendest Du?

Zum Dummy: Kannst Du mal von dem Device ein Listing schicken.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: m.zielinski am 02 November 2020, 14:57:44
global modpath steht auf "."
iconPath ist in keinem meiner FHEMWEB-Devices gesetzt

Wie finde ich den stand der GD Library heraus ?
Installiert habe ich:
sudo apt-get install php-gd
sudo apt-get install libgd-perl


Dummy hatte ich bereits geschickt: https://forum.fhem.de/index.php/topic,104171.msg1086804.html#msg1086804
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: viegener am 02 November 2020, 22:54:24
Zitat von: eki am 02 November 2020, 08:40:14
ch habe mal wieder eine neue Version gemacht. Folgendes ist neu:



  • Ich habe die hier (https://forum.fhem.de/index.php/topic,104171.msg1050446.html#msg1050446 (https://forum.fhem.de/index.php/topic,104171.msg1050446.html#msg1050446)) gemachten Vorschläge eingebaut (hatte ich völlig vergessen, sorry @viegener).

  • Es gibt ein neues EInk Display (7.5inch_e-Paper_HAT_(B)_HD) von Waveshare, das wird jetzt unterstützt.


  • Es gibt jetzt den zusätzlichen Befehl addsymbol. Damit lassen sich Symbole (Linien, Rechtecke, Ellipsen, Bögen) zum Bild hinzufügen. Details sind in der Modulhilfe zu finden.

Wäre schön, wenn der Ein oder Andere mal testen könnte. Wenn ich in den nächsten paar Tagen nichts Negatives höre, würde ich die Version dann offiziell freigeben.

@m.zielinski: Habe leider noch keine Idee woran die Probleme bei Dir liegen. Was die Icons betrifft, könnte ich mir allenfalls eine falsch installierte SVGLib vorstellen. Hast Du die Icons im Standarddirectory der FHEM Installation liegen?

Ich habe mal einen ersten Test gemacht, bin aber auf einige perl-Warnungen gestossen:

2020.11.02 22:52:30.231 1: PERL WARNING: Use of uninitialized value $type in string ne at ./FHEM/89_ESPEInk.pm line 1249.
2020.11.02 22:52:34.207 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/89_ESPEInk.pm line 1993.
2020.11.02 22:52:34.256 1: PERL WARNING: Use of uninitialized value in numeric ne (!=) at ./FHEM/89_ESPEInk.pm line 2004.


Brauchst Du mehr Infos?

Nachtrag: Ich habe mal etwas debugged, es entsteht durch Leerzeilen in der Definition
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 03 November 2020, 09:33:58
Das sind ja erst mal nur Warnungen (ich denke ich habe den "Fehler" gefunden, wollte sowas jetzt aber erst mal sammeln, bevor ich eine neue Version mache). Funktioniert denn das Modul grundsätzlich?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: viegener am 03 November 2020, 22:17:04
Zitat von: eki am 03 November 2020, 09:33:58
Das sind ja erst mal nur Warnungen (ich denke ich habe den "Fehler" gefunden, wollte sowas jetzt aber erst mal sammeln, bevor ich eine neue Version mache). Funktioniert denn das Modul grundsätzlich?


Aber klar - Sorry wenn ich das nicht gesagt hatte
Durch entfernen der Leerzeilen kann ich momentan auch die Warnungen zumindest reduzieren
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: m.zielinski am 11 Januar 2021, 11:46:33
Zu dem Problem mit dem nicht angezeigten Zeit-Dummy.
Ich habe das dumme gefüllt mit setstate - dadurch wird die Zeit bei den Internals unter State eingetragen. -> keine Augabe auf epaper
Wenn ich das dummy mit set fülle, wird der wert in das reading "state" geschrieben (nicht unter Internals!) und die Ausgabe kommt wie erwartet.

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 11 Januar 2021, 21:54:57
Kannst Du mal ein List Deines dummies jeweils mit den beiden Varianten posten (geht/geht nicht).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: m.zielinski am 12 Januar 2021, 06:56:58
Funktioniert :
Internals:
   CFGFN      fhemmz.cfg
   FUUID      5c9521b8-f33f-4524-4e20-11aa57302b492f6d
   NAME       d_time
   NR         217
   STATE      06:53
   TYPE       dummy
   Helper:
     DBLOG:
       state:
         logdb:
           TIME       1610430821.36789
           VALUE      06:53
   READINGS:
     2021-01-12 06:53:41   state           06:53
Attributes:
   fp_lcars   410,708,0,



Funktioniert nicht :

Internals:
  CFGFN      fhemmz.cfg
  FUUID      5c9521b8-f33f-4524-4e20-11aa57302b492f6d
  NAME       d_time
  NR         217
  STATE      07:33:02
  TYPE       dummy
Attributes:
  fp_lcars   410,708,0,
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: viegener am 12 Januar 2021, 16:29:20
Zitat von: m.zielinski am 11 Januar 2021, 11:46:33
Zu dem Problem mit dem nicht angezeigten Zeit-Dummy.
Ich habe das dumme gefüllt mit setstate - dadurch wird die Zeit bei den Internals unter State eingetragen. -> keine Augabe auf epaper
Wenn ich das dummy mit set fülle, wird der wert in das reading "state" geschrieben (nicht unter Internals!) und die Ausgabe kommt wie erwartet.

Soweit ich die Syntax kenne werden dort Readings verarbeitet (und nicht Internals) also hast Du Dir die Erklärung doch selber gegeben gerade?
In dem nicht funktionierenden Dummy ist kein Reading state vorhanden - damit gibt es dafür keinen Wert - Internals sind etwas komplett anderes und eher intern im Modul gedacht.


PS: Bitte trage doch Lists / logs / etc in Code tags ein - damit das besser lesbar wird
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 12 April 2021, 18:56:57
Hallo Zusammen,

ich möchte ein 7,5" ePaper als Status Panel installieren und habe dafür den Threat ausgiebig studiert. Nach etwas ausprobieren habe ich alles hinbekommen was ich anzeigen möchte. Sehr schönes Modul  :) Danke eki

Nun möchte ich mir die entsprechende Hardware bestellen und würde gerne eure Meinung hören.

1.) ESP32 oder ESP8266?
Bringt die bessere Leistung des ESP32 in dieser Anwendung was oder reicht ein ESP8266. Dabei geht es mir nicht um die 3 EUR die der 32er mehr kostet, sondern vielmehr um den Stromverbrauch. Bluetooth benötige auch nicht.

2.) Welches ePaper?
Ich würde gerne schwarz, weis und rot darstellen, bin aber unsicher ob ich das waveshare mit 800x480 oder das HD oder das V2 Panel nehmen soll. Die Preisunterschiede sind nicht ja so groß? Hat jemand Erfahrung?

Was bedeutet Refreshrate von 16s oder gar 21s? Es dauert doch nicht 21 sec bis das Display neu aufgebaut ist, oder?

Vielen Dank für Eure Hinweise.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 16 April 2021, 18:40:37
Zitat von: Borkk am 12 April 2021, 18:56:57
1.) ESP32 oder ESP8266?
Bringt die bessere Leistung des ESP32 in dieser Anwendung was oder reicht ein ESP8266. Dabei geht es mir nicht um die 3 EUR die der 32er mehr kostet, sondern vielmehr um den Stromverbrauch. Bluetooth benötige auch nicht.

Der ESP hat kaum etwas zu tun, da genügt der ESP8266. Falls du die Original-Firmware einsetzt, so gibt es dort keine Stromsparmechanismen, der läuft ständig. Falls es dir nicht auf die Minute darauf ankommt, könntest du ein geänderte Firmware einsetzen, die MQTT unterstützt. Damit kann der ESP die meiste Zeit schlafen. Nach dem Aufwachen fragt er kurz an, ob neue Daten vorhanden sind und diese sich dann zuschicken lassen. So habe ich es bei mir gelöst.

Zitat
2.) Welches ePaper?
Ich würde gerne schwarz, weis und rot darstellen, bin aber unsicher ob ich das waveshare mit 800x480 oder das HD oder das V2 Panel nehmen soll. Die Preisunterschiede sind nicht ja so groß? Hat jemand Erfahrung?

Was bedeutet Refreshrate von 16s oder gar 21s? Es dauert doch nicht 21 sec bis das Display neu aufgebaut ist, oder?

Ich habe das ältere 7,5" Display, mir genügt die Auflösung um den Status aller Fenster, Temperaturen, Abfallabholtermine und versch. Status anzuzeigen. Und ja, die Refreshrate ist tatsächlich die Zeit, die bis zur Darstellung des Bildes vergeht. Das dauert bei den großen recht lange - da gewöhnt man sich dran (wenn man es nicht anders kennt) ;)

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 21 April 2021, 00:19:29
Hallo Jendaw,

Danke für deine Antwort.
Ich habe mir mal das Waveshare 17059 7.5 HD in sw/ws/rt, ein kleines Waveshare 13339 2.9  und je ein ESP32 und ein ESP8266 bestellt. Bin mal gespannt wie das alles so funktioniert. Das Modul ESPEInk Modul läuft jedenfalls schon mal und generiert das png file. Hab übrigens bei Welectron bestellt, dort waren die Komponenten deutlich günstiger als bei Amazon.

Ich bin in das ESP Thema erst vor kurzem eingestiegen und habe ein 0,96 OLED Display mit ESPEasy angeschaltet. Das ging überraschend einfach. Nach 2 sehr schönen Projekten von jjRobots (iBoardBot und Spher-O-Bot) bin ich jetzt auf den Geschmack gekommen. ;)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: m.zielinski am 24 Mai 2021, 12:36:53
Zitat von: Jendaw am 16 April 2021, 18:40:37
Der ESP hat kaum etwas zu tun, da genügt der ESP8266. Falls du die Original-Firmware einsetzt, so gibt es dort keine Stromsparmechanismen, der läuft ständig.

Ich habe ein 7.5v2 seit ein 7 Monaten laufen. Jetzt ist das Schwarz nur noch ein Grau und der Support von Waveshare sagt, dass der Dauerstrom (seiner eigenen Software) dazu geführt hat.
Hat noch jemand dieses Problem?

Ich lasse das Display 24*7 an Strom hinter dem esp8266 und aktualisiere alle 5 Minuten.

Hat noch jemand dieses Problem?

Denn wenn die Firmware von Waveshare den Strom dauerhaft an lässt und das Display dadurch beschädigt wird, kann man dieses Modul doch nicht länger nutzen?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 24 Mai 2021, 13:41:28
Zitat von: m.zielinski am 24 Mai 2021, 12:36:53
Ich habe ein 7.5v2 seit ein 7 Monaten laufen. Jetzt ist das Schwarz nur noch ein Grau und der Support von Waveshare sagt, dass der Dauerstrom (seiner eigenen Software) dazu geführt hat.
Hat noch jemand dieses Problem?

Ich lasse das Display 24*7 an Strom hinter dem esp8266 und aktualisiere alle 5 Minuten.

Hat noch jemand dieses Problem?

Denn wenn die Firmware von Waveshare den Strom dauerhaft an lässt und das Display dadurch beschädigt wird, kann man dieses Modul doch nicht länger nutzen?

Mein 7.5'er läuft seit fast 1,5a, das Schwarz sieht noch schwarz aus. Ich nutze eine leicht geänderte Firmware, die eine konfigurierbare Sleeptime hat (bei mir sind es ~60s). Zusätzlich lasse ich via MQTT anfragen, ob neue Daten in FHEM vorliegen und lasse diese dann abholen. Damit wird das Displays nicht aktualisiert, wenn keine neuen Daten anliegen und der Verschleiß macht sich bisher nicht so bemerkbar.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: m.zielinski am 24 Mai 2021, 14:15:51
Zitat von: Jendaw am 24 Mai 2021, 13:41:28
Mein 7.5'er läuft seit fast 1,5a, das Schwarz sieht noch schwarz aus. Ich nutze eine leicht geänderte Firmware, die eine konfigurierbare Sleeptime hat (

Dann werde ich auch auf diese Firmware umsteigen. Wichtig war mir, andere zu warnen, dass es dabei nicht nur um den Stromverbrauch sondern auch um die Haltbarkeit des Display geht.
Denn auch im Waveshare Wiki wird ausdrücklich vor dauerstrom gewarnt wegen Fading und sonstigen Schäden.

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 09 Juni 2021, 17:21:35
Ich lese schon länger mit und habe mir nun auch ein 7,5" HD und ein EPS8266 eingerichtet. Ich verwende den Sketch aus dem git (https://github.com/Yattien). Mit dem aktuellen ESP8266er Boardpackage lässt sich der Sketch nicht kompilieren. Ich habe deshalb die Version 2.7.4 installiert. Ohne mqtt und ohne sleep läuft mein ESP zusammen mit FHEM.

Wenn ich sleep einstelle, dann wacht der ESP nicht mehr auf. Die rote LED leuchtet.

14:41:17.746 ->  Using configuration:
14:41:17.746 ->   MQTT Server: :1883, Client: ESPEInk_8caab56cee2d
14:41:17.746 ->   MQTT UpdateStatusTopic: stat/display/needUpdate
14:41:17.746 ->   MQTT CommandTopic: cmd/display/upload
14:41:17.746 ->   sleep time: 120
14:41:17.746 ->   firmware base URL:
14:41:17.746 -> Setup complete.
14:41:17.746 -> Webserver started, waiting 10s for data
14:41:27.766 ->
14:41:27.766 -> Going to sleep for 120 seconds.
14:41:27.766 ->
14:43:24.322 -> rl

Der ESP wird mit 3,3V direkt versorgt, deshalb schließe ich die Stromversorgung aus.

Wenn ich mqtt einstelle, verbindet sich der ESP mit Mosquitto und wirft sofort eine Exception. Laut Logfile ist keine Verbindung erkannt worden.

17:03:12.518 ->
17:03:12.518 ->  ets Jan  8 2013,rst cause:2, boot mode:(3,6)
17:03:12.518 ->
17:03:12.518 -> load 0x4010f000, len 3584, room 16
17:03:12.518 -> tail 0
17:03:12.518 -> chksum 0xb0
17:03:12.518 -> csum 0xb0
17:03:12.518 -> v2843a5ac
17:03:12.518 -> ~ld
17:03:12.585 ->
17:03:12.585 -> ESPEInk_ESP8266 v18, reset reason='Software/System restart'...
17:03:12.585 -> Entering setup...
17:03:12.651 ->  Reading config file...
17:03:12.651 ->  Config file read.
17:03:12.651 ->  Connecting to WiFi...
17:03:14.641 ->  Connected to WiFi.
17:03:14.641 ->  Using configuration:
17:03:14.641 ->   MQTT Server: 192.168.2.7:1883, Client: ESPEInk_8caab56cee2d
17:03:14.641 ->   MQTT UpdateStatusTopic: stat/display/needUpdate
17:03:14.641 ->   MQTT CommandTopic: cmd/display/upload
17:03:14.641 ->   sleep time: 0
17:03:14.641 ->   firmware base URL:
17:03:14.641 -> Setup complete.
17:03:14.641 -> Connecting to MQTT...
17:03:14.641 ->
17:03:14.641 -> User exception (panic/abort/assert)
17:03:14.641 -> --------------- CUT HERE FOR EXCEPTION DECODER ---------------
17:03:14.641 ->
17:03:14.641 -> Abort called
17:03:14.641 ->
17:03:14.641 -> >>>stack>>>
17:03:14.641 ->
17:03:14.641 -> ctx: cont
17:03:14.641 -> sp: 3ffffe00 end: 3fffffc0 offset: 0000
17:03:14.675 -> 3ffffe00:  3fff4688 00000000 00000000 3fff4688 
17:03:14.675 -> 3ffffe10:  000000fe 00000000 00000000 00000000 
17:03:14.675 -> 3ffffe20:  00000000 00000000 00000000 3fff47a0 
17:03:14.675 -> 3ffffe30:  00000000 00000000 401002be 00000000 
17:03:14.675 -> 3ffffe40:  3fff39d0 3fff81dc 00004145 402199c2 
17:03:14.675 -> 3ffffe50:  3fff39d0 3fff81dc 00000020 402199d4 
17:03:14.675 -> 3ffffe60:  007a1200 865bb1d3 00004145 4022be6d 
17:03:14.675 -> 3ffffe70:  00000000 00000000 3fff3dcc 4022be08 
17:03:14.675 -> 3ffffe80:  3fff33d0 3fff3dcc 3fff3dcc 40211922 
17:03:14.708 -> 3ffffe90:  0000000e 3fff4218 00000001 40219458 
17:03:14.708 -> 3ffffea0:  00000000 00000000 00000000 40219aba 
17:03:14.708 -> 3ffffeb0:  00000000 3fff3dcc 3fff7bdc 402105a8 
17:03:14.708 -> 3ffffec0:  3fff3fc8 00000d50 3fffff00 3fff3b84 
17:03:14.708 -> 3ffffed0:  0000075b 3fff3dcc 3fff39d0 3fff3b84 
17:03:14.708 -> 3ffffee0:  0000075b 3fff3dcc 3fff39d0 40211b85 
17:03:14.708 -> 3ffffef0:  40223880 0702a8c0 40223880 0702a8c0 
17:03:14.741 -> 3fffff00:  3fff3a04 3fff3d80 00000000 40215950 
17:03:14.741 -> 3fffff10:  40216b68 3fff4078 3ffece76 40216b74 
17:03:14.741 -> 3fffff20:  3fff3a84 00000000 00000000 00000000 
17:03:14.741 -> 3fffff30:  3fff4078 3fff3d80 3fff3dcc 40210d12 
17:03:14.741 -> 3fffff40:  3fff4078 00000000 3fff3d80 3fff3d65 
17:03:14.741 -> 3fffff50:  3fff4078 3fff3d80 00000000 40203b88 
17:03:14.741 -> 3fffff60:  00000000 00000000 00000000 40222dac 
17:03:14.741 -> 3fffff70:  3fff3d80 00000000 3fff3d64 40207ead 
17:03:14.774 -> 3fffff80:  feefeffe 80efeffe 3fff6d00 0017001f 
17:03:14.774 -> 3fffff90:  80efeffe feefeffe feefeffe 3fff41b8 
17:03:14.774 -> 3fffffa0:  3fffdad0 00000000 3fff4178 40219570 
17:03:14.774 -> 3fffffb0:  feefeffe feefeffe 3ffe8b2c 40100d39 
17:03:14.774 -> <<<stack<<<
17:03:14.774 ->
17:03:14.774 -> --------------- CUT HERE FOR EXCEPTION DECODER ---------------

Die mqtt-Kommunikation funktioniert, wenn ich den ESP-Part manuell übernehme. Soll heißen, ich bekomme "stat/display/needUpdate true" und antworte mit cmd/display/upload. Dann startet der Upload.

Beim Kompilieren des Sketches sehe ich keine Fehler. Hat jemand eine Idee, was da schief gelaufen sein könnte?


Beim FHEM-Modul bin ich auch auf einen Fehler gestoßen. Ich nutze AddSymbol um ein rotes Rechteck zu erzeugen. Der Code erwartet offenbar Parameter für solide oder gestrichelte Linien usw. in $s1 und $s2. Die beiden Variablen sind aber nicht initialisiert. Das führt zu
2021.06.08 14:13:46 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1402.
2021.06.08 14:13:46 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1403.
2021.06.08 14:13:46 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1403.
2021.06.08 14:13:46 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1404.

Das Rechteck wird aber trotzdem erzeugt.

Für das Modul möchte ich noch vorschlagen timeout für ESPEInk_Convert nit einem Attribut festzulegen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: m.zielinski am 09 Juni 2021, 20:31:49
Zum Problem mit dem deepsleep und der roten LED - hast du die kabelbrücke wie im Sourcecode beschrieben gesetzt?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 09 Juni 2021, 22:09:30
Zitat von: hajo23 am 09 Juni 2021, 17:21:35
Ich lese schon länger mit und habe mir nun auch ein 7,5" HD und ein EPS8266 eingerichtet. Ich verwende den Sketch aus dem git (https://github.com/Yattien). Mit dem aktuellen ESP8266er Boardpackage lässt sich der Sketch nicht kompilieren. Ich habe deshalb die Version 2.7.4 installiert. Ohne mqtt und ohne sleep läuft mein ESP zusammen mit FHEM.
Das werde ich mir die Tage noch mal ansehen. Ich habe mir auch ein zweites 7.5" besorgt und werde meine Buildumgebung aktualisieren.
Welche Version kompilierst du, den Head (neueste Version) oder einen Tag? Welches ESP8266-Board nutzt du, das Originale von waveshare?

edit: Du nutzt den Head, konnte es nachstellen. In der Version 3.0.0 des Boardpkg gibt es einige Änderungen, u.a. sind auch APIs verschwunden. Das betrifft aktuell:
* die OTA-Update-Funktion, Fix ist im git
* die Überprüfung der TLS-Verbindung zum MQTT-Server, könnte man auskommentieren, bis ich eine Lösung gefunden habe: L428-436

diff --git a/ESPEInk_ESP8266.ino b/ESPEInk_ESP8266.ino
index 647bb57..da674f7 100644
--- a/ESPEInk_ESP8266.ino
+++ b/ESPEInk_ESP8266.ino
@@ -425,16 +425,6 @@ void reconnect() {

// -----------------------------------------------------------------------------------------------------
void verifyFingerprint() {
-       if (ctx.mqttFingerprint && strlen(ctx.mqttFingerprint) > 0) {
-               if(!espClient.verify(ctx.mqttFingerprint, ctx.mqttServer)) {
-                       Serial.printf("MQTT fingerprint '%s' does not match, rebooting...\r\n", ctx.mqttFingerprint);
-                       Serial.flush();
-                       delay(200);
-                       ESP.restart();
-               } else {
-                       Serial.println("MQTT fingerprint does match");
-               }
-       }
}

// -----------------------------------------------------------------------------------------------------

Damit lässt es sich mit den aktuellen Versionen wieder übersetzen.


VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 10 Juni 2021, 00:03:13
Zitat von: m.zielinski am 09 Juni 2021, 20:31:49
Zum Problem mit dem deepsleep und der roten LED - hast du die kabelbrücke wie im Sourcecode beschrieben gesetzt?

Du meinst das hier?

if the ESP does not wakeup from deepsleep a 220 resistor between SD0(MISO) and 3.3v might help


Oh je, danke für die Erinnerung. Ich war mir mit der Interpretation der Beschaltung (PIN-Belegung/Darstellung im Code) nicht ganz sicher, hatte das zurückgestellt und dann glatt vergessen.  Ich habe das originale Waveshare ESP verwendet.

Laut Plan im Code soll GPIO 16 (D0) mit RST gebrückt werden. An anderer Stelle wird auch zu einer Beschaltung von GPIO 16 und RST über R470 und ein RC-Glied (12K/100nf-1µF) geraten. Lt. Waveshare ist MISO/SD0 = PIN 10 beim ESP 12-E, ich habe aber einen 12-F bekommen. Ist das Layout beim 12-E und 12-F gleich? Ich nehme an, dass es gleich ist. Hast Du MISO über R220 an 3V3 geschaltet und hast Du D0 und Reset "nur" gebrückt?

Zitat von: Jendaw am 09 Juni 2021, 22:09:30
Das werde ich mir die Tage noch mal ansehen. Ich habe mir auch ein zweites 7.5" besorgt und werde meine Buildumgebung aktualisieren.
Welche Version kompilierst du, den Head (neueste Version) oder einen Tag? Welches ESP8266-Board nutzt du, das Originale von waveshare?

edit: Du nutzt den Head, konnte es nachstellen. In der Version 3.0.0 des Boardpkg gibt es einige Änderungen, u.a. sind auch APIs verschwunden. Das betrifft aktuell:
* die OTA-Update-Funktion, Fix ist im git
* die Überprüfung der TLS-Verbindung zum MQTT-Server, könnte man auskommentieren, bis ich eine Lösung gefunden habe: L428-436

diff --git a/ESPEInk_ESP8266.ino b/ESPEInk_ESP8266.ino
index 647bb57..da674f7 100644
--- a/ESPEInk_ESP8266.ino
+++ b/ESPEInk_ESP8266.ino
@@ -425,16 +425,6 @@ void reconnect() {

// -----------------------------------------------------------------------------------------------------
void verifyFingerprint() {
-       if (ctx.mqttFingerprint && strlen(ctx.mqttFingerprint) > 0) {
-               if(!espClient.verify(ctx.mqttFingerprint, ctx.mqttServer)) {
-                       Serial.printf("MQTT fingerprint '%s' does not match, rebooting...\r\n", ctx.mqttFingerprint);
-                       Serial.flush();
-                       delay(200);
-                       ESP.restart();
-               } else {
-                       Serial.println("MQTT fingerprint does match");
-               }
-       }
}

// -----------------------------------------------------------------------------------------------------

Damit lässt es sich mit den aktuellen Versionen wieder übersetzen.


VG

Wow, das ging echt schnell. Sobald ich die Beschaltung geklärt habe, teste ich. Vielen Dank!

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 10 Juni 2021, 07:47:13
Zitat von: hajo23 am 10 Juni 2021, 00:03:13
Du meinst das hier?
if the ESP does not wakeup from deepsleep a 220 resistor between SD0(MISO) and 3.3v might help

[...]

Laut Plan im Code soll GPIO 16 (D0) mit RST gebrückt werden. An anderer Stelle wird auch zu einer Beschaltung von GPIO 16 und RST über R470 und ein RC-Glied (12K/100nf-1µF) geraten. Lt. Waveshare ist MISO/SD0 = PIN 10 beim ESP 12-E, ich habe aber einen 12-F bekommen. Ist das Layout beim 12-E und 12-F gleich? Ich nehme an, dass es gleich ist. Hast Du MISO über R220 an 3V3 geschaltet und hast Du D0 und Reset "nur" gebrückt?
Gemeint ist die Brücke zwischen GPIO16/D0 und RST.
Der ESP12-F ist der Nachfolger vom 12-E und hat nur eine geänderte Antenne. Der Rest ist gleich.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 10 Juni 2021, 10:54:30
Zitat von: Jendaw am 10 Juni 2021, 07:47:13
Gemeint ist die Brücke zwischen GPIO16/D0 und RST.
Der ESP12-F ist der Nachfolger vom 12-E und hat nur eine geänderte Antenne. Der Rest ist gleich.

VG

Beim Herumspielen mit dem Pullup habe ich festgestellt, dass meine Kabelbrücke einen Wackel hat. Andere Kabelbrücke und schon läuft es mit dem Deepsleep.  :)

Ich habe den Verify-Teil auskommentiert, aber der Compiler beschwert sich noch:
Arduino: 1.8.15 (Linux), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Sketch + WiFi Settings, 115200"











In function 'void getUpdate()',
    inlined from 'void getUpdate()' at /home/adm1h/Arduino/ESPEInk_ESP8266/ESPEInk_ESP8266.ino:211:6:
ESPEInk_ESP8266:224:18: error: call to 'HTTPClient::begin' declared with attribute error: obsolete API, use ::begin(WiFiClient, url)
  224 |  httpClient.begin(firmwareVersionUrl);
      |  ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
exit status 1
call to 'HTTPClient::begin' declared with attribute error: obsolete API, use ::begin(WiFiClient, url)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 10 Juni 2021, 10:58:28
Zitat von: hajo23 am 10 Juni 2021, 10:54:30
Ich habe den Verify-Teil auskommentiert, aber der Compiler beschwert sich noch:
Arduino: 1.8.15 (Linux), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Sketch + WiFi Settings, 115200"

In function 'void getUpdate()',
    inlined from 'void getUpdate()' at /home/adm1h/Arduino/ESPEInk_ESP8266/ESPEInk_ESP8266.ino:211:6:
ESPEInk_ESP8266:224:18: error: call to 'HTTPClient::begin' declared with attribute error: obsolete API, use ::begin(WiFiClient, url)
  224 |  httpClient.begin(firmwareVersionUrl);
      |  ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
exit status 1
call to 'HTTPClient::begin' declared with attribute error: obsolete API, use ::begin(WiFiClient, url)

Sorry, hatte vergessen, die letzte Änderung auch zu pushen. Ist jetzt im Git, mach mal bitte noch mal ein "git pull" oder lade den aktuellen Stand herunter.
(Zeile 224 muss "httpClient.begin(espClient, firmwareVersionUrl);" lauten.)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 10 Juni 2021, 12:37:16
Zitat von: Jendaw am 10 Juni 2021, 10:58:28
Sorry, hatte vergessen, die letzte Änderung auch zu pushen. Ist jetzt im Git, mach mal bitte noch mal ein "git pull" oder lade den aktuellen Stand herunter.
(Zeile 224 muss "httpClient.begin(espClient, firmwareVersionUrl);" lauten.)

Das läuft.

Nun habe ich (nur) das mqtt Problem. Mit dem aktuellen Sketch steht jetzt im Log:

1623320567: New connection from 192.168.2.171 on port 1883.
1623320568: Socket error on client <unknown>, disconnecting.


Die IP-Adresse ist vom ESP. Muss ich beim mqtt-Server noch etwas konfigurieren?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 10 Juni 2021, 12:50:51
Zitat von: hajo23 am 10 Juni 2021, 12:37:16
Das läuft.

Nun habe ich (nur) das mqtt Problem. Mit dem aktuellen Sketch steht jetzt im Log:

1623320567: New connection from 192.168.2.171 on port 1883.
1623320568: Socket error on client <unknown>, disconnecting.


Die IP-Adresse ist vom ESP. Muss ich beim mqtt-Server noch etwas konfigurieren?
Am Server muss nichts mehr konfiguriert werden. Ich schätze, dass beim connect() ein Fehler steckt, muss ich mir näher anschauen und melde mich dazu noch mal. Bis dahin könntest du die letzte stable nutzen - das v17-Binary (https://github.com/Yattien/ESPEInk_ESP8266/releases/tag/v17) oder das v17-Tag (https://github.com/Yattien/ESPEInk_ESP8266/tree/v17) kompilieren (mit altem Boardpackage). Da lief, MQTT noch.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 10 Juni 2021, 13:16:22
Besten Dank an Euch für die Unterstützung. Mit der V17 läuft es jetzt.  :)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 10 Juni 2021, 13:17:53
Zitat von: hajo23 am 10 Juni 2021, 13:16:22
Besten Dank an Euch für die Unterstützung. Mit der V17 läuft es jetzt.  :)

Danke für die Rückmeldung und deine Geduld :D Da weiß ich jetzt, wo ich suchen muss.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 08 August 2021, 12:13:00
Hallo Zusammen,

ich habe mich mal an die Sache mit dem E-Paper Display gewagt. Mit Fhem kenne ich mich recht gut aus, aber mit den EPS8266 oder EPS32 Modulen habe ich noch keine große Erfahrung gesammelt. Ich bin jetzt an einem Punkt wo ich etwas Hilfe gebrauchen könnte.

Als Display habe ich ein Waveshare "7.5 Inch HD e-Paper (B)" als Board ein ESP32 oder ein ESP8266, beide auch von Waveshare.

Das Modul ESPEInk habe ich konfiguriert, es funktioniert einwandfrei. D.h. es wird ein PNG File mit Messwerten und Icons generiert.

Das ESP32 Board habe ich nach der Anleitung auf der Waveshare Seite konfiguriert. Es kommt ins WLAN und wenn ich es unter Spannung setze, sehe ich im Serial Monitor auf Arduino IDE, eine ganze Reihe "LOAD>>" Befehle gesendet werden und irgendwann mal ein "Show>>". Dann wird das PNG vom Modul auf auf das Display geladen und ordentlich angezeigt.

Das war es aber auch. Danach tut sich nichts mehr. Die Anzeige wird nicht mehr aktualisiert auch wenn sich das PNG im Modul ändert. Drücke ich den Reset Taster auf dem Board, wird das aktuelle Bild geladen. (Attr "Interval" steht auf 0)

Bevor ich hier Listings oder Protokolle poste wollte ich erst mal fragen ob ich einen Denkfehler habe.

Ich habe hier was von einer Brücke wegen "Deep Sleep" gelesen, von einer geänderten Firmware und einem für ESPInk angepassten Sketch. Vielleicht kann jemand meinen Knoten im Kopf lösen :-) und den besten Lösungsweg skizzieren.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 08 August 2021, 15:01:32
Zitat von: Borkk am 08 August 2021, 12:13:00
Als Display habe ich ein Waveshare "7.5 Inch HD e-Paper (B)" als Board ein ESP32 oder ein ESP8266, beide auch von Waveshare.

Das Modul ESPEInk habe ich konfiguriert, es funktioniert einwandfrei. D.h. es wird ein PNG File mit Messwerten und Icons generiert.

Das ESP32 Board habe ich nach der Anleitung auf der Waveshare Seite konfiguriert. Es kommt ins WLAN und wenn ich es unter Spannung setze, sehe ich im Serial Monitor auf Arduino IDE, eine ganze Reihe "LOAD>>" Befehle gesendet werden und irgendwann mal ein "Show>>". Dann wird das PNG vom Modul auf auf das Display geladen und ordentlich angezeigt.

Das war es aber auch. Danach tut sich nichts mehr. Die Anzeige wird nicht mehr aktualisiert auch wenn sich das PNG im Modul ändert. Drücke ich den Reset Taster auf dem Board, wird das aktuelle Bild geladen. (Attr "Interval" steht auf 0)
Kannst du bitte überprüfen, ob du mehrere Bilder mit der "Price-Tag"-Webseite der Original-Firmware hochladen kannst? Dazu rufst du den ESP einfach per Browser auf und konfigurierst dort dein Display.
Falls das funktioniert - gibt es Auffälligkeiten im FHEM-Log?

ZitatIch habe hier was von einer Brücke wegen "Deep Sleep" gelesen, von einer geänderten Firmware und einem für ESPInk angepassten Sketch.
Einige haben einen Deepsleep in die Firmware eingebaut. Der ESP8266 wacht nicht aus dem DeepSleep auf, wenn ein Widerstand (470-1k) zwischen D0 und RST fehlt. Die Waveshare-Boards sollten diesen jedoch bereits onboad haben.
Grundsätzlich sollte aber erst einmal der Upload mit der Original-Firmware laufen, auch mehrmals hintereinander.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Dankbarer_User am 08 August 2021, 19:33:42
Hallo eki,

vielen Dank für das großartige Modul. Ich habe seit 3 Jahren ein 7,5" b/w/r Display in Betrieb. Damals habe ich per rss Feed und exterem Script das Bild-File generiert und dann vom ESP8266 periodisch abholen lassen. Also alles per Hand zusammen gebastelt. Mit Deinem Modul ist das schon eine geschmeidige Sache!

Ich hab hier noch folgendes Display rumliegen:

https://www.waveshare.com/pico-epaper-5.65.htm (https://www.waveshare.com/pico-epaper-5.65.htm)

Könntest Du dieses Display in einem Update einpflegen? Mit 7 Farben läßt sich hinsichtlich bestimmer (Betriebs) Zustände richtig viel darstellen. In jedem Fall vielen Dank für Deine Arbeit.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 09 August 2021, 08:26:53
Das muss ich mir erst mal genauer anschauen, einerseits hat sich da bei Waveshare offensichtlich eine große Änderung bezüglich der Treiber ergeben und andererseits kann es sein, dass sich da auch für das Mehrfarbige Display einiges an Anpassung ergibt, kann also etwas dauern und ich möchte auch nicht zu viel versprechen, mal schauen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 09 August 2021, 14:35:56
Ich habe es mir noch mal angeschaut. Das basiert ja auf einem pi pico, wie machst Du denn da die Verbindung zu FHEM (hat ja kein WLAN oder so was).
Ich habe den Typ mal in das Modul eingebaut (Testversion angehängt), damit kann man aber erst mal nur Bilder (mit set convert) genrieren, die die entsprechenden Farben haben und eventuell per dithering Darstellung möglichst nah an die gewünschten Farben kommen (siehe Beispiel). Das mit der Übertragung zum Device ist mir, wie gesagt, unklar.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Dankbarer_User am 09 August 2021, 17:11:09
eki du bist wunderbar! Vielen Dank, ich werde die Anapssung soweit prüfen!

Ich Hammel habe Dir gestern den falschen Link gepostet. Hier ist der richtige. Das Display kommt genauso, wie die anderen. Entweder RAW oder mit dem Treiber gleich dabei. Dann, wie immer, eine SPI Schnittstelle. Ich lasse das Display mit einem Wemos testweise laufen. Im neuesten Loader von Waveshare ist dieser Displaytyp bereits enthalten.

Display mit Treiber: https://www.waveshare.com/product/displays/e-paper/epaper-1/5.65inch-e-paper-module-f.htm (https://www.waveshare.com/product/displays/e-paper/epaper-1/5.65inch-e-paper-module-f.htm)
Display RAW: https://www.waveshare.com/product/displays/e-paper/epaper-1/5.65inch-e-paper-f.htm (https://www.waveshare.com/product/displays/e-paper/epaper-1/5.65inch-e-paper-f.htm)

Aktuelle Loader Version für den ESP8266: https://www.waveshare.com/w/upload/d/d5/E-Paper_ESP8266_Driver_Board_Code.7z (https://www.waveshare.com/w/upload/d/d5/E-Paper_ESP8266_Driver_Board_Code.7z)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Dankbarer_User am 09 August 2021, 19:30:11
Übringens bzgl. DEEP SLEEP ESP8266:

Ich habe das bei meinem ersten E-Ink Display folgendermaßen gelöst:

Grundsätzlich benutze ich den Timer: https://www.ti.com/lit/ds/symlink/tpl5110.pdf?ts=1628458116847 (https://www.ti.com/lit/ds/symlink/tpl5110.pdf?ts=1628458116847)

Einer der Vorteile ist, dass der Timer von 1.8 bis 5.5V läuft und in Ruhe nur <40nA braucht.

Mit diesem Timer schalte ich über einen Mosfest die Stromversorgung für den LDO von einem ESP-12F. Wenn der ESP mit was auch immer fertig ist, gibt er ein Low über den GPIO4 auf den DONE Eingang des Timers. (GPIO 4 benötigt einen Pull-Up). Der Timer geht wieder schlafen und der komplette Rest der Schaltung ist ohne Energie. Hilft gegen Ghosting beim Display und auch gegen nicht immer saubere Deep-Sleep Zyklen beim ESP.

Der Zeitbereich des Timers ist von ca. 100ms bis 7200s einstellbar. Wenn der LDO einen geringen voltage drop hat (<150mV) kann man das ganze mit einer Li-Ion Batterie bis zu einer Entladeschlussspannung von ca. 3.3V betreiben. Manche ESP laufen bis ca. 2,5V, dann könnte man noch weiter runter gehen.

Wichtig ist, dass das DONE Signal von dem GIPO 4 oder GPIO 5 kommt. Die anderen Ausgänge flackern zu sehr beim Start und lösen den DONE Eingang des Timers schon beim booten aus.

Ganz puristisch läßt sich noch eine evtl. vorhandene LED auslöten.

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Dankbarer_User am 09 August 2021, 19:56:27
hallo eki!

Wenn ich in deinem Testmodul das 5.65" Display als devicetype auswähle, bekomme ich folgende Fehlermeldung, wenn ich den colormode auf color setzen möchte: Invalid argument color to colormode. Device does not support color mode.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 10 August 2021, 07:40:01
Das kann eigentlich nur daran liegen, dass irgendetwas bei der Initialisierung nicht geklappt hat. Kannst Du einfach das device noch mal löschen und neu anlegen. Ansonsten poste mal ein Listing des Devices.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Dankbarer_User am 10 August 2021, 17:42:28
Gute Idee! Nach dem erneutem Anlegen funktioniert die Konvertierung und sieht gut aus! Hoffentlich macht Dir die Anpassung mit dem Upload nicht all zu große Schwierigkeiten.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 10 August 2021, 21:43:10
Ist fast fertig, werde hoffentlich morgen eine Testversion haben, dann kannst Du testen (ich kann meine Ausgaben mit denen der Webapp vergleichen, aber sicher ist man erst, wenn man wirklich mit den echten Displays testet).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 10 August 2021, 22:52:13
Zitat von: Jendaw am 08 August 2021, 15:01:32
Kannst du bitte überprüfen, ob du mehrere Bilder mit der "Price-Tag"-Webseite der Original-Firmware hochladen kannst? Dazu rufst du den ESP einfach per Browser auf und konfigurierst dort dein Display.

Grundsätzlich sollte aber erst einmal der Upload mit der Original-Firmware laufen, auch mehrmals hintereinander.

Hallo Jendaw,

Also das funktioniert. Ich kann über die PriceTag Seite das vom FHEM Modul generierte PNG problemlos hochladen und es wird sauber angezeigt. Lasse ich jetzt aber das Modul direkt auf die IP des ESP8266 los, bekomme ich nur endlose Fehlermeldungen im Serial Monitor vom Arduino IDE und das Display macht nichts.

22:43:50.948 -> Unknown URI: /ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppaibappppapaaaaaaaapappppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppiodaLOAD_
22:43:50.948 -> Unknown URI: /ppppppppppppppppppppppppppppppppppppppppppppppppppppppppplnpppppapaaaaaaaahappppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppplnpppppapaaaaaaaahappppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppplnpppppapaaaaaaaahappppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppplnpppppapaaaaaaaahappppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppplnppppphpppopphpphoppppppppppppppppppppppppppppppppppppppppppppiodaLOAD_
22:43:50.981 -> Unknown URI: /ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppplnppppphpppopphpphoppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppplnppppphpppopphpphoppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppmpaapnppppppppppppammbpmppppppppppppplnppppphpppopphpphoppoppddapmbpppppdadodphppppppdpmhpppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppmpaapnppppppppppppammbpmppppppppppppplnppppphpppopphpphoppipobdahpamphopdabinohppppppdpmhoppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppiodaLOAD_
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 11 August 2021, 00:17:23
Zitat von: Borkk am 10 August 2021, 22:52:13
Hallo Jendaw,

Also das funktioniert. Ich kann über die PriceTag Seite das vom FHEM Modul generierte PNG problemlos hochladen und es wird sauber angezeigt. Lasse ich jetzt aber das Modul direkt auf die IP des ESP8266 los, bekomme ich nur endlose Fehlermeldungen im Serial Monitor vom Arduino IDE und das Display macht nichts.

Ich habe jetzt mal den ESP32 zur Seite gelegt und alles mit dem ESP8266 probiert und bin jetzt schon etwas weiter. Mit der Original Firmware von Waveshare aktualisiert das ESPEink Modul jetzt regelmässig das Display. Allerdings wird das PNG in unregelmäßigen Intervalen verschoben dargestellt. Dafür habe ich noch keine Erklärung.

Mich würde jetzt natürlich interessieren, was hier "Best Practise" ist.

- Nimmt das Display in dieser Konfiguration dauerhaft Schaden (Stichwort: Dauerstrom)
- was bringt der "Umweg" über MQTT mit dem DOIF (Git von Yattien)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 11 August 2021, 07:51:30
Ich habe jetzt mal eine Testversion für das neue 5.65 Farbdisplay fertig und angehängt. Bitte mal testen. Müsste eigentlich sowohl mit ESP32 als auch mit ESP8266 gehen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 11 August 2021, 08:15:44
Zitat von: Borkk am 10 August 2021, 22:52:13
Lasse ich jetzt aber das Modul direkt auf die IP des ESP8266 los, bekomme ich nur endlose Fehlermeldungen im Serial Monitor vom Arduino IDE und das Display macht nichts.
Was hast du für ein Display? Klingt danach, als würde eine Einstellung im FHEM-Modul fehlen oder inkorrekt sein.


Zitat von: Borkk am 11 August 2021, 00:17:23
Allerdings wird das PNG in unregelmäßigen Intervalen verschoben dargestellt. Dafür habe ich noch keine Erklärung.
Erfolgt hier das Update evtl. zu schnell? (Bild ist zwar schon hochgeladen, das Display aber noch nicht fertig mit darstellen, ehe das nächste kommt)

Zitat
Mich würde jetzt natürlich interessieren, was hier "Best Practise" ist.
- Nimmt das Display in dieser Konfiguration dauerhaft Schaden (Stichwort: Dauerstrom)

Das Display selbst sollte nach dem SHOW in den DeepSleep gehen. Beim 7,5" tut es das leider mit der aktuellen Firmware nicht, hier muss noch eine Funktion in Loader/epd7in5.h angepasst werden, sonst nimmt es Schaden.

static void EPD_7IN5_V2_Show(void)
{
  EPD_SendCommand(0x12); //DISPLAY REFRESH
  delay(100);            //!!!The delay here is necessary, 200uS at least!!!
  // EPD_7in5_V2_Readbusy();

  //Enter sleep mode
  EPD_SendCommand(0X02); //power off
  EPD_7in5_V2_Readbusy();
  EPD_SendCommand(0X07); //deep sleep
  EPD_SendData(0xA5);
}


Zitat
- was bringt der "Umweg" über MQTT mit dem DOIF (Git von Yattien)
Ich kann nur für mich sprechen, ist also keineswegs BestPractise ;)

HTH
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 11 August 2021, 11:06:16
Hallo Jendaw,

erst mal Danke für deinen Support, ich bin ja wie gesagt in der "ESP Szene" :-) noch recht neu aber so langsam verstehe ich auch wie Arduino IDE arbeitet.

Mein Display ist ein "7.5 inch HD e-Paper (B)" wenn ich richtig verstanden habe müsste der Code im "Waveshare Original Loader" im Reiter esp7in5_HD.h sein. Allerdings fehlt mir da noch das "(B)" 

Der Code dort lautet:

static void EPD_7IN5_HD_Show(void)
{   
unsigned int i;
EPD_SendCommand(0x26);
    for(i=0; i<880*528/8; i++) {
        EPD_SendData(0xff);
    }
    EPD_SendCommand(0x22);
    EPD_SendData(0xF7);
    EPD_SendCommand(0x20);
    delay(200);
    EPD_7IN5_HD_Readbusy();
    Serial.print("EPD_7IN5_HD_Show END\r\n");
}


Wie müsste ich den Umbauen das mein Display keinen Schaden nimmt? Und ist das überhaupt der richtige Code (ohne (B))

Ich hätte da noch eine kleine Verständnisfrage zum Arduino IDE. Im ersten Reiter steht ja immer der "Hauptcode" in den über #include Bibliothek eingebunden werden. Ich habe verstanden das die Bibliotheken in "" im gleichen Verzeichnis liegen wie der Sketch und die in <> an verschiedenen anderen Stellen in der Arduino Installation. Haben die Farben eine Bedeutung? Manche Bibliotheken werden im Code orange und manche grün angezeigt. Beim Hochladen auf dem ESP werden aber scheinbar alle Bibliotheken gefunden und der upload läuft fehlerfrei.   
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 11 August 2021, 11:14:32
Zitat von: Borkk am 11 August 2021, 11:06:16
Mein Display ist ein "7.5 inch HD e-Paper (B)" wenn ich richtig verstanden habe müsste der Code im "Waveshare Original Loader" im Reiter esp7in5_HD.h sein. Allerdings fehlt mir da noch das "(B)" 

[...]
Wie müsste ich den Umbauen das mein Display keinen Schaden nimmt? Und ist das überhaupt der richtige Code (ohne (B))
Für das 7in5-HD ist nichts am Code anzupassen. Gilt nur für das 7in5 (ohne HD).

Zitat
Ich hätte da noch eine kleine Verständnisfrage zum Arduino IDE. Im ersten Reiter steht ja immer der "Hauptcode" in den über #include Bibliothek eingebunden werden. Ich habe verstanden das die Bibliotheken in "" im gleichen Verzeichnis liegen wie der Sketch und die in <> an verschiedenen anderen Stellen in der Arduino Installation. Haben die Farben eine Bedeutung? Manche Bibliotheken werden im Code orange und manche grün angezeigt. Beim Hochladen auf dem ESP werden aber scheinbar alle Bibliotheken gefunden und der upload läuft fehlerfrei.
Die orangenen sollten die sein, die du zusätzlich hinzugefügt hast (Verzeichnis Arduino/libraries).
Die Grünen kommen vom Boardverwalter.
Die schwarzen sollten die sein, die aus der IDE selbst kommen.

Ist allerdings nur meine Vermutung, wenn ich mir die anschaue.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 11 August 2021, 12:28:58
Hallo Jendaw,

Ok, danke für die Info. Mein Display läuft jetzt einwandfrei am ESP8288 mit der Original Waveshare Firmware. Die Verschieber in der Darstellung scheinen tatsächlich von einem zu frühen Upload zu kommen. Dazu muss ich in FHEM noch etwas anpassen, einige Werte kamen zu oft.

Aber so gefällt mir das erst mal sehr gut. Ich sehr für mich jetzt keinen Grund die Yattien Lösung einzusetzen?

Oder habe ich was übersehen?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 11 August 2021, 12:36:31
Zitat von: Borkk am 11 August 2021, 12:28:58
Aber so gefällt mir das erst mal sehr gut. Ich sehr für mich jetzt keinen Grund die Yattien Lösung einzusetzen?
Oder habe ich was übersehen?
Prima! Wenn alles bei dir wie gewünscht läuft, gibt es keinen Grund. Die alternative Yattien-Firmware (https://forum.fhem.de/index.php/topic,109690.0/all.html) baut ja auch nur auf den waveshare-Sourcen auf.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 11 August 2021, 15:51:07
Eine Frage habe ich doch noch. Ich habe jetzt die gleiche Konstellation mit meinem ESP32 in Betrieb genommen. Funktioniert auch grundsätzlich, nur mit dem Problem das der ESP32 scheinbar nach dem ersten Upload "einschläft" und nicht mehr aufwacht. D.h. das Display wird nicht mehr aktualisiert.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Dankbarer_User am 11 August 2021, 21:42:50
Nach einem ersten, schnellen Test: Der Upload funktioniert. Allerdings hängt sich das Dispaly nach der ersten Routine auf. Anbei ein Vergleich aus dem Serial Monitor in Bezug auf einen Upload mit dem Waveshare Uploader. Ich habe nur die letzen beiden Schritte eingefügt, da sich hier der Ablauf unterscheidet:

Waveshare:

21:31:22.563 ->  EPD_loadGLOAD
21:31:22.655 ->
21:31:22.655 ->  EPD_loadG
21:31:22.750 -> SHOW
21:31:22.750 ->
21:31:22.750 ->
21:31:22.750 -> e-Paper busy
21:31:22.845 -> e-Paper busy release
21:31:22.845 ->
21:31:22.845 -> e-Paper busy
21:31:34.261 -> e-Paper busy release
21:31:34.261 ->
21:31:34.261 -> e-Paper busy
21:31:34.308 -> e-Paper busy release
21:31:34.497 -> EPD_5IN65F_Show END


Über FEHM:

21:32:48.899 ->  EPD_loadGLOAD
21:32:48.946 ->
21:32:48.946 ->  EPD_loadG
21:32:49.041 -> SHOW
21:32:49.041 ->
21:32:49.041 ->
21:32:49.041 -> e-Paper busy
21:32:49.136 -> e-Paper busy release
21:32:49.136 ->
21:32:49.136 -> e-Paper busy
21:33:00.587 -> e-Paper busy release
21:33:00.587 ->
21:33:00.587 -> e-Paper busy
21:33:00.587 -> e-Paper busy release
21:33:00.774 -> EPD_5IN65F_Show END
21:33:00.966 ->
21:33:00.966 -> SHOW
21:33:00.966 ->
21:33:00.966 ->
21:33:00.966 -> e-Paper busy


Sieht so aus, als wenn die End-Routine noch einmal aufgerufen wird.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 12 August 2021, 07:42:20
Kannst Du mal für einen Upload verbose auf 5 stellen und mir dann den damit erzeugten Teil des Logfiles hier posten. Das SHOW wird, zumindest hier bei mir, nur einmal geschickt.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Dankbarer_User am 12 August 2021, 17:15:20

Hier ein Upload, den Mittelteil habe ich zwecks Übersicht rausgeschnitten. Ich denke, du interessierst dich ja eher für Anfang und vor allem Ende.


2021.08.12 17:07:11 5: EInk: Event received from device global (events are: ATTR EInk verbose 5)
2021.08.12 17:07:12 1: RMDIR: ./restoreDir/save/2021-08-09
2021.08.12 17:07:12 5: EInk: Event received from device global (events are: SAVE)
2021.08.12 17:07:20 3: EInk: sending HTTP request to http://192.168.200.244/EPD with data: jb
2021.08.12 17:07:20 5: EInk: Event received from device EInk (events are: upload)
2021.08.12 17:07:21 5: EInk: callback from command EPD, URL http://192.168.xxx.xxx/EPD status code 200
2021.08.12 17:07:21 5: EInk: 1500, 0, gdgdgdgdgdfdbgbgdgdfdfdfdgdgdgdgdgdgbgbabababgbgdgdgdgdgdgdgdgdgdgbgbgdgdgbgbagdgdgdgdgdfdgdgdgbgdgdgdgdgdgdgdgdgdfdgdgdgdgdgdgdgdgdfdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdfdfbbbbbbbbbbagagagagbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbdgdfdfdfdgdgdgdgdgdgbgbgbababgbgbgdgdgdgdgdgdgdgdgdgbgbgbababgbgbadgdgdgdgdgbbgdfdfbgbagdgdfdfdgdfdgdgdfbgdgdgdfdgdgdgdgdfdfdgdgdfdgdgdfdfdfdgdgdfdfdgdfdfdgdgdfdgagagdgdagagdgdgdgdgdgdgdgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgdgdfbgbgdfdgdfdfdfdgdgdgdgdgdgdgdgdgdfbgbgdgdfdfdfdgdgdgdgdgdgdfbababgbgbgdgdgdgdgdgdbabababgbababgbgbadgdgdgdgbabababgbababababababababababababagdgdgdgdgdgdgdfdgdgdgdgdgdgdgdgagdgdgagadgdfdbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbmnfaLOAD
2021.08.12 17:07:21 5: EInk: callback from command LOAD, URL http://192.168.200.244/LOAD status code 200
2021.08.12 17:07:21 5: EInk: 3000, 0, bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgdgdgdgdgdgdgdfdfdgdfdfbgbgdfdfdfdfdgdgdgdgdgdgbgbgdgdfdfbgbabababababababagagagdgdgagdgdgdgdgdgdgdgdgbababgbgdgdgdgdgdgdgdgdgbgdgdgdgbabababababababababagdgdfdgdgdgdfdgdgdgdgdgdgdgdgdgabagaadgdgdgdgdgdfbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbdfdgdfdfbgbgdgdgdgdgdgdgdgdgdgdgbgbgbgdgdfbgbgbagdgdfdgdgdgdgdgdgdfbgbabgbagdgdgdgdgdgdfdfdfdgdfbgbgdgdgdgdgdgdgdgdgdfdfdgdfdfdgdgdfdfdgdgdgdgdgdgdgdgdgdgdgdfdgdgdgdgdgdgdgdgdgdgdgdgdgabagdgdgdgdgagagdgdadgagdgdgdfdfbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbmnfaLOAD
2021.08.12 17:07:21 5: EInk: callback from command LOAD, URL http://192.168.200.244/LOAD status code 200
2021.08.12 17:07:21 5: EInk: 4500, 0, gdgdgdgdgdgbgdfdfbgbgbababgdfdfdgdgdgdgdgdgdbdgdgdfdbgbgdgdfdfdfdgdgdgdgdgdgdgagababgbgdgdgdfdgdgdgdgdgdfbgbgdgdfdfdgdgdgdgdgdfdgdgdfdfdgdfdfdfdgdgdgdfdgdgdgdfdgdgdfdfdgdgdgdfdgdgdgdgdgdgdgdgdgdgdgdgdgdggababagagabadgdgagdgdgdfdfbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgbgbabagdgdgdgdgdgdgdgdgdgbgbgbgdgdfdfdfdfdgababagdgdgdfdgdgdbgbgbgdfdfbgbgdfdbdgdgdgdgdgdfdfbgbgdgbabgdgdgdgdgdgdbgdgdfdfbgdgdgdfdgdgdgdgdgdgdgdgdfdfdgdgdfdgdgagdgdgdgdgdgdfdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgggdgdgdfdgdgdgdgdgagdgdgdfbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbdbdbgdbabgbgbgbabababababadgdgdgdgdgbgbgbababgbgbgbagdgdgdgdgdgdgdgdgdgdgdfdgagbgbabababgdgdgdgdgdgdgdbgbgdgdfdfdgagdgdgdgdgdgdgdgbgbababgbgdgagdfdgdgdgdgdgbgdgdgdfdfagababagagagdgdgagagdgdgagdgdgagagdgdgagdgdgdgdgdgdgdgdgdgdgdfdgdgdgdgdgadgdgdgdgdfdfbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbmnfaLOAD
2021.08.12 17:07:21 5: EInk: callback from command LOAD, URL http://192.168.200.244/LOAD status code 200
2021.08.12 17:07:21 5: EInk: 6000, 0, bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgagdgagdgdgdgdfdgdgbgbgbgbababgbgbgdadgdgdgdgdgdgdgdgdgbgbgbgdgdfdfdgagagagdgdaadgdgdgdgdfbgdgdgdfdfdgdgdgdgdgdfbdgdgdfbgbagdgbgbadgdgdgdgdfdfdgdgbgbagdfdfdgdgdgdgdgdgdgdgdbdgdgdfdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdfdgdgdgdgdfdfdfdgdfdfdgagdgdgdadgdgdgdgdgdgbgbgbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbdgdgdbabagdgdgdgdgdgdgdgdgdgdgdbdbgbggdfdfdfdfdgdgdgdgdgdgdgdgdgdfdbbbdgdbgbgbggaagagagdgdgdfdgdgdfbgbagdgbgbgdagdgdgdgdgdgdgdgdfbgdgdfdfbgdgdgdfdgdgdgdgdgbabagdfdfdgdgdfdfdfdfdfdfdfdgdfdfdgdgdfdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdfdgdgdgdgdgdgdgdgdfdfdfdgdfdgagdfdgdadgdgdgdgdgbgbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbmnfaLOAD
2021.08.12 17:07:21 5: EInk: callback from command LOAD, URL http://192.168.200.244/LOAD status code 200
2021.08.12 17:07:21 5: EInk: 7500, 0, gbgbgbgbgdgdfdfdfdfdgdgdgdgdgdgagdgdgdgdfbgbgbababgbgbgdgdgdfdfdgdgagagdgdgdbdbdfdgdbbgbagdgdfdfdgdgdgdgdgdgdbgdgdfdbgbagdgdfdfdgdgdfdgdgdfdgdgdgbgdgdgbgbagdgdgdgdgdgdgdgdgdgdgdgdgdgababagdgdgdgdgdgdfdfdgagdgdgagdgdgdgdgdgdgdgdgdgdgdfdgdgdgdfdgdgdgdgdfdgdgdgdgdggggdfdgagdfdgdgdgdgdgdgdfdfbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbdgdgdgdgdgdgdbgbgbabababgbgbgdgdgdgdfdgdadgdgdgdgdgdbdbgdfdfdbgbgbababababagagagdgdgabdfbabababgbgdgdgbgbgdgaagdgdgagdgdgdgdgbgbabababgbagdgdfdfdgdfdgdgdgbabagdfdfdgdgdfdfdgagagdfdfdgdgdfdgdgdfdfdgdgdgdgdgdfdfdgdgdfdgdgdgdfdgdgdgdgdgdfdfdgdgdgdgdfdfdgdgdfdgdfdfdgdgbabababababagdgdgagdgdgdagdgdgdgdfdfbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgdgdgdgdgdgdgdgdgdgdgdgdbdbdbgdfdfbgbgbgbagdfdfdfdgaggdgdgdggdbababababgbgbdgdbgbgbdgagdgdgdgdgdgbgdgdgdgbgbgdgbgbgbagagdfdfdgdgdgdgdgdfbabababgbagdgdfdfdgdgdgdgdgdgabagdgdgdgdgabagagdgdgdgdgdgdgdgdgdfdfdgagdgdgdgdgdgdgdfdgdgdgdfdgdgdgdgdgdgbgdgdgdgdgdgdgdgdgdgbabagdgdgdgbabababgbabababagdgdgagagdgdmnfaLOAD
2021.08.12 17:07:21 5: EInk: callback from command LOAD, URL http://192.168.200.244/LOAD status code 200
2021.08.12 17:07:21 5: EInk: 9000, 0, aagdgdgdgdfdbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgdfdfdfdfdfdgagdgdfdgdgagagdgdgdgdgdbdgdgdfdbgbgbdbdfbgbgbdgagdgdgdgdgdgdgdgagdgbgbbgdfdfbgbgdgdgdfdfdgdadagdgdgdgbgdgdgdfbgbagbgbgbagdgdgdgdgdgdgdgdgbgbababgbgdgagdgbgdgdfdfdgdgdgdgdgdgdgdgdfdfdgagdgdgdgdfdgdgdgdfdfdgagdgdgdgdgdgdgdfbgbagdgdfdgdgdgdgdgdfdfdfdgdgdgbgbabagbgbabagdgdgdfdgdgdfdfdgdfdfdgdfdgagdgdgdgagdgdgdfdfbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbababgbgbgbgbgdbgbgbgbgbabababgbgdgdgagagdgdgabababagdgdbdbgbdbabgbgbgbagdgdfdbabadgdgdgdgdgdbgbababgbgbgbggbgbgbagdagdgdgdgdgdfdgdgdfbgbababgbgdgagdfdgdagdgdgdgdfdbabagdgdgbgdfdfdgagdfdfdgdgdgdgdfdbabgbabagdfdfdgdgdgdgdbgbgdgdgdgbgdgdgdgdgdgdfdfdgdfdfdfdgdgdgdgdfdfdgdgbabagdgdgdfbgbababgbababababgbagdgdfdfdfdfdfdbababagdgdgdgagdgdgdfbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbmnfaLOAD
2021.08.12 17:07:21 5: EInk: callback from command LOAD, URL http://192.168.200.244/LOAD status code 200
2021.08.12 17:07:21 5: EInk: 10500, 0, gdgdgdgdgdgdgagdgdbdbdgdgdgbgdbgbgdgdbbgbgbdgdgdgdbabagagdgagdgdgdbdbgbababgbgbgbagdgbgbgdgaadgdgdgdgdgdgdgdgdbgbggdgbgbgbagdgdfdfdgdadgdgdgdgbgdgdgdfbgdgagbgbagdgagdgdgagdagagagdgdgdgdgdgagdfdfdgagdgdgdgdfdgdgdgdgbgbagadabababababagdgdfdfdgdgdgdgdgdgdgagdfbgbagdgdfdfdgdgdgdfbgdgdgdgdgdgdgdgdfdgdgdbgbgbabababgbagdfdfdfdfdgdgdgdfdgdgdgdgagdgdfdfdbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgbgdgdgagdgdgdgdgagagdgdgdgdfdgdgdggabdbdfbagdfbgbgbgdgdgdbababagagdgdgdgdgdbdbgbababdbbgbgggdfbgbgdgagdfdgdgadgdgdgdgdgbgdgdgdfbgbggdgbgbgdgdgdgdgdadgdgdgdgdbgdgdgdfdbagabababagagagagdfdbabababdbabgbgdgagdfdgdgdgdgdgdfgbgbababababagdgdgdgdgdfdfdgdfdfdbagdgdgdgdfdgdgdfbgbabadgdgdfdfdgdgbgbgdgdfdfdgdgdgdgbgbababgbgbabababgbababababababababagdgbgdgdgdgdgdfdfbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbdbdbgdfdgdfdfbgdgdgdgdfdfdfdgagdgdgdgdgaggdgdgadgdgdbgbababgbgbgbdgdgdfdfdfdgagadgdgdggdgdgdgdgdgbdbgdgdfdbgbgbagdgbgbagaagdgdgdgdgdgdgdgdgbgbagdfbgbgdgagdfdfaagagdgdgabdbagdgdfdgdgdbdfdgagdgdgdgagdgdgdfdbgbabgbagdfdfdgdgdgdgdgdfdgdgdgdfdfdfdgdgdgdgdfdgdgdfdfbgdgdgdfdgdgdgdgggbgbagdgbgbabagdfdgbgdfdmnfaLOAD
2021.08.12 17:07:22 5: EInk: callback from command LOAD, URL http://192.168.200.244/LOAD status code 200
2021.08.12 17:07:22 5: EInk: 12000, 0, gdfbgdgdgbababababgbgbababgbabababgbababgbgbabgbabgbgdgdgbagdgdgdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbfbgbbgbgbgbgdbgbgbabgbgbgbgbabababgbgbabaagdfdfdgdgagdgdgdgdgdbdfbgdfdbgbgbgdgdfdfbgbdgagagdgdgdgagdgdgdggdbdbabababdbbdfdgbgbgbgdgagdfdfdgdgdgdgdgdgdfdgdgdfdbdgdgbgbdgagabababagdgdgagdfdgdfdfdfdgdgdfdgdgadgdgdgdfdgdgdgdfdfbgbabagdfdfdgdgdgdgdfdfdfdgdfdfdgdgdgdgdgdfdfdgdfdfdbadgdgdgdgdgdgdfdfdgdgdgbgbagdfdfdgbababgbabababababababababababababababgdgdgdfdfdgbgbabgbabgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbdbdgdgdgdbdbgbdbdfdfdbdbdbdfbgbgbdbdbgbababgbgbgbabagabababagagdgdgdgagdbdbgbagdfdbdfbgdgdbgbgbgdgagdfdfdgagagdgdgdgaggbabagdgdbgbdbgbgbgbagdgdfdfdgdgagdgdgdgababadgdfdbdgdfdfdfdgagdbabagdgdgdgdgdfdgdgdfdfdfbgbagdgdgdfdgdgdgdgdgbgbgdgdgdgbgbagdgdgdgdgdfdgdgdfdfbgdgdgdfdgdgdgdgdfbgbgdgdfbgbabababababagdgbgbgbabgdfdgdgdgdfdfdgdgbgbgdgdfdfdgdgdfdfdgdfbgbababababagdgbababbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbmnfaLOAD
2021.08.12 17:07:22 5: EInk: callback from command LOAD, URL http://192.168.200.244/LOAD status code 200
2021.08.12 17:07:22 5: EInk: 13500, 0, gabababababdbgbabababgbgbgbadgdbgbgbgbgbgbdbdbdbgbgbdbgbgbgbabagagdfdbagagadgdgdgagbdgdgdgdgdbdbgbabgbgbgbgdgdgbgbgdgdagdgdgdgagdgagdadgdbbgbgbgbgbgdgdgbgbgbagagdfdfdgagagdgdgdgdfdggdfdbagdfdfdfdgagdgdgdgdgdgdgdfdfbgbabababgbgbadadgdgdgdgdgdgdgdfbgbgdgdgdfdgdgdgdgdgbgbgdgdgbgbabadgdgdgdgdgdgdfbgbababgbagdgdgdgbgdfdgbgbgbgdfdfdgdgdgdfdfdfdfbgbgdfdfdgdgdgdfdgdgbgbabgdfdgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbdgdgdgdgdgagdagdgdgdgdgdgdgdgdgdgdbdbdbababgbgbgbdbababdbdbgbgbdbgbgbgbdgdgdfbgbdgdagagdfdgdgagdgdgdgdgdbdbgdfdgdbbgbgdgbgbbgbdgagdgbggdgadgdadadgdfdfdgdgdbgbdbgbgbgbdgdgdfdfdgagagdgdgagdfdgdgdgbdbgbgbgdgagdfdfdgadadgdgdgbabagdfbgbgbgbagdgdfdfdgdgdgdgdfdfdgdgdfdfdfdadabagdgdgdgaggbgbgdgdgdfdgdgdgdgdgdgdgdfbgbagdgdfdgdgdgdgdfdfdgdfbgbgdgdfdgdgdgdfdfdfdfbgdfdfdgdgdgdgdfdgdgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbdbgbdfdfdfdfdgdgdfdfdfdgdfdfdgdgdgdbdbagdgdgdfbgbdbdfbabdbdbgbgbgbdbdfbgbabdfbgbgbabagdgdfdfdgagagdgdgagdbabgdgdgdbgbgbabdbdbgdgaggbgbgdgagagdgdgdgagdgdgdgdfdfdfdfdfdgdgdfbgbagagdgbabagagdgdagdgdfdgdgbdfgbgbgbadgagdfdgdgdgdgdgdfdfdfdgdgdfdfdgdgdgdgdgdfdgdggbgbgbgdgdfdbdgdgdgdgdfbgbababgbgbmnfaLOAD
2021.08.12 17:07:22 5: EInk: callback from command LOAD, URL http://192.168.200.244/LOAD status code 200
.
.
.
.
.
2021.08.12 17:07:43 5: EInk: callback from command LOAD, URL http://192.168.200.244/LOAD status code 200
2021.08.12 17:07:43 5: EInk: 264000, 0, bbaagdbadaabadgdgdbabababdgdgdgdgdadadgdgdgdaaadcdbdcdbaadadcdgdcdcdcdadcdcdcdcdcdcdcdcdcdcdadadadadadgdgdadadadadadadadgdgdadadgdgdgdadadgdfdfdfdgbgdfgdgdgdgaaaaaagaaaagagagagdagdgdaagdgagagdgdgdgdgdgdgagagagagagdgdgdgdbbbbbbbgbgbbbbbbbbbbbbgbgbgbbbbbbbgbgbgdgdgdgdadgdcdcdcdcdgdgdcdgdadadgdgdbdgdddagacacagagagdgdcgdgacagacdcgacacdcdcdcdcdgdgdcacacdcgcagagacagacecgacacacacacacecececeacacagagdcacagdcacagacacgcacgcagagagacagdcacagcacagacagagdgdgagdgagacagafagabagdfdfacacdcagdcdcecacgcgdcgcgcgdgdcgacdcdfdfdcacbdbdbbbbcbcbbbbbbbbbcbdbdbdbdbbbcbcbcbcbcbcbbbbbbbcbcbcbcbcbdbdbdbdbdbdbdbdbdbdbdbdbdbbgdgdababagaabagdfdfdbabababababagdgagagdgdgdgaaagdgdbdfdbaadgdcdgdgdgdgdadadgdgdgdgdgdgdgdgdgdgdgdgdgdcdcdgdgdgdgdgdgdgdcdadaaaaadadadgdgdgdfbgbgbgbabgdfgbagagdgdgaaagaaaaaaaaaagdgagagdgagdgdgagagaagagagdgdgdgdgdgdgagdgbgbgbgbgbbbbgbgbgbgbgbgbbbbbbgbgbgbbbbbbdgdcdcdfdadgdgdgdbdbdcdgdgdgdgdcdbdcdcdfdfcagagacacacacagacgagacagagacagdgagagagcgcacagagabagagdfdcabacagacdcgdgdgagabagacdcacacagagacacagagcagagacagdfdgdgdcacacacaaacafagacagagacagcdcacacacacacagdfdfdfdfabacgcgdgaggabcggcdcecaagcgdgdgdfcggdcececgagagdgdbbbbcbdbdbbdbdbdbdbdbbbbcbbcbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbcbcbcbcbcbcbcbcbcbcbcbcbabdcdfdbadadaabdaadababababdgdgdgdgadadadgdgdgdaadcdcdcdbabdaadadcdcdcdcdgdgdadcdcdcdcdcdcdcdcdcdadadadgdgdgdcdadadadadcdgdgdgdadaagdgdadadadadgdfdfdfbgbgdgdfdgdgagdgaaagaaagagagdagdgdgagdgagagdgdgdgdagdgdgdgagagagagdgdfdgbgbbbbbbgbbbbbbbbbbbbbgbgbgbbbbbbbgbgbgdgdgdgdadgdcdcdcdcdgdgdcdcdadadgdcdbdbdcddmnfaLOAD
2021.08.12 17:07:43 5: EInk: callback from command LOAD, URL http://192.168.200.244/LOAD status code 200
2021.08.12 17:07:43 5: EInk: 265500, 0, agdcagdgagagdcdgdcacagcdcdgdcacacdcdcdgdgdgcacdcacacgcgcgcagdcabagacacacacacacecececeagacagdgacacdgacdcagacacacacgagagaaaacagdcdcagcdcagacagagagagagdgdgacgafdfafdfagdgdfacacacagdcecabafdcdcgcgcgdgdfgdcdcdcdcacacgbdbdbbbbbdbbbbbbbbbbdbdbdbdbbcbbbbcbcbcbcbcbbbcbbbcbcbcbcbcbdbdbdbdbdbdbdbdbdbdbdbdbdbdbabaadfdgdgagdaaaabdfdgdfdbabadgdgagagadgdgdgdgdgdgdbabdgdgdadadgdgdgdgdcdagdadgdgdgdgdadgdgdgdgdgdgdadcdcdgdgdgdgdgdgdadadagdadadadgdgdgdgdgbgbgbgbgbgbgbgbgdgdgdgdgaaaaaaaaaaagaagagdgagagagagagagagdgagagababababagdfdgbabdfbgbgbbgbgbgbgbgbgbbbbbbbgbgbgbbbbbbbadcdcdfdadgdgdgdbdbdcdgdgdgdgdcdbdgdcdbdfdgagabacacacagacgcecacagagcagagagagagacacacdgdgcececdgdgdgdcafacacagagagagdgagacdcdcdcdcgdcacagagacabagacagagagdgacgcdcgcaaacagagacagagacagacacacacdcgcgcgdfdfabagcdfacgcdgagagdcagacecacafagdgdgdcacgdcgggafagagaadabbbbdbdbcbdbdbdbdbdbbcbcbcbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbcbcbcbcbcbcbcbcbcbcbcbcbcbdadbbbdaagdadgaadgdfdfdbdfdgdgdgdadadagdcdcdcdcdcdcdbdcdbdcdaadadcdcdcdgdgdaaaadadcdcdcdadcdcdcdcdadgdgdgdcdcdadadadadcdgdgdadaaaagdadadcdaadabababgbgbgdgdgbgdfdgagdgagagagagaaagaagagagdgagagdgdgagagdgdgdgagagagababababgbgbbbbbbbbbbbbbbbbbbbgbgbgbbbbbbgbgbgbabababadgdadcdcdcdgdgdcdcdcdadgdgdbdbdgdgdfacacagdgagacagagdcececacagacacdcdcdcagagdgcacdgdgagcacacafabagagacabacacacacagagagagafdceagdcacagacacagacacacacabacagaagcgagacacagacacagacagagagdgagdgagcgcgdfabagagdgdgcacacagacagabagdfdcgcacafdgdfagdcacdcacacafdgbbbbbbbdbbcbcbbbbbcbdbdbdbbcbcbcbbbcbcbcbcbcbbbcbcbcbcbcbcbdbdbdbdbdbdbdbdbdbdbdbdbdbdcmnfaLOAD
2021.08.12 17:07:43 5: EInk: callback from command LOAD, URL http://192.168.200.244/LOAD status code 200
2021.08.12 17:07:43 5: EInk: 267000, 0, abadbaaaaaagdaababdbdfdfdfdcdcdgdgagdagdgdgdgdgdgdgdgdfdgdgdaadadgdgdcdcdgdadagdadgdgdgdadgdgdgdgdadadcdadgdgdgdgdgdgdgdcdgdgdadadgdgdadgdgagdfbgbgbgbgbgbgdfgdfdgdgdgdgaaaaaagaagdgdgdgaagdgagagdadgagagagdgdgdgdgdgdfdfdbgbgbgbgbgbgbgbgbgbgbbbbbbbgbgbgbbbbbbbgdgdgdgdadgdgdbdgdcdcdgdgdadgdcdbabababdbddgagacacacagacacagdcdcececaagagagagagacdcgagdfacacdgdgagagdcacdcabagagagagagacdcdcdcdfbbacdcgagacagagacagagagagacafacacadacdcagagacagagacagacdcdcgcdcgcdgdgdcgdfacdcacgcdgdgdgacecacacgcgafdgdgdfafafdfagagagagagagdgdbbbbdbcbdbbdbdbdbdbbbbbcbcbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbcbcbcbcbcbcbcbcbcbcbcdcdcdcdgdgdbaaaaaaaabadgdfdfdbdbdbdbdfdcdcdgdcdbdbdcdcdcdcdbdbdbdcdgdadadcdgdgdcdgdaaaadadcdcdcdadcdcdcdgdgdadgdcdcdcdadadadcdgdadadgdaaadadgdadadadgdfdfdfdfdfdfbgbgbgbggdgdgdgagagaaaaaaaagaagdagagdgagagagdgadgagagabababgdfdfbbbbbbbbbbbbbbbbbbbbgbgbgbbbbbbbgbgbgbdbadcdcdgdadcdcdcdgdgdgdcdgdcdgdgdbdbdbadgcgacagabagacdgdgdcafagacdcagcdcdcdcdcagagdcdcgdgdgacacacacagagagafabacacacdcdgagafagagdfdgagdcacaacacagacdcacdcagacagagafagagacdcaagacacagacagagagdgagdgcgcgcecgdgagabagafacgacagagagagdgdcacacacdcdcgcacacacacacdcagdgdbbbbbbbbdbbbbcbbbdbdbdbdbbcbcbbcbcbcbcbcbcbcbbbbbbbcbcbcbdbdbdbdbdbdbdbdbdbdbdbdbdbdaadcdgadgaaaaadgbaabdbdfdfdfdfdbdbdbdbdbdfdfdbdbdbdbdgdcdcdgdcdgdgdgdcdcdgdcdgdadaadadgdgdgdadgdgdgdadadcdgdgdgdgdgdgdgdgdgdgdadadadgdadgdgdgdadgbgbgbgbgbgbabgdgdgdfdggdgdgaaagagagagaagdagagdgagdgdgdaaagagdgdgdgdgdgdfdfdfdfbgbgbgbgbgbgbgbgbbbbbbgbgbgbbbbbbbbgdgdgdgdcdgdgdgdgdcdcdcdgdadadcdbababadbadddmnfaLOAD
2021.08.12 17:07:43 5: EInk: callback from command LOAD, URL http://192.168.200.244/LOAD status code 200
2021.08.12 17:07:43 5: EInk: 268500, 0, gdgdcacgdgcgcagabacdgafdcdgggagagagdcdcgagdcgcacdgagagabacdcdcdcacagagagagcgdfdfdcdcgdcacgcecagagagacagagagagacecacacacacacagagcacagdgacagacacacacdcaagdgdgdgcgabacacdcdfdcagacacacacacgagdgdfagagagdgdgdgagagagdgdgdgdbbbbbdbbdbdbdbdbbbbbbbbcbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbcbcbcbcbcbcbcbcbcbcbcbcdcbdcadgdagdgdgdabdgdbababdbdbdbdbabababababdbdfdcdcdcdcdgdgdbdbdgdcdadadgdcdgdcdgdgdaaadadcdcdgdadcdcdgdgdadadcdcdadadadadcdadagdgdgaaagdadadadgdgdgdfdfdbgbgbgbgbgbgbgbabagagdgdgdagaaagdagadgagdgagagagagdgdgagagagdggdfdfbgbbbbbbbbbbbbbbbbbbbgbgbgbbbbbbgbgbgbgbdgdcdcdgdadcdcdcdgdgdgdadgdgdgdgdbdbdbadbabaacagdgdcgagdgcdcagacdcaggcdcdfdcdcagagdcdcgdgdgacacacagabagagagagacacdcacagcgcgdfagdcgdgdgdcacacacagdcacacdcagacecagagagagacacagdgacacagacagaagagagagacgcgcgdgdgagdgagagagacagdfdgdgdgacacacgdcdfdfacacacacacacagdgdgdgdbbbbbbbbbbcbcbdbdbdbdbbbbcbcbcbcbcbcbcbcbcbbbbbbbcbcbcbdbdbdbdbdbdbdbdbdbdbdbdbdbcbdgdbadbbdadgagbdbdbdbdfdfdfdfdbdbdbdbdbababdbdbdbdbdcdcdcdcdcdgdgdgdcdgdcdgdgdadgdaaagdgdgdcdgdgdgdadagdgdgdgdgdgdgdgdgdgdgdadadadgdagdgdgdadadagbgbgbgbgbgbgbgbgbabgbababagagagdgdgdagdgagdgagdgdgaadgagagdgdgdgdfdfdfbdbgbgbgbgbgbgbgbgbgbgbbbbbbgbgbgbbbbbbbbgdgdgdgdcdgdgdgdgdcdcdcdgdadadcdbababadbadgdbgdgcgcgacacgagagacececgdggggcgagagdcdcecgdcgcgdfdfdgdgdfacdcacacagdgagagdgdgdgcgdfagdcgcacgagagagdcagagdgagacagdcecacacacagabacacagagacaagacacacdcacagdgdgdfacacacacacdcdcecdcacacacacagdgdgagagagdgdgdgdgdgdgdgdgdgdgdgdbdbbbbbdbdbdbbcbbbbbcbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbcbcbcbcbcbcbcbcbcbcbcbcdcdbdbmnfaLOAD
2021.08.12 17:07:43 5: EInk: callback from command LOAD, URL http://192.168.200.244/LOAD status code 200
2021.08.12 17:07:43 5: EInk: 268800, 1, dfbbabagababdbcbabcbdbdbdbdbdfdfdfdfdbdbdbababababdbdgdgdgdbdcdcdcdgdcdgdcdcdgdagdadadadcdgdadadcdgdadadadcdadadadadadadcdgdgdgdaaadadadagdgdgdadgdbabgbgbgbgbgbgbgdfbgbgbdfdgdgdgagdgagdgagdgagagdgagdgdgdgdggdgdgdfdfgbbbbbbbbbbbbbbbbbbbbgbgbgbbbbbbgbgbgbgbgdgdcdcdgdadcdcdcdgdgdgdadgdgdgdbdbdcdgdbadadmcbaLOAD
2021.08.12 17:07:43 5: EInk: callback from command LOAD, URL http://192.168.200.244/LOAD status code 200
2021.08.12 17:07:53 5: EInk: callback from command SHOW, URL http://192.168.200.244/SHOW status code
2021.08.12 17:07:53 3: EInk: problems with communication to device, trying once more (1 of 3 done)
2021.08.12 17:08:03 5: EInk: callback from command SHOW, URL http://192.168.200.244/SHOW status code
2021.08.12 17:08:03 3: EInk: problems with communication to device, trying once more (2 of 3 done)
2021.08.12 17:08:13 5: EInk: callback from command SHOW, URL http://192.168.200.244/SHOW status code
2021.08.12 17:08:13 3: EInk: problems with communication to device, trying once more (3 of 3 done)
2021.08.12 17:08:23 5: EInk: callback from command SHOW, URL http://192.168.200.244/SHOW status code
2021.08.12 17:08:23 1: EInk: problems with communication to device, max retries (3) reached
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 12 August 2021, 18:07:17
Sieht so aus, als ob das SHOW Kommando nicht vom Device quittiert wird. Das Modul prüft, ob ein Status 200 also OK vom HTTP Kommando zurück kommt und probiert es dann noch mal (maximal 3 mal per default). Setze mal Folgendes:
attr EInk maxretries 0
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Dankbarer_User am 12 August 2021, 20:30:12
Problem solved! Vielen Dank dafür!
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 13 August 2021, 17:37:28
Zitat von: eki am 12 August 2021, 18:07:17
Sieht so aus, als ob das SHOW Kommando nicht vom Device quittiert wird. Das Modul prüft, ob ein Status 200 also OK vom HTTP Kommando zurück kommt und probiert es dann noch mal (maximal 3 mal per default). Setze mal Folgendes:
attr EInk maxretries 0

Hallo Eki,

ich kämpfe mit einem 7.5" HD (B) Display. Ich habe Interval auf 0 stehen, da ich nur ein Update benötige wenn sich ein Status bei einem Fenster ändert. Das Modul generiert auch sauber das PNG file. Wenn ich das PNG über
set epaper upload manuell hochlade passt auch alles (siehe Bild1). Sobald das Modul aber einen Upload automatisch startet kommt nur Schrott auf dem Display an (Bild2). Das fängt sich dann auch nicht mehr, von alleine z.B. mit dem nächsten Upload. Erst wenn ich den Upload wieder manuell starte, sieht es wieder korrekt aus.

Egal wie ich das PNG auch hochlade, am Ende zeigt das Modul immer:
Error uploading image to device, max retries (3) reached
an. Egal ob das PNG richtig oder verschoben angezeigt wird. Im Arduino IDE Log sehen beide Übertragungen identisch aus. Ich habe maxretries auf 0 stehen. Ich nutze den original Waveshare loader Sketch.

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 13 August 2021, 18:06:02
Kann es sein, dass die automatischen uploads immer mehrfach angestoßen werden und sich dann gegenseitig überschreiben?

Poste mal ein List Deines EInk Devices und ein Stück Logfile mit verbose 5 (das erzeugt sehr viele Ausgaben, also nicht vergessen wieder zurück zu stellen) wenn ein automatischer Update läuft.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 13 August 2021, 19:06:01
Hier das List:

Internals:
   BOARDTYPE  ESP8266
   COLORMODE  color
   CONVERTMODE level
   DEF        /opt/fhem/www/images/custom/display_hd.png
   DEVICETYPE 7.5inch_e-Paper_HAT_(B)_HD
   FUUID      60840029-f33f-1248-e0e3-fe715672d3502017
   FVERSION   89_ESPEInk.pm:0.233970/2020-12-21
   INTERVAL   0
   NAME       ep_flur
   NOTIFYDEV  ku_rollo,bd_rollo,elle,bd_fenster,Steffen,speak_volume,wz_rollo_rechts,wz_rollo,ku_fenster,wz_tuer,ep_flur,ds_tuer,wz_rollo_f,ds_rollo,global,wz_links,wz_rechts,sz_tuer,sz_rollo,bewohner_riedberg,wz_rollo_links,el_tuer,el_rollo
   NR         345
   NTFY_ORDER 50-ep_flur
   PICTUREFILE /opt/fhem/www/images/custom/display_hd.png
   STATE      Error uploading image to device, max retries (3) reached
   SUBFOLDER  images
   TYPE       ESPEInk
   URL        192.168.23.76
   Helper:
     DBLOG:
       result_picture:
         DBLogging:
           TIME       1628873996.69715
           VALUE      <html><img src=/fhem/images/ep_flur/result.png?dummy=93347.8841268141></img><div>/fhem/images/ep_flur/result.png</div></html>
       state:
         DBLogging:
           TIME       1628868598.72424
           VALUE      upload
   READINGS:
     2021-08-13 17:07:30   deftexts        0
     2021-08-13 18:59:56   result_picture  <html><img src=/fhem/images/ep_flur/result.png?dummy=93347.8841268141></img><div>/fhem/images/ep_flur/result.png</div></html>
     2021-08-13 17:07:30   source_picture  <html><img src=/fhem/images/ep_flur/display_hd.png?dummy=973013.175388139></img><div>/fhem/images/ep_flur/display_hd.png</div></html>
   helper:
Attributes:
   DbLogInclude .*
   boardtype  ESP8266
   colormode  color
   convertmode level
   definition addsymbol#line#0#50#81#0#FF0000#879#0
addsymbol#line#0#527#20#0#FF0000#879#0
addtext#Home Status Riedberg#260#15#24#0#ffffff#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

iconreading#speak_volume:e_icon#500#100#40#0#000000

iconreading#bewohner_riedberg:e_icon#600#100#40#0#000000
iconreading#elle:e_icon#600#150#40#0#000000
iconreading#Steffen:e_icon#600#200#40#0#000000

addtext#Schlafzimmer#10#68#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#sz_tuer:e_icon#145#60#40
iconreading#sz_rollo:e_icon#190#60#40

addtext#Zimmer Elle#10#118#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#el_tuer:e_icon#145#110#40
iconreading#el_rollo:e_icon#190#110#40

addtext#Duschbad#10#168#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#ds_tuer:e_icon#145#160#40
iconreading#ds_rollo:e_icon#190#160#40

addtext#Badezimmer#10#218#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#bd_fenster:e_icon#140#210#40
iconreading#bd_rollo:e_icon#190#210#40

addtext#Küche#10#268#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#ku_fenster:e_icon#140#260#40
iconreading#ku_rollo:e_icon#190#260#40

addtext#Wohnzimmer#10#318#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#wz_tuer:e_icon#145#310#40
iconreading#wz_rollo:e_icon#190#310#40

addtext#Wohnz. Fenster#10#368#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#wz_rollo_f:e_icon#190#360#40

addtext#Wohnz. links#10#418#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#wz_links:e_icon#140#410#40
iconreading#wz_rollo_links:e_icon#190#410#40

addtext#Wohnz. rechts#10#468#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#wz_rechts:e_icon#140#460#40
iconreading#wz_rollo_rechts:e_icon#190#460#40
   devicetype 7.5inch_e-Paper_HAT_(B)_HD
   interval   0
   maxretries 0
   room       03 LED Panel
   url        192.168.23.76
   verbose    5


Ich habe vor kurzem auf DBLog umgestellt. So richtig viele Meldungen landen auch bei Verbose 5 nicht in der DB. was ich aber sehen kann, ist das wenn er einen Upload macht, nur ein Antrag in der DB erscheint.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 14 August 2021, 17:39:52
Also ich muss meine Aussage revidieren, auch bei einem manuellen Upload wird das PNG manchmal verschoben dargestellt.

Wäre u.u. ein Attr "block_time" hilfreich. Also ein Wert in Sekunden den das Modul immer abwartet, bevor ein neuer Upload gestartet wird? Ich scheue mich noch ein wenig den doch recht aufwendigen Umweg über MQTT zu gehen. Dort könnte man so einen Timer ja über FHEM realisieren.

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 18 August 2021, 10:45:42
Hier wäre mal eine Version mit einem neuen Attribut ("mininterval"). Wenn da ein Wert (in Sekunden) gesetzt ist, wird überprüft, ob der letzte upload mindestens sol lange her ist. Falls nicht, wird kein upload durchgeführt.
Bitte schau mal, ob das funktioniert und Dein Problem löst. Falls ja, würde ich das auch in das FHEM repository als neue Version packen (inklusive auch des neuen Displays mit 7 Farben).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 18 August 2021, 18:09:10
Zitat von: eki am 18 August 2021, 10:45:42
Hier wäre mal eine Version mit einem neuen Attribut ("mininterval"). Wenn da ein Wert (in Sekunden) gesetzt ist, wird überprüft, ob der letzte upload mindestens sol lange her ist. Falls nicht, wird kein upload durchgeführt.
Bitte schau mal, ob das funktioniert und Dein Problem löst. Falls ja, würde ich das auch in das FHEM repository als neue Version packen (inklusive auch des neuen Displays mit 7 Farben).

Hallo Eki,

Danke für das Modul. Ich habe es installiert und habe folgende Einstellung gewählt.

Interval=0 (ich will nur eine Upload wenn sich der Status eines Fensters ändert, dann aber möglichst zeitnah)
mininterval =60 (um sicher zugehen, das sich die Uploads nicht ins Gehege kommen.)

Und in der Tat, wartete das Modul mit dem ersten Upload die "mininterval" Zeit ab. Dann jedoch startete eine Schleife, der Upload wurde quasi unendlich wiederholt. Und zwar in 15sec Intervallen. Aber die gute Nachricht, alle Uploads wurden fehlerfrei dargestellt.

(Arduino LOG)
17:52:30.447 -> LOAD
17:52:30.447 ->
17:52:30.447 ->  EPD_loadALOAD
17:52:30.547 ->
17:52:30.547 ->  EPD_loadALOAD
17:52:30.614 ->
17:52:30.614 ->  EPD_loadALOAD
17:52:30.749 ->
17:52:30.749 ->  EPD_loadALOAD
17:52:30.816 ->
17:52:30.816 ->  EPD_loadALOAD
17:52:30.884 ->
17:52:30.884 ->  EPD_loadALOAD
17:52:30.952 ->
17:52:30.952 ->  EPD_loadALOAD
17:52:31.020 ->
17:52:31.020 ->  EPD_loadALOAD
17:52:31.089 ->
17:52:31.089 ->  EPD_loadALOAD
17:52:31.123 ->
17:52:31.123 ->  EPD_loadALOAD
17:52:31.198 ->
17:52:31.198 ->  EPD_loadALOAD
17:52:31.265 ->
17:52:31.265 ->  EPD_loadALOAD
17:52:31.333 ->
17:52:31.333 ->  EPD_loadALOAD
17:52:31.404 ->
17:52:31.404 ->  EPD_loadALOAD
17:52:31.472 ->
17:52:31.472 ->  EPD_loadALOAD
17:52:31.539 ->
17:52:31.539 ->  EPD_loadALOAD
17:52:31.606 ->
17:52:31.606 ->  EPD_loadALOAD
17:52:31.673 ->
17:52:31.673 ->  EPD_loadALOAD
17:52:31.741 ->
17:52:31.741 ->  EPD_loadALOAD
17:52:31.809 ->
17:52:31.809 ->  EPD_loadALOAD
17:52:31.876 ->
17:52:31.876 ->  EPD_loadALOAD
17:52:31.943 ->
17:52:31.943 ->  EPD_loadALOAD
17:52:31.976 ->
17:52:31.976 ->  EPD_loadALOAD
17:52:32.044 ->
17:52:32.044 ->  EPD_loadALOAD
17:52:32.111 ->
17:52:32.111 ->  EPD_loadALOAD
17:52:32.178 ->
17:52:32.178 ->  EPD_loadALOAD
17:52:32.247 ->
17:52:32.247 ->  EPD_loadALOAD
17:52:32.317 ->
17:52:32.317 ->  EPD_loadALOAD
17:52:32.384 ->
17:52:32.384 ->  EPD_loadALOAD
17:52:32.451 ->
17:52:32.451 ->  EPD_loadALOAD
17:52:32.521 ->
17:52:32.521 ->  EPD_loadALOAD
17:52:32.589 ->
17:52:32.589 ->  EPD_loadALOAD
17:52:32.624 ->
17:52:32.624 ->  EPD_loadALOAD
17:52:32.693 ->
17:52:32.693 ->  EPD_loadALOAD
17:52:32.763 ->
17:52:32.763 ->  EPD_loadALOAD
17:52:32.831 ->
17:52:32.831 ->  EPD_loadALOAD
17:52:32.898 ->
17:52:32.898 ->  EPD_loadALOAD
17:52:32.965 ->
17:52:32.965 ->  EPD_loadALOAD
17:52:33.033 ->
17:52:33.033 ->  EPD_loadALOAD
17:52:33.101 ->
17:52:33.101 ->  EPD_loadALOAD
17:52:33.135 ->
17:52:33.135 ->  EPD_loadALOAD
17:52:33.202 ->
17:52:33.202 ->  EPD_loadALOAD
17:52:33.275 ->
17:52:33.275 ->  EPD_loadALOAD
17:52:33.345 ->
17:52:33.345 ->  EPD_loadALOAD
17:52:33.417 ->
17:52:33.417 ->  EPD_loadALOAD
17:52:33.488 ->
17:52:33.488 ->  EPD_loadALOAD
17:52:33.588 ->
17:52:33.588 ->  EPD_loadALOAD
17:52:33.655 ->
17:52:33.655 ->  EPD_loadALOAD
17:52:33.723 ->
17:52:33.723 ->  EPD_loadALOAD
17:52:33.789 ->
17:52:33.789 ->  EPD_loadALOAD
17:52:34.103 ->
17:52:34.103 ->  EPD_loadALOAD
17:52:34.172 ->
17:52:34.172 ->  EPD_loadALOAD
17:52:34.238 ->
17:52:34.238 ->  EPD_loadALOAD
17:52:34.506 ->
17:52:34.506 ->  EPD_loadALOAD
17:52:34.573 ->
17:52:34.573 ->  EPD_loadALOAD
17:52:34.640 ->
17:52:34.640 ->  EPD_loadALOAD
17:52:34.709 ->
17:52:34.709 ->  EPD_loadALOAD
17:52:34.814 ->
17:52:34.814 ->  EPD_loadALOAD
17:52:34.847 ->
17:52:34.847 ->  EPD_loadALOAD
17:52:34.915 ->
17:52:34.915 ->  EPD_loadALOAD
17:52:35.016 ->
17:52:35.016 ->  EPD_loadALOAD
17:52:35.052 ->
17:52:35.052 ->  EPD_loadALOAD
17:52:35.433 ->
17:52:35.433 ->  EPD_loadALOAD
17:52:35.501 ->
17:52:35.501 ->  EPD_loadALOAD
17:52:35.568 ->
17:52:35.568 ->  EPD_loadALOAD
17:52:35.634 ->
17:52:35.634 ->  EPD_loadALOAD
17:52:35.702 ->
17:52:35.702 ->  EPD_loadALOAD
17:52:35.769 ->
17:52:35.769 ->  EPD_loadALOAD
17:52:35.870 ->
17:52:35.870 ->  EPD_loadALOAD
17:52:35.937 ->
17:52:35.937 ->  EPD_loadALOAD
17:52:36.005 ->
17:52:36.005 ->  EPD_loadALOAD
17:52:36.073 ->
17:52:36.073 ->  EPD_loadALOAD
17:52:36.107 ->
17:52:36.107 ->  EPD_loadALOAD
17:52:36.176 ->
17:52:36.176 ->  EPD_loadALOAD
17:52:36.278 ->
17:52:36.278 ->  EPD_loadALOAD
17:52:36.346 ->
17:52:36.346 ->  EPD_loadALOAD
17:52:36.415 ->
17:52:36.415 ->  EPD_loadALOAD
17:52:36.449 ->
17:52:36.449 ->  EPD_loadANEXT
17:52:36.517 -> LOAD
17:52:36.517 ->
17:52:36.517 ->  EPD_loadALOAD
17:52:36.587 ->
17:52:36.587 ->  EPD_loadALOAD
17:52:36.657 ->
17:52:36.657 ->  EPD_loadALOAD
17:52:36.725 ->
17:52:36.725 ->  EPD_loadALOAD
17:52:36.794 ->
17:52:36.794 ->  EPD_loadALOAD
17:52:36.861 ->
17:52:36.861 ->  EPD_loadALOAD
17:52:36.929 ->
17:52:36.929 ->  EPD_loadALOAD
17:52:36.997 ->
17:52:36.997 ->  EPD_loadALOAD
17:52:37.069 ->
17:52:37.069 ->  EPD_loadALOAD
17:52:37.102 ->
17:52:37.102 ->  EPD_loadALOAD
17:52:37.206 ->
17:52:37.206 ->  EPD_loadALOAD
17:52:37.274 ->
17:52:37.274 ->  EPD_loadALOAD
17:52:37.344 ->
17:52:37.344 ->  EPD_loadALOAD
17:52:37.613 ->
17:52:37.613 ->  EPD_loadALOAD
17:52:37.681 ->
17:52:37.681 ->  EPD_loadALOAD
17:52:37.954 ->
17:52:37.954 ->  EPD_loadALOAD
17:52:38.021 ->
17:52:38.021 ->  EPD_loadALOAD
17:52:38.090 ->
17:52:38.090 ->  EPD_loadALOAD
17:52:38.164 ->
17:52:38.164 ->  EPD_loadALOAD
17:52:38.231 ->
17:52:38.231 ->  EPD_loadALOAD
17:52:38.299 ->
17:52:38.299 ->  EPD_loadALOAD
17:52:38.332 ->
17:52:38.332 ->  EPD_loadALOAD
17:52:38.400 ->
17:52:38.400 ->  EPD_loadALOAD
17:52:38.468 ->
17:52:38.468 ->  EPD_loadALOAD
17:52:38.537 ->
17:52:38.537 ->  EPD_loadALOAD
17:52:38.604 ->
17:52:38.604 ->  EPD_loadALOAD
17:52:38.675 ->
17:52:38.675 ->  EPD_loadALOAD
17:52:38.745 ->
17:52:38.745 ->  EPD_loadALOAD
17:52:38.813 ->
17:52:38.813 ->  EPD_loadALOAD
17:52:38.880 ->
17:52:38.880 ->  EPD_loadALOAD
17:52:38.947 ->
17:52:38.947 ->  EPD_loadALOAD
17:52:39.014 ->
17:52:39.014 ->  EPD_loadALOAD
17:52:39.049 ->
17:52:39.049 ->  EPD_loadALOAD
17:52:39.116 ->
17:52:39.116 ->  EPD_loadALOAD
17:52:39.184 ->
17:52:39.184 ->  EPD_loadALOAD
17:52:39.251 ->
17:52:39.251 ->  EPD_loadALOAD
17:52:39.320 ->
17:52:39.320 ->  EPD_loadALOAD
17:52:39.388 ->
17:52:39.388 ->  EPD_loadALOAD
17:52:39.454 ->
17:52:39.454 ->  EPD_loadALOAD
17:52:39.521 ->
17:52:39.521 ->  EPD_loadALOAD
17:52:39.589 ->
17:52:39.589 ->  EPD_loadALOAD
17:52:39.624 ->
17:52:39.624 ->  EPD_loadALOAD
17:52:39.693 ->
17:52:39.693 ->  EPD_loadALOAD
17:52:39.761 ->
17:52:39.761 ->  EPD_loadALOAD
17:52:39.829 ->
17:52:39.829 ->  EPD_loadALOAD
17:52:39.898 ->
17:52:39.898 ->  EPD_loadALOAD
17:52:39.966 ->
17:52:39.966 ->  EPD_loadALOAD
17:52:40.034 ->
17:52:40.034 ->  EPD_loadALOAD
17:52:40.101 ->
17:52:40.101 ->  EPD_loadALOAD
17:52:40.138 ->
17:52:40.138 ->  EPD_loadALOAD
17:52:40.209 ->
17:52:40.209 ->  EPD_loadALOAD
17:52:40.277 ->
17:52:40.277 ->  EPD_loadALOAD
17:52:40.346 ->
17:52:40.346 ->  EPD_loadALOAD
17:52:40.413 ->
17:52:40.413 ->  EPD_loadALOAD
17:52:40.481 ->
17:52:40.481 ->  EPD_loadALOAD
17:52:40.547 ->
17:52:40.547 ->  EPD_loadALOAD
17:52:40.615 ->
17:52:40.615 ->  EPD_loadALOAD
17:52:40.649 ->
17:52:40.649 ->  EPD_loadALOAD
17:52:40.750 ->
17:52:40.750 ->  EPD_loadALOAD
17:52:40.822 ->
17:52:40.822 ->  EPD_loadALOAD
17:52:40.890 ->
17:52:40.890 ->  EPD_loadALOAD
17:52:40.958 ->
17:52:40.958 ->  EPD_loadALOAD
17:52:41.029 ->
17:52:41.029 ->  EPD_loadALOAD
17:52:41.097 ->
17:52:41.097 ->  EPD_loadALOAD
17:52:41.164 ->
17:52:41.164 ->  EPD_loadALOAD
17:52:41.199 ->
17:52:41.199 ->  EPD_loadALOAD
17:52:41.301 ->
17:52:41.301 ->  EPD_loadALOAD
17:52:41.369 ->
17:52:41.369 ->  EPD_loadALOAD
17:52:41.438 ->
17:52:41.438 ->  EPD_loadALOAD
17:52:41.472 ->
17:52:41.472 ->  EPD_loadALOAD
17:52:41.540 ->
17:52:41.540 ->  EPD_loadALOAD
17:52:41.607 ->
17:52:41.607 ->  EPD_loadALOAD
17:52:41.673 ->
17:52:41.673 ->  EPD_loadALOAD
17:52:41.741 ->
17:52:41.741 ->  EPD_loadALOAD
17:52:41.809 ->
17:52:41.809 ->  EPD_loadALOAD
17:52:41.878 ->
17:52:41.878 ->  EPD_loadALOAD
17:52:41.946 ->
17:52:41.946 ->  EPD_loadALOAD
17:52:41.984 ->
17:52:41.984 ->  EPD_loadA
17:52:42.018 -> SHOW
17:52:42.018 ->
17:52:42.227 ->
17:52:42.227 -> e-Paper busy
17:53:03.840 -> e-Paper busy release
17:53:03.840 -> EPD_7IN5B_HD_Show END
17:53:03.840 ->
17:53:03.840 -> SHOW
17:53:03.840 ->
17:53:04.044 ->
17:53:04.044 -> e-Paper busy
17:53:25.722 -> e-Paper busy release
17:53:25.722 -> EPD_7IN5B_HD_Show END
17:53:27.731 ->
17:53:27.731 -> SHOW
17:53:27.731 ->
17:53:27.938 ->
17:53:27.938 -> e-Paper busy
17:53:49.611 -> e-Paper busy release
17:53:49.611 -> EPD_7IN5B_HD_Show END
17:53:51.609 ->
17:53:51.609 -> SHOW
17:53:51.609 ->
17:53:51.786 ->
17:53:51.786 -> e-Paper busy
17:54:13.451 -> e-Paper busy release
17:54:13.451 -> EPD_7IN5B_HD_Show END
17:54:15.461 ->
17:54:15.461 -> SHOW
17:54:15.461 ->
17:54:15.631 ->
17:54:15.631 -> e-Paper busy
17:54:37.273 -> e-Paper busy release
17:54:37.273 -> EPD_7IN5B_HD_Show END
17:54:39.300 ->
17:54:39.300 -> SHOW
17:54:39.300 ->
17:54:39.503 ->
17:54:39.503 -> e-Paper busy
17:55:01.134 -> e-Paper busy release
17:55:01.134 -> EPD_7IN5B_HD_Show END
17:55:03.116 ->
17:55:03.116 -> SHOW
17:55:03.116 ->
17:55:03.320 ->
17:55:03.320 -> e-Paper busy
17:55:24.989 -> e-Paper busy release
17:55:24.989 -> EPD_7IN5B_HD_Show END
17:55:26.993 ->
17:55:26.993 -> SHOW
17:55:26.993 ->
17:55:27.202 ->
17:55:27.202 -> e-Paper busy
17:55:48.815 -> e-Paper busy release
17:55:48.815 -> EPD_7IN5B_HD_Show END
17:55:50.809 ->
17:55:50.809 -> SHOW
17:55:50.809 ->
17:55:51.011 ->
17:55:51.011 -> e-Paper busy
17:56:12.666 -> e-Paper busy release
17:56:12.666 -> EPD_7IN5B_HD_Show END
17:56:14.673 ->
17:56:14.673 -> SHOW
17:56:14.673 ->
17:56:14.873 ->
17:56:14.873 -> e-Paper busy
17:56:36.553 -> e-Paper busy release
17:56:36.553 -> EPD_7IN5B_HD_Show END
17:56:38.575 ->
17:56:38.575 -> SHOW
17:56:38.575 ->
17:56:38.743 ->
17:56:38.743 -> e-Paper busy
17:57:00.428 -> e-Paper busy release
17:57:00.428 -> EPD_7IN5B_HD_Show END
17:57:02.456 ->
17:57:02.456 -> SHOW
17:57:02.456 ->
17:57:02.633 ->
17:57:02.633 -> e-Paper busy
17:57:24.314 -> e-Paper busy release
17:57:24.314 -> EPD_7IN5B_HD_Show END
17:57:26.340 ->
17:57:26.340 -> SHOW
17:57:26.340 ->
17:57:26.510 ->
17:57:26.510 -> e-Paper busy
17:57:48.200 -> e-Paper busy release
17:57:48.200 -> EPD_7IN5B_HD_Show END
17:57:50.212 ->
17:57:50.212 -> SHOW
17:57:50.212 ->
17:57:50.413 ->
17:57:50.413 -> e-Paper busy
17:58:12.053 -> e-Paper busy release
17:58:12.053 -> EPD_7IN5B_HD_Show END
17:58:14.054 ->
17:58:14.054 -> SHOW
17:58:14.054 ->
17:58:14.256 ->
17:58:14.256 -> e-Paper busy
17:58:35.913 -> e-Paper busy release
17:58:35.913 -> EPD_7IN5B_HD_Show END
17:58:37.889 ->
17:58:37.889 -> SHOW
17:58:37.889 ->
17:58:38.089 ->
17:58:38.089 -> e-Paper busy
17:58:59.760 -> e-Paper busy release
17:58:59.760 -> EPD_7IN5B_HD_Show END
17:59:01.775 ->
17:59:01.775 -> SHOW
17:59:01.775 ->
17:59:01.978 ->
17:59:01.978 -> e-Paper busy
17:59:23.593 -> e-Paper busy release
17:59:23.593 -> EPD_7IN5B_HD_Show END
17:59:25.596 ->
17:59:25.596 -> SHOW
17:59:25.596 ->
17:59:25.802 ->
17:59:25.802 -> e-Paper busy
17:59:47.501 -> e-Paper busy release
17:59:47.501 -> EPD_7IN5B_HD_Show END
17:59:49.514 ->
17:59:49.514 -> SHOW
17:59:49.514 ->
17:59:49.718 ->
17:59:49.718 -> e-Paper busy
18:00:11.392 -> e-Paper busy release
18:00:11.392 -> EPD_7IN5B_HD_Show END
18:00:13.391 ->
18:00:13.391 -> SHOW
18:00:13.391 ->
18:00:13.593 ->
18:00:13.593 -> e-Paper busy
18:00:35.224 -> e-Paper busy release
18:00:35.224 -> EPD_7IN5B_HD_Show END
18:00:37.228 ->
18:00:37.228 -> SHOW
18:00:37.228 ->
18:00:37.430 ->
18:00:37.430 -> e-Paper busy
18:00:59.122 -> e-Paper busy release
18:00:59.122 -> EPD_7IN5B_HD_Show END
18:01:01.120 ->
18:01:01.120 -> SHOW
18:01:01.120 ->
18:01:01.293 ->
18:01:01.293 -> e-Paper busy
18:01:22.956 -> e-Paper busy release
18:01:22.956 -> EPD_7IN5B_HD_Show END
18:01:24.941 ->
18:01:24.941 -> SHOW
18:01:24.941 ->
18:01:25.148 ->
18:01:25.148 -> e-Paper busy
18:01:46.789 -> e-Paper busy release
18:01:46.789 -> EPD_7IN5B_HD_Show END
18:01:48.808 ->
18:01:48.808 -> SHOW
18:01:48.808 ->
18:01:49.014 ->
18:01:49.014 -> e-Paper busy
18:02:10.630 -> e-Paper busy release
18:02:10.630 -> EPD_7IN5B_HD_Show END
18:02:12.656 ->
18:02:12.656 -> SHOW
18:02:12.656 ->
18:02:12.866 ->
18:02:12.866 -> e-Paper busy
18:02:34.498 -> e-Paper busy release
18:02:34.498 -> EPD_7IN5B_HD_Show END
18:02:36.514 ->
18:02:36.514 -> SHOW
18:02:36.514 ->
18:02:36.688 ->
18:02:36.688 -> e-Paper busy
18:02:58.373 -> e-Paper busy release
18:02:58.373 -> EPD_7IN5B_HD_Show END
18:03:00.355 ->
18:03:00.355 -> SHOW
18:03:00.355 ->
18:03:00.557 ->
18:03:00.557 -> e-Paper busy
18:03:22.220 -> e-Paper busy release
18:03:22.220 -> EPD_7IN5B_HD_Show END
18:03:24.223 ->
18:03:24.223 -> SHOW
18:03:24.223 ->
18:03:24.399 ->
18:03:24.399 -> e-Paper busy
18:03:46.103 -> e-Paper busy release
18:03:46.103 -> EPD_7IN5B_HD_Show END
18:03:48.077 ->
18:03:48.077 -> SHOW
18:03:48.077 ->
18:03:48.283 ->
18:03:48.283 -> e-Paper busy
18:04:09.938 -> e-Paper busy release
18:04:09.938 -> EPD_7IN5B_HD_Show END
18:04:11.929 ->
18:04:11.929 -> SHOW
18:04:11.929 ->
18:04:12.133 ->
18:04:12.133 -> e-Paper busy
18:04:33.748 -> e-Paper busy release
18:04:33.748 -> EPD_7IN5B_HD_Show END
18:04:35.754 ->
18:04:35.754 -> SHOW
18:04:35.754 ->
18:04:35.962 ->
18:04:35.962 -> e-Paper busy
18:04:57.625 -> e-Paper busy release
18:04:57.625 -> EPD_7IN5B_HD_Show END
18:04:59.619 ->
18:04:59.619 -> SHOW
18:04:59.619 ->
18:04:59.827 ->
18:04:59.827 -> e-Paper busy
18:05:21.464 -> e-Paper busy release
18:05:21.464 -> EPD_7IN5B_HD_Show END
18:05:23.471 ->
18:05:23.471 -> SHOW
18:05:23.471 ->
18:05:23.681 ->
18:05:23.681 -> e-Paper busy
18:05:45.322 -> e-Paper busy release
18:05:45.322 -> EPD_7IN5B_HD_Show END
18:05:47.326 ->
18:05:47.326 -> SHOW
18:05:47.326 ->
18:05:47.498 ->
18:05:47.498 -> e-Paper busy
18:06:09.138 -> e-Paper busy release
18:06:09.138 -> EPD_7IN5B_HD_Show END
18:06:11.158 ->
18:06:11.158 -> SHOW
18:06:11.158 ->
18:06:11.365 ->
18:06:11.365 -> e-Paper busy
18:06:32.976 -> e-Paper busy release
18:06:32.976 -> EPD_7IN5B_HD_Show END
18:06:34.975 ->
18:06:34.975 -> SHOW
18:06:34.975 ->
18:06:35.176 ->
18:06:35.176 -> e-Paper busy
18:06:56.856 -> e-Paper busy release
18:06:56.856 -> EPD_7IN5B_HD_Show END

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 19 August 2021, 18:27:38
Noch ein ergänzender Hinweis, das Bild was quasi unendlich hochgeladen wird ist immer das selbe. Auch wenn im Modul ein neues png erzeugt wird.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 20 August 2021, 07:01:52
Kannst Du mal ein Listing Deines EInk Devices aus FHEM posten und, falls Logmeldungen kommen, auch die.

Edit: Habe das mal bei mir genauso versucht nachzustellen, da verhält sich FHEM wie erwartet (keine automatischen Wiederholungen).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 20 August 2021, 12:03:36
Mach ich heute Abend gerne, welchen Sketch hast du denn auf dem ESP8266?

Kannst du mir deinen mal hier hochladen, dann könnte ich das schon mal als Fehlerquelle ausschließen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 20 August 2021, 12:27:49
Ich habe, weil ich aktuell kein entsprechendes Device habe (meins ist kaputt), einfach einen Dummy Webserver dagegen laufen lassen, der fristt einfach nur die POSTs und meldet OK zurück.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 20 August 2021, 13:31:39
Wenn der übers Web erreichbar ist, könnte ich zum testen meine Posts in einem Zeitfenster auch mal da hin schicken.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 20 August 2021, 13:47:07
Der ist lokal. Trage einfach mal 127.0.0.1:8083/fhem als url im Device ein, dann laufen die Daten auf den FHEM Webserver, das sollte zum Testen gehen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 21 August 2021, 00:44:34
Zitat von: eki am 20 August 2021, 07:01:52
Kannst Du mal ein Listing Deines EInk Devices aus FHEM posten und, falls Logmeldungen kommen, auch die.

Hier das Listing:

Internals:
   BOARDTYPE  ESP8266
   COLORMODE  color
   CONVERTMODE level
   DEF        /opt/fhem/www/images/custom/display_hd.png
   DEVICETYPE 7.5inch_e-Paper_HAT_(B)_HD
   FUUID      60840029-f33f-1248-e0e3-fe715672d3502017
   FVERSION   89_ESPEInk.pm:0.233970/2020-12-21
   INTERVAL   0
   NAME       ep_flur
   NOTIFYDEV  bd_rollo,ku_fenster,Steffen,elle,el_rollo,speak_volume,wz_rollo_links,wz_links,wz_rechts,rg_felix,el_tuer,ep_flur,bd_fenster,ku_rollo,wz_rollo_rechts,sz_rollo,wz_rollo_f,wz_tuer,ds_rollo,daylist,sz_tuer,wz_rollo,ds_tuer,global
   NR         344
   NTFY_ORDER 50-ep_flur
   PICTUREFILE /opt/fhem/www/images/custom/display_hd.png
   STATE      Error uploading image to device, max retries (0) reached
   SUBFOLDER  images
   TYPE       ESPEInk
   URL        192.168.23.76
   Helper:
     DBLOG:
       result_picture:
         DBLogging:
           TIME       1629497769.07276
           VALUE      <html><img src=/fhem/images/ep_flur/result.png?dummy=955740.955649642></img><div>/fhem/images/ep_flur/result.png</div></html>
       state:
         DBLogging:
           TIME       1629379928.38145
           VALUE      convert
       updatestart:
         DBLogging:
           TIME       1629497769.07932
           VALUE      1629497769.07864
   READINGS:
     2021-08-18 17:36:42   deftexts        0
     2021-08-21 00:16:09   result_picture  <html><img src=/fhem/images/ep_flur/result.png?dummy=955740.955649642></img><div>/fhem/images/ep_flur/result.png</div></html>
     2021-08-18 17:36:41   source_picture  <html><img src=/fhem/images/ep_flur/display_hd.png?dummy=808923.261242171></img><div>/fhem/images/ep_flur/display_hd.png</div></html>
     2021-08-21 00:16:09   updatestart     1629497769.07864
   helper:
Attributes:
   DbLogInclude .*
   boardtype  ESP8266
   colormode  color
   convertmode level
   definition addsymbol#line#0#50#81#0#FF0000#879#0
addsymbol#line#0#527#20#0#FF0000#879#0
addtext#Home Status Riedberg#260#15#24#0#ffffff#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addsymbol#rectangle#510#50#4#0#FF0000#367#50#0
addsymbol#rectangle#1#50#4#0#FF0000#260#460#0
           
iconreading#speak_volume:e_icon#500#150#40#0#000000

iconreading#elle:e_icon#800#120#40#0#000000
iconreading#Steffen:e_icon#800#170#40#0#000000
iconreading#rg_felix:e_icon#800#220#40#0#000000

addtext#Elle:#750#130#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
addtext#Steffen:#718#180#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
addtext#Felix:#740#230#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0

addtext#Heute ist:#525#65#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#daylist:state#620#65#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0

addtext#Schlafzimmer#10#68#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#sz_tuer:e_icon#145#60#40
iconreading#sz_rollo:e_icon#190#60#40

addtext#Zimmer Elle#10#118#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#el_tuer:e_icon#145#110#40
iconreading#el_rollo:e_icon#190#110#40

addtext#Duschbad#10#168#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#ds_tuer:e_icon#145#160#40
iconreading#ds_rollo:e_icon#190#160#40

addtext#Badezimmer#10#218#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#bd_fenster:e_icon#140#210#40
iconreading#bd_rollo:e_icon#190#210#40

addtext#Küche#10#268#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#ku_fenster:e_icon#140#260#40
iconreading#ku_rollo:e_icon#190#260#40

addtext#Wohnzimmer#10#318#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#wz_tuer:e_icon#145#310#40
iconreading#wz_rollo:e_icon#190#310#40

addtext#Wohnz. Fenster#10#368#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#wz_rollo_f:e_icon#190#360#40

addtext#Wohnz. links#10#418#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#wz_links:e_icon#140#410#40
iconreading#wz_rollo_links:e_icon#190#410#40

addtext#Wohnz. rechts#10#468#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#wz_rechts:e_icon#140#460#40
iconreading#wz_rollo_rechts:e_icon#190#460#40
   devicetype 7.5inch_e-Paper_HAT_(B)_HD
   interval   0
   maxretries 0
   mininterval 60
   room       03 LED Panel
   url        192.168.23.76


Im Event Monitor gibt es folgende Einträge:


2021-08-21 00:46:01 ESPEInk ep_flur updatestart: 1629499561.94323
dummy=188740.374623709></img><div>/fhem/images/epaper_klein/result.png</div></html>
2021-08-21 00:46:01 ESPEInk ep_flur updatestart: 1629499561.94323
2021-08-21 00:47:11 ESPEInk ep_flur updatestart: 1629499631.6928
2021-08-21 00:48:14 ESPEInk ep_flur updatestart: 1629499694.24449
2021-08-21 00:49:12 ESPEInk ep_flur upload
2021-08-21 00:49:34 ESPEInk ep_flur updatestart: 1629499774.39812
2021-08-21 00:50:15 ESPEInk ep_flur convert
2021-08-21 00:50:23 ESPEInk ep_flur result_picture: <html><img src=/fhem/images/ep_flur/result.png?dummy=697587.579341924></img><div>/fhem/images/ep_flur/result.png</div></html>
2021-08-21 00:50:30 ESPEInk ep_flur upload
2021-08-21 00:50:48 ESPEInk ep_flur updatestart: 1629499848.64535

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 22 August 2021, 00:11:46
Sorry wenn ich ein wenig verzweifelt klinge aber ich komme einfach nicht weiter... Dieser ESP8266 macht mich echt fertig. (Der ESP32 erste recht)

- Mit der Waveshare Original Software und dem Standard ESPInk Modul bekomme ich im Grunde nur Schrott auf das Display. Mit dem ESPink Modul von EKI (Danke :))mit dem Attr. mininterval sieht die Anzeige 1A aus, allerdings aktualisiert sie sich endlos.

- Die Software von Yattien konnte ich genau einmal konfigurieren. Egal was ich zwischendurch auf den ESP spiele sobald ich die Yattien Software drauf spiele, zieht er sich von irgendwoher die Daten für das WLAN und den MQTT Server den die ich mal zum testen eingegeben habe. Somit komme ich nicht dazu den Workaround über MQTT aufzubauen. Auch mit /reset komme bekomme ich das Teil nicht zurückgesetzt.

Ich habe keine Idee mehr.. Ich verstehe diese ESP Teile einfach nicht. Ich hab auch einen "Reset Sketch" versucht, der macht aber gefühlt auch nicht mehr wie wenn ich kurz die Spannung abziehe.

Also ich habe mich schon zu anderen Themen immer erfolgreich durch Google und YouTube gewühlt aber hier bin ich echt am verzweifeln. Zumal viele Beiträge schon viele Jahre alt sind.  So langsam glaube ich das es eine Schnapsidee war, von einer LED Anzeige auf e-Paper umsteigen zu wollen....

Ich wäre echt für ein paar Tipps dankbar ... ::)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 22 August 2021, 11:33:03
Jetzt bin ich auf ein weiteres Problem gestoßen, das ich mir nicht erklären kann.

Um auf den E-Paper Zustände per ICONS darstellen zu können, generiere ich über Userreadings in dem entsprechenden Device ein Reading "e_icon" in dem der Name des svg Icons steht. Das klappt mit den in FHEM eingebauten ICONs wunderbar. Ich habe aber auch ein paar Icons die ich mit Inkscape selbst gemalt habe. Die eignen Icons werden auch anstandslos in FHEM angezeigt. ESPInk kommt damit aber gar nicht klar. Entweder wird das Icon der letzen "iconreading" Zeile angezeigt oder der "FHEM-Smilie".

Hat denn jemand schon mal eigene Icons über den Weg aufs ePaper bekommen?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 22 August 2021, 11:38:05
Zitat von: Borkk am 22 August 2021, 11:33:03
Um auf den E-Paper Zustände per ICONS darstellen zu können, generiere ich über Userreadings in dem entsprechenden Device ein Reading "e_icon" in dem der Name des svg Icons steht. Das klappt mit den in FHEM eingebauten ICONs wunderbar. Ich habe aber auch ein paar Icons die ich mit Inkscape selbst gemalt habe. Die eignen Icons werden auch anstandslos in FHEM angezeigt. ESPInk kommt damit aber gar nicht klar. Entweder wird das Icon der letzen "iconreading" Zeile angezeigt oder der "FHEM-Smilie".

Hat denn jemand schon mal eigene Icons über den Weg aufs ePaper bekommen?

Eigene Icons funktionieren prinzipiell und habe ich auch so im Einsatz. Ohne jetzt eine konkrete Lösung für dich zu haben, habe ich mich erinnert, dass das in diesem Thread schon mal diskutiert wurde. Schau mal um diesen Post (https://forum.fhem.de/index.php/topic,104171.msg1097576/topicseen.html#msg1097576) herum, vllt. hilft es dir.

HTH
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 22 August 2021, 12:21:43
Zitat von: Jendaw am 22 August 2021, 11:38:05
Eigene Icons funktionieren prinzipiell und habe ich auch so im Einsatz. Ohne jetzt eine konkrete Lösung für dich zu haben, habe ich mich erinnert, dass das in diesem Thread schon mal diskutiert wurde. Schau mal um diesen Post (https://forum.fhem.de/index.php/topic,104171.msg1097576/topicseen.html#msg1097576) herum, vllt. hilft es dir.

HTH

Das mit mit dem Modpath usw. kenne ich. Die eigene SVG Icons funktionieren in FHEM auch einwandfrei. Nur ESPInk kommt scheinbar nicht damit klar. Man braucht nur ein Standard Icon mit Inkscape öffnen und unverändert wieder speichern, dann ist es für ESPInk tot.

Eben bin ich auf weiteres Problem gestoßen. Im Gegensatz zu "addsymbol" oder "addtext" wird die Angabe einer Farbe bei "iconreading" ignoriert. Icons werden immer schwarz dargestellt auch wenn ich z.B. ff0000 für rot eintrage.

Vielleicht liegt es auch an meiner grundsätzlichen Installation? Ich habe 2 FHEM Instanzen auf Docker laufen. Meine eigenen Icons liegen z.B. unter ./www/images/custom/ den Ordner habe ich über Docker auf den Host gemappt. Wie man das halt so macht und es funktioniert auch einwandfrei. Den Ordner habe ich natürlich in FHEMWEB bekannt gemacht.

@Eki: nicht das du denkt ich nörgle an deinem super Modul rum. Ich glaube nur es hat schon noch ein paar größere issues. Die zuletzt von mir genanten Punkte habe ich gar nicht in Verbindung mit dem Display festgestellt, sondern schon beim generieren des PNG Files.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 22 August 2021, 14:04:44
Zitat von: Borkk am 22 August 2021, 12:21:43
Das mit mit dem Modpath usw. kenne ich. Die eigene SVG Icons funktionieren in FHEM auch einwandfrei. Nur ESPInk kommt scheinbar nicht damit klar. Man braucht nur ein Standard Icon mit Inkscape öffnen und unverändert wieder speichern, dann ist es für ESPInk tot.

Ich hatte auch ein Problem mit Inkscape. FHEM wollte meine geänderten SVGs nicht anzeigen. In einem zweiten Versuch habe ich dann die Änderungen sehr "einfach" gehalten und damit lief es dann in FHEM. Ich vermute daher, dass es vielleicht ein Problem mit der "Umwandlung in Pfade" in Inkscape sein könnte. Allerdings habe ich nicht getestet, ob meine geänderten SVGs in ESPInk dargestellt werden können.

Im WIKI finde ich dazu noch: 'das gesamte Bild muss als "Normales SVG" gespeichert werden (Standardeinstellung bei Inkscape ist "Inkscape SVG")'. Vielleicht hängt es bei dir damit zusammen.

Ich hatte in meinem Source-pic anfangs auch ein rotes Rechteck (ff0000) eingefügt. ESPInk konnte das dann aber nicht (in rot) darstellen. So muss der PI das Rechteck leider jedes Mal berechnen, was leider auch noch zu einem anderen Fehler (s. Beitrag #270) führt.  Der ESPInk erwartet offenbar Parameter für solide oder gestrichelte Linien usw. in $s1 und $s2.

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 22 August 2021, 14:55:07
Hallo Hajo23,

ja so ähnlich wie du es aufgebaut hast möchte ich es auch machen. Die Temperatur und Humidity Werte zieht du aber über einen Dummy, oder. Ich hatte das auch erst vor aber die direkten Werte aus den Sensoren werden zu oft neu geschrieben. Oder hast die einen festen Intervall eingestellt?

Das mit Inkscape und dem "normalen svg" hatte ich gelesen und auch beachtet. Wie gesagt in FHEM machen die Icons keine Probleme. Sie werden sauber angezeigt un lassen sich mit z.B. "@red" auch einfärben.

Was für einen ESP und Sketch nutzt du?

Versuch doch bitte mal eines deiner Fenster Icons in rot darzustellen, so wie dein Sonnenaufgang und Sonnenuntergangs Icon.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 22 August 2021, 15:39:45
Für meine Übersicht habe mir zwei "DOIF-Kollektoren" angelegt. Alle 5 Minuten werden dort die Readings erzeugt, die ich direkt in ESPInk verwenden möchte. Das sieht z.B. für Rolladen und Lampen so aus:

{ [+:05];
  my $T = POSIX::strftime('%H:%M', localtime);
  my $D = POSIX::strftime('%a, %e. %b %Y', localtime);
  my %EinkDevState =  ( on  => 'light_light_dim_100', off => '');
  my %Shutter = (0 => 'fts_window_2w', 10 => 'fts_garage_door_10', 20 => 'fts_garage_door_20', 30 => 'fts_garage_door_30', 40 => 'fts_garage_door_40', 50 => 'fts_garage_door_50', 60 => 'fts_garage_door_60', 70 => 'fts_garage_door_70', 80 => 'fts_garage_door_80', 90 => 'fts_garage_door_90', 100 => 'fts_garage_door_100');
  my %ShutterSw = (off => 'fts_shutter_manual', always => 'fts_shutter_automatic', absent => 'fts_shutter_manual', home => 'fts_shutter_manual');
  set_Reading_Begin;
    set_Reading_Update("Time",$T);
set_Reading_Update("Date",$D);
    set_Reading_Update("R_Ankleidezimmer", $Shutter{ReadingsVal("R_Ankleidezimmer","pct",0)});
set_Reading_Update("R_Ankleidezimmer_Up", $ShutterSw{AttrVal("R_Ankleidezimmer","ASC_Mode_Up",0)});
set_Reading_Update("R_Ankleidezimmer_Down", $ShutterSw{AttrVal("R_Ankleidezimmer","ASC_Mode_Down",0)});
set_Reading_Update("R_Wohnzimmer", $Shutter{ReadingsVal("R_Wohnzimmer","pct",0)});
set_Reading_Update("R_Wohnzimmer_Up", $ShutterSw{AttrVal("R_Wohnzimmer","ASC_Mode_Up",0)});
set_Reading_Update("R_Wohnzimmer_Down", $ShutterSw{AttrVal("R_Wohnzimmer","ASC_Mode_Down",0)});
set_Reading_Update("R_Kueche", $Shutter{ReadingsVal("R_Kueche","pct",0)});
set_Reading_Update("R_Kueche_Up", $ShutterSw{AttrVal("R_Kueche","ASC_Mode_Up",0)});
set_Reading_Update("R_Kueche_Down", $ShutterSw{AttrVal("R_Kueche","ASC_Mode_Down",0)});
set_Reading_Update("R_WC", $Shutter{ReadingsVal("R_WC","pct",0)});
set_Reading_Update("R_WC_Up", $ShutterSw{AttrVal("R_WC","ASC_Mode_Up",0)});
set_Reading_Update("R_WC_Down", $ShutterSw{AttrVal("R_WC","ASC_Mode_Down",0)});
set_Reading_Update("R_HWR", $Shutter{ReadingsVal("R_HWR","pct",0)});
set_Reading_Update("R_HWR_Up", $ShutterSw{AttrVal("R_HWR","ASC_Mode_Up",0)});
set_Reading_Update("R_HWR_Down", $ShutterSw{AttrVal("R_HWR","ASC_Mode_Down",0)});
set_Reading_Update("R_Buero", $Shutter{ReadingsVal("R_Buero","pct",0)});
set_Reading_Update("R_Buero_Up", $ShutterSw{AttrVal("R_Buero","ASC_Mode_Up",0)});
set_Reading_Update("R_Buero_Down", $ShutterSw{AttrVal("R_Buero","ASC_Mode_Up",0)});
set_Reading_Update("R_Bibliothek", $Shutter{ReadingsVal("R_Bibliothek","pct",0)});
set_Reading_Update("R_Bibliothek_Up", $ShutterSw{AttrVal("R_Bibliothek","ASC_Mode_Up",0)});
set_Reading_Update("R_Bibliothek_Down", $ShutterSw{AttrVal("R_Bibliothek","ASC_Mode_Down",0)});
set_Reading_Update("R_Bad", $Shutter{ReadingsVal("R_Bad","pct",0)});
set_Reading_Update("R_Bad_Up", $ShutterSw{AttrVal("R_Bad","ASC_Mode_Up",0)});
set_Reading_Update("R_Bad_Down", $ShutterSw{AttrVal("R_Bad","ASC_Mode_Down",0)});
set_Reading_Update("R_Schlafzimmer", $Shutter{ReadingsVal("R_Schlafzimmer","pct",0)});
set_Reading_Update("R_Schlafzimmer_Up", $ShutterSw{AttrVal("R_Schlafzimmer","ASC_Mode_Up",0)});
set_Reading_Update("R_Schlafzimmer_Down", $ShutterSw{AttrVal("R_Schlafzimmer","ASC_Mode_Down",0)});
set_Reading_Update("BueroTischLampe",$EinkDevState{ReadingsVal("BueroTischLampe","state",0)});
set_Reading_Update("BueroTischStrahler",$EinkDevState{ReadingsVal("BueroTischStrahler","state",0)});
set_Reading_Update("BuerodeckenStrahler",$EinkDevState{ReadingsVal("BuerodeckenStrahler","state",0)});
set_Reading_Update("Ankleideschrank",$EinkDevState{ReadingsVal("AnkleideDose","state",0)});
set_Reading_Update("AnkleideStrahler",$EinkDevState{ReadingsVal("AnkleideStrahler","state",0)});
set_Reading_Update("AussenNord",$EinkDevState{ReadingsVal("AussenNord","state",0)});
set_Reading_Update("AussenOst",$EinkDevState{ReadingsVal("AussenOst","state",0)});
set_Reading_Update("AussenSued",$EinkDevState{ReadingsVal("AussenSued","state",0)});
set_Reading_Update("AussenWest",$EinkDevState{ReadingsVal("AussenWest","state",0)});
set_Reading_Update("BadStrahler",$EinkDevState{ReadingsVal("BadStrahler","state",0)});
set_Reading_Update("BibliothekLampe",$EinkDevState{ReadingsVal("BibliothekLampe","state",0)});
set_Reading_Update("BibliothekStrahler",$EinkDevState{ReadingsVal("BibliothekStrahler","state",0)});
set_Reading_Update("EsszimmerAnrichte",$EinkDevState{ReadingsVal("EsszimmerAnrichte","state",0)});
set_Reading_Update("EsszimmerLampe",$EinkDevState{ReadingsVal("EsszimmerLampe","state",0)});
set_Reading_Update("EsszimmerStrahler",$EinkDevState{ReadingsVal("EsszimmerStrahler","state",0)});
set_Reading_Update("Globus",$EinkDevState{ReadingsVal("HS100_WLAN4","state",0)});
set_Reading_Update("HWR",$EinkDevState{ReadingsVal("HWR","state",0)});
set_Reading_Update("KuechePlatte",$EinkDevState{ReadingsVal("KuechePlatte","state",0)});
set_Reading_Update("KuecheStrahler",$EinkDevState{ReadingsVal("KuecheStrahler","state",0)});
set_Reading_Update("KuecheTisch",$EinkDevState{ReadingsVal("KuecheTisch","state",0)});
set_Reading_Update("SchlafzimmerBettLinks",$EinkDevState{ReadingsVal("SchlafzimmerBettLinks","state",0)});
set_Reading_Update("SchlafzimmerBettRechts",$EinkDevState{ReadingsVal("SchlafzimmerBettRechts","state",0)});
set_Reading_Update("SchlafzimmerDeckenStrahler",$EinkDevState{ReadingsVal("SchlafzimmerDeckenStrahler","state",0)});
set_Reading_Update("Terrasse",$EinkDevState{ReadingsVal("Terrasse","state",0)});
    set_Reading_Update("WindfangLampe",$EinkDevState{ReadingsVal("WindfangLampe","state",0)});
    set_Reading_Update("FlurStrahler",$EinkDevState{ReadingsVal("FlurStrahler","state",0)});
set_Reading_Update("WC_Deckenstrahler",$EinkDevState{ReadingsVal("WC_Deckenstrahler","state",0)});
set_Reading_Update("WohnzimmerStehlampe",$EinkDevState{ReadingsVal("WohnzimerDose3","state",0)});
set_Reading_Update("WohnzimmerSchirmlampe",$EinkDevState{ReadingsVal("WohnzimerDose4","state",0)});
set_Reading_Update("WohnzimmerBaum",$EinkDevState{ReadingsVal("WohnzimerDose5","state",0)});
set_Reading_Update("WohnzimmerStrahler1",$EinkDevState{ReadingsVal("WohnzimmerStrahler1","state",0)});
set_Reading_Update("WohnzimmerHifi",$EinkDevState{ReadingsVal("WohnzimmerStrahler2","state",0)});
set_Reading_Update("WohnzimmerTank",$EinkDevState{ReadingsVal("WohnzimmerTank","state",0)});
  set_Reading_End(1);
}


Ich habe einen ESP8266 mit V17 im Einsatz. Die Kombi läuft völlig stabil. Das eine oder andere Problemchen habe ich nur mit dem ESPInk. Ich habe daher ESPInk aus dem fhem-update herausgenommen um ein paar individuelle Anpassungen zu behalten bzw. testen zu können. Z.B. ist mein 7,5" HD nur als B&W in der Displayliste. Nach einem Neustart würde der colormode immer wieder ausgeschaltet werden.

Testergebnis folgt später.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 22 August 2021, 16:12:17
Zitat von: hajo23 am 22 August 2021, 15:39:45
Ich habe einen ESP8266 mit V17 im Einsatz. Die Kombi läuft völlig stabil. Das eine oder andere Problemchen habe ich nur mit dem ESPInk. Ich habe daher ESPInk aus dem fhem-update herausgenommen um ein paar individuelle Anpassungen zu behalten bzw. testen zu können. Z.B. ist mein 7,5" HD nur als B&W in der Displayliste. Nach einem Neustart würde der colormode immer wieder ausgeschaltet werden.

Testergebnis folgt später.

Danke für deinen doch recht umfangreichen Code  ::), d.h. du nutzt die Version von Yattien aber ohne MQTT?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 22 August 2021, 17:13:14
Zitat von: Borkk am 22 August 2021, 16:12:17
Danke für deinen doch recht umfangreichen Code  ::), d.h. du nutzt die Version von Yattien aber ohne MQTT?

Der Code ist umfangreich, aber einfach und viel copy und paste. Mir war dabei wichtig, dass ich meinen Readings für die Darstellung auf dem e-paper optimierte (andere) Symbole zuweisen kann, als in fhem-web.

Ich nutzte die Version von Yattien mit MQTT. Ist ab Beitrag #270 nachzulesen.

Ich kann dir nun bestätigen, dass auch meine rote Test-SVG-Lampe in schwarz dargestellt wird. Hatte zunächst meine Displayeinstellung in Verdacht. 7,5" (B) HD ist aber rot, schwarz, weiß und damit richtig. Allerdings weiß ich noch nicht, weshalb sich bei mir trotzdem der colormode beim Neustart abschalten möchte.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 22 August 2021, 17:18:08
Zitat von: Borkk am 22 August 2021, 00:11:46
- Die Software von Yattien konnte ich genau einmal konfigurieren. Egal was ich zwischendurch auf den ESP spiele sobald ich die Yattien Software drauf spiele, zieht er sich von irgendwoher die Daten für das WLAN und den MQTT Server den die ich mal zum testen eingegeben habe. Somit komme ich nicht dazu den Workaround über MQTT aufzubauen. Auch mit /reset komme bekomme ich das Teil nicht zurückgesetzt.

Ich weiß nicht, ob die Forensoftware dich über das "Entführen" deiner Antwort benachrichtigt hat, vermutlich nicht. Zu obiger Frage gibt es hier (https://forum.fhem.de/index.php/topic,109690.msg1171238.html#msg1171238) eine Antwort.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 22 August 2021, 18:29:37
Nein ich habe keine Nachricht bekommen aber danke fürs "Entführen". Den Thread hatte ich auch schon mal gesehen aber nicht Beitrag für Beitrag gelesen. Das ganze Projekt hängt an so vielen Stellen, das ich gar nicht mehr weiss wo ich zuerst anfangen soll. Mir scheint aber das alle die hier eine lauffähige Installation betreiben, den Weg über MQTT gehen und das ESPInk Modul nur zum generieren des PNG nutzen.

Ich konnte jetzt die Yattien Firmware zurücksetzen und werde erst mal einen sauberen Weg über MQTT bauen. Eigentlich schade, die Idee von eki ist eigentlich ganz gut, läuft aber offenbar noch nicht ganz rund.


 
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 22 August 2021, 18:44:02
Zitat von: Borkk am 22 August 2021, 18:29:37
Den Thread hatte ich auch schon mal gesehen aber nicht Beitrag für Beitrag gelesen. Das ganze Projekt hängt an so vielen Stellen, das ich gar nicht mehr weiss wo ich zuerst anfangen soll. Mir scheint aber das alle die hier eine lauffähige Installation betreiben, den Weg über MQTT gehen und das ESPInk Modul nur zum generieren des PNG nutzen.

:) Ist in der Tat recht umfangreich. Es gibt auch so viele Displays und ESP-Boards, dass es unübersichtlich ist. Ich nutze bspw. einen wemos D1, das Original-Waveshare-Board ist ein NodeMCU. Dann gibt es noch Probleme mit WLAN-Verbindungen (daher der Versuch mit dem WiFi-Manager), Sleep-Modes usw. Und dann sind die Darstellungswünsche auch noch verschieden - wie oft soll aktualisiert, was soll in wievielen Farben dargestellt werden...

Zitat
Ich konnte jetzt die Yattien Firmware zurücksetzen und werde erst mal einen sauberen Weg über MQTT bauen. Eigentlich schade, die Idee von eki ist eigentlich ganz gut, läuft aber offenbar noch nicht ganz rund.

Den Punkt verstehe ich nicht ganz. Falls du die Yattien-Fw nutzt, wird ja auch das Modul von eki als Gegenstelle genutzt. Oder was meinst du? Es läuft, hat man es einmal hinbekommen, mit der Original-Fw ganz gut. Vermutlich muss man step by step vorgehen - eine richtige Vorgehensweise habe ich allerdings auch noch nicht finden können. Dazu beschäftige ich mich zu wenig damit, weil es bei mir seit ein paar Monaten super läuft :)

Eine Übersicht, wie das mit dem MQTT funktionieren kann, findet man bspw. in diesem Blogpost (https://cohob.de/fhem-waveshare-e-ink-display-mit-mqtt-und-deep-sleep-einbinden).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 22 August 2021, 18:53:34
Zitat von: Borkk am 22 August 2021, 12:21:43
Das mit mit dem Modpath usw. kenne ich. Die eigene SVG Icons funktionieren in FHEM auch einwandfrei. Nur ESPInk kommt scheinbar nicht damit klar. Man braucht nur ein Standard Icon mit Inkscape öffnen und unverändert wieder speichern, dann ist es für ESPInk tot.

Eben bin ich auf weiteres Problem gestoßen. Im Gegensatz zu "addsymbol" oder "addtext" wird die Angabe einer Farbe bei "iconreading" ignoriert. Icons werden immer schwarz dargestellt auch wenn ich z.B. ff0000 für rot eintrage.

Vielleicht liegt es auch an meiner grundsätzlichen Installation? Ich habe 2 FHEM Instanzen auf Docker laufen. Meine eigenen Icons liegen z.B. unter ./www/images/custom/ den Ordner habe ich über Docker auf den Host gemappt. Wie man das halt so macht und es funktioniert auch einwandfrei. Den Ordner habe ich natürlich in FHEMWEB bekannt gemacht.

@Eki: nicht das du denkt ich nörgle an deinem super Modul rum. Ich glaube nur es hat schon noch ein paar größere issues. Die zuletzt von mir genanten Punkte habe ich gar nicht in Verbindung mit dem Display festgestellt, sondern schon beim generieren des PNG Files.

Wenn jemand Fehler findet, freue ich mich erst mal, dass er mein Modul überhaupt benutzt, und mache mich dran die zu beseitigen  ;).

Das mit den SVGs ist so ne Sache, ich nutze im Modul zum lesen der SVGs eine Perl SVG Lib, eventuell kommt die ja nicht mit allen SVG Files zurecht. Kannst Du mal ein Beispiel eines nicht verarbeiteten SVGs posten, dann schau ich mir das mal an. Bezüglich der Farbe muss ich mal schauen, ob ich das Umwandeln der Farben für Icons überhaupt schon drin habe  ???. Ich schau mir auch das an.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 22 August 2021, 20:09:28
Zitat von: eki am 22 August 2021, 18:53:34
Wenn jemand Fehler findet, freue ich mich erst mal, dass er mein Modul überhaupt benutzt, und mache mich dran die zu beseitigen  ;).

Das mit den SVGs ist so ne Sache, ich nutze im Modul zum lesen der SVGs eine Perl SVG Lib, eventuell kommt die ja nicht mit allen SVG Files zurecht. Kannst Du mal ein Beispiel eines nicht verarbeiteten SVGs posten, dann schau ich mir das mal an. Bezüglich der Farbe muss ich mal schauen, ob ich das Umwandeln der Farben für Icons überhaupt schon drin habe  ???. Ich schau mir auch das an.

Ich hätte da einen Wunsch. Wenn der String für das svg leer ist, dann einfach weiterspringen. Habe das bei mir so geändert:
sub ESPEInk_AddObjects($$) {
my ($name, $image) = @_;
my ($r,$g,$b);
my $color;
my $font;
my $deftexts = ReadingsVal($name,"deftexts",0);
my $angle;
my $icon_img = undef;
my $rsvg = undef;
    my $hash = $defs{$name};
my $rootname;
my $outfile;

my $definition = AttrVal($name,"definition",undef);
my $definitionFile = AttrVal($name,"definitionFile",undef);

if ($definitionFile) {
my ($error, @content) = FileRead({FileName=>$definitionFile, ForceType=>"file"});

if (!$error) {
$definition .= "\n" . (join("\n", @content));
} else {
Log3 $hash, 1, "Error ($error) reading definition from file $definitionFile";
}
}

if ($definition) { # work on all definitions if definition attribute is defined
foreach my $line (split(/\n/,$definition)) { # go through the definition line by line
next if ($line =~ /^\s*\#.*/); # check for comment lines
my ($type, $text, $x, $y, $size, $ang, $col, $fnt,$linegap,$blockwidth,$docolor);
$type = undef;
$text = undef;
($type, $text, $x, $y, $size, $ang, $col, $fnt, $linegap, $blockwidth) = split("#",$line);
$linegap = int($linegap) if ($linegap);
$blockwidth = int($blockwidth) if ($blockwidth);

next if (!defined $type);
next if (!defined $text);

$x = 0 if (!$x || (($x !~ '-?\d+')&&($x !~ '(left|mid|right)')));
$y = 0 if (!$y || (($y !~ '-?\d+')&&($y !~ '(top|mid|bottom)')));
$size = 10 if (!$size || ($size !~ '-?\d+'));
$ang = 0 if (!$ang || ($ang !~ '-?\d+'));
$docolor = $col?1:0;
$col = "000000" if (!$col || !ESPEInk_CheckColorString($col));
$fnt = "medium" if (!ESPEInk_CheckFontString($fnt) && $type ne "addsymbol");
$angle = $ang/180*(4*atan2(1,1));
$color = $col;

if ($type eq "iconreading" || $type eq "textreading") {
my $eval=0;
($text,$eval) = split("{",$text);
my ($device,$reading) = split(':',$text,2);
$reading = "state" if (!$reading);
$text = ReadingsVal($device,$reading,'');
                next if (($type eq 'iconreading') && (length($text) == 0)); # hajo: skip empty string
...



Viele default-Zustände (z.B. eine Lampe) sind schon im source-pic und müssen daher nur nach dem Einschalten berechnet werden. Für den default-Zustand übergebe ich deshalb einen leeren String.

Ein Schnellschuss zur SVG-Farbe:
In dieser Zeile soll wohl die Pixelfarbe auf $color gesetzt werden, soweit ich es verstehe. In $color steht der Farbwert aus dem iconreading.
Der Farbwert für schwarz im svg sollte doch 0,0,0 sein. $color wird hier aber nur gesetzt, wenn das Original-Pixel nicht schwarz ist und jeder rgb-Wert > 0 ist. Nach meinem Verständnis wäre das für ff0000 verkehrt.
$icon_img->setPixel($ix,$iy,$color) if ($r>0 && $g>0 && $b>0); # set color to given color if original color is black

so müsste es eigentlich richtig sein:

($r,$g,$b) = $icon_img->rgb($icon_img->getPixel($ix,$iy)); # get color values in source file
$icon_img->setPixel($ix,$iy,$color) if ($r==0 && $g==0 && $b==0 && $color>0); # set color to given color if original color is black


es liefert aber mit ff0000 nur ein rotes Kästchen, weil getPixel davor aus dem konvertierten svg (svg>png) aus irgendeinem Grund nur schwarze Pixel zurückgibt.

Ein paar kleine Fehler würden mich nicht davon abhalten dein Modul zu nutzen.  :)

Vielen Dank dafür!
HaJo
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 23 August 2021, 09:51:10
Hallo Zusammen,

bevor hier ein falscher Eindruck aufkommt :) Vielen Dank an alle die mir (und anderen) hier helfen und vor allem vielen Dank an alle die Module bauen wie eki. Ich selbst habe schon (nicht zuletzt mit Hilfe dieses Forums) echt viel mit meinem FHEM auf die Beine gestellt. Und das alles ohne eine Programmiersprache zu kennen.

Ohne eki´s Modul hätte ich gar nicht erst mit dem ePaper angefangen und des ist auch klasse.

@Jendaw: Was ich meinte, ich finde es schade nicht den Upload Mechaninsmus von ESPInk nutzen zu können und statt dessen einen Weg über MQTT drumherum zu bauen. Dadurch wird das Modul ja zum reinen "PNG Generator" degradiert. ESPInk ist essenziell wichtig, ich wüsste nicht wie ich sonst so ein dynamisches PNG erzeugen sollte. Wäre halt schön wenn auch der Upload aus dem Modul heraus stabil läuft. Ich würde mir echt gerne den Weg über MQTT sparen, zumal man dafür auch noch einen Mosquitto Broker braucht und nicht den FHEM Broker verwenden kann. So wie ich das hier gelesen habe.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 23 August 2021, 10:23:03
Zitat von: Borkk am 23 August 2021, 09:51:10
@Jendaw: Was ich meinte, ich finde es schade nicht den Upload Mechaninsmus von ESPInk nutzen zu können und statt dessen einen Weg über MQTT drumherum zu bauen. Dadurch wird das Modul ja zum reinen "PNG Generator" degradiert. ESPInk ist essenziell wichtig, ich wüsste nicht wie ich sonst so ein dynamisches PNG erzeugen sollte. Wäre halt schön wenn auch der Upload aus dem Modul heraus stabil läuft. Ich würde mir echt gerne den Weg über MQTT sparen, zumal man dafür auch noch einen Mosquitto Broker braucht und nicht den FHEM Broker verwenden kann. So wie ich das hier gelesen habe.

Ich verstehe, was du meinst. Technisch gesehen wird auch der Upload-Mechanismus vom ESPEInk-Modul genutzt, nur eben "on demand" - also wenn der ESP wach ist und die Daten entgegen nehmen kann. Für den "normalen" Betrieb ist die Yattien-Firmware auch gar nicht notwendig. Erst, wenn man den ESP schlafen lassen möchte, kommt MQTT als eine Lösung in Betracht. Alle anderen Fälle sollten und müssen mit der Original-Firmware laufen - die Yattien-Fw ist nur eine simple Erweiterung dieser.

Der FHEM-Broker unterstützt leider kein QOS, daher muss für die Yattien-Lösung ein "richtiger" MQTT-Broker genutzt werden. Das hast du korrekt gelesen :)
Es scheint aber auch andere Lösungen mit MQTT zu geben, wenn man in den ersten Seiten des Threads liest. Ich weiß allerdings nicht, wie diese funktionieren. Und sleep ohne MQTT scheint auch irgendwie zu gehen.

edit Man könnte MQTT auch weglassen und per einfachem FHEM-Webrequest ansprechen. Das müsste ich mir mal in einer freien Minute anschauen, wie man das mit dem CSRF-Token macht. Falls jmd schon einen ESP8266-Codeschnipsel dazu hat, immer her damit :)

edit2 Mit vorgenanntem Webrequest müsste noch in das ESPEInk-Modul eingebaut werden, dass er nur Daten sendet, wenn seit dem letzten Update neue anliegen. Damit wird das EInk-Display vor unnützen Updates geschont (erhöhter Verschleiß).

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 23 August 2021, 12:22:43
Vermutlich könnte man auch einfach über ein "set ep_flur upload" manuell triggern, wenn dieser dann einmalig und sauber das PNG auf den ESP schiebt. Die letzte dev. Version von eki macht das ja schon ganz gut, nur scheinbar rennt das Modul in einen loop.

@eki: was "mininterval" angeht... man muss ja das Modell des sPapers auswählen und jedes Modell hat ja eine vom Hersteller angegeben Aktualisierungsdauer (bei meinem 21sec), es wäre doch sinnvoll, wenn du diese Zeit (+ 2-3 sec Sicherheitspuffer) in die Parameter der jeweiligen Displays einträgst und im Modul verwendest. Wichtig wäre nur das die Aktualisierungen die innerhalb der "mininterval" Dauer erfolgen, nicht verworfen werden.

Also mal angenommen ich habe Interval=0 eingestellt und mache 3 Fenster zu. Der erste Upload würde erfolgen weil, das Modul quasi idle war. Fenster 2 und 3 werden innerhalb der "mininterval" Zeit geschlossen. Diese Aktualisierungen dürfen natürlich nicht verworfen werden. Idealer weise wird nur die letzte Aktualisierung, nach der "mininterval" Zeit hochgeladen.   
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 23 August 2021, 12:35:23
Das mit den Device spezifischen Wartezeiten wäre kein Problem (mininterval = auto) das kann ich einbauen. Das mit dem warten auf das letzte Update ist schwierig, da laufen ja asynchron immer mal wieder Events auf, woher soll ich wissen, was der ,,letzte" ist?
Was ich machen könnte, ist, die während des Updates einlaufenden Events sammeln und dann, wenn die Minimalzeit abgelaufen ist, die bis dahin gesammelten Events noch mal verarbeiten (in einem zusätzlichen convert-upload). Ich mach mir mal Gedanken, kann aber ein bisschen dauern, weil ich gerade wenig Zeit habe.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 23 August 2021, 17:11:53
Zitat von: eki am 23 August 2021, 12:35:23
Das mit den Device spezifischen Wartezeiten wäre kein Problem (mininterval = auto) das kann ich einbauen. Das mit dem warten auf das letzte Update ist schwierig, da laufen ja asynchron immer mal wieder Events auf, woher soll ich wissen, was der ,,letzte" ist?
Was ich machen könnte, ist, die während des Updates einlaufenden Events sammeln und dann, wenn die Minimalzeit abgelaufen ist, die bis dahin gesammelten Events noch mal verarbeiten (in einem zusätzlichen convert-upload). Ich mach mir mal Gedanken, kann aber ein bisschen dauern, weil ich gerade wenig Zeit habe.

Das PNG kann ja weiter aktualisiert werden nur der Upload sollte dann nur mit dem zuletzt erstellten PNG erfolgen.  Also wenn währed der mininterval Wartezeit 3 Events auflaufen , kann das Modul ja 3 PNG´s erzeugen. Da die PNG´s ja immer überschrieben werden, dürfte doch beim Upload nach der Wartzeit auch nur das aktuellste hochgeladen werden (Ich weiss klingt vermutlich einfacher als es umsetzbar ist ;))
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 23 August 2021, 19:44:45
@Borkk
geht bei dir ein addicon, wenn icon ein png ist?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 23 August 2021, 23:49:17
Zitat von: hajo23 am 23 August 2021, 19:44:45
@Borkk
geht bei dir ein addicon, wenn icon ein png ist?

Hab mal versucht ein icon aus dem /default Ordner anzeigen zu lassen, da kommt nichts.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 24 August 2021, 11:15:17
Zitat von: Borkk am 23 August 2021, 23:49:17
Hab mal versucht ein icon aus dem /default Ordner anzeigen zu lassen, da kommt nichts.

Nichts, wäre zu wenig. Dies sollte eine Lampe anzeigen, aber nur wenn du den Farbwert ff0000 weglässt, sonst bekommst du nur ein rotes Rechteck.
addicon#li_wht_on#800#176#18#0#ff0000

Wenn du in eki's code z.B.  diese Zeile änderst in
$icon_img->setPixel($ix,$iy,$color) if ($r<180 && $g<180 && $b<180 && $color>0); # set color to given color if original color is black
kannst du das icon rot einfärben. Allerdings löst es leider nicht das Problem mit den SVGs. Lösung unten ...



Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 24 August 2021, 14:42:10
Hallo eki,

ich habe jetzt die original Waveshare Firmware mit der "Option: All Flash Content" geflasht. Und ich bin sehr zufrieden. Das PNG wird sauber und nur einmal auf das Display geladen. Kein Loop und keine Verschiebung. Also bzgl. der Endlosschleife kann ich Entwarnung geben, lag wohl an meinem ESP. Es spielt auch keine Rolle ob ein Upload über "Set" manuell angestoßen wird oder ob er automatisch erfolgt.

Also das attr. mininterval verhindert definitiv, das sich Uploads in die Quere kommen und dadurch die Darstellung des PNG verschieben. Diese Änderung könntest du vermutlich schon einchecken.

Ich teste später mal was passiert wenn Änderungen innerhalb der mininterval Zeit erfolgen.   
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 24 August 2021, 15:23:13
Die Lösung für das SVG-icon Problems liegt in der Auswertung des alpha-Wertes. Ich musste allerdings auch meine GD-lib updaten.


($r,$g,$b) = $icon_img->rgb($icon_img->getPixel($ix,$iy));                                       # get color values in source file
(my $alpha) = $icon_img->alpha($icon_img->getPixel($ix,$iy));                                    # get alpha-channel
$icon_img->setPixel($ix,$iy,$color) if ($alpha == 0 && $r<180 && $g<180 && $b<180 && $color>0);  # set color to given color if original color is black  *your favorite tresholds may be different
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 25 August 2021, 22:53:11
Zitat von: hajo23 am 24 August 2021, 15:23:13
Die Lösung für das SVG-icon Problems liegt in der Auswertung des alpha-Wertes. Ich musste allerdings auch meine GD-lib updaten.


($r,$g,$b) = $icon_img->rgb($icon_img->getPixel($ix,$iy));                                       # get color values in source file
(my $alpha) = $icon_img->alpha($icon_img->getPixel($ix,$iy));                                    # get alpha-channel
$icon_img->setPixel($ix,$iy,$color) if ($alpha == 0 && $r<180 && $g<180 && $b<180 && $color>0);  # set color to given color if original color is black  *your favorite tresholds may be different


Ich habe die Zeilen geändert und ich kann jetzt die Farbe eines SVG Icons ändern, TOP !!!

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 25 August 2021, 23:05:03
Jetzt bin ich fast am Ziel nur eine Sache noch. Wie kann ich denn die Farbe eines Icons aus einem Reading setzen?

so geht es nicht.
iconreading#speak_volume:e_icon#500#150#40#0#[speak_volume:e_color]

Im Reading "e_color" steht je nach status ff0000 oder 00000
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 26 August 2021, 08:47:12
Zitat von: Borkk am 25 August 2021, 23:05:03
Jetzt bin ich fast am Ziel nur eine Sache noch. Wie kann ich denn die Farbe eines Icons aus einem Reading setzen?

so geht es nicht.
iconreading#speak_volume:e_icon#500#150#40#0#[speak_volume:e_color]

Im Reading "e_color" steht je nach status ff0000 oder 00000

Je nach verwendetem Icon könnte ein Workaround sein, es bereits in der gewünschten Farbe in das Hintergrundbild zu malen und dann nur zu übermalen. Passt natürlich nicht immer.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 26 August 2021, 10:28:07
Zitat von: Jendaw am 26 August 2021, 08:47:12
Je nach verwendetem Icon könnte ein Workaround sein, es bereits in der gewünschten Farbe in das Hintergrundbild zu malen und dann nur zu übermalen. Passt natürlich nicht immer.

Ist das echt die einzige Möglichkeit ?!?!
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 26 August 2021, 10:44:21
Zitat von: Borkk am 26 August 2021, 10:28:07
Ist das echt die einzige Möglichkeit ?!?!

Nein, es ist eine Möglichkeit. Du könntest auch unterschiedlich gefärbte Icons nehmen, da das jetzt/bald geht (als Workaround, wohlgemerkt).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 26 August 2021, 13:48:50
Zitat von: Jendaw am 26 August 2021, 10:44:21
Nein, es ist eine Möglichkeit. Du könntest auch unterschiedlich gefärbte Icons nehmen, da das jetzt/bald geht (als Workaround, wohlgemerkt).

Ich habe die Änderungen von hajo23 in ekis Modul eingebaut und ich kann die Icons über den Farbwert in der definition einfärben. Mein Punkt ist eher eine reine Syntaxfrage, ob man in der definition anstelle eines festen Farbwertes auch eine Variable einsetzen könnte.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 26 August 2021, 14:06:26
Noch eine Info an eki.

Ich habe in deinem dev. Modul mit dem mininterval zusätzlich die Änderungen von hajo23 eingebaut und das ePaper läuft seit 2 Tagen ohne Probleme in Verbindung mit der original Waveshare Firmware.

Ich habe die folgenden Attribute gesetzt:


boardtype: ESP8266
colormode: color
convertmode: dithering
devicetype: 7.5inch_e-Paper_HAT_(B)_HD
interval: 0
maxretries: 0
mininterval: 30


Es kommt sich kein Upload ins gehege und es wird egal wann und wie man einen Event auslöst am Ende der letzte aktuelle Stand dargestellt.

Ich glaube du könntest das Modul so einchecken. 
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 26 August 2021, 14:28:36
OK, danke für Eure Mithilfe. Das mit dem Lesen der Farben etc. aus Readings ließe sich auch einbauen, mache mit mal Gedanken über eine sinnvolle Syntax. Soll ich das mit den Device spezifischen mininterval Werten auch noch mit reinnehmen?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 26 August 2021, 14:54:24
Zitat von: eki am 26 August 2021, 14:28:36
OK, danke für Eure Mithilfe. Das mit dem Lesen der Farben etc. aus Readings ließe sich auch einbauen, mache mit mal Gedanken über eine sinnvolle Syntax. Soll ich das mit den Device spezifischen mininterval Werten auch noch mit reinnehmen?

Das mit den Farben wäre super, auch für "textreading" dann könnte man auch einen Status über die Farbe eines reinen Text darstellen.

Ich hatte zwar die Idee mit den Device spezifischen mininterval, es kommt aber auf deinen Aufand dafür an. Mininterval ist ja nur nötig bei Interval=0 und da genügt auch eine Zeile Erklärung und man kann sich seinen Werte da selbst eintragen. Aber im Grunde wäre es schon sinvoll bei Interval=0 den minintervall automatisch entsprechnd der Hersteller Spec. zu setzen um ein "Überschreiben" des laufenden Uploads zu verhindern. 

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 26 August 2021, 16:31:20
Zitat von: eki am 26 August 2021, 14:28:36
OK, danke für Eure Mithilfe. Das mit dem Lesen der Farben etc. aus Readings ließe sich auch einbauen, mache mit mal Gedanken über eine sinnvolle Syntax. Soll ich das mit den Device spezifischen mininterval Werten auch noch mit reinnehmen?

Das (optionale) Lesen aller Parameter aus dem Reading fände ich auch super. So könnte man neben der Farbe auch die Größe und Position dynamisch gestalten, z.B. für einen Warnhinweis.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 26 August 2021, 16:40:14
Zitat von: hajo23 am 24 August 2021, 15:23:13
Die Lösung für das SVG-icon Problems liegt in der Auswertung des alpha-Wertes. Ich musste allerdings auch meine GD-lib updaten.


($r,$g,$b) = $icon_img->rgb($icon_img->getPixel($ix,$iy));                                       # get color values in source file
(my $alpha) = $icon_img->alpha($icon_img->getPixel($ix,$iy));                                    # get alpha-channel
$icon_img->setPixel($ix,$iy,$color) if ($alpha == 0 && $r<180 && $g<180 && $b<180 && $color>0);  # set color to given color if original color is black  *your favorite tresholds may be different


"&& $color>0" kann raus. Das war nur für meine Testphase wichtig.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 27 August 2021, 19:01:38
Hallo eki,

wegen der beiden fehlenden Style-Parameter ($s1, $s2) bei addsymbol habe ich folgendes geändert:


if ($definition) { # work on all definitions if definition attribute is defined
   foreach my $line (split(/\n/,$definition)) { # go through the definition line by line
      next if ($line =~ /^\s*\#.*/); # check for comment lines
      my ($type, $text, $x, $y, $size, $ang, $col, $fnt,$linegap,$blockwidth,$docolor,$symstyle1,$symstyle2);
      $type = undef;
      $text = undef;
#     ($type, $text, $x, $y, $size, $ang, $col, $fnt, $linegap, $blockwidth) = split("#",$line);
      ($type, $text, $x, $y, $size, $ang, $col, $fnt, $linegap, $blockwidth,$symstyle1,$symstyle2) = split("#",$line);   # Hajo 3


...

} else {                                                                                                                 # Hajo 3 AddSymbol
   my ($sym,$s1,$s2) = ("","","");
  ($sym,$s1,$s2) = split("-",$text);
  if (!defined $symstyle1) {$s1=""} else {$s1=$symstyle1};                                                               # Hajo 3
  if (!defined $symstyle2) {$s2=""} else {$s2=$symstyle2};                                                               # Hajo 3


Addsymbol wird also erweitert. Damit geht dann z.B. addsymbol#rectangle#0#243#1#0#FF0000#298#100##filled#filled 

*Ich habe bisher nur rectangle und filled im definitionFile getestet.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 29 August 2021, 15:00:13
Zitat von: hajo23 am 27 August 2021, 19:01:38
Hallo eki,

wegen der beiden fehlenden Style-Parameter ($s1, $s2) bei addsymbol habe ich folgendes geändert:


if ($definition) { # work on all definitions if definition attribute is defined
   foreach my $line (split(/\n/,$definition)) { # go through the definition line by line
      next if ($line =~ /^\s*\#.*/); # check for comment lines
      my ($type, $text, $x, $y, $size, $ang, $col, $fnt,$linegap,$blockwidth,$docolor,$symstyle1,$symstyle2);
      $type = undef;
      $text = undef;
#     ($type, $text, $x, $y, $size, $ang, $col, $fnt, $linegap, $blockwidth) = split("#",$line);
      ($type, $text, $x, $y, $size, $ang, $col, $fnt, $linegap, $blockwidth,$symstyle1,$symstyle2) = split("#",$line);   # Hajo 3


...

} else {                                                                                                                 # Hajo 3 AddSymbol
   my ($sym,$s1,$s2) = ("","","");
  ($sym,$s1,$s2) = split("-",$text);
  if (!defined $symstyle1) {$s1=""} else {$s1=$symstyle1};                                                               # Hajo 3
  if (!defined $symstyle2) {$s2=""} else {$s2=$symstyle2};                                                               # Hajo 3


Addsymbol wird also erweitert. Damit geht dann z.B. addsymbol#rectangle#0#243#1#0#FF0000#298#100##filled#filled 

*Ich habe bisher nur rectangle und filled im definitionFile getestet.

So, hier wäre jetzt mal eine Version, die Folgendes enthält:
- Die Änderungen bezüglich Farbe im Icon (es gab zwei Stellen an denen das eingebaut werden musste)
- Die Device spezifischen Intervalle (erst mal sind die Werte so wie in den Listen von Waveshare, eventuell kann man da auch noch ein Sicherheitsmargin dazu addiert werden. Für die Automatik muss das Attribut mininterval auf 'auto' gesetzt werden.
- Die Parameter aus den Readings, dazu muss irgendein Parameter (hoffe ich habe alle erwischt) anstatt direkt, als '[<device>:<reading>]' in eckigen Klammern gesetzt werden, dann holt sich das Modul beim 'set convert' die Daten aus den entsprechenden Readings.

Den oben zitierten Vorschlag habe ich nicht übernommen, weil ich den Sinn nicht so ganz verstehe. Aktuell kann man ein Symbol nach folgendem Beispiel angeben: 'symbol#x#y...', wenn man dabei für das Symbol z. B. rectangle-filled angibt, dann wird ein gefülltes Rechteck gezeichnet. Ich verstehe daher nicht, was da noch fehlt und warum man da was ändern sollte.

Ich bin leider nicht so intensiv zum Testen gekommen, aber dafür habe ich ja Euch  ;).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 29 August 2021, 15:50:17
Zitat von: eki am 29 August 2021, 15:00:13
So, hier wäre jetzt mal eine Version, die Folgendes enthält:
- Die Änderungen bezüglich Farbe im Icon (es gab zwei Stellen an denen das eingebaut werden musste)
- Die Device spezifischen Intervalle (erst mal sind die Werte so wie in den Listen von Waveshare, eventuell kann man da auch noch ein Sicherheitsmargin dazu addiert werden. Für die Automatik muss das Attribut mininterval auf 'auto' gesetzt werden.
- Die Parameter aus den Readings, dazu muss irgendein Parameter (hoffe ich habe alle erwischt) anstatt direkt, als '[<device>:<reading>]' in eckigen Klammern gesetzt werden, dann holt sich das Modul beim 'set convert' die Daten aus den entsprechenden Readings.

Den oben zitierten Vorschlag habe ich nicht übernommen, weil ich den Sinn nicht so ganz verstehe. Aktuell kann man ein Symbol nach folgendem Beispiel angeben: 'symbol#x#y...', wenn man dabei für das Symbol z. B. rectangle-filled angibt, dann wird ein gefülltes Rechteck gezeichnet. Ich verstehe daher nicht, was da noch fehlt und warum man da was ändern sollte.

Ich bin leider nicht so intensiv zum Testen gekommen, aber dafür habe ich ja Euch  ;).

Hallo eki,
mein Fehler, weiß der Geier wieso ich rectangle-filled (bzw. rectangle-filled-filled) übersehen habe.  :o

Hast Du bei iconreading ein "next" eingebaut, für den Fall dass iconreading leer ist?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 29 August 2021, 20:10:28
Hallo eki,
ein kurzes feedback: bei restart bekomme ich 3 Warnings, die ich vorher auch schon hatte:  :)
*definitionFile unverändert
*Timeout für convert und "next" für eine leeres iconreading musste ich im Modul wieder anpassen, sonst gibt es bei mir leider timeouts und fhem-icons  ;)


PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 702. #vorher line 674
PERL WARNING: Use of uninitialized value $text in split at ./FHEM/89_ESPEInk.pm line 610. # vorher line 582
PERL WARNING: Use of uninitialized value $text in split at ./FHEM/89_ESPEInk.pm line 611. # vorher line 583


Bei set convert bekomme ich nun 2 neue Warnings:

2021.08.29 19:50:00 4: Start forked process to convert output picture
2021.08.29 19:50:00 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 392.
2021.08.29 19:50:00 1: PERL WARNING: Use of uninitialized value $font in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 826.
2021.08.29 19:51:56 4: File /media/m2/ssd/display/displayBackground.png opened, sizes is 880 x 528
2021.08.29 19:52:31 4: Finished conversion in background


Das Ergebnis von convert passt aber. Parameter aus readings muss ich noch testen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 29 August 2021, 20:55:26
Danke für das schnelle Feedback. Die Warnungen schau ich mir noch mal an, sollte nichts kritisches sein. Kannst Du Deine beiden Änderungen noch mal posten (am Besten Deine Version des pm Files), dann packe ich das dazu.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 29 August 2021, 21:58:31
Zitat von: eki am 29 August 2021, 20:55:26
Danke für das schnelle Feedback. Die Warnungen schau ich mir noch mal an, sollte nichts kritisches sein. Kannst Du Deine beiden Änderungen noch mal posten (am Besten Deine Version des pm Files), dann packe ich das dazu.

Das Timeout für convert steht in Zeile 1687: *ein Attribut wäre hier meine Wahl

sub ESPEInk_Convert(@) {
    my ($hash,$upload) = @_;
    if (defined ($hash->{helper}{RUNNING_PID}))
    {
        BlockingKill($hash->{helper}{RUNNING_PID});
        delete( $hash->{helper}{DO_UPLOAD} );
        delete( $hash->{helper}{RUNNING_PID} );
        Log3 $hash, 4, "Killing old forked process";
    }

    unless (defined ($hash->{helper}{RUNNING_PID}))
    {
   $hash->{helper}{DO_UPLOAD} = $upload;
       $hash->{helper}{RUNNING_PID} =
               BlockingCall(
               "ESPEInk_DoConvert",      # callback worker task
               $hash,                    # hash of the device and upload trigger
               "ESPEInk_ConvertDone",    # callback result method
               290,                      # timeout seconds


Wenn icon = "" dann einfach weiter *Zeile 1296

if ($type eq "iconreading" || $type eq "textreading") {
my $eval=0;
($text,$eval) = split("{",$text);
my ($device,$reading) = split(':',$text,2);
$reading = "state" if (!$reading);
$text = ReadingsVal($device,$reading,'');
next if (($type eq 'iconreading') && (length($text) == 0)); # nothing to do, just skip - Hajo  2


update:
Farbwert aus readings-Test:
im definitionFile steht nun:

iconreading#di_DisplayZeit:BueroTischLampe#650#176#18#0#[di_DisplayZeit:BueroTischLampeColor] # mit di_DisplayZeit:BueroTischLampe=light_light_dim_100 und di_DisplayZeit:BueroTischLampeColor=ff0000

voila, das Icon wird wie erwartet rot angezeigt.  :D
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 29 August 2021, 22:23:12
Zitat von: eki am 29 August 2021, 15:00:13
- Die Device spezifischen Intervalle (erst mal sind die Werte so wie in den Listen von Waveshare, eventuell kann man da auch noch ein Sicherheitsmargin dazu addiert werden. Für die Automatik muss das Attribut mininterval auf 'auto' gesetzt werden.

Hallo eki,

danke für die Erweiterung deines Modul, ich teste dann die nächste Version, welche die Anpassungen enthält die Hajo gefunden hat.

Wegen der Intervalle, macht es sicher Sinn, wenn du immer min. 1 sec zu dem Waveshare Werten dazu addierst. Tut nicht weh und macht das Ganze noch sicherer.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 30 August 2021, 22:58:10
Hier die Version mit den beiden Anpassungen (es gibt ein neues Attribut uploadTimeout, mit dem der Timeout gesetzt werden kann, default ist 290).

Bitte testet, wenn ich positives Feedback erhalte, dann werde ich es freigeben.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Dankbarer_User am 31 August 2021, 14:13:17
Hallo eki,

die neueste Version läuft bei mir stabil. Mir sind bisher nur die perl warnings beim restart und beim convert aufgefallen. Diese sind wohl immer noch da. Warnings beim restart sind eigentlich kein Drama, bei convert kommen mit der Zeit allerdings einige Einträge zusammen. Mein Display wacht alle 15min auf, stößt die Convertierung mit anschließendem Upload an und geht dann wieder schlafen.

restart:
2021.08.31 14:00:51 1: PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 704, <$fh> line 1452.
2021.08.31 14:00:51 1: PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 704, <$fh> line 1602.
2021.08.31 14:00:52 1: PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 704.
2021.08.31 14:00:52 1: PERL WARNING: Use of uninitialized value $text in split at ./FHEM/89_ESPEInk.pm line 612.
2021.08.31 14:00:52 1: PERL WARNING: Use of uninitialized value $text in split at ./FHEM/89_ESPEInk.pm line 613.



covert:
2021.08.31 14:02:18 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 393.
2021.08.31 14:02:18 1: PERL WARNING: Use of uninitialized value $font in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 829.





Zitat von: hajo23 am 29 August 2021, 20:10:28
Hallo eki,
ein kurzes feedback: bei restart bekomme ich 3 Warnings, die ich vorher auch schon hatte:  :)
*definitionFile unverändert
*Timeout für convert und "next" für eine leeres iconreading musste ich im Modul wieder anpassen, sonst gibt es bei mir leider timeouts und fhem-icons  ;)


PERL WARNING: Use of uninitialized value $type in string eq at ./FHEM/89_ESPEInk.pm line 702. #vorher line 674
PERL WARNING: Use of uninitialized value $text in split at ./FHEM/89_ESPEInk.pm line 610. # vorher line 582
PERL WARNING: Use of uninitialized value $text in split at ./FHEM/89_ESPEInk.pm line 611. # vorher line 583


Bei set convert bekomme ich nun 2 neue Warnings:

2021.08.29 19:50:00 4: Start forked process to convert output picture
2021.08.29 19:50:00 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 392.
2021.08.29 19:50:00 1: PERL WARNING: Use of uninitialized value $font in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 826.
2021.08.29 19:51:56 4: File /media/m2/ssd/display/displayBackground.png opened, sizes is 880 x 528
2021.08.29 19:52:31 4: Finished conversion in background


Das Ergebnis von convert passt aber. Parameter aus readings muss ich noch testen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 31 August 2021, 21:40:47
Zitat von: eki am 30 August 2021, 22:58:10
Hier die Version mit den beiden Anpassungen (es gibt ein neues Attribut uploadTimeout, mit dem der Timeout gesetzt werden kann, default ist 290).

Bitte testet, wenn ich positives Feedback erhalte, dann werde ich es freigeben.
Hab die Version eingespielt und bisher läuft alles stabil. Sorry wenn ich nochmal nachfrage.. Was macht uploadTimeout und Timeout nochmal genau?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 31 August 2021, 23:31:29
Die Konversion des Bildes dauert bei großen Displays u. U. eine ganze Weile. Damit FHEM nicht für diese Dauer blockiert, wird die Konversion in einem extra Prozess im Hintergrund ausgeführt. Der Timeout gibt an, wie lange dieser Hintergrund Prozess höchstens dauern darf.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 01 September 2021, 07:45:56
Ok, verstehe, das ist dann das Attr. "Timeout". Und "uploadTimeout" schaut auf die Zeit wie lange der tatsächliche Upload dauert ? (290 sec ?)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 05 September 2021, 19:05:03
Hallo eki,
ich hatte heute etwas Zeit zum Testen. Die beiden Änderungen sind ok,
In #357 berichtete ich von zwei neuen Warnings beim Konvertieren.
Du hast iconreading wie folgt definiert:
Zitat
iconreading
This option allows to specify a device:reading as trigger for adding icons to the template picture at any position.
The value must be given in the form: device:reading#x#y#size#angle#color

Du rufst in ESPEInk_FetchReadings() auch die Parameter $fnt, $linegap und $blockwitdth ab, die bei iconreading aber nicht definiert sind.

Ich habe mal Folgendes hinzugefügt:

if ($definition) { # work on all definitions if definition attribute is defined
foreach my $line (split(/\n/,$definition)) { # go through the definition line by line
            next if (length($line) <1);
next if ($line =~ /^\s*\#.*/); # check for comment lines
my ($type, $text, $x, $y, $size, $ang, $col, $fnt,$linegap,$blockwidth,$docolor);
$type = undef;
$text = undef;
($type, $text, $x, $y, $size, $ang, $col, $fnt, $linegap, $blockwidth) = split("#",$line);
            if (!defined $fnt) {$fnt = ''}; # Hajo 6
            if (!defined $linegap) {$linegap = ''}; # Hajo 7
            if (!defined $blockwidth) {$blockwidth = ''}; # Hajo 8

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Dankbarer_User am 17 September 2021, 18:04:35
Hej hajo,

deine Ergänzung mit den drei Defintionen hat bei meinem aktuellen Modul eine der perl warnings beim Konvertieren behoben. In deinem Post #357 bezogen auf die line 826. Das warning in Bezug auf line 392 ist weiterhin vorhanden. Hier könnte? auch eine Definition fehlen. Hast Du eine Idee, welche? Ich bin nicht wirklich fit in perl und sehe den Bezug nicht.

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 18 September 2021, 00:00:00
Zitat von: Dankbarer_User am 17 September 2021, 18:04:35
Hej hajo,

deine Ergänzung mit den drei Defintionen hat bei meinem aktuellen Modul eine der perl warnings beim Konvertieren behoben. In deinem Post #357 bezogen auf die line 826. Das warning in Bezug auf line 392 ist weiterhin vorhanden. Hier könnte? auch eine Definition fehlen. Hast Du eine Idee, welche? Ich bin nicht wirklich fit in perl und sehe den Bezug nicht.

Ich habe diese Warnung nicht mehr. Kannst Du bitte deine Definitionen durchgehen? Iconreading sollte immer diese Parameter "device:reading#x#y#size#angle#color" haben. Also z.B. so:

iconreading#Wetter:icon#10#240#100#0#000000
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Dankbarer_User am 18 September 2021, 10:32:09
Danke, das war ein guter Tipp. Tatsächlich hatte ich ein da eine Iconreading ohne Farb-Parameter in der Definition. Allerdings blieb das warning bestehen. Ich habe dann mit einer leeren Definition nochmal angefangen. Dabei ist mir aufgefallen, dass das warning schon bei einer einfachen Leerzeile zwischen zwei Definitionen erzeugt wird. Z.B:

iconreading#Wetter:icon#10#240#100#0#000000

iconreading#Wetter:icon#10#240#100#0#000000


Das warning kommt nicht wenn die Leerzeile auskommentiert wird:

iconreading#Wetter:icon#10#240#100#0#000000
#
iconreading#Wetter:icon#10#240#100#0#000000


Ist das Verhalten so normal? Die Definition schreibe ich direkt im Editorfenster des Attribut "definition". Ich war davon ausgegangen, dass Leerzeilen dort grundsätzlich ignoriert werden.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 18 September 2021, 12:37:09
Zitat von: Dankbarer_User am 18 September 2021, 10:32:09
Danke, das war ein guter Tipp. Tatsächlich hatte ich ein da eine Iconreading ohne Farb-Parameter in der Definition. Allerdings blieb das warning bestehen. Ich habe dann mit einer leeren Definition nochmal angefangen. Dabei ist mir aufgefallen, dass das warning schon bei einer einfachen Leerzeile zwischen zwei Definitionen erzeugt wird. Z.B:

iconreading#Wetter:icon#10#240#100#0#000000

iconreading#Wetter:icon#10#240#100#0#000000


Das warning kommt nicht wenn die Leerzeile auskommentiert wird:

iconreading#Wetter:icon#10#240#100#0#000000
#
iconreading#Wetter:icon#10#240#100#0#000000


Ist das Verhalten so normal? Die Definition schreibe ich direkt im Editorfenster des Attribut "definition". Ich war davon ausgegangen, dass Leerzeilen dort grundsätzlich ignoriert werden.

Ich hatte bei mir für Leerzeilen noch Folgendes hinzugefügt:

if ($definition) { # work on all definitions if definition attribute is defined
foreach my $line (split(/\n/,$definition)) { # go through the definition line by line
                        next if (length($line) <1); # Hajo 5
next if ($line =~ /^\s*\#.*/); # check for comment lines
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Dankbarer_User am 18 September 2021, 13:11:13
großartig, vielen Dank!
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 23 September 2021, 13:41:15
Hallo Zusammen,

ich war ne Weile im Urlaub und wollte mal fragen wo ESPEInk gerade steht.

Das Modul läuft bei mir zwar in der Ausgabe fehlefrei, im Log erscheinen aber dennoch die folgende Fehlermeldungen:

2021.09.23 13:33:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 23206
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 393.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1434.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1434.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1435.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1435.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1442.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1442.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1443.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1443.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1444.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1444.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $font in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 829.
2021.09.23 13:34:12 1: ep_flur: problems with communication to device, max retries (0) reached
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 393.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1434.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1434.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1435.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1435.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1442.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1442.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1443.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1443.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1444.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1444.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $font in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 829.
2021.09.23 13:35:15 1: ep_flur: problems with communication to device, max retries (0) reached
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 393.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1434.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1434.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1435.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1435.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1442.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1442.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1443.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1443.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1444.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1444.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $font in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 829.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 23 September 2021, 16:04:30
Zitat von: Borkk am 23 September 2021, 13:41:15
Hallo Zusammen,

ich war ne Weile im Urlaub und wollte mal fragen wo ESPEInk gerade steht.

Das Modul läuft bei mir zwar in der Ausgabe fehlefrei, im Log erscheinen aber dennoch die folgende Fehlermeldungen:

2021.09.23 13:33:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 23206
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 393.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1434.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1434.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1435.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1435.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1442.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1442.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1443.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1443.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1444.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1444.
2021.09.23 13:33:12 1: PERL WARNING: Use of uninitialized value $font in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 829.
2021.09.23 13:34:12 1: ep_flur: problems with communication to device, max retries (0) reached
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 393.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1434.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1434.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1435.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1435.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1442.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1442.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1443.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1443.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1444.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1444.
2021.09.23 13:34:17 1: PERL WARNING: Use of uninitialized value $font in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 829.
2021.09.23 13:35:15 1: ep_flur: problems with communication to device, max retries (0) reached
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 393.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1434.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1434.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1435.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1435.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1442.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1442.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1443.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1443.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1444.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1444.
2021.09.23 13:35:32 1: PERL WARNING: Use of uninitialized value $font in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 829.


Hallo Borkk,

mit dem Modul aus #361 und den folgenden Ergänzungen von mir sollten die Warnings verschwinden (ausgenommen die bei FHEM-Start auftreten).
Du solltest das Modul aus dem Update-Prozess nehmen, damit es dabei nicht durch die eingecheckte Version überschrieben wird, bis eki eine neue Version einstellt.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 23 September 2021, 23:28:51
Zitat von: hajo23 am 23 September 2021, 16:04:30
Hallo Borkk,

mit dem Modul aus #361 und den folgenden Ergänzungen von mir sollten die Warnings verschwinden (ausgenommen die bei FHEM-Start auftreten).
Du solltest das Modul aus dem Update-Prozess nehmen, damit es dabei nicht durch die eingecheckte Version überschrieben wird, bis eki eine neue Version einstellt.

Ich bin mir nicht sicher die richtigen Stellen im Code zu finden Würde es dir was ausmachen, deine 89_ESPEInk.pm hier mal zu posten. Vielen Dank :)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 24 September 2021, 15:57:26
Zitat von: hajo23 am 23 September 2021, 16:04:30
Hallo Borkk,

mit dem Modul aus #361 und den folgenden Ergänzungen von mir sollten die Warnings verschwinden (ausgenommen die bei FHEM-Start auftreten).
Du solltest das Modul aus dem Update-Prozess nehmen, damit es dabei nicht durch die eingecheckte Version überschrieben wird, bis eki eine neue Version einstellt.

Könntest Du mir mal deine letzte Version hier posten (oder auch per mail, wenn Du das hier nicht öffentlich machen willst). Dann kann ich das mit meiner zusammen führen und freigeben. Dann werden updates auch wieder mit der letzten Version gefüttert.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 24 September 2021, 17:15:02
Hallo eki,

im Anhang poste ich mal den letzten Stand.

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 11 Oktober 2021, 08:20:11
Die Version mit allen hier diskutierten Änderungen ist jetzt ofiziell eingescheckt.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: bhaal am 12 Oktober 2021, 19:48:02
Hallo eki,

vielen Dank für das Modul, läuft bei mir fast von Beginn an sehr zuverlässig. Aktuell habe ich aber ein Problem mit der Version vom 07.10 (89_ESPEInk.pm 25054 2021-10-07 09:38:45Z eki). Das Log ist voll von Fehlermeldungen und das Display aktualisiert sich nicht:
2021.10.12 13:50:00 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 402.
Can't locate object method "alpha" via package "GD::Image" at ./FHEM/89_ESPEInk.pm line 1388.


Bis auf ein Update habe ich nichts geändert in letzter Zeit.
Habt ihr eine Idee?

Viele Grüße
Max
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 13 Oktober 2021, 09:06:58
welche libgd Version hast Du installiert?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 13 Oktober 2021, 10:18:17
Kannst Du mal bitte mit der angehängten Version testen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 13 Oktober 2021, 15:27:44
Du brauchst eine GD mit alpha Kanal Unterstützung. Bei mir ist 2.73 installiert.

Deine Version kannst du z.B. mit

sudo cpan -D GD


anzeigen lassen.

Auf meinem PI läuft noch Stretch. Möglicherweise gibt es unter Stretch nur ältere GD Versionen. Mir ist das Update jedenfalls nur mit cpan gelungen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: bhaal am 13 Oktober 2021, 19:37:59
Ah vielen Dank für die Tipps, das hat schonmal geholfen (Update libgd bzw GD). Die Konvertierung klappt wieder und das Display aktualisiert sich.

Die Warnung bleibt:
2021.10.13 19:17:07 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 402.

Dann probiere ich als nächstes die Version von dir eki.

Edit: Fehler bzw. Warnung bleibt gleich.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 13 Oktober 2021, 22:03:26
Um die Warnung hatte ich mich gar nicht gekümmert, die ist ja nicht wirklich kritisch. Ich habe nur dafür gesorgt, dass das Fehlen der Alpha Unterstützung nicht mehr zum Absturz führt.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 14 Oktober 2021, 11:20:59
Zitat von: bhaal am 13 Oktober 2021, 19:37:59
Ah vielen Dank für die Tipps, das hat schonmal geholfen (Update libgd bzw GD). Die Konvertierung klappt wieder und das Display aktualisiert sich.

Die Warnung bleibt:
2021.10.13 19:17:07 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 402.

Dann probiere ich als nächstes die Version von dir eki.

Edit: Fehler bzw. Warnung bleibt gleich.

Überprüfe mal bitte deine Definitionen hinsichtlich der Vollständigkeit der Parameter. Ich vermute , in irgendeiner Zeile fehlt oder passt etwas nicht.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 14 Oktober 2021, 17:29:26
So ganz verstehe ich die Warnung nicht (nach meinem Verständnis sollte das nur auftreten, wenn ich als Übergabeparameter and die Funktion "undef" habe, was ich aber nirgends sehe), aber probier mal ob die Warnung mit der angehängten Version weg ist.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 14 Oktober 2021, 17:41:07
Zitat von: eki am 14 Oktober 2021, 17:29:26
So ganz verstehe ich die Warnung nicht (nach meinem Verständnis sollte das nur auftreten, wenn ich als Übergabeparameter and die Funktion "undef" habe, was ich aber nirgends sehe), aber probier mal ob die Warnung mit der angehängten Version weg ist.

Es reicht schon, wenn einer der Werte in "@_" (bzw. @values) gleich "undef" ist.

Wenn du die Fehler abfangen willst, zum Beispiel

($type, $text, $x, $y, $size, $ang, $col, $fnt, $linegap, $blockwidth) = split("#",$line);
if (!defined $fnt) {$fnt = ''}; # Hajo 6
if (!defined $linegap) {$linegap = ''}; # Hajo 7
if (!defined $blockwidth) {$blockwidth = ''}; # Hajo 8
($x, $y, $size, $ang, $col, $fnt,$linegap,$blockwidth) = ESPEInk_FetchReadings($x, $y, $size, $ang, $col, $fnt,$linegap,$blockwidth);


dann solltest du vor dem Aufruf der Funktion " ESPEInk_FetchReadings" prüfen, ob alle erforderlichen Parameter vorhanden (defined) sind. Wenn nicht, dann setzt du einen default-Wert, oder schreibst einen log-Eintrag für den fehlenden Wert, damit der Anwender seinen Fehler leichter findet..
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: bhaal am 15 Oktober 2021, 05:41:05
Zitat von: hajo23 am 14 Oktober 2021, 11:20:59
Überprüfe mal bitte deine Definitionen hinsichtlich der Vollständigkeit der Parameter. Ich vermute , in irgendeiner Zeile fehlt oder passt etwas nicht.

Tatsächlich, auch noch direkt in der ersten Zeile. Das hat immerhin die Suche vereinfacht. Bei Addicon haben die Angaben Angle und Color gefehlt.

Der Rest war offensichtlich vollständig, jetzt läuft es ohne Warnung. Besten Dank!
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 15 Oktober 2021, 07:59:49
Zitat von: hajo23 am 14 Oktober 2021, 17:41:07
Es reicht schon, wenn einer der Werte in "@_" (bzw. @values) gleich "undef" ist.

Wenn du die Fehler abfangen willst, zum Beispiel

($type, $text, $x, $y, $size, $ang, $col, $fnt, $linegap, $blockwidth) = split("#",$line);
if (!defined $fnt) {$fnt = ''}; # Hajo 6
if (!defined $linegap) {$linegap = ''}; # Hajo 7
if (!defined $blockwidth) {$blockwidth = ''}; # Hajo 8
($x, $y, $size, $ang, $col, $fnt,$linegap,$blockwidth) = ESPEInk_FetchReadings($x, $y, $size, $ang, $col, $fnt,$linegap,$blockwidth);


dann solltest du vor dem Aufruf der Funktion " ESPEInk_FetchReadings" prüfen, ob alle erforderlichen Parameter vorhanden (defined) sind. Wenn nicht, dann setzt du einen default-Wert, oder schreibst einen log-Eintrag für den fehlenden Wert, damit der Anwender seinen Fehler leichter findet..

Was der Grund sein kann war mir schon klar, allerdings rufe ich diese Funktion ja selbst auf und war der Meinung, dass ich da als Übergabeparameter immer etwas aus "ReadingsVal" drin habe und dort steht immer ein default Wert drin. Allerdings gibt es an einer Stelle (hatte ich übersehen) auch die direkte Eingabe von Werten und die können natürlich "undefined" sein (wie man ja auch aus der Antwort von bhaal und aus Deinem Code Zitat sieht).

Egal, ich habe das auf jeden Fall jetzt nicht vor dem Aufruf sondern in der Routine abgefangen (siehe Post oben).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Shortie am 15 Oktober 2021, 09:25:47
Mir kam gerade eine Idee, da ich den Display Inhalt gerne etwas dynamischer gestalten möchte und auch Teile für verschiedene Räume wiederverwenden auf dem gleichen Display.

Wäre es möglich das an als definition auch eine Perl Funktion übergeben könnte, die dann als Rückgabe die definition liefert?

Das ganze würde ich dann als eine Art Experten Modus sehen:
Dann könnte man sich z.B. Funktionen bauen, die einen Raum repräsentieren und Temperatur, Feuchte, .... anzeigen und diese dann für verschiedene Räume auf dem Display nutzen und per relativen Koordinaten jeweils platzieren.
Aktuell hab ich 6 Kästchen geplant, welche sich nur durch die verschiedenen Readings und die Überschriften unterscheiden. Mache ich eine Änderung muss ich sie an allen Stellen vornehmen und die ganzen Koordinaten immer neu rechnen.
Oder halt sowas wie dynamische Status Icons hintereinander. Also z.B. eine Zeile im Raum Wohnzimmer die von vorne auffüllt wenn bestimmte Stati vorhanden sind, ansonsten aber nichts anzeigt. Wie Fenster auf, es wird dafür ein Icon vorne angezeigt, Fenster zu kein Icon (geht ja aktuell auch schon soweit ich das gesehen hab, allerdings nur mit festen Koordinaten), wenn jetzt aber das Fenster zu ist und kein Icon angezeigt wird und ich einen weiteren Status anzeigen will kann ich dafür ja nicht den Platz des Fenster Icons nehmen, da ja der Status Fenster auf und ein anderer Status auch potentiell gleichzeitig auftreten könnten. Mit Perl würde sich sowas aber dynamisch händeln lassen und dann die Definition entsprechend dem Plugin übergeben.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 15 Oktober 2021, 10:35:12
Das müsste, wenn ich Deine Anfrage richtig verstehe, eigentlich jetzt schon gehen.

Du müsstest als Definitionsvariante ein Definitionsfile verwenden (attr <device> definitionFile <Filename>). Dieses File kannst Du dann von Perl aus entsprechend dynamisch füllen/ändern und ganz am Ende per set <device> upload das Generieren des Bildes und Hochladen zum Anzeigedevice triggern. Der Perl Teil könnte ja in einem notify oder at sein, welches auf Statusänderungen entsprehend reagiert bzw. zu festgelegten Intervallen arbeitet.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Shortie am 15 Oktober 2021, 10:44:48
Danke, stimmt, darüber müsste es schon gehen und sollte für mich ausreichend sein. Das werde ich heute Abend direkt mal ausprobieren.

Wenn direkt die definition eine Perl Funktion auslösen könnte, dann könnte man das interval aus dem Plkugin selbst nutzen. Das wäre aber nur noch "nice to have" wenn der erste Weg bereits funktionieren sollte.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 15 Oktober 2021, 18:17:58
Zitat von: Shortie am 15 Oktober 2021, 10:44:48
Danke, stimmt, darüber müsste es schon gehen und sollte für mich ausreichend sein. Das werde ich heute Abend direkt mal ausprobieren.

Wenn direkt die definition eine Perl Funktion auslösen könnte, dann könnte man das interval aus dem Plkugin selbst nutzen. Das wäre aber nur noch "nice to have" wenn der erste Weg bereits funktionieren sollte.

wenn du Lust hast, kannst du z.B. nach Zeile 1311 Folgendes einfügen:

($type, $text, $x, $y, $size, $ang, $col, $fnt, $linegap, $blockwidth) = testUtil($name, $type, $text, $x, $y, $size, $ang, $col, $fnt, $linegap, $blockwidth);


und dann in myUtils deine Funktion einbauen:

sub testUtil($$$$$$$$$$$)
{
my ($name, $type, $text, $x, $y, $size, $ang, $col, $fnt, $linegap, $blockwidth) = @_;

if ($type eq "iconreading") {
if ($text eq "di_DisplayZeit:R_Wohnzimmer") {
Log 1,"[testUtil] tuwas ... $type $text";
}
} elsif ($type eq "textreading") {

} elsif ($type eq "addicon") {

};

    return ($type, $text, $x, $y, $size, $ang, $col, $fnt, $linegap, $blockwidth);
}


in testUtil kannst du dann die Parameter zur Laufzeit verändern. Das jeweilige Icon müsstest du natürlich auch selbst erzeugen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 08 November 2021, 18:57:03
Hallo Eki,

dein eingechecktes Modul arbeitet schon ziemlich gut. Allerdings friert das e-paper alle paar Tage ein und ich muss es neu starten.

Im Logfile habe ich immer noch die u.g. Fehler:

PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1448.
2021.11.08 18:41:19 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1448.
2021.11.08 18:41:19 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1449.
2021.11.08 18:41:19 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1449.
2021.11.08 18:41:19 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1456.
2021.11.08 18:41:19 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1456.
2021.11.08 18:41:19 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1457.
2021.11.08 18:41:19 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1457.
2021.11.08 18:41:19 1: PERL WARNING: Use of uninitialized value $s1 in string eq at ./FHEM/89_ESPEInk.pm line 1458.
2021.11.08 18:41:19 1: PERL WARNING: Use of uninitialized value $s2 in string eq at ./FHEM/89_ESPEInk.pm line 1458.
2021.11.08 18:41:35 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 402.
2021.11.08 18:41:40 1: Connection refused from 127.0.0.1:59054
2021.11.08 18:41:54 3: ep_flur: sending HTTP request to http://192.168.23.76/EPD with data: ib
2021.11.08 18:42:01 1: Connection refused from 127.0.0.1:59264
2021.11.08 18:42:17 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/89_ESPEInk.pm line 2083.
2021.11.08 18:42:17 1: PERL WARNING: Use of uninitialized value in numeric ne (!=) at ./FHEM/89_ESPEInk.pm line 2094.
2021.11.08 18:42:17 1: ep_flur: problems with communication to device, max retries (0) reached


Ne Idee was das sein kann?  Meine (noch nicht finale) Def sieht wie folgt aus:

addsymbol#line#0#50#81#0#FF0000#879#0#0
addsymbol#line#0#527#20#0#FF0000#879#0#0
addsymbol#rectangle#510#50#4#0#FF0000#367#50#0#0
addsymbol#rectangle#1#50#4#0#FF0000#260#460#0#0
addsymbol#rectangle#700#101#4#0#FF0000#177#180#0#0
addsymbol#rectangle#261#50#4#0#FF0000#249#50#0#0
addsymbol#rectangle#261#101#4#0#FF0000#249#98#0#0
addsymbol#rectangle#261#200#4#0#FF0000#249#309#0#0

addtext#Home Status Riedberg#20#14#24#0#ffffff#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#proplanta:fc0_date#700#14#24#0#ffffff#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

addicon#sunrise#280#58#35#0#000000
addicon#sunset#395#58#35#0#000000
addicon#weather_moonrise#280#109#35#0#000000
addicon#weather_moonset#395#109#35#0#000000
iconreading#astro:e_icon#280#150#40#0#000000 
textreading#astro:SunRise#320#65#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#astro:SunSet#435#65#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#astro:MoonRise#320#115#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#astro:MoonSet#435#115#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
textreading#astro:MoonPhaseS#340#165#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

addtext#Fun Mode aktiv:#280#218#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
addtext#Party Mode aktiv:#280#268#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
addtext#Gäste WLAN:#280#318#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
addtext#Musik Terrasse:#280#368#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
addtext#Lautstärke Echos:#280#418#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
addtext#Waschmaschine:#280#468#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0

iconreading#fun_mode:e_icon#440#208#35#0#000000
iconreading#myASControl:e_icon#440#258#35#0#000000
iconreading#FB:e_icon#440#308#35#0#000000
iconreading#ts_musik:e_icon#440#360#35#0#000000
iconreading#speak_volume:e_icon#440#410#35#0#000000
iconreading#ka_wm:e_icon#440#457#35#0#000000

iconreading#elle:e_icon#800#120#40#0#000000
iconreading#Steffen:e_icon#800#170#40#0#000000
iconreading#rg_felix:e_icon#800#220#40#0#000000

addtext#Elle:#750#130#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
addtext#Steffen:#718#180#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
addtext#Felix:#740#230#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0

addtext#Heute ist:#525#65#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#daylist:state#620#65#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0

addtext#Schlafzimmer#10#68#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#sz_tuer:e_icon#145#60#40
iconreading#sz_rollo:e_icon#190#60#40

addtext#Hobbyzimmer#10#118#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#ho_tuer:e_icon#145#110#40
iconreading#ho_rollo:e_icon#190#110#40

addtext#Duschbad#10#168#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#ds_tuer:e_icon#145#160#40
iconreading#ds_rollo:e_icon#190#160#40

addtext#Badezimmer#10#218#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#bd_fenster:e_icon#140#210#40
iconreading#bd_rollo:e_icon#190#210#40

addtext#Küche#10#268#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#ku_fenster:e_icon#140#260#40
iconreading#ku_rollo:e_icon#190#260#40

addtext#Wohnzimmer#10#318#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#wz_tuer:e_icon#145#310#40
iconreading#wz_rollo:e_icon#190#310#40

addtext#Wohnz. Fenster#10#368#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#wz_rollo_f:e_icon#190#360#40

addtext#Wohnz. links#10#418#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#wz_links:e_icon#140#410#40
iconreading#wz_rollo_links:e_icon#190#410#40

addtext#Wohnz. rechts#10#468#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
iconreading#wz_rechts:e_icon#140#460#40
iconreading#wz_rollo_rechts:e_icon#190#460#40
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 23 November 2021, 11:29:57
Die Perl Warnungen sind aus meiner Sicht kein Problem. Am Ende scheint allerdings keine Kommunikation mit dem Modul mehr möglich zu sein. Kannst Du mal, wenn es das nächste mal passiert, schauen, ob das Modul per ping oder so noch erreichbar ist (z.B. weil es aus dem WLAN rausgeflogen ist und sich nicht wieder neu verbindet).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 04 Dezember 2021, 09:21:30
Ok, es scheint tatsächlich aus dem WLAN zu fliegen. Das ist ja doof.
Dann liegt es vermutlich am Arduino oder dem ESP ? Ich muss dann mal loggen wann das Teil aus dem WLAN verschwindet.

Oder hat jemand eine Idee?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: m.zielinski am 04 Dezember 2021, 10:24:24
Zitat von: Borkk am 04 Dezember 2021, 09:21:30
Ok, es scheint tatsächlich aus dem WLAN zu fliegen. Das ist ja doof.
Dann liegt es vermutlich am Arduino oder dem ESP ?

Bei mir lag es am Empfang. Nach Aufstellung eines WLAN Repeater läuft es nun stabil. Die Antenne ist wohl zu schwach...
Bei mir waren es 7m wo schon Probleme auftraten (mit Mauern aus Ziegeln)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 14 Dezember 2021, 12:45:09
Das kann bei mir nicht das Problem sein. Die FB steht quasi unmittelbar daneben, nur durch eine dünne Rigips Wand getrennt und 1m höher.   
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 31 Dezember 2021, 11:33:00
Zitat von: eki am 23 November 2021, 11:29:57
Die Perl Warnungen sind aus meiner Sicht kein Problem. Am Ende scheint allerdings keine Kommunikation mit dem Modul mehr möglich zu sein. Kannst Du mal, wenn es das nächste mal passiert, schauen, ob das Modul per ping oder so noch erreichbar ist (z.B. weil es aus dem WLAN rausgeflogen ist und sich nicht wieder neu verbindet).

Leider läuft das Ganze bei mir noch nicht rund. Die Verbindung zum Display fällt in unregelmässigen Abständen aus. Mal nach einem Tag mal nach einer Woche... Ein Ping geht dann auch nicht. Probleme mit dem WLAN als solches kann ich ausschließen. Kein anderes Device bei mir hat Probleme mit dem WLAN. Und ich habe hier mit 3 Accesspoints und einem Fritz.Box MESH alles gut ausgeleuchtet.

Du schreibst zwar, das die Pearl Warnungen kein Problem sind, aber sie ballern mir Seitenweise das LOG voll. Wo kommen die denn her? Kann ich irgendwas machen, das sie nicht mehr kommen?

Vorab schon mal einen Guten Rutsch :-)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 31 Dezember 2021, 13:37:00
Zitat von: Borkk am 31 Dezember 2021, 11:33:00
Leider läuft das Ganze bei mir noch nicht rund. Die Verbindung zum Display fällt in unregelmässigen Abständen aus. Mal nach einem Tag mal nach einer Woche... Ein Ping geht dann auch nicht. Probleme mit dem WLAN als solches kann ich ausschließen. Kein anderes Device bei mir hat Probleme mit dem WLAN. Und ich habe hier mit 3 Accesspoints und einem Fritz.Box MESH alles gut ausgeleuchtet.

Was für ein Board und welches Display nutzt du? Welche Firmware (Version) setzt du auf dem Board ein? Was für ein Netzteil nutzt du?

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 31 Dezember 2021, 15:47:27
Zitat von: Borkk am 31 Dezember 2021, 11:33:00
Leider läuft das Ganze bei mir noch nicht rund. Die Verbindung zum Display fällt in unregelmässigen Abständen aus. Mal nach einem Tag mal nach einer Woche... Ein Ping geht dann auch nicht. Probleme mit dem WLAN als solches kann ich ausschließen. Kein anderes Device bei mir hat Probleme mit dem WLAN. Und ich habe hier mit 3 Accesspoints und einem Fritz.Box MESH alles gut ausgeleuchtet.

Du schreibst zwar, das die Pearl Warnungen kein Problem sind, aber sie ballern mir Seitenweise das LOG voll. Wo kommen die denn her? Kann ich irgendwas machen, das sie nicht mehr kommen?

Vorab schon mal einen Guten Rutsch :-)

Ich fürchte, dass die Perl Warnungen von der Anweisung in Zeile 1441 kommen. Vermutlich hat eki übersehen, dass die "split-Funktion" die Variablen $s1 und $s2 auf "undef" setzt, wenn es keine passenden delimiter gibt. D.h., die Zeile 1440 hilft nicht.


my ($sym,$s1,$s2) = ("","","");
($sym,$s1,$s2) = split("-",$text);


vielleicht schreibt eki in der nächsten release noch einen bugfix dafür. Als workaround kannst du bis dahin deine def z.B. ändern in:

addsymbol#rectangle--#510#50#4#0#FF0000#367#50#0#0


dann sollten die Warnings aus der log verschwinden.

Mein ESP hängt sich auch manchmal weg, allerdings nur nach einem fhem-update, bzw. einem fhem-shutdown-restart. Einmal den ESP stromlos machen und alles flutscht wieder. Könnte vielleicht daran liegen, das fhem gerade unglücklich während der Datenübertragung stoppt und der ESP kein timeout hat.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 31 Dezember 2021, 17:23:17
Zitat von: hajo23 am 31 Dezember 2021, 15:47:27
Ich fürchte, dass die Perl Warnungen von der Anweisung in Zeile 1441 kommen. Vermutlich hat eki übersehen, dass die "split-Funktion" die Variablen $s1 und $s2 auf "undef" setzt, wenn es keine passenden delimiter gibt. D.h., die Zeile 1440 hilft nicht.


my ($sym,$s1,$s2) = ("","","");
($sym,$s1,$s2) = split("-",$text);


vielleicht schreibt eki in der nächsten release noch einen bugfix dafür. Als workaround kannst du bis dahin deine def z.B. ändern in:

addsymbol#rectangle--#510#50#4#0#FF0000#367#50#0#0


d.h. die zwei "--" einfügen? nur bei #rectangle, oder auch bei z.B. #line?


Zitat von: hajo23 am 31 Dezember 2021, 15:47:27
Mein ESP hängt sich auch manchmal weg, allerdings nur nach einem fhem-update, bzw. einem fhem-shutdown-restart. Einmal den ESP stromlos machen und alles flutscht wieder. Könnte vielleicht daran liegen, das fhem gerade unglücklich während der Datenübertragung stoppt und der ESP kein timeout hat.

Das ist ein guter Hinweis, könnte auch bei mir das problem sein. Werde es mal beobachten.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 31 Dezember 2021, 17:35:20
Zitat von: Borkk am 31 Dezember 2021, 17:23:17
d.h. die zwei "--" einfügen? nur bei #rectangle, oder auch bei z.B. #line?


Das ist ein guter Hinweis, könnte auch bei mir das problem sein. Werde es mal beobachten.

Das sollte laut commandref bei addsymbol grundsätzlich funktionieren.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 01 Januar 2022, 12:55:03
Zitat von: hajo23 am 31 Dezember 2021, 17:35:20
Das sollte laut commandref bei addsymbol grundsätzlich funktionieren.

Hallo Hajo,

nachdem ich die zwei "--" bei allen "addsymbol" aufrufen eingefügt habe sind viele Fehlermeldungen aus dem LOG verschwunden, prima.

Im Augenblick bekomme ich bei einem ganz normalen Durchlauf, also ein Reading ändert sich und es wir dein Convert -> Upload angestoßen folgende Meldung im LOG:

2022.01.01 12:42:49 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 402.
2022.01.01 12:43:08 3: ep_flur: sending HTTP request to http://192.168.23.76/EPD with data: ib
2022.01.01 12:43:34 1: ep_flur: problems with communication to device, max retries (0) reached


Der Refresh des Displays läuft aber korrekt durch.

Beim ersten Logeintrag wird es was ähnliches sein wie bei "addsymbol", der zweite Eintrag ist ok und beim Dritten, vermute ich auch einen Fehler im Modul. Ich habe "maxretries" auf 0 stehen.

Stelle ich "maxretries" auf 1 sieht es wie folgt aus:


2022.01.01 12:51:43 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 402.
2022.01.01 12:52:02 3: ep_flur: sending HTTP request to http://192.168.23.76/EPD with data: ib
2022.01.01 12:52:27 3: ep_flur: problems with communication to device, trying once more (1 of 1 done)
2022.01.01 12:52:37 1: ep_flur: problems with communication to device, max retries (1) reached


Irgendwie bekommt das Modul nicht mit, das der Upload erfolgreich war.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 01 Januar 2022, 15:30:56
Zitat von: Borkk am 01 Januar 2022, 12:55:03
Hallo Hajo,

nachdem ich die zwei "--" bei allen "addsymbol" aufrufen eingefügt habe sind viele Fehlermeldungen aus dem LOG verschwunden, prima.

Im Augenblick bekomme ich bei einem ganz normalen Durchlauf, also ein Reading ändert sich und es wir dein Convert -> Upload angestoßen folgende Meldung im LOG:

2022.01.01 12:42:49 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 402.
2022.01.01 12:43:08 3: ep_flur: sending HTTP request to http://192.168.23.76/EPD with data: ib
2022.01.01 12:43:34 1: ep_flur: problems with communication to device, max retries (0) reached


Der Refresh des Displays läuft aber korrekt durch.

Beim ersten Logeintrag wird es was ähnliches sein wie bei "addsymbol", der zweite Eintrag ist ok und beim Dritten, vermute ich auch einen Fehler im Modul. Ich habe "maxretries" auf 0 stehen.

Stelle ich "maxretries" auf 1 sieht es wie folgt aus:


2022.01.01 12:51:43 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 402.
2022.01.01 12:52:02 3: ep_flur: sending HTTP request to http://192.168.23.76/EPD with data: ib
2022.01.01 12:52:27 3: ep_flur: problems with communication to device, trying once more (1 of 1 done)
2022.01.01 12:52:37 1: ep_flur: problems with communication to device, max retries (1) reached


Irgendwie bekommt das Modul nicht mit, das der Upload erfolgreich war.

Stell mal den log-level auf 4, dann sollte im log ("check1") stehen, welche Zeile in deiner Def das Problem verursacht.

Der andere Fehler deutet daraufhin, das dein ESP tatsächlich die Verbindung verliert. Vielleicht kannst du noch die Fragen von Jendaw  zu ESP und Firmware beantworten.
Wäre es möglich, dass der ESP schon im sleep-modus ist?

Ich habe mir ein Device zur Überwachung angelegt, um zu sehen, ob der ESP wieder aufwacht. Für das Troubleshooting können natürlich andere Parameter sinnvoll sein.

define e_paper_state PRESENCE lan-ping esp.local 4 260


Euch allen ein gesundes neues Jahr!
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 01 Januar 2022, 15:47:05
Hihi, so ein Presence Device hatte ich auch schon mal angelegt :-)

Ich werde mal weiter suchen und melde mich dann wieder.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 01 Januar 2022, 16:21:17
Zitat von: Jendaw am 31 Dezember 2021, 13:37:00
Was für ein Board und welches Display nutzt du? Welche Firmware (Version) setzt du auf dem Board ein? Was für ein Netzteil nutzt du?

Ich nutze ein Waveshare 17059 7.5inch HD e-Paper (B) (WS3-017059) an einem Waveshare 14138 e-Paper ESP8266 Driver Board (WS1-014138). Ich habe die original Treiber Software von der Waveshare Seite drauf gespielt. Ich muss aber zugeben, das ich bei der Arduino IDE Sache noch nicht so ganz den Durchblick habe. Ich habe echt eine Weile gebraucht bis ich auf meinem MAC das am Start hatte und das flashen geklappt hat.

Netzeile hatte ich verschiedene im Einsatz. Was was kommt es da an? 1A oder 2A ?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 01 Januar 2022, 16:41:57
Zitat von: hajo23 am 01 Januar 2022, 15:30:56
Stell mal den log-level auf 4, dann sollte im log ("check1") stehen, welche Zeile in deiner Def das Problem verursacht.

Hier mal ein kompletter Durchlauf mit Verbose 4. Der Fehler tritt beim Schlafzimmer auf, ich kann aber keinen Unterschied zu den anderen Einträgen sehen. ?!?!
Das reading e_icon generiere ich über userReadings wie dieses:

e_icon {if(ReadingsVal($NAME,"state","") eq "closed") {return "fts_door"} elsif (ReadingsVal($NAME,"state","") eq "tilted") {return "fts_door_tilt"} elsif (ReadingsVal($NAME,"state","") eq "open") {return "fts_door_open"}}


2022.01.01 16:21:50 4: Start forked process to convert output picture
2022.01.01 16:21:51 4: check1: addsymbol#line--#0#50#81#0#FF0000#879#0#0 - 41
2022.01.01 16:21:51 4: check1: addsymbol#line--#0#527#20#0#FF0000#879#0#0 - 42
2022.01.01 16:21:51 4: check1: addsymbol#rectangle--#510#50#4#0#FF0000#367#50#0#0 - 50
2022.01.01 16:21:51 4: check1: addsymbol#rectangle--#1#50#4#0#FF0000#260#460#0#0 - 49
2022.01.01 16:21:51 4: check1: addsymbol#rectangle--#700#101#4#0#FF0000#177#180#0#0 - 52
2022.01.01 16:21:51 4: check1: addsymbol#rectangle--#261#50#4#0#FF0000#249#50#0#0 - 50
2022.01.01 16:21:51 4: check1: addsymbol#rectangle--#261#101#4#0#FF0000#249#98#0#0 - 51
2022.01.01 16:21:51 4: check1: addsymbol#rectangle--#261#200#4#0#FF0000#249#309#0#0 - 52
2022.01.01 16:21:51 4: check1:  - 0
2022.01.01 16:21:51 4: check1: addtext#Home Status Riedberg#20#14#24#0#ffffff#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0 - 102
2022.01.01 16:21:51 4: check1: textreading#proplanta:fc0_date#700#14#24#0#ffffff#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0 - 105
2022.01.01 16:21:51 4: check1:  - 0
2022.01.01 16:21:51 4: check1: addicon#sunrise#280#58#35#0#000000 - 34
2022.01.01 16:21:51 4: check1: addicon#sunset#395#58#35#0#000000 - 33
2022.01.01 16:21:51 4: check1: addicon#weather_moonrise#280#109#35#0#000000 - 44
2022.01.01 16:21:52 4: check1: addicon#weather_moonset#395#109#35#0#000000 - 43
2022.01.01 16:21:54 4: check1: iconreading#astro:e_icon#280#150#40#0#000000   - 46
2022.01.01 16:21:55 4: check1: textreading#astro:SunRise#320#65#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0 - 100
2022.01.01 16:21:55 4: check1: textreading#astro:SunSet#435#65#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0 - 99
2022.01.01 16:21:55 4: check1: textreading#astro:MoonRise#320#115#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0 - 102
2022.01.01 16:21:55 4: check1: textreading#astro:MoonSet#435#115#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0 - 101
2022.01.01 16:21:55 4: check1: textreading#astro:MoonPhaseS#340#165#12#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0 - 104
2022.01.01 16:21:55 4: check1:  - 0
2022.01.01 16:21:55 4: check1: addtext#Fun Mode aktiv:#280#218#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 97
2022.01.01 16:21:55 4: check1: addtext#Party Mode aktiv:#280#268#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 99
2022.01.01 16:21:55 4: check1: addtext#Gäste WLAN:#280#318#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 94
2022.01.01 16:21:55 4: check1: addtext#Musik Terrasse:#280#368#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 97
2022.01.01 16:21:55 4: check1: addtext#Lautstärke Echos:#280#418#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 100
2022.01.01 16:21:55 4: check1: addtext#Waschmaschine:#280#468#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 96
2022.01.01 16:21:55 4: check1:  - 0
2022.01.01 16:21:55 4: check1: iconreading#fun_mode:e_icon#440#208#35#0#000000 - 47
2022.01.01 16:21:57 4: check1: iconreading#myASControl:e_icon#440#258#35#0#000000  - 51
2022.01.01 16:21:58 4: check1: iconreading#FB:e_icon#440#308#35#0#000000  - 42
2022.01.01 16:21:58 4: check1: iconreading#ts_musik:e_icon#440#360#35#0#000000 - 47
2022.01.01 16:21:58 4: check1: iconreading#speak_volume:e_icon#440#410#35#0#000000 - 51
2022.01.01 16:21:59 4: check1: iconreading#ka_wm:e_icon#440#457#35#0#000000 - 44
2022.01.01 16:22:02 4: check1:  - 0
2022.01.01 16:22:02 4: check1: iconreading#rr_elle:e_icon#800#120#40#0#000000 - 46
2022.01.01 16:22:03 4: check1: iconreading#rr_steffen:e_icon#800#170#40#0#000000 - 49
2022.01.01 16:22:05 4: check1: iconreading#rg_felix:e_icon#800#220#40#0#000000 - 47
2022.01.01 16:22:06 4: check1:  - 0
2022.01.01 16:22:06 4: check1: addtext#Elle:#750#130#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 87
2022.01.01 16:22:06 4: check1: addtext#Steffen:#718#180#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 90
2022.01.01 16:22:06 4: check1: addtext#Felix:#740#230#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 88
2022.01.01 16:22:06 4: check1:  - 0
2022.01.01 16:22:06 4: check1: addtext#Heute ist:#525#65#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 91
2022.01.01 16:22:06 4: check1: textreading#daylist:state#620#65#16#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 98
2022.01.01 16:22:06 4: check1:  - 0
2022.01.01 16:22:06 4: check1: addtext#Schlafzimmer#10#68#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 92
2022.01.01 16:22:06 4: check1: iconreading#sz_tuer:e_icon#145#60#40 - 36
2022.01.01 16:22:06 1: PERL WARNING: Use of uninitialized value $value in pattern match (m//) at ./FHEM/89_ESPEInk.pm line 402.
2022.01.01 16:22:06 4: check1: iconreading#sz_rollo:e_icon#190#60#40 - 37
2022.01.01 16:22:06 4: check1:  - 0
2022.01.01 16:22:06 4: check1: addtext#Hobbyzimmer#10#118#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 92
2022.01.01 16:22:06 4: check1: iconreading#ho_tuer:e_icon#145#110#40 - 37
2022.01.01 16:22:06 4: check1: iconreading#ho_rollo:e_icon#190#110#40 - 38
2022.01.01 16:22:07 4: check1:  - 0
2022.01.01 16:22:07 4: check1: addtext#Duschbad#10#168#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 89
2022.01.01 16:22:07 4: check1: iconreading#ds_tuer:e_icon#145#160#40 - 37
2022.01.01 16:22:07 4: check1: iconreading#ds_rollo:e_icon#190#160#40 - 38
2022.01.01 16:22:07 4: check1:  - 0
2022.01.01 16:22:07 4: check1: addtext#Badezimmer#10#218#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 91
2022.01.01 16:22:07 4: check1: iconreading#bd_fenster:e_icon#140#210#40 - 40
2022.01.01 16:22:07 4: check1: iconreading#bd_rollo:e_icon#190#210#40 - 38
2022.01.01 16:22:07 4: check1:  - 0
2022.01.01 16:22:07 4: check1: addtext#Küche#10#268#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 87
2022.01.01 16:22:07 4: check1: iconreading#ku_fenster:e_icon#140#260#40 - 40
2022.01.01 16:22:07 4: check1: iconreading#ku_rollo:e_icon#190#260#40 - 38
2022.01.01 16:22:07 4: check1:  - 0
2022.01.01 16:22:07 4: check1: addtext#Wohnzimmer#10#318#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 91
2022.01.01 16:22:07 4: check1: iconreading#wz_tuer:e_icon#145#310#40 - 37
2022.01.01 16:22:07 4: check1: iconreading#wz_rollo:e_icon#190#310#40 - 38
2022.01.01 16:22:07 4: check1:  - 0
2022.01.01 16:22:07 4: check1: addtext#Wohnz. Fenster#10#368#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 95
2022.01.01 16:22:07 4: check1: iconreading#wz_rollo_f:e_icon#190#360#40 - 40
2022.01.01 16:22:08 4: check1:  - 0
2022.01.01 16:22:08 4: check1: addtext#Wohnz. links#10#418#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 93
2022.01.01 16:22:08 4: check1: iconreading#wz_links:e_icon#140#410#40 - 38
2022.01.01 16:22:08 4: check1: iconreading#wz_rollo_links:e_icon#190#410#40 - 44
2022.01.01 16:22:08 4: check1:  - 0
2022.01.01 16:22:08 4: check1: addtext#Wohnz. rechts#10#468#14#0#000000#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0 - 94
2022.01.01 16:22:08 4: check1: iconreading#wz_rechts:e_icon#140#460#40 - 39
2022.01.01 16:22:08 4: check1: iconreading#wz_rollo_rechts:e_icon#190#460#40 - 45
2022.01.01 16:22:08 4: File /opt/fhem/www/images/custom/display_hd.png opened, sizes is 880 x 528
2022.01.01 16:22:26 4: Finished conversion in background doing automatic upload as requested
2022.01.01 16:22:26 3: ep_flur: sending HTTP request to http://192.168.23.76/EPD with data: ib
2022.01.01 16:22:52 3: ep_flur: problems with communication to device, trying once more (1 of 1 done)


Eine Beobachtung habe ich noch gemacht. Nach dem Upload baut sich das Display neu auf. Die Fehlermeldung:
2022.01.01 16:22:52 3: ep_flur: problems with communication to device, trying once more (1 of 1 done)
kommt noch bevor das Display fertig ist. Es hat den Anschein, das nicht lange genug auf eine Bestätigung von Display gewartet wird? Kann das sein?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 01 Januar 2022, 17:08:11
Zitat von: Borkk am 01 Januar 2022, 16:21:17
Ich nutze ein Waveshare 17059 7.5inch HD e-Paper (B) (WS3-017059) an einem Waveshare 14138 e-Paper ESP8266 Driver Board (WS1-014138). Ich habe die original Treiber Software von der Waveshare Seite drauf gespielt.
Welche Version der Treiber-Software? Für das 7,5"-Display muss es die vom 30.09.21 sein, da dort der Sleep-Mode des Displays korrekt umgesetzt ist.

Zitat
Netzeile hatte ich verschiedene im Einsatz. Was was kommt es da an? 1A oder 2A ?
Bei den Netzteilen kommt es darauf an, dass sie stabil genug sind. Der ESP8266 gönnt sich kurzzeitig mal etwas mehr Strom - wenn die Spannung in dem Moment einbricht, kann es zu einem Absturz führen. Falls du ein altes Handy-Ladegerät benutzt, kann das eine Ursache sein. Lösungsmöglichkeiten wären:
- ein anderes Netzteil verwenden (1A reicht bereits locker aus)
- ein Stecker-Schaltnetzteil verwenden
- einen Elko parallel zur Spannungsversorgung verlöten, rund 220µ sollten genügen

HTH
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 01 Januar 2022, 17:33:41
Zitat von: Jendaw am 01 Januar 2022, 17:08:11
Welche Version der Treiber-Software? Für das 7,5"-Display muss es die vom 30.09.21 sein, da dort der Sleep-Mode des Displays korrekt umgesetzt ist.

Ich muss mal blöd fragen.. ist es diese Software die ich auf den ESP 8266 schreibe? der loader.ino ist vom 29.10.2021

https://www.waveshare.net/w/upload/d/d5/E-Paper_ESP8266_Driver_Board_Code.7z (https://www.waveshare.net/w/upload/d/d5/E-Paper_ESP8266_Driver_Board_Code.7z)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 01 Januar 2022, 17:45:03
Zitat von: Borkk am 01 Januar 2022, 16:41:57
Hier mal ein kompletter Durchlauf mit Verbose 4. Der Fehler tritt beim Schlafzimmer auf, ich kann aber keinen Unterschied zu den anderen Einträgen sehen. ?!?!
Das reading e_icon generiere ich über userReadings wie dieses:

e_icon {if(ReadingsVal($NAME,"state","") eq "closed") {return "fts_door"} elsif (ReadingsVal($NAME,"state","") eq "tilted") {return "fts_door_tilt"} elsif (ReadingsVal($NAME,"state","") eq "open") {return "fts_door_open"}}

Ich würde das userReading noch um ein "else" ergänzen. So stellst du sicher, dass das userReading auch angelegt wird, wenn im  "state" gerade nicht closed/tilted/open steht.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 01 Januar 2022, 19:32:12
Zitat von: Borkk am 01 Januar 2022, 18:58:55
never touch an running...

Jetzt habe ich den Salat. Ich habe eben die oben geposteten Waveshare Software auf den ESP8266 geladen und nix geht mehr. :-(
Vielen Dank für Eure Geduld, aber ich brauch mal ein paar erklärende Worte zum Umgang mit Arduino IDE.

Ich habe einen frisch installierten iMAC mit Monterey mit frisch installiertem Arduino IDE. Ich habe die zusätzlichen Boardverwalter URL´s für ESP32 und ESP8366 eingetragen und die entsprechenden Boards geladen. Dann habe ich aus der Waveshare Software den loader.ino geöffnet und meine WLAN Daten in den Code eingetragen.

USB Port und das Board "Generic ESP8366 Module" ausgewählt und "Hochladen" gedrückt.... scheint ohne Fehler durchzulaufen:

xecutable segment sizes:
ICACHE : 32768           - flash instruction cache
IROM   : 301796          - code in flash         (default or ICACHE_FLASH_ATTR)
IRAM   : 27817   / 32768 - code in IRAM          (IRAM_ATTR, ISRs...)
DATA   : 3260  )         - initialized variables (global, static) in RAM/HEAP
RODATA : 17660 ) / 81920 - constants             (global, static) in RAM/HEAP
BSS    : 26192 )         - zeroed variables      (global, static) in RAM/HEAP
Der Sketch verwendet 350533 Bytes (36%) des Programmspeicherplatzes. Das Maximum sind 958448 Bytes.
Globale Variablen verwenden 47112 Bytes (57%) des dynamischen Speichers, 34808 Bytes für lokale Variablen verbleiben. Das Maximum sind 81920 Bytes.
esptool.py v3.0
Serial port /dev/cu.usbserial-0001
Connecting....
Chip is ESP8266EX
Features: WiFi
Crystal is 26MHz
MAC: d8:bf:c0:f3:da:9c
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Auto-detected Flash size: 4MB
Flash params set to 0x0340
Compressed 354688 bytes to 247729...
Writing at 0x00000000... (6 %)
Writing at 0x00004000... (12 %)
Writing at 0x00008000... (18 %)
Writing at 0x0000c000... (25 %)
Writing at 0x00010000... (31 %)
Writing at 0x00014000... (37 %)
Writing at 0x00018000... (43 %)
Writing at 0x0001c000... (50 %)
Writing at 0x00020000... (56 %)
Writing at 0x00024000... (62 %)
Writing at 0x00028000... (68 %)
Writing at 0x0002c000... (75 %)
Writing at 0x00030000... (81 %)
Writing at 0x00034000... (87 %)
Writing at 0x00038000... (93 %)
Writing at 0x0003c000... (100 %)
Wrote 354688 bytes (247729 compressed) at 0x00000000 in 21.8 seconds (effective 130.4 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...


Dann das Board stromlos gemacht. Meine Fritzbox vergibt dem Board immer die gleiche IP Adresse. Und ich sehe das Board auch als per WLAN verbundenes Gerät in der FB. ESPEink kommt aber nicht mehr dran, anpingen kann man das Bard auch nicht und per Browser

Sicher mache ich irgendwas falsch...

Es ist schon eine Weile her, dass ich meinen ESP8266 installiert habe. Daher denke ich, dass ich dir nicht ganz folgen kann, bzw. keine Hilfe bin.
Ich habe mich an das Git  https://github.com/Yattien (https://github.com/Yattien) von Jendaw gehalten und damals die v17 installiert. Die läuft noch heute bei mir.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 01 Januar 2022, 19:53:06
Sorry, hatte meinen Betrag gelöscht da vergessen hatte eine passende IP Adresse im Code einzutragen. Jetzt läuft es wie vorher mit der Waveshare Version vom Oktober 2021. Die V17 hatte ich auch schon mal probiert, ich glaube die ist immer "eingefroren" und man musste den sehr umständlichen Weg über MQTT gehen um das Modul "aufzuwecken".

Im Grunde funktioniert mein Display ja, bis auf die 2 Fehlermeldungen, vielleicht bekommen wir das ja noch raus woran das liegt.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 01 Januar 2022, 19:59:54
Zitat von: Borkk am 01 Januar 2022, 19:53:06
Sorry, hatte meinen Betrag gelöscht da vergessen hatte eine passende IP Adresse im Code einzutragen. Jetzt läuft es wie vorher mit der Waveshare Version vom Oktober 2021. Die V17 hatte ich auch schon mal probiert, ich glaube die ist immer "eingefroren" und man musste den sehr umständlichen Weg über MQTT gehen um das Modul "aufzuwecken".

Im Grunde funktioniert mein Display ja, bis auf die 2 Fehlermeldungen, vielleicht bekommen wir das ja noch raus woran das liegt.

Hast du das userReading bei sz_tuer schon angepasst? Ist der Fehler geblieben? Was steht gerade in sz_tuer:e_icon?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 01 Januar 2022, 20:40:06
Zitat von: Borkk am 01 Januar 2022, 17:33:41
Ich muss mal blöd fragen.. ist es diese Software die ich auf den ESP 8266 schreibe? der loader.ino ist vom 29.10.2021

https://www.waveshare.net/w/upload/d/d5/E-Paper_ESP8266_Driver_Board_Code.7z (https://www.waveshare.net/w/upload/d/d5/E-Paper_ESP8266_Driver_Board_Code.7z)

Ja. Dein Link zeigt allerdings immer auf die gerade aktuelle Version. Schau mal in die Datei "Loader/epd7in5.h", ob da folgende Zeilen ohne Koemmentar enthalten sind:
);
  //Enter sleep mode
  EPD_SendCommand(0X02); //power off
  EPD_7in5_V2_Readbusy();
  EPD_SendCommand(0X07); //deep sleep
  EPD_SendData(0xA5);
}

Wenn sie so dastehen, wie oben, dann ist alles gut.

btw: Alle bisher erschienen Versionen finden sich hier: https://www.waveshare.com/wiki/File:E-Paper_ESP8266_Driver_Board_Code.7z

ZitatJetzt läuft es wie vorher mit der Waveshare Version vom Oktober 2021. Die V17 hatte ich auch schon mal probiert, ich glaube die ist immer "eingefroren" und man musste den sehr umständlichen Weg über MQTT gehen um das Modul "aufzuwecken".
Das muss man "eigentlich" nicht, MQTT ist optional. Die Original-Firmware tut es aber auch, von der sie ja auch abgeleitet ist :)

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 02 Januar 2022, 00:44:26
Zitat von: Jendaw am 01 Januar 2022, 20:40:06
Ja. Dein Link zeigt allerdings immer auf die gerade aktuelle Version. Schau mal in die Datei "Loader/epd7in5.h", ob da folgende Zeilen ohne Koemmentar enthalten sind:
);
  //Enter sleep mode
  EPD_SendCommand(0X02); //power off
  EPD_7in5_V2_Readbusy();
  EPD_SendCommand(0X07); //deep sleep
  EPD_SendData(0xA5);
}

Wenn sie so dastehen, wie oben, dann ist alles gut.

btw: Alle bisher erschienen Versionen finden sich hier: https://www.waveshare.com/wiki/File:E-Paper_ESP8266_Driver_Board_Code.7z
Das muss man "eigentlich" nicht, MQTT ist optional. Die Original-Firmware tut es aber auch, von der sie ja auch abgeleitet ist :)

VG

Hallo Jendaw,

in epd7in5.h sind die u.g. Zeilen enthalten. Allerdings habe ich ja ein epd7in5_HD.h Display, müsste es dort auch drin sein? Da ist nämlich nichts von "sleep Mode" drin.


{
  EPD_SendCommand(0x12); //DISPLAY REFRESH
  delay(100);            //!!!The delay here is necessary, 200uS at least!!!
  // EPD_7in5_V2_Readbusy();

  //Enter sleep mode
  EPD_SendCommand(0X02); //power off
  EPD_7in5_V2_Readbusy();
  EPD_SendCommand(0X07); //deep sleep
  EPD_SendData(0xA5);
}
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 02 Januar 2022, 00:56:51
Zitat von: hajo23 am 01 Januar 2022, 19:59:54
Hast du das userReading bei sz_tuer schon angepasst? Ist der Fehler geblieben? Was steht gerade in sz_tuer:e_icon?

Nein, ich habe es noch nicht angepasst. Es handelt sich um einen Threestate Sensor, der eigentlich keinen anderen state haben kann. Es ist ist auch der gleiche wie in den anderen Räumen, mit dem gleiche userReadings. Aktuell haben alle Türen im Reading e_icon den Wert fts_door. Das Icon wird auf dem Display auch korrekt angezeigt, auch bei einer Änderung. Ist doch merkwürdig, das der Fehler nur bei einem Raum auftaucht, obwohl alle gleich konfiguriert sind. Oder ich sehe den (Tipp)Fehler nicht...

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 02 Januar 2022, 10:47:26
Zitat von: Borkk am 02 Januar 2022, 00:56:51
Nein, ich habe es noch nicht angepasst. Es handelt sich um einen Threestate Sensor, der eigentlich keinen anderen state haben kann. Es ist ist auch der gleiche wie in den anderen Räumen, mit dem gleiche userReadings. Aktuell haben alle Türen im Reading e_icon den Wert fts_door. Das Icon wird auf dem Display auch korrekt angezeigt, auch bei einer Änderung. Ist doch merkwürdig, das der Fehler nur bei einem Raum auftaucht, obwohl alle gleich konfiguriert sind. Oder ich sehe den (Tipp)Fehler nicht...

ok, ich habe es auch übersehen. Du hast ab der Zeile mit dem Schlafzimmer die Parameter angle und color nicht angegeben. Perl gibt die Warnung aber nur beim ersten Mal aus.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 02 Januar 2022, 11:36:16
Zitat von: hajo23 am 02 Januar 2022, 10:47:26
ok, ich habe es auch übersehen. Du hast ab der Zeile mit dem Schlafzimmer die Parameter angle und color nicht angegeben. Perl gibt die Warnung aber nur beim ersten Mal aus.

Perfekt !!! Das war es. Jetzt läuft die definition Fehlerfrei durch. Danke  ;D

Jetzt habe ich nur noch das Problem am Ende der Übertragung. Auch wenn das Display sauber aufgebaut wird.

2022.01.02 11:33:36 4: Finished conversion in background doing automatic upload as requested
2022.01.02 11:33:36 3: ep_flur: sending HTTP request to http://192.168.23.76/EPD with data: ib
2022.01.02 11:34:02 1: ep_flur: problems with communication to device, max retries (0) reached
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 02 Januar 2022, 13:55:52
Zitat von: Borkk am 02 Januar 2022, 00:44:26
in epd7in5.h sind die u.g. Zeilen enthalten.
Dann ist das die aktuelle Version (erkenne ich daran, weil ich dieses Display verwende und diese Änderung nur in der aktuellen Version vorhanden ist).

Zitat
Allerdings habe ich ja ein epd7in5_HD.h Display, müsste es dort auch drin sein? Da ist nämlich nichts von "sleep Mode" drin.
Exakt. Meiner Meinung nach muss in diese Datei in die Funktion EPD_7IN5_HD_Show() als letzte Zeile die nachfolgende eingetragen werden:
EPD_Send_1(0X10, 0X01); //deep sleep


Sieht dann so aus:
static void EPD_7IN5_HD_Show(void)
{   
unsigned int i;
EPD_SendCommand(0x26);
    for(i=0; i<880*528/8; i++) {
        EPD_SendData(0xff);
    }
    EPD_SendCommand(0x22);
    EPD_SendData(0xF7);
    EPD_SendCommand(0x20);
    delay(200);
    EPD_7IN5_HD_Readbusy();
    Serial.print("EPD_7IN5_HD_Show END\r\n");
    EPD_Send_1(0X10, 0X01); //deep sleep
}


Allerdings ohne Gewähr - ich habe das Display nicht und kann es nicht testen. Falls du es testest und bei dir funktioniert es, würde ich mich über ein Feedback freuen und es auch in die Yattien-Firmware einbauen.

HTH
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 02 Januar 2022, 16:27:32
Zitat von: Jendaw am 02 Januar 2022, 13:55:52
Dann ist das die aktuelle Version (erkenne ich daran, weil ich dieses Display verwende und diese Änderung nur in der aktuellen Version vorhanden ist).
Exakt. Meiner Meinung nach muss in diese Datei in die Funktion EPD_7IN5_HD_Show() als letzte Zeile die nachfolgende eingetragen werden:
EPD_Send_1(0X10, 0X01); //deep sleep


Sieht dann so aus:
static void EPD_7IN5_HD_Show(void)
{   
unsigned int i;
EPD_SendCommand(0x26);
    for(i=0; i<880*528/8; i++) {
        EPD_SendData(0xff);
    }
    EPD_SendCommand(0x22);
    EPD_SendData(0xF7);
    EPD_SendCommand(0x20);
    delay(200);
    EPD_7IN5_HD_Readbusy();
    Serial.print("EPD_7IN5_HD_Show END\r\n");
    EPD_Send_1(0X10, 0X01); //deep sleep
}


Allerdings ohne Gewähr - ich habe das Display nicht und kann es nicht testen. Falls du es testest und bei dir funktioniert es, würde ich mich über ein Feedback freuen und es auch in die Yattien-Firmware einbauen.

HTH

Hallo Jendaw,

Ich habe folgende Änderungen in epd7in5_HD.h vorgenommen:

static void EPD_7IN5B_HD_Show(void)
{
    EPD_SendCommand(0x22);
    EPD_SendData(0xC7);
    EPD_SendCommand(0x20);
    delay(200);
    EPD_7IN5_HD_Readbusy();
    Serial.print("EPD_7IN5B_HD_Show END\r\n");
}


in

static void EPD_7IN5B_HD_Show(void)
{   
        unsigned int i;
        EPD_SendCommand(0x26);
    for(i=0; i<880*528/8; i++)  {
        EPD_SendData(0xff);
    }
    EPD_SendCommand(0x22);
    EPD_SendData(0xF7);
    EPD_SendCommand(0x20);
    delay(200);
    EPD_7IN5_HD_Readbusy();
    Serial.print("EPD_7IN5_HD_Show END\r\n");
    EPD_Send_1(0X10, 0X01); //deep sleep
}


Der Fehler
2022.01.02 16:23:33 1: ep_flur: problems with communication to device, max retries (0) reached

am Ende der Übertragung kommt weiterhin und leider ist die Darstellung nicht korrekt.


Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: m.zielinski am 04 Januar 2022, 10:34:42
Heureka - nach endlosen Fragen, Suchen, Probieren habe ich endlich den Grund gefunden, warum ich keine Icons anzeigen konnte - bzw warum sie ,wenn überhaupt, als gefüllte Rechtecke angezeigt wurden:

Es lag an der Background.PNG nachdem ich eine neue mit xGIMP(Android) erzeugt habe funktionieren nun auch Icons wie gewünscht.
ich hänge hier mal die beiden PNGs an:
displayBackground.png ist die defekte
displayBackground3.png funktioniert
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 04 Januar 2022, 14:56:25
Zitat von: Borkk am 02 Januar 2022, 16:27:32

Ich habe folgende Änderungen in epd7in5_HD.h vorgenommen:
...
Der Fehler
2022.01.02 16:23:33 1: ep_flur: problems with communication to device, max retries (0) reached

am Ende der Übertragung kommt weiterhin und leider ist die Darstellung nicht korrekt.

Diese Änderung soll gegen das Einfrieren des ESP nach einigen Tagen helfen.

Ich schätze, die Übertragungsfehler müssen im FHEM-Module ESPEink gefixt werden. Ich vermisse dort für dein Display den korrekten Typen, imo müsste es "7.5inch_e-Paper_HD" sein, es gibt jedoch nur die B-Version zur Auswahl. Das hatte sich in der Firmware zwischenzeitlich mal geändert (B wurde in die normale Version integriert) - evtl. ist das bereits die Ursache. Müsste sich @eki mal anschauen.
edit Hab nicht richtig gelesen.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 04 Januar 2022, 15:09:13
Zitat von: m.zielinski am 04 Januar 2022, 10:34:42
Heureka - nach endlosen Fragen, Suchen, Probieren habe ich endlich den Grund gefunden, warum ich keine Icons anzeigen konnte - bzw warum sie ,wenn überhaupt, als gefüllte Rechtecke angezeigt wurden:

Es lag an der Background.PNG nachdem ich eine neue mit xGIMP(Android) erzeugt habe funktionieren nun auch Icons wie gewünscht.
ich hänge hier mal die beiden PNGs an:
displayBackground.png ist die defekte
displayBackground3.png funktioniert
Schön, dass es bei dir nun klappt :)
Neben der Pixeldichte unterscheiden sie sich noch im Farbraum. Das funktionierende hat RGB, das nicht funktionierenden nur 16 Farben. Ich verwende die selbe Pixeldichte wie dein defektes Bild, es sollte also am Farbraum liegen.

VG
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 04 Januar 2022, 23:57:32
Zitat von: Jendaw am 04 Januar 2022, 14:56:25
Diese Änderung soll gegen das Einfrieren des ESP nach einigen Tagen helfen.

Ich schätze, die Übertragungsfehler müssen im FHEM-Module ESPEink gefixt werden. Ich vermisse dort für dein Display den korrekten Typen, imo müsste es "7.5inch_e-Paper_HD" sein, es gibt jedoch nur die B-Version zur Auswahl. Das hatte sich in der Firmware zwischenzeitlich mal geändert (B wurde in die normale Version integriert) - evtl. ist das bereits die Ursache. Müsste sich @eki mal anschauen.

Die genaue Bezeichnung lt. Bestellung lautet "Waveshare 17059 7.5inch HD e-Paper (B) (WS3-017059)". Ist das nicht die B Variante ?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 05 Januar 2022, 07:23:21
Zitat von: Borkk am 04 Januar 2022, 23:57:32
Die genaue Bezeichnung lt. Bestellung lautet "Waveshare 17059 7.5inch HD e-Paper (B) (WS3-017059)". Ist das nicht die B Variante ?
Never mind, mein Fehler  :-[
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 09 Januar 2022, 00:31:17
Kurzes Update von mir.

Ich habe den ESP8266 gegen einen ESP32 mit aktueller standard Waveshare software getauscht. Im ESPEink Modul habe ich auf ESP32 umgestellt und siehe da -kein Fehler beim Upload. Der Upload wird sauber mit "Succesfull..." vom Modul zurückgemeldet.

Das erhärtet aus meiner Sicht den Verdacht, das ESPEink nicht lange genug wartet bis der EPS8266 sich "fertig" meldet. Der ESP32 ist da ja ein Stück schneller und schafft das wohl.

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 10 Januar 2022, 10:47:03
Es gibt das Attribut uploadTimeout, damit kann man einstellen, wie lange das Modul auf Antwort auf die REST Anfragen zum Device wartet.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 10 Januar 2022, 20:03:49
Zitat von: eki am 10 Januar 2022, 10:47:03
Es gibt das Attribut uploadTimeout, damit kann man einstellen, wie lange das Modul auf Antwort auf die REST Anfragen zum Device wartet.

Ok, ich hatte das Attribut nicht gesetzt. Aber es löst scheinbar das Problem nicht. Ich habe es bis 120 angehoben und der Fehler kommt immer noch. Zudem kommt jetzt noch ein weiterer Fehler den ich vorher nicht hatte. (Mit ESP8266)

2022.01.10 19:58:22 3: ep_flur: sending HTTP request to http://192.168.23.76/EPD with data: ib
2022.01.10 19:58:45 1: ep_flur: problems with communication to device, max retries (0) reached
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 2525
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3386
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3390
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3391
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3392
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3402
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3403
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3404
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3405
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3406
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3407
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3408
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3409
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3418
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3419
2022.01.10 20:00:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3420
2022.01.10 20:00:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3421
2022.01.10 20:00:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3422
2022.01.10 20:00:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3423
2022.01.10 20:00:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3424
2022.01.10 20:00:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3433
2022.01.10 20:00:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3434
2022.01.10 20:00:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3435
2022.01.10 20:00:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3436
2022.01.10 20:00:26 1: Timeout for ESPEInk_DoConvert reached, terminated process 3437
2022.01.10 20:00:26 1: Timeout for ESPEInk_DoConvert reached, terminated process 3793
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 11 Januar 2022, 09:05:51
Ich habe Dir, glaube ich, den falschen Parameter genannt, sorry. Es gibt grundsätzlich 2 Mechanismen, die in dem Modul mit Timeouts arbeiten:

Erstens die eigentliche Erstellung des Bildes. Damit FHEM vor allem bei größeren Displays nicht hängt, findet das in einem ausgelagerten Hintergrundprozess statt. Hierfür gibt es einen Timeout, der den Prozess killt, falls die Konversion zu lang dauert. Der Default ist hier bei 290 Sekunden (falls die Konversion früher fertig ist, dann ist der Prozess ja sowieso beendet). Den Parameter solltest Du also, vor allem bei großen Displays, eher auf einen recht großen Wert setzen.

Zweitens der Upload des Bildes zum Device. Hierfür gibt es einen zweiten Timeout, der per Default auf 10 Sekunden steht und per Attribut timeout einstellbar ist.

Wenn das Problem tatsächlich die Antwort vom Device ist, dann musst Du timeout höher setzen (beim ESP32 gibt es übrigens gar keine Antwort vom Device, insofern kann es da bei der Kommunikation auch nicht zu Timeouts kommen).
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 11 Januar 2022, 17:24:34
Zitat von: eki am 11 Januar 2022, 09:05:51
Ich habe Dir, glaube ich, den falschen Parameter genannt, sorry. Es gibt grundsätzlich 2 Mechanismen, die in dem Modul mit Timeouts arbeiten:

Erstens die eigentliche Erstellung des Bildes. Damit FHEM vor allem bei größeren Displays nicht hängt, findet das in einem ausgelagerten Hintergrundprozess statt. Hierfür gibt es einen Timeout, der den Prozess killt, falls die Konversion zu lang dauert. Der Default ist hier bei 290 Sekunden (falls die Konversion früher fertig ist, dann ist der Prozess ja sowieso beendet). Den Parameter solltest Du also, vor allem bei großen Displays, eher auf einen recht großen Wert setzen.

Zweitens der Upload des Bildes zum Device. Hierfür gibt es einen zweiten Timeout, der per Default auf 10 Sekunden steht und per Attribut timeout einstellbar ist.

Wenn das Problem tatsächlich die Antwort vom Device ist, dann musst Du timeout höher setzen (beim ESP32 gibt es übrigens gar keine Antwort vom Device, insofern kann es da bei der Kommunikation auch nicht zu Timeouts kommen).

Hallo Eki,

Ich habe in dem Zusammenhang die folgenden Attribute für mein 7,5" an einem ESP8622 gesetzt:


interval = 0 -> ich möchte das nur bei Wechsel der definitierten Readings ein Convert/Upload ausgelöst wird.
maxretries= 0 -> Das Display wird in meinem WLAN immer sauber aufgebaut, somit ist kein retry nötig
mininterval = 40 -> Das Attribut hattest du damals auf meinen Fehler mit den überlagerten Uploads hin gebaut, seitdem wird jeder Upload sauber ausgeführt
uploadTimeout = 60 -> Das Attribut habe ich aufgrund des jüngsten Hinweise hier im Threat gesetzt.


Dann gibt es noch ein Attribut "timeout". Da es noch keine Beschreibung in der Commandref für "uploadTimeout" und "timeout" gibt, ist mir immer noch nicht ganz klar was die Attribute genau beeinflussen.   
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 12 Januar 2022, 10:12:35
Mein Vorschlag (besser erklären als zuvor kann ich es leider nicht  ;)):

Setzte uploadTimeout (das ist der Parameter der für das zuvor erwähnte erste Timeout Thema zuständig ist) auf einen großen Wert (z.B. 300) um genügend Zeit für die Berechnung des "Bildes" zu erlauben und nicht in die "ESPEInk_DoConvert" Timeouts zu laufen.

Setze timeout  (das ist der Parameter der für das zuvor erwähnte zweite Timeout Thema zuständig ist) auf einen größeren Wert als den Default (z.B. 60), dadurch wartet das Modul länger auf die Antwort beim Senden des Bildes zum ESP8266.

Der Rest Deiner Settings ist aus meiner Sicht OK.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 12 Januar 2022, 13:37:07
Zitat von: eki am 12 Januar 2022, 10:12:35
Mein Vorschlag (besser erklären als zuvor kann ich es leider nicht  ;)):

Setzte uploadTimeout (das ist der Parameter der für das zuvor erwähnte erste Timeout Thema zuständig ist) auf einen großen Wert (z.B. 300) um genügend Zeit für die Berechnung des "Bildes" zu erlauben und nicht in die "ESPEInk_DoConvert" Timeouts zu laufen.

Setze timeout  (das ist der Parameter der für das zuvor erwähnte zweite Timeout Thema zuständig ist) auf einen größeren Wert als den Default (z.B. 60), dadurch wartet das Modul länger auf die Antwort beim Senden des Bildes zum ESP8266.

Der Rest Deiner Settings ist aus meiner Sicht OK.

Hallo Eki,
nur damit das klar ist, ich bin sehr froh das du das Modul gebaut hast und es funktioniert super :).
Ich habe jetzt die Timeouts verstanden und so gesetzt wie du sie vorgeschlagen hast. Und siehe da, kaum macht man es richtig, geht es auch. Danke.

Aber wäre es nicht besser die zwei, doch recht wichtigen Attribute "sprechender" zu benennen?

z.B. 
uploadTimeout -> convertTimeout
timeout -> uploadTimeout
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 12 Januar 2022, 21:01:11
Ja, das hatte ich auch schon überlegt, bin mir aber nicht sicher, ob das dann nicht irgendwelche Einstellungen bei bestehenden Installationen kaputt macht. Ich Probier bei mir mal aus, wie sich das verhält.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 25 Januar 2022, 00:26:32
Hallo Zusammen,

Ich würde gerne die Uhrzeit des letzten Uploads auf´s Display schreiben. Dazu haben ich 2 Fragen:

1.) kann ich das Reading "updatestart" welches Datum und Uhrzeit im Unix.Style enthält vie userReadings im als lesbare Uhrzeit darstellen?
2.) wie kann ich verhindern, das durch verändern dieses Reading kein neuer Upload angestoßen wird? (das wäre dann ja eine Endlosschleife)

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 25 Januar 2022, 08:03:21
1. Ja, das müsste gehen.
attr <device> userReadings lastUpdate:updatestart.* {ReadingsTimestamp($NAME,"updatestart","");}

2. Wahrscheinlich müsstest Du das lastUpdate mit event-on-change-reading ausschließen
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 25 Januar 2022, 10:20:14
Zitat von: eki am 25 Januar 2022, 08:03:21
1. Ja, das müsste gehen.
attr <device> userReadings lastUpdate:updatestart.* {ReadingsTimestamp($NAME,"updatestart","");}

2. Wahrscheinlich müsstest Du das lastUpdate mit event-on-change-reading ausschließen

So ähnlich nutze ich es auch. Ich habe mir dazu ein DOIF erstellt, welches minütlich die Uhrzeit schön formatiert (ich verwende diese noch an anderen Stellen):


define system_time DOIF ([+:01]) (
    {fhem 'setreading system_time time '.strftime('%H:%M', localtime)}
    {fhem 'setreading system_time date '.strftime('%d. %B %Y', localtime)}
    {fhem 'setreading system_time date_w '.strftime('%A, %d. %b', localtime)}
    {fhem 'setreading system_time date_time '.strftime('%d. %B %H:%M', localtime)}
    {fhem 'setreading system_time date_time_s '.strftime('%d. %b %H:%M', localtime)}
)
attr system_time do always
attr system_time event-on-change-reading (state|date)
attr system_time stateFormat date_time
attr system_time userReadings time date date_w date_time date_time_s


Für die Zeit im Display nutze ich dann date_time.

HTH
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 25 Januar 2022, 14:54:22
Zitat von: eki am 25 Januar 2022, 08:03:21
1. Ja, das müsste gehen.
attr <device> userReadings lastUpdate:updatestart.* {ReadingsTimestamp($NAME,"updatestart","");}

2. Wahrscheinlich müsstest Du das lastUpdate mit event-on-change-reading ausschließen

Das userReadings klappt schon mal, Danke. Es drängt sich natürlich die Frage auf, warum die Umrechnung nicht gleich im Modul geschieht, so dass das Reading direkt "lesbar" ist  ;)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 25 Januar 2022, 14:58:25
Zitat von: Jendaw am 25 Januar 2022, 10:20:14
So ähnlich nutze ich es auch. Ich habe mir dazu ein DOIF erstellt, welches minütlich die Uhrzeit schön formatiert (ich verwende diese noch an anderen Stellen):


define system_time DOIF ([+:01]) (
    {fhem 'setreading system_time time '.strftime('%H:%M', localtime)}
    {fhem 'setreading system_time date '.strftime('%d. %B %Y', localtime)}
    {fhem 'setreading system_time date_w '.strftime('%A, %d. %b', localtime)}
    {fhem 'setreading system_time date_time '.strftime('%d. %B %H:%M', localtime)}
    {fhem 'setreading system_time date_time_s '.strftime('%d. %b %H:%M', localtime)}
)
attr system_time do always
attr system_time event-on-change-reading (state|date)
attr system_time stateFormat date_time
attr system_time userReadings time date date_w date_time date_time_s


Für die Zeit im Display nutze ich dann date_time.

HTH

Ich bin zwar bisher mit DOIF nicht warm geworden, aber das Ding ist super. Danke  :) Macht genau das was ich will.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 30 Januar 2022, 22:46:03
Hallo Zusammen,

das 7,5 inch Display läuft nun wie ein Uhrwerk, ohne Fehlermeldungen. Super. Ich habe nun ein 2. Display 2,9 Inch (B) konfiguriert. Es funktioniert grundsätzlich ich habe aber eine Frage und eine Beobachtung:

Erst mal die Beobachtung:
Seit dem ESPEInk jetzt 2 Displays bedient, hab ich beobachtet, das das 7,5" manchmal "unsauber" aufgebaut wird. Also eine total verzerrte Darstellung. Mit dem nächsten Upload ist es dann wieder ok. Könnte es theoretisch sein das ESPEink "durcheinander" kommt, wenn sich 2 Uploads zeitlich überschneiden? Ich habe mir erst mal geholfen, indem ich das 2. Display über eine 2. FHEM Docker Instanz laufen lassen. (die ich sowieso am laufen habe)

Dann die Frage:
Ich hab das 2,9" Display auch an ein einem Waveshare ESP8266 angeschlossen. Das Modul unterschiedet sich zu dem, welches ich schon einsetze, das er nur einen Schiebeschalter hat (A/B), während das andere 2 Reihen DIP Schalter hat. Bei dem ESP mit einem Schalter muss beim Boot den RST (D4/GPIO2) abziehen, damit er korrekt startet. Danach kann ich den Pin anschließen. Lasse ich den RST gesteckt, läuft nur Unsinn über den Seriell Monitor und der ESP startet nicht sauber.

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 31 Januar 2022, 07:39:21
Grundsätzlich sollte das mit mehreren displays funktionieren. Die Berechnung der Bilder und der Upload laufen ja als Hintergrundprozesse nebeneinander her. Allerdings kann ich das bei mir nicht testen, da ich nur ein Display habe.
Eine Frage. Wenn das 7.5 Zoll Display ein fehlerhaftes Bild hat, wird dann auch im FHEM Web bei dem Display ein fehlerhaftes Bild angezeigt?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Jendaw am 31 Januar 2022, 08:27:56
Zitat von: eki am 31 Januar 2022, 07:39:21
Grundsätzlich sollte das mit mehreren displays funktionieren. Die Berechnung der Bilder und der Upload laufen ja als Hintergrundprozesse nebeneinander her. Allerdings kann ich das bei mir nicht testen, da ich nur ein Display habe.
Eine Frage. Wenn das 7.5 Zoll Display ein fehlerhaftes Bild hat, wird dann auch im FHEM Web bei dem Display ein fehlerhaftes Bild angezeigt?
Jetzt, wo es von @Borkk erwähnt wird - es genügt, wenn bereits ein zweites ESPEInk-Device dafür angelegt ist, ein Display muss nicht angeschlossen/erreichbar sein. Ich dachte bisher, dass es am nicht angeschlossenen Display liegt (welches noch auf dem Basteltisch liegt). Ob das berechnete Bild bei mir fehlerhaft ist, muss ich beobachten.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 31 Januar 2022, 09:13:51
Zitat von: eki am 31 Januar 2022, 07:39:21
Grundsätzlich sollte das mit mehreren displays funktionieren. Die Berechnung der Bilder und der Upload laufen ja als Hintergrundprozesse nebeneinander her. Allerdings kann ich das bei mir nicht testen, da ich nur ein Display habe.
Eine Frage. Wenn das 7.5 Zoll Display ein fehlerhaftes Bild hat, wird dann auch im FHEM Web bei dem Display ein fehlerhaftes Bild angezeigt?

Das habe ich nicht überprüft. Ich kann nur sagen, das ich beim Konvertieren noch nie ein verschobenes Bild hatte. Ich versuche das mal zu rekonstruieren. Das Problem ist, dass sich das "verschobene" Bilde nicht gezielt provozieren lässt. 
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 03 Februar 2022, 12:00:04
Zitat von: Borkk am 30 Januar 2022, 22:46:03
Dann die Frage:
Ich hab das 2,9" Display auch an ein einem Waveshare ESP8266 angeschlossen. Das Modul unterschiedet sich zu dem, welches ich schon einsetze, das er nur einen Schiebeschalter hat (A/B), während das andere 2 Reihen DIP Schalter hat. Bei dem ESP mit einem Schalter muss beim Boot den RST (D4/GPIO2) abziehen, damit er korrekt startet. Danach kann ich den Pin anschließen. Lasse ich den RST gesteckt, läuft nur Unsinn über den Seriell Monitor und der ESP startet nicht sauber.

Darf ich nochmal auf meine Frage hinweisen. Hat einer dazu eine Idee?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 16 März 2022, 00:50:16
Hallo eki,

eigentlich laufen meine beiden ePaper wie ein Uhrwerk, dennoch bekomme ich seit einiger Zeit immer diese Meldungen ins Log:

2022.03.16 00:03:35 1: Timeout for ESPEInk_DoConvert reached, terminated process 1610196
2022.03.16 00:03:35 1: Timeout for ESPEInk_DoConvert reached, terminated process 1610203
2022.03.16 00:03:43 1: Timeout for ESPEInk_DoConvert reached, terminated process 1610351
2022.03.16 00:03:43 1: Timeout for ESPEInk_DoConvert reached, terminated process 1610352
2022.03.16 00:03:43 1: Timeout for ESPEInk_DoConvert reached, terminated process 1610353
2022.03.16 00:03:45 1: Timeout for ESPEInk_DoConvert reached, terminated process 1610387
2022.03.16 00:03:45 1: Timeout for ESPEInk_DoConvert reached, terminated process 1610388
2022.03.16 00:03:45 1: Timeout for ESPEInk_DoConvert reached, terminated process 1610389
2022.03.16 00:04:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 1610678
2022.03.16 00:04:57 1: Timeout for ESPEInk_DoConvert reached, terminated process 1611573
2022.03.16 00:08:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 1615359
2022.03.16 00:08:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 1615456
2022.03.16 00:16:01 1: Timeout for ESPEInk_DoConvert reached, terminated process 1622521
2022.03.16 00:16:14 1: Timeout for ESPEInk_DoConvert reached, terminated process 1622747
2022.03.16 00:16:14 1: Timeout for ESPEInk_DoConvert reached, terminated process 1622748
2022.03.16 00:16:14 1: Timeout for ESPEInk_DoConvert reached, terminated process 1622749
2022.03.16 00:16:46 1: Timeout for ESPEInk_DoConvert reached, terminated process 1623301
2022.03.16 00:16:46 1: Timeout for ESPEInk_DoConvert reached, terminated process 1623302
2022.03.16 00:16:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 1623303
2022.03.16 00:16:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 1623320


Ich habe schon mit den Intervallen rumgespielt, aber irgendwie bekomme ich das nicht weg. Wenn ich den Eintrag richtig interpretiere, wird der Convert Timeout überschritten. Allerdings dauert das nur ca. 3sec wenn ich es manuell auslöse.

Bei dem kleinen Display habe ich folgende Werte gesetzt:

maxretries =0
mininterval = 20
timeout =60
uploadTimeout= 20
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 16 März 2022, 16:29:36
Die Meldung kommt aus der BlockingCall Funktion (nicht direkt aus dem Modul sondern durch einen Aufruf con BlockingCall). Das tritt dann auf, wenn uploadTimeout (default ist 290 s) zu kurz für die Konvertierung ist (ich weiß, uploadTimeout ist irreführend, habe ich bisher noch nicht geändert, weil ich nicht so recht weiß, wie ich das ohne Rückwärtskompatibilitätsprobleme machen soll).
Man kann eigentlich den Parameter ruhig großzügig setzen, wenn die Konvertierung schneller geht, dann hat der Timeout keine große Bedeutung, nur wenn es zu lange dauert, und Du gleichzeitig in kurzen Abständen aktualisierst (interval oder häufige event Triggers), dann laufen viele Prozesse parallel, was eventuell zu Speicher- oder Performanceproblemen führen kann.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 20 März 2022, 18:35:45
Hallo Eki,

ich habe jetzt die Werte für mein 2,9" Display wie folgt angepasst:


maxretries =0
mininterval =40
timeout = 60
uploadTimeout= 330


Im Ergebnis haut mir das Modul jetzt noch mehr Meldungen in mein eigentlich sauberes LOG. Mein anderes 7,5" E-Paper produziert mit den gleichen Einträgen kein Log Eintrag. Es ist auch so, das beide Displays schon seit Wochen völlig fehlerfrei laufen. Auch nach einem Neustart von FHEM nach einem Update.


2022.03.20 00:00:01 2: Deleting fhem-2022-03-12.log
2022.03.20 00:02:24 1: Timeout for ESPEInk_DoConvert reached, terminated process 3132617
2022.03.20 00:02:24 1: Timeout for ESPEInk_DoConvert reached, terminated process 3132618
2022.03.20 00:02:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3132850
2022.03.20 00:02:41 1: Timeout for ESPEInk_DoConvert reached, terminated process 3132909
2022.03.20 00:02:41 1: Timeout for ESPEInk_DoConvert reached, terminated process 3132917
2022.03.20 00:02:41 1: Timeout for ESPEInk_DoConvert reached, terminated process 3132919
2022.03.20 00:03:33 1: Timeout for ESPEInk_DoConvert reached, terminated process 3133766
2022.03.20 00:11:05 1: Timeout for ESPEInk_DoConvert reached, terminated process 3141217
2022.03.20 00:11:32 1: Timeout for ESPEInk_DoConvert reached, terminated process 3141659
2022.03.20 00:11:32 1: Timeout for ESPEInk_DoConvert reached, terminated process 3141660
2022.03.20 00:12:33 1: Timeout for ESPEInk_DoConvert reached, terminated process 3142666
2022.03.20 00:21:24 1: Timeout for ESPEInk_DoConvert reached, terminated process 3151460
2022.03.20 00:22:32 1: Timeout for ESPEInk_DoConvert reached, terminated process 3152580
2022.03.20 00:22:32 1: Timeout for ESPEInk_DoConvert reached, terminated process 3152581
2022.03.20 00:22:32 1: Timeout for ESPEInk_DoConvert reached, terminated process 3152582
2022.03.20 00:31:01 1: Timeout for ESPEInk_DoConvert reached, terminated process 3160987
2022.03.20 00:31:01 1: Timeout for ESPEInk_DoConvert reached, terminated process 3160988
2022.03.20 00:31:27 1: Timeout for ESPEInk_DoConvert reached, terminated process 3161406
2022.03.20 00:31:48 1: Timeout for ESPEInk_DoConvert reached, terminated process 3161759
2022.03.20 00:31:55 1: Timeout for ESPEInk_DoConvert reached, terminated process 3161866
2022.03.20 00:31:55 1: Timeout for ESPEInk_DoConvert reached, terminated process 3161867
2022.03.20 00:32:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 00:42:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 00:45:59 1: Timeout for ESPEInk_DoConvert reached, terminated process 3175866
2022.03.20 00:45:59 1: Timeout for ESPEInk_DoConvert reached, terminated process 3175867
2022.03.20 00:46:40 1: Timeout for ESPEInk_DoConvert reached, terminated process 3176557
2022.03.20 00:54:45 1: Timeout for ESPEInk_DoConvert reached, terminated process 3184617
2022.03.20 00:55:35 1: Timeout for ESPEInk_DoConvert reached, terminated process 3185472
2022.03.20 00:56:07 1: Timeout for ESPEInk_DoConvert reached, terminated process 3185985
2022.03.20 00:56:19 1: Timeout for ESPEInk_DoConvert reached, terminated process 3186203
2022.03.20 01:02:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 01:04:50 1: Timeout for ESPEInk_DoConvert reached, terminated process 3194706
2022.03.20 01:04:56 1: Timeout for ESPEInk_DoConvert reached, terminated process 3194797
2022.03.20 01:14:21 1: Timeout for ESPEInk_DoConvert reached, terminated process 3204225
2022.03.20 01:14:21 1: Timeout for ESPEInk_DoConvert reached, terminated process 3204226
2022.03.20 01:15:15 1: Timeout for ESPEInk_DoConvert reached, terminated process 3205127
2022.03.20 01:16:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 3206326
2022.03.20 01:16:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 3206327
2022.03.20 01:16:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 3206328
2022.03.20 01:16:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 3206329
2022.03.20 01:22:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 01:25:10 1: Timeout for ESPEInk_DoConvert reached, terminated process 3214916
2022.03.20 01:25:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 3215406
2022.03.20 01:26:15 1: Timeout for ESPEInk_DoConvert reached, terminated process 3216022
2022.03.20 01:26:15 1: Timeout for ESPEInk_DoConvert reached, terminated process 3216023
2022.03.20 01:26:15 1: Timeout for ESPEInk_DoConvert reached, terminated process 3216024
2022.03.20 01:26:15 1: Timeout for ESPEInk_DoConvert reached, terminated process 3216025
2022.03.20 01:31:36 1: Timeout for ESPEInk_DoConvert reached, terminated process 3221313
2022.03.20 01:31:36 1: Timeout for ESPEInk_DoConvert reached, terminated process 3221314
2022.03.20 01:32:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 01:35:21 1: Timeout for ESPEInk_DoConvert reached, terminated process 3225038
2022.03.20 01:35:31 1: Timeout for ESPEInk_DoConvert reached, terminated process 3225193
2022.03.20 01:35:36 1: Timeout for ESPEInk_DoConvert reached, terminated process 3225297
2022.03.20 01:35:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3225468
2022.03.20 01:42:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 01:45:35 1: Timeout for ESPEInk_DoConvert reached, terminated process 3235220
2022.03.20 01:45:35 1: Timeout for ESPEInk_DoConvert reached, terminated process 3235221
2022.03.20 01:45:49 1: Timeout for ESPEInk_DoConvert reached, terminated process 3235441
2022.03.20 01:45:56 1: Timeout for ESPEInk_DoConvert reached, terminated process 3235578
2022.03.20 01:45:56 1: Timeout for ESPEInk_DoConvert reached, terminated process 3235579
2022.03.20 01:46:39 1: Timeout for ESPEInk_DoConvert reached, terminated process 3236290
2022.03.20 01:52:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 01:55:36 1: Timeout for ESPEInk_DoConvert reached, terminated process 3245125
2022.03.20 01:55:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3245326
2022.03.20 01:55:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3245327
2022.03.20 01:55:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3245328
2022.03.20 01:55:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3245329
2022.03.20 01:55:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3245330
2022.03.20 01:55:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3245331
2022.03.20 01:56:00 1: Timeout for ESPEInk_DoConvert reached, terminated process 3245556
2022.03.20 01:56:00 1: Timeout for ESPEInk_DoConvert reached, terminated process 3245557
2022.03.20 01:56:00 1: Timeout for ESPEInk_DoConvert reached, terminated process 3245558
2022.03.20 02:05:39 1: Timeout for ESPEInk_DoConvert reached, terminated process 3255122
2022.03.20 02:05:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3255300
2022.03.20 02:06:00 1: Timeout for ESPEInk_DoConvert reached, terminated process 3255469
2022.03.20 02:06:08 1: Timeout for ESPEInk_DoConvert reached, terminated process 3255593
2022.03.20 02:06:08 1: Timeout for ESPEInk_DoConvert reached, terminated process 3255594
2022.03.20 02:15:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3264978
2022.03.20 02:15:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3265163
2022.03.20 02:15:54 1: Timeout for ESPEInk_DoConvert reached, terminated process 3265270
2022.03.20 02:16:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3265422
2022.03.20 02:21:53 1: Timeout for ESPEInk_DoConvert reached, terminated process 3271213
2022.03.20 02:22:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 02:30:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3279899
2022.03.20 02:30:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3279900
2022.03.20 02:30:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3279901
2022.03.20 02:30:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3279907
2022.03.20 02:31:06 1: Timeout for ESPEInk_DoConvert reached, terminated process 3280374
2022.03.20 02:31:06 1: Timeout for ESPEInk_DoConvert reached, terminated process 3280378
2022.03.20 02:31:06 1: Timeout for ESPEInk_DoConvert reached, terminated process 3280379
2022.03.20 02:45:00 2: DbLog DBLogging - WARNING - "reduceLogNbl" is outdated. Please consider use of DbRep "set <Name> reduceLog" instead.
2022.03.20 02:45:36 1: Timeout for ESPEInk_DoConvert reached, terminated process 3294738
2022.03.20 02:45:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3294739
2022.03.20 02:45:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3294756
2022.03.20 02:45:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3294757
2022.03.20 02:45:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3294758
2022.03.20 02:45:49 1: Timeout for ESPEInk_DoConvert reached, terminated process 3294968
2022.03.20 02:45:53 1: Timeout for ESPEInk_DoConvert reached, terminated process 3295035
2022.03.20 02:45:53 1: Timeout for ESPEInk_DoConvert reached, terminated process 3295036
2022.03.20 02:45:53 1: Timeout for ESPEInk_DoConvert reached, terminated process 3295037
2022.03.20 02:45:57 1: Timeout for ESPEInk_DoConvert reached, terminated process 3295103
2022.03.20 02:54:32 1: Timeout for ESPEInk_DoConvert reached, terminated process 3303591
2022.03.20 02:55:44 1: Timeout for ESPEInk_DoConvert reached, terminated process 3304756
2022.03.20 02:55:44 1: Timeout for ESPEInk_DoConvert reached, terminated process 3304757
2022.03.20 02:56:17 1: Timeout for ESPEInk_DoConvert reached, terminated process 3305317
2022.03.20 02:56:36 1: Timeout for ESPEInk_DoConvert reached, terminated process 3305638
2022.03.20 03:02:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 03:04:48 1: Timeout for ESPEInk_DoConvert reached, terminated process 3313798
2022.03.20 03:04:55 1: Timeout for ESPEInk_DoConvert reached, terminated process 3313935
2022.03.20 03:05:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3314225
2022.03.20 03:14:17 1: Timeout for ESPEInk_DoConvert reached, terminated process 3323373
2022.03.20 03:15:07 1: Timeout for ESPEInk_DoConvert reached, terminated process 3324200
2022.03.20 03:15:17 2: ESPEasy ESPBridge: read from http://192.168.23.73:80 timed out [set oled1 oled 3,1,Temp%3a]
2022.03.20 03:15:19 2: ESPEasy ESPBridge: read from http://192.168.23.73:80 timed out [set oled1 oled 3,7,21%2e6%20%c2%b0C]
2022.03.20 03:15:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 3324560
2022.03.20 03:15:40 2: ESPEasy ESPBridge: read from http://192.168.23.73:80 timed out [set oled1 oled 3,1,Temp%3a]
2022.03.20 03:15:41 2: ESPEasy ESPBridge: read from http://192.168.23.73:80 timed out [set oled1 oled 3,7,21%2e6%20%c2%b0C]
2022.03.20 03:15:43 2: ESPEasy ESPBridge: read from http://192.168.23.73:80 timed out [set oled1 oled 4,1,Luft%3a]
2022.03.20 03:16:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 3325570
2022.03.20 03:16:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 3325571
2022.03.20 03:16:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 3325572
2022.03.20 03:16:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 3325573
2022.03.20 03:16:40 1: Timeout for ESPEInk_DoConvert reached, terminated process 3325791
2022.03.20 03:24:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3333942
2022.03.20 03:24:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3333943
2022.03.20 03:25:06 1: Timeout for ESPEInk_DoConvert reached, terminated process 3334265
2022.03.20 03:25:25 1: Timeout for ESPEInk_DoConvert reached, terminated process 3334587
2022.03.20 03:25:29 1: Timeout for ESPEInk_DoConvert reached, terminated process 3334650
2022.03.20 03:25:29 1: Timeout for ESPEInk_DoConvert reached, terminated process 3334654
2022.03.20 03:35:22 1: Timeout for ESPEInk_DoConvert reached, terminated process 3344599
2022.03.20 03:35:36 1: Timeout for ESPEInk_DoConvert reached, terminated process 3344818
2022.03.20 03:35:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3344819
2022.03.20 03:45:20 1: Timeout for ESPEInk_DoConvert reached, terminated process 3354614
2022.03.20 03:45:43 1: Timeout for ESPEInk_DoConvert reached, terminated process 3355001
2022.03.20 03:45:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3355090
2022.03.20 03:46:21 1: Timeout for ESPEInk_DoConvert reached, terminated process 3355644
2022.03.20 03:46:21 1: Timeout for ESPEInk_DoConvert reached, terminated process 3355645
2022.03.20 03:46:21 1: Timeout for ESPEInk_DoConvert reached, terminated process 3355646
2022.03.20 03:55:31 1: Timeout for ESPEInk_DoConvert reached, terminated process 3365259
2022.03.20 03:55:31 1: Timeout for ESPEInk_DoConvert reached, terminated process 3365260
2022.03.20 03:55:44 1: Timeout for ESPEInk_DoConvert reached, terminated process 3365463
2022.03.20 03:55:49 1: Timeout for ESPEInk_DoConvert reached, terminated process 3365567
2022.03.20 03:55:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3365601
2022.03.20 03:55:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3365602
2022.03.20 04:05:26 1: Timeout for ESPEInk_DoConvert reached, terminated process 3375228
2022.03.20 04:05:26 1: Timeout for ESPEInk_DoConvert reached, terminated process 3375229
2022.03.20 04:05:40 1: Timeout for ESPEInk_DoConvert reached, terminated process 3375471
2022.03.20 04:12:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 04:15:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 3385358
2022.03.20 04:15:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 3385359
2022.03.20 04:15:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 3385368
2022.03.20 04:15:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 3385369
2022.03.20 04:15:44 1: Timeout for ESPEInk_DoConvert reached, terminated process 3385611
2022.03.20 04:15:46 1: Timeout for ESPEInk_DoConvert reached, terminated process 3385645
2022.03.20 04:15:46 1: Timeout for ESPEInk_DoConvert reached, terminated process 3385646
2022.03.20 04:17:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 04:33:07 1: Timeout for ESPEInk_DoConvert reached, terminated process 3403030
2022.03.20 04:33:07 1: Timeout for ESPEInk_DoConvert reached, terminated process 3403031
2022.03.20 04:33:07 1: Timeout for ESPEInk_DoConvert reached, terminated process 3403032
2022.03.20 04:33:17 1: Timeout for ESPEInk_DoConvert reached, terminated process 3403217
2022.03.20 04:33:36 1: Timeout for ESPEInk_DoConvert reached, terminated process 3403540
2022.03.20 04:39:18 1: Timeout for ESPEInk_DoConvert reached, terminated process 3409148
2022.03.20 04:51:04 1: Timeout for ESPEInk_DoConvert reached, terminated process 3420772
2022.03.20 04:51:04 1: Timeout for ESPEInk_DoConvert reached, terminated process 3420773
2022.03.20 04:51:06 1: Timeout for ESPEInk_DoConvert reached, terminated process 3420807
2022.03.20 04:55:39 1: Timeout for ESPEInk_DoConvert reached, terminated process 3425307
2022.03.20 04:55:40 1: Timeout for ESPEInk_DoConvert reached, terminated process 3425308
2022.03.20 04:55:40 1: Timeout for ESPEInk_DoConvert reached, terminated process 3425325
2022.03.20 05:04:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3433796
2022.03.20 05:04:22 1: Timeout for ESPEInk_DoConvert reached, terminated process 3433950
2022.03.20 05:05:35 1: Timeout for ESPEInk_DoConvert reached, terminated process 3435180
2022.03.20 05:05:42 1: Timeout for ESPEInk_DoConvert reached, terminated process 3435287
2022.03.20 05:14:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3443728
2022.03.20 05:14:24 1: Timeout for ESPEInk_DoConvert reached, terminated process 3443915
2022.03.20 05:14:33 1: Timeout for ESPEInk_DoConvert reached, terminated process 3444085
2022.03.20 05:14:39 1: Timeout for ESPEInk_DoConvert reached, terminated process 3444176
2022.03.20 05:24:31 1: Timeout for ESPEInk_DoConvert reached, terminated process 3453961
2022.03.20 05:24:41 1: Timeout for ESPEInk_DoConvert reached, terminated process 3454116
2022.03.20 05:24:52 1: Timeout for ESPEInk_DoConvert reached, terminated process 3454318
2022.03.20 05:32:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 05:34:45 1: Timeout for ESPEInk_DoConvert reached, terminated process 3464088
2022.03.20 05:35:13 1: Timeout for ESPEInk_DoConvert reached, terminated process 3464584
2022.03.20 05:44:43 1: Timeout for ESPEInk_DoConvert reached, terminated process 3473927
2022.03.20 05:45:06 1: Timeout for ESPEInk_DoConvert reached, terminated process 3474308
2022.03.20 05:45:08 1: Timeout for ESPEInk_DoConvert reached, terminated process 3474339
2022.03.20 05:45:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3474435
2022.03.20 05:47:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 05:54:57 1: Timeout for ESPEInk_DoConvert reached, terminated process 3484066
2022.03.20 06:04:42 1: Timeout for ESPEInk_DoConvert reached, terminated process 3493663
2022.03.20 06:04:52 1: Timeout for ESPEInk_DoConvert reached, terminated process 3493817
2022.03.20 06:04:52 1: Timeout for ESPEInk_DoConvert reached, terminated process 3493818
2022.03.20 06:05:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3494019
2022.03.20 06:05:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3494020
2022.03.20 06:05:07 1: Timeout for ESPEInk_DoConvert reached, terminated process 3494078
2022.03.20 06:14:48 1: Timeout for ESPEInk_DoConvert reached, terminated process 3503637
2022.03.20 06:14:48 1: Timeout for ESPEInk_DoConvert reached, terminated process 3503638
2022.03.20 06:15:06 1: Timeout for ESPEInk_DoConvert reached, terminated process 3503943
2022.03.20 06:15:06 1: Timeout for ESPEInk_DoConvert reached, terminated process 3503944
2022.03.20 06:15:16 1: Timeout for ESPEInk_DoConvert reached, terminated process 3504099
2022.03.20 06:25:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3513782
2022.03.20 06:25:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3513783
2022.03.20 06:25:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3513784
2022.03.20 06:25:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3513785
2022.03.20 06:25:15 1: Timeout for ESPEInk_DoConvert reached, terminated process 3513964
2022.03.20 06:25:26 1: Timeout for ESPEInk_DoConvert reached, terminated process 3514150
2022.03.20 06:25:26 1: Timeout for ESPEInk_DoConvert reached, terminated process 3514167
2022.03.20 06:25:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 3514233
2022.03.20 06:34:52 1: Timeout for ESPEInk_DoConvert reached, terminated process 3523507
2022.03.20 06:35:06 1: Timeout for ESPEInk_DoConvert reached, terminated process 3523749
2022.03.20 06:35:14 1: Timeout for ESPEInk_DoConvert reached, terminated process 3523881
2022.03.20 06:44:58 1: Timeout for ESPEInk_DoConvert reached, terminated process 3533513
2022.03.20 06:45:19 1: Timeout for ESPEInk_DoConvert reached, terminated process 3533867
2022.03.20 06:45:19 1: Timeout for ESPEInk_DoConvert reached, terminated process 3533868
2022.03.20 06:45:19 1: Timeout for ESPEInk_DoConvert reached, terminated process 3533869
2022.03.20 06:45:27 1: Timeout for ESPEInk_DoConvert reached, terminated process 3534022
2022.03.20 06:55:25 1: Timeout for ESPEInk_DoConvert reached, terminated process 3543904
2022.03.20 06:55:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3544082
2022.03.20 06:55:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3544083
2022.03.20 06:55:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3544084
2022.03.20 06:55:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3544090
2022.03.20 06:55:41 1: Timeout for ESPEInk_DoConvert reached, terminated process 3544152
2022.03.20 06:55:48 1: Timeout for ESPEInk_DoConvert reached, terminated process 3544288
2022.03.20 06:57:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 07:05:34 1: Timeout for ESPEInk_DoConvert reached, terminated process 3553953
2022.03.20 07:05:34 1: Timeout for ESPEInk_DoConvert reached, terminated process 3553954
2022.03.20 07:05:59 1: Timeout for ESPEInk_DoConvert reached, terminated process 3554364
2022.03.20 07:05:59 1: Timeout for ESPEInk_DoConvert reached, terminated process 3554365
2022.03.20 07:06:00 1: Timeout for ESPEInk_DoConvert reached, terminated process 3554366
2022.03.20 07:06:00 1: Timeout for ESPEInk_DoConvert reached, terminated process 3554383
2022.03.20 07:06:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3554433
2022.03.20 07:06:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3554434
2022.03.20 07:07:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 07:15:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 3563821
2022.03.20 07:15:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 3563822
2022.03.20 07:15:40 1: Timeout for ESPEInk_DoConvert reached, terminated process 3563977
2022.03.20 07:15:45 1: Timeout for ESPEInk_DoConvert reached, terminated process 3564051
2022.03.20 07:15:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3564179
2022.03.20 07:15:52 1: Timeout for ESPEInk_DoConvert reached, terminated process 3564180
2022.03.20 07:15:52 1: Timeout for ESPEInk_DoConvert reached, terminated process 3564197
2022.03.20 07:25:31 1: Timeout for ESPEInk_DoConvert reached, terminated process 3573760
2022.03.20 07:25:31 1: Timeout for ESPEInk_DoConvert reached, terminated process 3573761
2022.03.20 07:25:31 1: Timeout for ESPEInk_DoConvert reached, terminated process 3573768
2022.03.20 07:25:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3574100
2022.03.20 07:25:56 1: Timeout for ESPEInk_DoConvert reached, terminated process 3574167
2022.03.20 07:25:56 1: Timeout for ESPEInk_DoConvert reached, terminated process 3574184
2022.03.20 07:35:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3583758
2022.03.20 07:35:50 1: Timeout for ESPEInk_DoConvert reached, terminated process 3583953
2022.03.20 07:35:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3583954
2022.03.20 07:42:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 07:45:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 3593463
2022.03.20 07:45:39 1: Timeout for ESPEInk_DoConvert reached, terminated process 3593664
2022.03.20 07:45:39 1: Timeout for ESPEInk_DoConvert reached, terminated process 3593665
2022.03.20 07:45:41 1: Timeout for ESPEInk_DoConvert reached, terminated process 3593691
2022.03.20 07:45:44 1: Timeout for ESPEInk_DoConvert reached, terminated process 3593749
2022.03.20 07:45:45 1: Timeout for ESPEInk_DoConvert reached, terminated process 3593750
2022.03.20 07:52:11 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 07:55:23 1: Timeout for ESPEInk_DoConvert reached, terminated process 3603283
2022.03.20 07:55:34 1: Timeout for ESPEInk_DoConvert reached, terminated process 3603453
2022.03.20 07:55:39 1: Timeout for ESPEInk_DoConvert reached, terminated process 3603559
2022.03.20 07:55:50 1: Timeout for ESPEInk_DoConvert reached, terminated process 3603729
2022.03.20 07:55:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3603730
2022.03.20 07:55:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3603747
2022.03.20 08:05:54 1: Timeout for ESPEInk_DoConvert reached, terminated process 3613673
2022.03.20 08:06:08 1: Timeout for ESPEInk_DoConvert reached, terminated process 3613922
2022.03.20 08:15:45 1: Timeout for ESPEInk_DoConvert reached, terminated process 3623441
2022.03.20 08:15:56 1: Timeout for ESPEInk_DoConvert reached, terminated process 3623612
2022.03.20 08:16:04 1: Timeout for ESPEInk_DoConvert reached, terminated process 3623764
2022.03.20 08:16:10 1: Timeout for ESPEInk_DoConvert reached, terminated process 3623854
2022.03.20 08:16:11 1: Timeout for ESPEInk_DoConvert reached, terminated process 3623855
2022.03.20 08:16:11 1: Timeout for ESPEInk_DoConvert reached, terminated process 3623873
2022.03.20 08:25:45 1: Timeout for ESPEInk_DoConvert reached, terminated process 3633335
2022.03.20 08:25:58 1: Timeout for ESPEInk_DoConvert reached, terminated process 3633530
2022.03.20 08:25:58 1: Timeout for ESPEInk_DoConvert reached, terminated process 3633536
2022.03.20 08:26:11 1: Timeout for ESPEInk_DoConvert reached, terminated process 3633764
2022.03.20 08:26:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3633765
2022.03.20 08:26:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3633782
2022.03.20 08:26:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3633783
2022.03.20 08:26:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3633784
2022.03.20 08:36:01 1: Timeout for ESPEInk_DoConvert reached, terminated process 3643507
2022.03.20 08:36:11 1: Timeout for ESPEInk_DoConvert reached, terminated process 3643692
2022.03.20 08:36:20 1: Timeout for ESPEInk_DoConvert reached, terminated process 3643830
2022.03.20 08:36:20 1: Timeout for ESPEInk_DoConvert reached, terminated process 3643831
2022.03.20 08:36:22 1: Timeout for ESPEInk_DoConvert reached, terminated process 3643865
2022.03.20 08:45:39 1: Timeout for ESPEInk_DoConvert reached, terminated process 3653078
2022.03.20 08:45:55 1: Timeout for ESPEInk_DoConvert reached, terminated process 3653351
2022.03.20 08:45:56 1: Timeout for ESPEInk_DoConvert reached, terminated process 3653354
2022.03.20 08:45:56 1: Timeout for ESPEInk_DoConvert reached, terminated process 3653377
2022.03.20 08:46:01 1: Timeout for ESPEInk_DoConvert reached, terminated process 3653451
2022.03.20 08:46:08 1: Timeout for ESPEInk_DoConvert reached, terminated process 3653588
2022.03.20 08:56:16 1: Timeout for ESPEInk_DoConvert reached, terminated process 3663610
2022.03.20 08:56:16 1: Timeout for ESPEInk_DoConvert reached, terminated process 3663611
2022.03.20 08:56:16 1: Timeout for ESPEInk_DoConvert reached, terminated process 3663612
2022.03.20 08:56:31 1: Timeout for ESPEInk_DoConvert reached, terminated process 3663878
2022.03.20 08:56:32 1: Timeout for ESPEInk_DoConvert reached, terminated process 3663879
2022.03.20 08:56:32 1: Timeout for ESPEInk_DoConvert reached, terminated process 3663896
2022.03.20 08:56:32 1: Timeout for ESPEInk_DoConvert reached, terminated process 3663897
2022.03.20 08:56:41 1: Timeout for ESPEInk_DoConvert reached, terminated process 3664036
2022.03.20 09:06:10 1: Timeout for ESPEInk_DoConvert reached, terminated process 3673485
2022.03.20 09:06:10 1: Timeout for ESPEInk_DoConvert reached, terminated process 3673486
2022.03.20 09:06:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 3673761
2022.03.20 09:06:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 3673930
2022.03.20 09:06:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 3673931
2022.03.20 09:06:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 3673949
2022.03.20 09:15:59 1: Timeout for ESPEInk_DoConvert reached, terminated process 3683204
2022.03.20 09:16:09 1: Timeout for ESPEInk_DoConvert reached, terminated process 3683354
2022.03.20 09:16:13 1: Timeout for ESPEInk_DoConvert reached, terminated process 3683458
2022.03.20 09:16:13 1: Timeout for ESPEInk_DoConvert reached, terminated process 3683459
2022.03.20 09:16:13 1: Timeout for ESPEInk_DoConvert reached, terminated process 3683460
2022.03.20 09:16:13 1: Timeout for ESPEInk_DoConvert reached, terminated process 3683461
2022.03.20 09:16:24 1: Timeout for ESPEInk_DoConvert reached, terminated process 3683624
2022.03.20 09:26:29 1: Timeout for ESPEInk_DoConvert reached, terminated process 3693555
2022.03.20 09:26:29 1: Timeout for ESPEInk_DoConvert reached, terminated process 3693559
2022.03.20 09:26:43 1: Timeout for ESPEInk_DoConvert reached, terminated process 3693805
2022.03.20 09:26:49 1: Timeout for ESPEInk_DoConvert reached, terminated process 3693895
2022.03.20 09:26:52 1: Timeout for ESPEInk_DoConvert reached, terminated process 3693945
2022.03.20 09:26:52 1: Timeout for ESPEInk_DoConvert reached, terminated process 3693946
2022.03.20 09:26:54 1: Timeout for ESPEInk_DoConvert reached, terminated process 3694011
2022.03.20 09:27:15 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 09:36:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 3703606
2022.03.20 09:36:48 1: Timeout for ESPEInk_DoConvert reached, terminated process 3703760
2022.03.20 09:36:57 1: Timeout for ESPEInk_DoConvert reached, terminated process 3703930
2022.03.20 09:36:58 1: Timeout for ESPEInk_DoConvert reached, terminated process 3703931
2022.03.20 09:36:58 1: Timeout for ESPEInk_DoConvert reached, terminated process 3703948
2022.03.20 09:36:58 1: Timeout for ESPEInk_DoConvert reached, terminated process 3703949
2022.03.20 09:36:58 1: Timeout for ESPEInk_DoConvert reached, terminated process 3703950
2022.03.20 09:36:58 1: Timeout for ESPEInk_DoConvert reached, terminated process 3703951
2022.03.20 09:36:58 1: Timeout for ESPEInk_DoConvert reached, terminated process 3703952
2022.03.20 09:46:31 1: Timeout for ESPEInk_DoConvert reached, terminated process 3713357
2022.03.20 09:46:31 1: Timeout for ESPEInk_DoConvert reached, terminated process 3713360
2022.03.20 09:46:43 1: Timeout for ESPEInk_DoConvert reached, terminated process 3713583
2022.03.20 09:46:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3713641
2022.03.20 09:46:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3713642
2022.03.20 09:46:52 1: Timeout for ESPEInk_DoConvert reached, terminated process 3713716
2022.03.20 09:47:00 1: Timeout for ESPEInk_DoConvert reached, terminated process 3713875
2022.03.20 09:52:15 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 09:56:25 1: Timeout for ESPEInk_DoConvert reached, terminated process 3723180
2022.03.20 09:56:25 1: Timeout for ESPEInk_DoConvert reached, terminated process 3723181
2022.03.20 09:56:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 3723406
2022.03.20 09:56:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 3723407
2022.03.20 09:56:40 1: Timeout for ESPEInk_DoConvert reached, terminated process 3723441
2022.03.20 09:56:40 1: Timeout for ESPEInk_DoConvert reached, terminated process 3723442
2022.03.20 09:56:40 1: Timeout for ESPEInk_DoConvert reached, terminated process 3723443
2022.03.20 09:56:40 1: Timeout for ESPEInk_DoConvert reached, terminated process 3723444
2022.03.20 09:56:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3723610
2022.03.20 10:06:31 1: Timeout for ESPEInk_DoConvert reached, terminated process 3733157
2022.03.20 10:06:31 1: Timeout for ESPEInk_DoConvert reached, terminated process 3733158
2022.03.20 10:06:46 1: Timeout for ESPEInk_DoConvert reached, terminated process 3733400
2022.03.20 10:06:46 1: Timeout for ESPEInk_DoConvert reached, terminated process 3733417
2022.03.20 10:06:53 1: Timeout for ESPEInk_DoConvert reached, terminated process 3733526
2022.03.20 10:06:56 1: Timeout for ESPEInk_DoConvert reached, terminated process 3733574
2022.03.20 10:07:15 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 10:16:36 1: Timeout for ESPEInk_DoConvert reached, terminated process 3743160
2022.03.20 10:16:36 1: Timeout for ESPEInk_DoConvert reached, terminated process 3743167
2022.03.20 10:16:53 1: Timeout for ESPEInk_DoConvert reached, terminated process 3743449
2022.03.20 10:16:53 1: Timeout for ESPEInk_DoConvert reached, terminated process 3743450
2022.03.20 10:16:57 1: Timeout for ESPEInk_DoConvert reached, terminated process 3743524
2022.03.20 10:16:57 1: Timeout for ESPEInk_DoConvert reached, terminated process 3743525
2022.03.20 10:17:00 1: Timeout for ESPEInk_DoConvert reached, terminated process 3743567
2022.03.20 10:17:05 1: Timeout for ESPEInk_DoConvert reached, terminated process 3743672
2022.03.20 10:26:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 3753116
2022.03.20 10:26:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 3753117
2022.03.20 10:26:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3753342
2022.03.20 10:26:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3753343
2022.03.20 10:26:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3753344
2022.03.20 10:27:01 1: Timeout for ESPEInk_DoConvert reached, terminated process 3753497
2022.03.20 10:27:08 1: Timeout for ESPEInk_DoConvert reached, terminated process 3753637
2022.03.20 10:36:56 1: Timeout for ESPEInk_DoConvert reached, terminated process 3763380
2022.03.20 10:37:18 1: Timeout for ESPEInk_DoConvert reached, terminated process 3763750
2022.03.20 10:37:19 1: Timeout for ESPEInk_DoConvert reached, terminated process 3763751
2022.03.20 10:37:19 1: Timeout for ESPEInk_DoConvert reached, terminated process 3763768
2022.03.20 10:37:19 1: Timeout for ESPEInk_DoConvert reached, terminated process 3763769
2022.03.20 10:37:19 1: Timeout for ESPEInk_DoConvert reached, terminated process 3763770
2022.03.20 10:37:19 1: Timeout for ESPEInk_DoConvert reached, terminated process 3763771
2022.03.20 10:37:19 1: Timeout for ESPEInk_DoConvert reached, terminated process 3763772
2022.03.20 10:47:04 1: Timeout for ESPEInk_DoConvert reached, terminated process 3773446
2022.03.20 10:47:04 1: Timeout for ESPEInk_DoConvert reached, terminated process 3773455
2022.03.20 10:47:21 1: Timeout for ESPEInk_DoConvert reached, terminated process 3773737
2022.03.20 10:47:22 1: Timeout for ESPEInk_DoConvert reached, terminated process 3773738
2022.03.20 10:47:22 1: Timeout for ESPEInk_DoConvert reached, terminated process 3773763
2022.03.20 10:47:22 1: Timeout for ESPEInk_DoConvert reached, terminated process 3773764
2022.03.20 10:47:22 1: Timeout for ESPEInk_DoConvert reached, terminated process 3773765
2022.03.20 10:47:22 1: Timeout for ESPEInk_DoConvert reached, terminated process 3773766
2022.03.20 10:47:22 1: Timeout for ESPEInk_DoConvert reached, terminated process 3773767
2022.03.20 10:47:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 3773889
2022.03.20 10:47:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 3773890
2022.03.20 10:47:32 1: Timeout for ESPEInk_DoConvert reached, terminated process 3773948
2022.03.20 10:47:32 1: Timeout for ESPEInk_DoConvert reached, terminated process 3773949
2022.03.20 10:56:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3783099
2022.03.20 10:56:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3783100
2022.03.20 10:57:01 1: Timeout for ESPEInk_DoConvert reached, terminated process 3783349
2022.03.20 10:57:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3783544
2022.03.20 10:57:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3783545
2022.03.20 10:57:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3783546
2022.03.20 10:57:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3783552
2022.03.20 10:57:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3783556
2022.03.20 10:57:15 1: Timeout for ESPEInk_DoConvert reached, terminated process 3783598
2022.03.20 11:11:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3797946
2022.03.20 11:11:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3797947
2022.03.20 11:11:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3797948
2022.03.20 11:11:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3797949
2022.03.20 11:12:04 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798239
2022.03.20 11:12:04 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798240
2022.03.20 11:12:04 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798241
2022.03.20 11:12:05 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798242
2022.03.20 11:12:05 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798259
2022.03.20 11:12:05 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798260
2022.03.20 11:12:11 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798351
2022.03.20 11:12:11 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798352
2022.03.20 11:12:11 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798353
2022.03.20 11:12:11 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798354
2022.03.20 11:12:11 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798355
2022.03.20 11:12:11 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798358
2022.03.20 11:12:11 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798363
2022.03.20 11:12:13 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798391
2022.03.20 11:12:13 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798392
2022.03.20 11:12:13 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798393
2022.03.20 11:12:13 1: Timeout for ESPEInk_DoConvert reached, terminated process 3798394
2022.03.20 11:17:12 2: LuftdatenInfo (Luftdaten) - error while request: no data returned
2022.03.20 11:18:42 1: Timeout for ESPEInk_DoConvert reached, terminated process 3804792
2022.03.20 11:18:42 1: Timeout for ESPEInk_DoConvert reached, terminated process 3804801
2022.03.20 11:18:42 1: Timeout for ESPEInk_DoConvert reached, terminated process 3804802
2022.03.20 11:19:07 1: Timeout for ESPEInk_DoConvert reached, terminated process 3805213
2022.03.20 11:19:09 1: Timeout for ESPEInk_DoConvert reached, terminated process 3805248
2022.03.20 11:19:09 1: Timeout for ESPEInk_DoConvert reached, terminated process 3805249
2022.03.20 11:19:10 1: Timeout for ESPEInk_DoConvert reached, terminated process 3805250
2022.03.20 11:19:10 1: Timeout for ESPEInk_DoConvert reached, terminated process 3805267
2022.03.20 11:22:10 2: LuftdatenInfo (Luftdaten) - error while request: no data returned
2022.03.20 11:28:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3814782
2022.03.20 11:28:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 3814783
2022.03.20 11:29:05 1: Timeout for ESPEInk_DoConvert reached, terminated process 3815096
2022.03.20 11:29:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3815203
2022.03.20 11:29:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3815204
2022.03.20 11:29:14 1: Timeout for ESPEInk_DoConvert reached, terminated process 3815230
2022.03.20 11:29:19 1: Timeout for ESPEInk_DoConvert reached, terminated process 3815341
2022.03.20 11:29:19 1: Timeout for ESPEInk_DoConvert reached, terminated process 3815342
2022.03.20 11:38:50 1: Timeout for ESPEInk_DoConvert reached, terminated process 3824728
2022.03.20 11:38:50 1: Timeout for ESPEInk_DoConvert reached, terminated process 3824729
2022.03.20 11:39:00 1: Timeout for ESPEInk_DoConvert reached, terminated process 3824906
2022.03.20 11:39:04 1: Timeout for ESPEInk_DoConvert reached, terminated process 3824972
2022.03.20 11:39:04 1: Timeout for ESPEInk_DoConvert reached, terminated process 3824973
2022.03.20 11:39:04 1: Timeout for ESPEInk_DoConvert reached, terminated process 3824974
2022.03.20 11:39:04 1: Timeout for ESPEInk_DoConvert reached, terminated process 3824975
2022.03.20 11:39:05 1: Timeout for ESPEInk_DoConvert reached, terminated process 3824976
2022.03.20 11:39:05 1: Timeout for ESPEInk_DoConvert reached, terminated process 3824993
2022.03.20 11:39:08 1: Timeout for ESPEInk_DoConvert reached, terminated process 3825036
2022.03.20 11:48:44 1: Timeout for ESPEInk_DoConvert reached, terminated process 3834573
2022.03.20 11:48:44 1: Timeout for ESPEInk_DoConvert reached, terminated process 3834574
2022.03.20 11:48:59 1: Timeout for ESPEInk_DoConvert reached, terminated process 3834801
2022.03.20 11:49:00 1: Timeout for ESPEInk_DoConvert reached, terminated process 3834802
2022.03.20 11:49:00 1: Timeout for ESPEInk_DoConvert reached, terminated process 3834819
2022.03.20 11:49:00 1: Timeout for ESPEInk_DoConvert reached, terminated process 3834820
2022.03.20 11:49:10 1: Timeout for ESPEInk_DoConvert reached, terminated process 3835006
2022.03.20 11:49:10 1: Timeout for ESPEInk_DoConvert reached, terminated process 3835007
2022.03.20 11:49:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3835041
2022.03.20 11:57:15 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 12:03:44 1: Timeout for ESPEInk_DoConvert reached, terminated process 3849475
2022.03.20 12:04:01 1: Timeout for ESPEInk_DoConvert reached, terminated process 3849765
2022.03.20 12:04:01 1: Timeout for ESPEInk_DoConvert reached, terminated process 3849766
2022.03.20 12:04:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3849767
2022.03.20 12:04:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3849776
2022.03.20 12:04:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3849782
2022.03.20 12:04:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3849786
2022.03.20 12:04:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3849787
2022.03.20 12:04:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3849788
2022.03.20 12:08:42 1: Timeout for ESPEInk_DoConvert reached, terminated process 3854406
2022.03.20 12:11:06 1: Timeout for ESPEInk_DoConvert reached, terminated process 3856791
2022.03.20 12:11:06 1: Timeout for ESPEInk_DoConvert reached, terminated process 3856792
2022.03.20 12:11:07 1: Timeout for ESPEInk_DoConvert reached, terminated process 3856793
2022.03.20 12:17:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 3862714
2022.03.20 12:17:09 1: Timeout for ESPEInk_DoConvert reached, terminated process 3862821
2022.03.20 12:17:09 1: Timeout for ESPEInk_DoConvert reached, terminated process 3862822
2022.03.20 12:17:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 3863153
2022.03.20 12:17:29 1: Timeout for ESPEInk_DoConvert reached, terminated process 3863154
2022.03.20 12:26:07 1: Timeout for ESPEInk_DoConvert reached, terminated process 3871733
2022.03.20 12:26:07 1: Timeout for ESPEInk_DoConvert reached, terminated process 3871734
2022.03.20 12:26:46 1: Timeout for ESPEInk_DoConvert reached, terminated process 3872390
2022.03.20 12:26:52 1: Timeout for ESPEInk_DoConvert reached, terminated process 3872480
2022.03.20 12:27:18 1: Timeout for ESPEInk_DoConvert reached, terminated process 3872913
2022.03.20 12:27:18 1: Timeout for ESPEInk_DoConvert reached, terminated process 3872914
2022.03.20 12:27:18 1: Timeout for ESPEInk_DoConvert reached, terminated process 3872915
2022.03.20 12:27:33 1: Timeout for ESPEInk_DoConvert reached, terminated process 3873172
2022.03.20 12:36:01 1: Timeout for ESPEInk_DoConvert reached, terminated process 3881578
2022.03.20 12:36:01 1: Timeout for ESPEInk_DoConvert reached, terminated process 3881579
2022.03.20 12:36:01 1: Timeout for ESPEInk_DoConvert reached, terminated process 3881580
2022.03.20 12:36:06 1: Timeout for ESPEInk_DoConvert reached, terminated process 3881692
2022.03.20 12:45:42 1: Timeout for ESPEInk_DoConvert reached, terminated process 3891183
2022.03.20 12:45:42 1: Timeout for ESPEInk_DoConvert reached, terminated process 3891184
2022.03.20 12:46:17 1: Timeout for ESPEInk_DoConvert reached, terminated process 3891775
2022.03.20 12:47:34 1: Timeout for ESPEInk_DoConvert reached, terminated process 3893059
2022.03.20 12:47:34 1: Timeout for ESPEInk_DoConvert reached, terminated process 3893060
2022.03.20 12:47:34 1: Timeout for ESPEInk_DoConvert reached, terminated process 3893061
2022.03.20 12:47:41 1: Timeout for ESPEInk_DoConvert reached, terminated process 3893168
2022.03.20 12:47:41 1: Timeout for ESPEInk_DoConvert reached, terminated process 3893169
2022.03.20 12:47:41 1: Timeout for ESPEInk_DoConvert reached, terminated process 3893170
2022.03.20 12:50:43 1: Timeout for ESPEInk_DoConvert reached, terminated process 3896181
2022.03.20 12:50:43 1: Timeout for ESPEInk_DoConvert reached, terminated process 3896182
2022.03.20 12:57:35 1: Timeout for ESPEInk_DoConvert reached, terminated process 3903005
2022.03.20 12:57:35 1: Timeout for ESPEInk_DoConvert reached, terminated process 3903006
2022.03.20 12:57:35 1: Timeout for ESPEInk_DoConvert reached, terminated process 3903007
2022.03.20 12:57:35 1: Timeout for ESPEInk_DoConvert reached, terminated process 3903008
2022.03.20 13:00:43 1: Timeout for ESPEInk_DoConvert reached, terminated process 3906104
2022.03.20 13:02:15 1: Timeout for ESPEInk_DoConvert reached, terminated process 3907627
2022.03.20 13:07:10 2: LuftdatenInfo (Luftdaten) - error while request: no data returned
2022.03.20 13:10:01 1: Timeout for ESPEInk_DoConvert reached, terminated process 3915356
2022.03.20 13:10:01 1: Timeout for ESPEInk_DoConvert reached, terminated process 3915357
2022.03.20 13:10:21 1: Timeout for ESPEInk_DoConvert reached, terminated process 3915686
2022.03.20 13:10:21 1: Timeout for ESPEInk_DoConvert reached, terminated process 3915687
2022.03.20 13:10:27 1: Timeout for ESPEInk_DoConvert reached, terminated process 3915786
2022.03.20 13:10:50 1: Timeout for ESPEInk_DoConvert reached, terminated process 3916164
2022.03.20 13:10:50 1: Timeout for ESPEInk_DoConvert reached, terminated process 3916165
2022.03.20 13:12:10 2: LuftdatenInfo (Luftdaten) - error while request: no data returned
2022.03.20 13:19:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3924449
2022.03.20 13:19:22 1: Timeout for ESPEInk_DoConvert reached, terminated process 3924633
2022.03.20 13:20:45 1: Timeout for ESPEInk_DoConvert reached, terminated process 3926023
2022.03.20 13:20:45 1: Timeout for ESPEInk_DoConvert reached, terminated process 3926024
2022.03.20 13:20:45 1: Timeout for ESPEInk_DoConvert reached, terminated process 3926025
2022.03.20 13:20:45 1: Timeout for ESPEInk_DoConvert reached, terminated process 3926026
2022.03.20 13:20:45 1: Timeout for ESPEInk_DoConvert reached, terminated process 3926027
2022.03.20 13:20:45 1: Timeout for ESPEInk_DoConvert reached, terminated process 3926028
2022.03.20 13:29:26 1: Timeout for ESPEInk_DoConvert reached, terminated process 3934703
2022.03.20 13:29:26 1: Timeout for ESPEInk_DoConvert reached, terminated process 3934704
2022.03.20 13:29:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3935113
2022.03.20 13:29:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3935114
2022.03.20 13:29:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3935115
2022.03.20 13:30:11 1: Timeout for ESPEInk_DoConvert reached, terminated process 3935452
2022.03.20 13:30:16 1: Timeout for ESPEInk_DoConvert reached, terminated process 3935526
2022.03.20 13:30:16 1: Timeout for ESPEInk_DoConvert reached, terminated process 3935527
2022.03.20 13:30:55 1: Timeout for ESPEInk_DoConvert reached, terminated process 3936182
2022.03.20 13:30:55 1: Timeout for ESPEInk_DoConvert reached, terminated process 3936183
2022.03.20 13:30:55 1: Timeout for ESPEInk_DoConvert reached, terminated process 3936184
2022.03.20 13:30:55 1: Timeout for ESPEInk_DoConvert reached, terminated process 3936185
2022.03.20 13:30:55 1: Timeout for ESPEInk_DoConvert reached, terminated process 3936186
2022.03.20 13:30:55 1: Timeout for ESPEInk_DoConvert reached, terminated process 3936187
2022.03.20 13:39:42 1: Timeout for ESPEInk_DoConvert reached, terminated process 3944963
2022.03.20 13:39:42 1: Timeout for ESPEInk_DoConvert reached, terminated process 3944964
2022.03.20 13:39:42 1: Timeout for ESPEInk_DoConvert reached, terminated process 3944965
2022.03.20 13:39:42 1: Timeout for ESPEInk_DoConvert reached, terminated process 3944966
2022.03.20 13:39:57 1: Timeout for ESPEInk_DoConvert reached, terminated process 3945193
2022.03.20 13:39:57 1: Timeout for ESPEInk_DoConvert reached, terminated process 3945194
2022.03.20 13:39:57 1: Timeout for ESPEInk_DoConvert reached, terminated process 3945195
2022.03.20 13:40:08 1: Timeout for ESPEInk_DoConvert reached, terminated process 3945397
2022.03.20 13:40:08 1: Timeout for ESPEInk_DoConvert reached, terminated process 3945398
2022.03.20 13:40:08 1: Timeout for ESPEInk_DoConvert reached, terminated process 3945399
2022.03.20 13:49:01 1: Timeout for ESPEInk_DoConvert reached, terminated process 3954236
2022.03.20 13:49:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3955063
2022.03.20 13:49:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 3955064
2022.03.20 13:50:09 1: Timeout for ESPEInk_DoConvert reached, terminated process 3955378
2022.03.20 13:50:09 1: Timeout for ESPEInk_DoConvert reached, terminated process 3955379
2022.03.20 13:50:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3955421
2022.03.20 13:50:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3955422
2022.03.20 13:50:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3955423
2022.03.20 13:50:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 3955424
2022.03.20 13:59:59 1: Timeout for ESPEInk_DoConvert reached, terminated process 3965121
2022.03.20 13:59:59 1: Timeout for ESPEInk_DoConvert reached, terminated process 3965122
2022.03.20 13:59:59 1: Timeout for ESPEInk_DoConvert reached, terminated process 3965123
2022.03.20 14:00:09 1: Timeout for ESPEInk_DoConvert reached, terminated process 3965308
2022.03.20 14:00:09 1: Timeout for ESPEInk_DoConvert reached, terminated process 3965309
2022.03.20 14:00:09 1: Timeout for ESPEInk_DoConvert reached, terminated process 3965310
2022.03.20 14:00:27 1: Timeout for ESPEInk_DoConvert reached, terminated process 3965607
2022.03.20 14:00:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 3965778
2022.03.20 14:00:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 3965779
2022.03.20 14:06:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3971170
2022.03.20 14:06:03 1: Timeout for ESPEInk_DoConvert reached, terminated process 3971179
2022.03.20 14:10:05 1: Timeout for ESPEInk_DoConvert reached, terminated process 3975214
2022.03.20 14:10:05 1: Timeout for ESPEInk_DoConvert reached, terminated process 3975215
2022.03.20 14:10:05 1: Timeout for ESPEInk_DoConvert reached, terminated process 3975216
2022.03.20 14:10:07 1: Timeout for ESPEInk_DoConvert reached, terminated process 3975242
2022.03.20 14:10:07 1: Timeout for ESPEInk_DoConvert reached, terminated process 3975243
2022.03.20 14:10:07 1: Timeout for ESPEInk_DoConvert reached, terminated process 3975252
2022.03.20 14:10:07 1: Timeout for ESPEInk_DoConvert reached, terminated process 3975253
2022.03.20 14:10:07 1: Timeout for ESPEInk_DoConvert reached, terminated process 3975254
2022.03.20 14:20:13 1: Timeout for ESPEInk_DoConvert reached, terminated process 3985298
2022.03.20 14:20:13 1: Timeout for ESPEInk_DoConvert reached, terminated process 3985299
2022.03.20 14:20:13 1: Timeout for ESPEInk_DoConvert reached, terminated process 3985300
2022.03.20 14:20:26 1: Timeout for ESPEInk_DoConvert reached, terminated process 3985502
2022.03.20 14:20:26 1: Timeout for ESPEInk_DoConvert reached, terminated process 3985506
2022.03.20 14:20:34 1: Timeout for ESPEInk_DoConvert reached, terminated process 3985649
2022.03.20 14:20:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 3985716
2022.03.20 14:20:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 3985717
2022.03.20 14:20:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 3985718
2022.03.20 14:22:15 2: LuftdatenInfo (Luftdaten) - error while request: read from https://data.sensor.community:443 timed out
2022.03.20 14:30:14 1: Timeout for ESPEInk_DoConvert reached, terminated process 3995206
2022.03.20 14:30:14 1: Timeout for ESPEInk_DoConvert reached, terminated process 3995207
2022.03.20 14:30:24 1: Timeout for ESPEInk_DoConvert reached, terminated process 3995362
2022.03.20 14:30:24 1: Timeout for ESPEInk_DoConvert reached, terminated process 3995363
2022.03.20 14:30:24 1: Timeout for ESPEInk_DoConvert reached, terminated process 3995364
2022.03.20 14:30:27 1: Timeout for ESPEInk_DoConvert reached, terminated process 3995406
2022.03.20 14:30:27 1: Timeout for ESPEInk_DoConvert reached, terminated process 3995418
2022.03.20 14:30:27 1: Timeout for ESPEInk_DoConvert reached, terminated process 3995424
2022.03.20 14:40:15 1: Timeout for ESPEInk_DoConvert reached, terminated process 4005093
2022.03.20 14:40:15 1: Timeout for ESPEInk_DoConvert reached, terminated process 4005096
2022.03.20 14:40:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 4005307
2022.03.20 14:40:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 4005355
2022.03.20 14:40:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 4005356
2022.03.20 14:40:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 4005357
2022.03.20 14:40:39 1: Timeout for ESPEInk_DoConvert reached, terminated process 4005496
2022.03.20 14:40:39 1: Timeout for ESPEInk_DoConvert reached, terminated process 4005497
2022.03.20 14:40:39 1: Timeout for ESPEInk_DoConvert reached, terminated process 4005498
2022.03.20 14:40:39 1: Timeout for ESPEInk_DoConvert reached, terminated process 4005499
2022.03.20 14:50:15 1: Timeout for ESPEInk_DoConvert reached, terminated process 4014961
2022.03.20 14:50:27 1: Timeout for ESPEInk_DoConvert reached, terminated process 4015148
2022.03.20 14:50:29 1: Timeout for ESPEInk_DoConvert reached, terminated process 4015182
2022.03.20 14:50:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 4015351
2022.03.20 14:50:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 4015352
2022.03.20 14:50:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 4015353
2022.03.20 14:50:41 1: Timeout for ESPEInk_DoConvert reached, terminated process 4015395
2022.03.20 14:50:41 1: Timeout for ESPEInk_DoConvert reached, terminated process 4015401
2022.03.20 14:50:41 1: Timeout for ESPEInk_DoConvert reached, terminated process 4015405
2022.03.20 15:00:09 1: Timeout for ESPEInk_DoConvert reached, terminated process 4024734
2022.03.20 15:00:09 1: Timeout for ESPEInk_DoConvert reached, terminated process 4024735
2022.03.20 15:00:20 1: Timeout for ESPEInk_DoConvert reached, terminated process 4024935
2022.03.20 15:00:20 1: Timeout for ESPEInk_DoConvert reached, terminated process 4024936
2022.03.20 15:00:20 1: Timeout for ESPEInk_DoConvert reached, terminated process 4024937
2022.03.20 15:00:20 1: Timeout for ESPEInk_DoConvert reached, terminated process 4024938
2022.03.20 15:00:20 1: Timeout for ESPEInk_DoConvert reached, terminated process 4024939
2022.03.20 15:00:21 1: Timeout for ESPEInk_DoConvert reached, terminated process 4024940
2022.03.20 15:00:21 1: Timeout for ESPEInk_DoConvert reached, terminated process 4024949
2022.03.20 15:00:21 1: Timeout for ESPEInk_DoConvert reached, terminated process 4024950
2022.03.20 15:00:21 1: Timeout for ESPEInk_DoConvert reached, terminated process 4024951
2022.03.20 15:00:24 1: Timeout for ESPEInk_DoConvert reached, terminated process 4025002
2022.03.20 15:10:26 1: Timeout for ESPEInk_DoConvert reached, terminated process 4034880
2022.03.20 15:10:42 1: Timeout for ESPEInk_DoConvert reached, terminated process 4035155
2022.03.20 15:10:42 1: Timeout for ESPEInk_DoConvert reached, terminated process 4035156
2022.03.20 15:10:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 4035230
2022.03.20 15:10:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 4035231
2022.03.20 15:10:47 1: Timeout for ESPEInk_DoConvert reached, terminated process 4035232
2022.03.20 15:10:48 1: Timeout for ESPEInk_DoConvert reached, terminated process 4035233
2022.03.20 15:10:54 1: Timeout for ESPEInk_DoConvert reached, terminated process 4035348
2022.03.20 15:20:15 1: Timeout for ESPEInk_DoConvert reached, terminated process 4044552
2022.03.20 15:20:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 4044911
2022.03.20 15:20:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 4044917
2022.03.20 15:20:38 1: Timeout for ESPEInk_DoConvert reached, terminated process 4044921
2022.03.20 15:20:40 1: Timeout for ESPEInk_DoConvert reached, terminated process 4044964
2022.03.20 15:20:40 1: Timeout for ESPEInk_DoConvert reached, terminated process 4044965
2022.03.20 15:20:40 1: Timeout for ESPEInk_DoConvert reached, terminated process 4044966
2022.03.20 15:30:10 1: Timeout for ESPEInk_DoConvert reached, terminated process 4054350
2022.03.20 15:30:10 1: Timeout for ESPEInk_DoConvert reached, terminated process 4054359
2022.03.20 15:30:10 1: Timeout for ESPEInk_DoConvert reached, terminated process 4054360
2022.03.20 15:30:24 1: Timeout for ESPEInk_DoConvert reached, terminated process 4054593
2022.03.20 15:30:24 1: Timeout for ESPEInk_DoConvert reached, terminated process 4054596
2022.03.20 15:30:26 1: Timeout for ESPEInk_DoConvert reached, terminated process 4054628
2022.03.20 15:30:29 1: Timeout for ESPEInk_DoConvert reached, terminated process 4054678
2022.03.20 15:30:36 1: Timeout for ESPEInk_DoConvert reached, terminated process 4054784
2022.03.20 15:30:36 1: Timeout for ESPEInk_DoConvert reached, terminated process 4054785
2022.03.20 15:40:14 1: Timeout for ESPEInk_DoConvert reached, terminated process 4064301
2022.03.20 15:40:14 1: Timeout for ESPEInk_DoConvert reached, terminated process 4064302
2022.03.20 15:40:14 1: Timeout for ESPEInk_DoConvert reached, terminated process 4064303
2022.03.20 15:40:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 4064544
2022.03.20 15:40:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 4064545
2022.03.20 15:40:28 1: Timeout for ESPEInk_DoConvert reached, terminated process 4064546
2022.03.20 15:40:32 1: Timeout for ESPEInk_DoConvert reached, terminated process 4064604
2022.03.20 15:40:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 4064686
2022.03.20 15:40:37 1: Timeout for ESPEInk_DoConvert reached, terminated process 4064687
2022.03.20 15:50:36 1: Timeout for ESPEInk_DoConvert reached, terminated process 4074590
2022.03.20 15:50:36 1: Timeout for ESPEInk_DoConvert reached, terminated process 4074591
2022.03.20 15:50:36 1: Timeout for ESPEInk_DoConvert reached, terminated process 4074592
2022.03.20 15:50:49 1: Timeout for ESPEInk_DoConvert reached, terminated process 4074817
2022.03.20 15:50:50 1: Timeout for ESPEInk_DoConvert reached, terminated process 4074821
2022.03.20 15:50:50 1: Timeout for ESPEInk_DoConvert reached, terminated process 4074835
2022.03.20 15:50:50 1: Timeout for ESPEInk_DoConvert reached, terminated process 4074836
2022.03.20 15:50:50 1: Timeout for ESPEInk_DoConvert reached, terminated process 4074837
2022.03.20 15:51:05 1: Timeout for ESPEInk_DoConvert reached, terminated process 4075065
2022.03.20 16:00:35 1: Timeout for ESPEInk_DoConvert reached, terminated process 4084492
2022.03.20 16:00:35 1: Timeout for ESPEInk_DoConvert reached, terminated process 4084493
2022.03.20 16:00:58 1: Timeout for ESPEInk_DoConvert reached, terminated process 4084879
2022.03.20 16:01:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 4084942
2022.03.20 16:01:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 4084946
2022.03.20 16:01:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 4084947
2022.03.20 16:01:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 4084948
2022.03.20 16:01:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 4084949
2022.03.20 16:10:48 1: Timeout for ESPEInk_DoConvert reached, terminated process 4094598
2022.03.20 16:10:58 1: Timeout for ESPEInk_DoConvert reached, terminated process 4094775
2022.03.20 16:11:00 1: Timeout for ESPEInk_DoConvert reached, terminated process 4094809
2022.03.20 16:11:00 1: Timeout for ESPEInk_DoConvert reached, terminated process 4094810
2022.03.20 16:11:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 4094844
2022.03.20 16:11:02 1: Timeout for ESPEInk_DoConvert reached, terminated process 4094845
2022.03.20 16:11:12 1: Timeout for ESPEInk_DoConvert reached, terminated process 4095030
2022.03.20 16:20:39 1: Timeout for ESPEInk_DoConvert reached, terminated process 4104380
2022.03.20 16:20:51 1: Timeout for ESPEInk_DoConvert reached, terminated process 4104597
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 21 März 2022, 07:52:27
Kannst Du mal schauen, ob, wenn nur ein Display aktiv ist und updates macht, die Fehlermeldungen weg sind?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 21 März 2022, 08:49:03
Zitat von: eki am 21 März 2022, 07:52:27
Kannst Du mal schauen, ob, wenn nur ein Display aktiv ist und updates macht, die Fehlermeldungen weg sind?

Wie auch schon Jendaw geschrieben hat, ist es nicht möglich 2 Displays in einer FHEM Instanz parallel zu betreiben. Sobald ein 2. Device angelegt wird, werden beide Display nicht mehr sauber aufgebaut. Da ich bei mir alles auf Docker laufen habe, habe meine beiden Displays in unterschiedlichen FHEM Containern laufen.

Hier nochmal ein List des Device:

Internals:
   BOARDTYPE  ESP8266
   COLORMODE  color
   CONVERTMODE dithering
   DEF        /opt/fhem/www/images/custom/ep_2.9.png
   DEVICETYPE 2.9inch_e-Paper_Module_(B)
   FUUID      61f6bbc5-f33f-bc6c-5c30-26f91caf0d605011
   FVERSION   89_ESPEInk.pm:0.250540/2021-10-07
   INTERVAL   0
   NAME       epaper_2.9
   NOTIFYDEV  system_time,ku_netatmo,ts_netatmo,epaper_2.9,wz_netatmo,ho_netatmo,sz_netatmo,global
   NR         83
   NTFY_ORDER 50-epaper_2.9
   PICTUREFILE /opt/fhem/www/images/custom/ep_2.9.png
   STATE      Finished conversion in background
   SUBFOLDER  images
   TYPE       ESPEInk
   URL        192.168.23.78
   READINGS:
     2022-03-18 23:52:09   deftexts        0
     2022-03-21 08:37:54   lastUpdate      2022-03-21 08:37:54
     2022-03-21 08:38:15   result_picture  <html><img src=/fhem/images/epaper_2.9/result.png?dummy=439370.86146477></img><div>/fhem/images/epaper_2.9/result.png</div></html>
     2022-03-18 23:52:07   source_picture  <html><img src=/fhem/images/epaper_2.9/ep_2.9.png?dummy=991729.600072425></img><div>/fhem/images/epaper_2.9/ep_2.9.png</div></html>
     2022-03-21 08:37:54   updatestart     1647848274.68741
   helper:
Attributes:
   DbLogExclude .*
   alias      E-Paper Display 2,9"
   boardtype  ESP8266
   colormode  color
   convertmode dithering
   definition #addsymbol#rectangle--#0#0#4#0#FF0000#296#50#0#0
addsymbol#line--#0#128#108#0#000000#296#0#0
addsymbol#line--#0#19#20#0#FF0000#296#0#0

textreading#system_time:date_w#3#3#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#Update:#190#3#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#system_time:time#250#3#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

addtext#Wohnzimmer:#3#25#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#wz_netatmo:co2#110#25#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#ppm#150#25#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#wz_netatmo:humidity#190#25#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#%#210#25#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#wz_netatmo:temperature#240#25#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#°C#274#25#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0


addtext#Hobbyraum:#3#45#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#ho_netatmo:co2#110#45#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#ppm#150#45#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#ho_netatmo:humidity#190#45#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#%#210#45#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#ho_netatmo:temperature#240#45#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#°C#274#45#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0

addtext#Schlafzimmer:#3#65#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#sz_netatmo:co2#110#65#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#ppm#150#65#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#sz_netatmo:humidity#190#65#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#%#210#65#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#sz_netatmo:temperature#240#65#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#°C#274#65#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0

addtext#Küche:#3#85#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#ku_netatmo:co2#110#85#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#ppm#150#85#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#ku_netatmo:humidity#190#85#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#%#210#85#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#ku_netatmo:temperature#240#85#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#°C#274#85#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0

addtext#Terrasse:#3#105#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#ts_netatmo:temperature#80#105#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#°C#110#105#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
textreading#ts_netatmo:humidity#140#105#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
addtext#%#160#105#12#0#FFFFFF#/usr/share/fonts/truetype/msttcorefonts/arial.ttf#0#0
   devicetype 2.9inch_e-Paper_Module_(B)
   interval   0
   maxretries 0
   mininterval 40
   room       Display
   timeout    60
   uploadTimeout 330
   userReadings lastUpdate:updatestart.* {ReadingsTimestamp($NAME,"updatestart","");}
   webCmd     convert:upload
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 21 März 2022, 15:18:16
OK (stimmt, noch ne Baustelle, die ich aktuell nicht bearbeiten kann, weil ich selber kein funktionierendes Display zum Testen mehr habe).

Was passiert, wenn Du den Interval Wert setzt (also z. B.: attr <display> interval 60). Sind die Fehler dann weg?
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 23 März 2022, 00:21:56
Zitat von: eki am 21 März 2022, 15:18:16
OK (stimmt, noch ne Baustelle, die ich aktuell nicht bearbeiten kann, weil ich selber kein funktionierendes Display zum Testen mehr habe).

Was passiert, wenn Du den Interval Wert setzt (also z. B.: attr <display> interval 60). Sind die Fehler dann weg?

Ja, mit interval = 60 sind die Fehler weg. Kann es sein, das die Trigger zu schnell kommen? Ich lasse die Messwerte von Netatmo Thermostate anzeigen, die aktualisieren sich eigentlich nur alle 15 min. Es kann natürlich sein, das der Messintervall verschiedener Messstellen dennoch kurz hintereinander aktualisieren.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 23 März 2022, 08:10:24
Das Problem ist voraussichtlich, dass von den Netatmo Devices quasi immer gleichzeitig mehrere Events kommen (z. B. temperatur, humidity und CO2). Jedes dieser Events löst ein Update aus und, weil ich bei jedem Update eventuell noch laufende Prozesse kille, kommt dann die Fehlermeldung aus dem Blocking Modul (ist nämlich gar kein Timeout sondern ein manuelles Abschießen des Prozesses aus meinem Modul). Wenn ich mehrere parallele Konvertierungsprozesse zulasse, dann zerschießt es die Anzeige auf den Displays (wahrscheinlich so ähnlich, wie wenn man 2 Instanzen des Moduls laufen hat, obwohl ich diesen Fall noch nicht so ganz verstehe, zumindest, es sei denn, die beiden Devices sind über die gleich URL angebunden).

Die Alternative wäre, dass ich anstatt den alten Prozess zu killen, den Neuen nicht zulasse, dann würde aber die Anzeige immer hinterher hinken.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Borkk am 23 März 2022, 11:54:38
Das ist definitiv so wie du schriebst. Die Werte werden ja zyklisch aus der Cloud geladen oder gepusht, das weiss ich nicht genau. Aber natürlich kommen dann alle Werte aller Module auf einmal. Ich lasse das jetzt mal auf einem Interval von 600 laufen, es kommen ohnehin nur alle 15 min neue Werte.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: maltejahn am 27 März 2022, 13:03:49
Hallo,

ich bekomme sehr viele Fehlermeldungen im log, vielleicht liegt es daran:

Ist es eigentlich möglich den Upload zu "deaktivieren".

Ich will ein Inkplate 6 nutzen und hole mir die erzeugte Bilddatei selbst ab. Aber da es ja kein Empfänger gibt, bekomme ich die Fehlermeldung "Error uploading image to device, max retries (3) reached"

Ansonsten, wie kann ich das hier "debuggen?" Die Log ist pwo tag irgendwo um 300mb groß....

z.B:
2022.03.27 00:00:54 1: PERL WARNING: Use of uninitialized value $text in split at ./FHEM/89_ESPEInk.pm line 621.
2022.03.27 00:00:54 3: eval: my $SELF=   $evalSpecials->{'%SELF'};{ DrKWetter() }
2022.03.27 00:00:54 1: stacktrace:
2022.03.27 00:00:54 1:     main::__ANON__                      called by ./FHEM/89_ESPEInk.pm (621)
2022.03.27 00:00:54 1:     main::ESPEInk_Notify                called by fhem.pl (3930)
2022.03.27 00:00:54 1:     main::CallFn                        called by fhem.pl (3843)
2022.03.27 00:00:54 1:     main::DoTrigger                     called by fhem.pl (4945)
2022.03.27 00:00:54 1:     main::readingsEndUpdate             called by fhem.pl (5128)
2022.03.27 00:00:54 1:     main::readingsSingleUpdate          called by ./FHEM/98_dummy.pm (73)
2022.03.27 00:00:54 1:     main::dummy_Set                     called by fhem.pl (3925)
2022.03.27 00:00:54 1:     main::CallFn                        called by fhem.pl (1955)
2022.03.27 00:00:54 1:     main::DoSet                         called by fhem.pl (1987)
2022.03.27 00:00:54 1:     main::CommandSet                    called by fhem.pl (1272)
2022.03.27 00:00:54 1:     main::AnalyzeCommand                called by fhem.pl (1123)
2022.03.27 00:00:54 1:     main::AnalyzeCommandChain           called by fhem.pl (3970)
2022.03.27 00:00:54 1:     main::fhem                          called by ./FHEM/99_myUtils.pm (39)
2022.03.27 00:00:54 1:     main::DrKWetter                     called by (eval 358971) (1)
2022.03.27 00:00:54 1:     (eval)                              called by fhem.pl (1167)
2022.03.27 00:00:54 1:     main::AnalyzePerlCommand            called by fhem.pl (1196)
2022.03.27 00:00:54 1:     main::AnalyzeCommand                called by fhem.pl (1123)
2022.03.27 00:00:54 1:     main::AnalyzeCommandChain           called by ./FHEM/90_at.pm (199)
2022.03.27 00:00:54 1:     main::at_Exec                       called by fhem.pl (3458)
2022.03.27 00:00:54 1:     main::HandleTimeout                 called by fhem.pl (702)

.................
2022.03.27 00:02:27 1: PERL WARNING: Use of uninitialized value $text in split at ./FHEM/89_ESPEInk.pm line 622.
2022.03.27 00:02:27 1: stacktrace:
2022.03.27 00:02:27 1:     main::__ANON__                      called by ./FHEM/89_ESPEInk.pm (622)
2022.03.27 00:02:27 1:     main::ESPEInk_Notify                called by fhem.pl (3930)
2022.03.27 00:02:27 1:     main::CallFn                        called by fhem.pl (3843)
2022.03.27 00:02:27 1:     main::DoTrigger                     called by fhem.pl (4945)
2022.03.27 00:02:27 1:     main::readingsEndUpdate             called by ./FHEM/98_expandJSON.pm (189)
2022.03.27 00:02:27 1:     main::expandJSON_decode             called by ./FHEM/98_expandJSON.pm (164)
2022.03.27 00:02:27 1:     main::__ANON__                      called by fhem.pl (3458)
2022.03.27 00:02:27 1:     main::HandleTimeout                 called by fhem.pl (702)
.......
2022.03.27 00:07:06 5: inkplate6_1: callback from command EPD, URL http:///EPD status code
2022.03.27 00:07:06 1: PERL WARNING: Use of uninitialized value in numeric ne (!=) at ./FHEM/89_ESPEInk.pm line 2094.
2022.03.27 00:07:06 3: eval: {ESPEInk_ConvertDone('inkplate6_1|1')}
2022.03.27 00:07:06 1: stacktrace:
2022.03.27 00:07:06 1:     main::__ANON__                      called by ./FHEM/89_ESPEInk.pm (2094)
2022.03.27 00:07:06 1:     main::ESPEInk_HTTPCallbackA         called by FHEM/HttpUtils.pm (1021)
2022.03.27 00:07:06 1:     main::HttpUtils_NonblockingGet      called by ./FHEM/89_ESPEInk.pm (2102)
2022.03.27 00:07:06 1:     main::ESPEInk_HTTPCallbackA         called by FHEM/HttpUtils.pm (1021)
2022.03.27 00:07:06 1:     main::HttpUtils_NonblockingGet      called by ./FHEM/89_ESPEInk.pm (2102)
2022.03.27 00:07:06 1:     main::ESPEInk_HTTPCallbackA         called by FHEM/HttpUtils.pm (1021)
2022.03.27 00:07:06 1:     main::HttpUtils_NonblockingGet      called by ./FHEM/89_ESPEInk.pm (2298)
2022.03.27 00:07:06 1:     main::ESPEInk_PostToDeviceImage     called by ./FHEM/89_ESPEInk.pm (2404)
2022.03.27 00:07:06 1:     main::ESPEInk_Upload                called by ./FHEM/89_ESPEInk.pm (1671)
2022.03.27 00:07:06 1:     main::ESPEInk_ConvertDone           called by (eval 359576) (1)
2022.03.27 00:07:06 1:     (eval)                              called by fhem.pl (1167)
2022.03.27 00:07:06 1:     main::AnalyzePerlCommand            called by fhem.pl (1196)
2022.03.27 00:07:06 1:     main::AnalyzeCommand                called by fhem.pl (1123)
2022.03.27 00:07:06 1:     main::AnalyzeCommandChain           called by ./FHEM/98_telnet.pm (263)
2022.03.27 00:07:06 1:     main::telnet_Read                   called by fhem.pl (3930)
2022.03.27 00:07:06 1:     main::CallFn                        called by fhem.pl (780)



[/quote]




Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 28 März 2022, 08:52:14
Kannst Du mal die Definition des entsprechenden EInk FHEM devices hier posten.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: maltejahn am 28 März 2022, 12:39:01
Guten Morgen,

ja, das wäre sinnvoll gewesen  ::) : Und ich schreibe das hier komplett neu, da ich heute morgen alles was mit dem Display zu tun hatte deaktiviert habe und somit versuchte das Log ruhig zu bekommen. Ich habe zeitgleich ein zweites (Waveshare) Display das ich jetzt komplett raus geworfen habe (inkl. display_doif, display_status_doif). Zusätzlich einige "Spieldevices" rausgeworfen. Zusätzlich ein Update samt restart

Somit gibt es nur noch das eigentliche Device "Inkplate6_1" und ein nicht aktives AT das eigentlich gedacht war alle 5 Minuten die Bilddatei zu erzeugen. Jetzt arbeite ich nur noch im Device Inkplate mit set convert.

Trotzdem gibt es eine Art Eigenleben, siehe Log anbei. Um 12:12:02 habe ich das Convert manuell angestoßen - auch hier Fehlermeldungen. Zusätzlich aber auch um 12:17 ind 12:22 ein " Start forked process to convert output picture"


Das Modul ist dieses, wobei sollte das nicht aktueller sein. Zumindest stand im Log das es hier ein Update gab
# $Id: 89_ESPEInk.pm 25054 2021-10-07 09:38:45Z eki $

Weiter verwundet: Die Template Datei und Ergebnisdatei sind in diesem Verzeichnis
Zitat12:22:52 5: inkplate6_1: Event received from device inkplate6_1 (events are: result_picture: <html><img src=/fhem/images/inkplate6_1.result.png
Wo kommt das her?

Definition Display
defmod inkplate6_1 ESPEInk /opt/fhem/www/images/inkplate6_template_1.png
attr inkplate6_1 convertmode dithering
attr inkplate6_1 definitionFile /opt/fhem/FHEM/inkplate6_1.cfg
attr inkplate6_1 disable 0
attr inkplate6_1 height 600
attr inkplate6_1 room Display
attr inkplate6_1 verbose 5
attr inkplate6_1 width 800

setstate inkplate6_1 Error uploading image to device, max retries (3) reached
setstate inkplate6_1 2022-03-28 12:07:35 deftexts 0
setstate inkplate6_1 2022-03-28 12:12:52 result_picture <html><img src=/fhem/images/inkplate6_1/result.png?dummy=124345.308202571></img><div>/fhem/images/inkplate6_1/result.png</div></html>
setstate inkplate6_1 2022-03-28 12:07:27 source_picture <html><img src=/fhem/images/inkplate6_1/inkplate6_template_1.png?dummy=939955.375853586></img><div>/fhem/images/inkplate6_1/inkplate6_template_1.png</div></html>
setstate inkplate6_1 2022-03-28 12:12:52 updatestart 1648462372.79522



Die Konfiguration des Display, also die /opt/fhem/FHEM/inkplate6_1.cfg habe ich zusammengestaucht
Zitat
addtext#Wetter#10#540#11#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 29 März 2022, 11:39:17
Anbei mal eine neue Version, bei der die Warnings (hoffentlich) abgefangen sind. Dass die Warnings mehrfach kommen, liegt einfach daran, dass die Notify Funktion des Modules immer dann aufgerufen wird, wenn Events generiert werden (das ist einfach bei FHEM so) und im Rahmen der Prüfung dieser Events dann die Warnung aufläuft. Probiers bitte mal aus, falls es läuft und ansonsten keine anderen Merkwürdigkeiten auftreten, würde ich das dann auch freigeben.

ZitatDas Modul ist dieses, wobei sollte das nicht aktueller sein. Zumindest stand im Log das es hier ein Update gab
# $Id: 89_ESPEInk.pm 25054 2021-10-07 09:38:45Z eki $
Das ist die letzte offizielle Version, alle seit dem gemachten Änderungen sind in der angehängten Datei.

ZitatWeiter verwundet: Die Template Datei und Ergebnisdatei sind in diesem Verzeichnis
Zitat

    12:22:52 5: inkplate6_1: Event received from device inkplate6_1 (events are: result_picture: <html><img src=/fhem/images/inkplate6_1.result.png

Wo kommt das her?
Das kommt daher, dass diese Meldung für alle Events ganz am Anfang der Notify Funktion des Moduls erzeugt wird (ist ja auch verbose 5)
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: maltejahn am 29 März 2022, 14:59:09
Hallo,

das ist ein massive Erleichterung.

Ein Problem hatte ich noch mit der Formatierung einer Zahl "%2.f%" Fehler ins 1320; "%2.f%%" -> kein Fehler mehr

Da ich kein "Endgerät" habe: Hier unter maxretries null eingestellt. Somit kommt nur eine Meldung im Log inkplate6_1: problems with communication to device, max retries (0) reached

Oder macht es sine ein "nonUpload" device anzulegen (Aufwand zu groß)? Ergänzend zum ESP32 + ESP8266 - oder eben bei maxretries==0 nicht als Fehler sondern Infomäßig auf "Done"


Aber vielen Dank für die schnelle Lösung!
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 30 März 2022, 08:08:41
ZitatDa ich kein "Endgerät" habe: Hier unter maxretries null eingestellt. Somit kommt nur eine Meldung im Log
Code: [Auswählen]

inkplate6_1: problems with communication to device, max retries (0) reached

Oder macht es sine ein "nonUpload" device anzulegen (Aufwand zu groß)? Ergänzend zum ESP32 + ESP8266 - oder eben bei maxretries==0 nicht als Fehler sondern Infomäßig auf "Done"

Probier mal das Attribut "interval" auf -1 zu setzen (die Meldung möchte ich nicht wegnehmen, da ja auch bei maxretries=0 einmal ein Fehler aufgetreten ist).
Titel: Welche Hardware, Stand heute als Empfehlung?
Beitrag von: Dirk070 am 02 April 2022, 16:45:39
Hallo zusammen,

das Projekt hier klingt ja spannend, vielen Dank erstmal dafür.

ich bin auf der Suche nach einem Status-Display für FHEM, bzw. mehrere im Haus und dies können auch unterschiedliche Größen sein, da ich teils nur wenige Infos anzeigen müsste.

Bei Amazon finden sich die Waveshare-Produkte. Welche Kombination aus Driver-Board und Displays könntet ihr mir empfehlen?
Optimal wäre dazu ein Gehäuse und die Möglichkeit, das Display mit Akkus zu betreiben.

Danke Euch vorab und schöne Grüße
Dirk
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Dirk070 am 11 April 2022, 14:04:37
Vielleicht war ich dann doch zu vage mit meiner Frage.

Etwas konkreter, wenn ich diese Hardware nutze, ist dann alles, was benötigt wird und würdet Ihr diese Kombination empfehlen?
Beide benötigen 5V, die liefert z.B. ein iPhone-Ladegerät. Per USB funktioniert das wahrscheinlich nicht, sondern nur über die beiden ausgewiesenen Pins auf dem Board?
Also Kabel anlöten?

Es gibt auch Boards wie dieses hier LOLIN32 Lite, direkt mit Lithium Battery Interface. Daher meine Frage.
Link dazu https://www.amazon.de/LOLIN32-Bluetooth-Development-MicroPython-Bluetooth-Entwicklungsboard/dp/B07MC4Y73P/ref=sr_1_3?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=3N016RVHB8EC5&keywords=LOLIN32+Lite&qid=1649679243&sprefix=lolin32+lite%2Caps%2C84&sr=8-3 (https://www.amazon.de/LOLIN32-Bluetooth-Development-MicroPython-Bluetooth-Entwicklungsboard/dp/B07MC4Y73P/ref=sr_1_3?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=3N016RVHB8EC5&keywords=LOLIN32+Lite&qid=1649679243&sprefix=lolin32+lite%2Caps%2C84&sr=8-3)

Danke Euch und schöne Grüße
Dirk

Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: eki am 11 April 2022, 16:33:47
Du brauchst nur das Display ohne HAT (der ist nur für eine direkte Anbindung an den Raspberry). Also statt 1 das da:
https://www.amazon.de/HAT-Resolution-Electronic-Controller-Three-Color/dp/B075YVYT1Z/ref=sr_1_3?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=2GYJPOJZ6YB1N&keywords=waveshare%2B7.5&qid=1649677111&sprefix=waveshare%2B7.5%2Caps%2C84&sr=8-3&th=1 (https://www.amazon.de/HAT-Resolution-Electronic-Controller-Three-Color/dp/B075YVYT1Z/ref=sr_1_3?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=2GYJPOJZ6YB1N&keywords=waveshare%2B7.5&qid=1649677111&sprefix=waveshare%2B7.5%2Caps%2C84&sr=8-3&th=1)

Das ESP32 hat einen Mikro USB Anschluss, den kannst Du mit einem entsprechenden USB Netzteil versorgen und mehr brauchst du nicht. Wenn Du das Ganze per Batterie betreiben willst, dann musst Du den ESP zwischendurch schlafen legen (sonst hält die Batterie nicht lang) und dann z.B. über einen GPIO oder über das Einschalten der Stromversorgung rechtzeitig aufwecken, bevor Du neue Daten auf das Display schieben willst (könnte man über eine entsprechend geschaltete Stromversorgung oder eben über einen Schalter, der einen Interrupt fähigen GPIO schaltet machen). Das Display selbst braucht keinen Strom, solange das Bild nicht geändert wird, das Bild bleibt auch ohne Strom stehen.

Du musst schon das ESP32 von Waveshare verwenden, das Lolin32 hat ja gar keinen Anschluss für das Display.
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Dirk070 am 13 April 2022, 11:51:23
Hallo eki,

vielen Dank für Deinen Hinweis, ich habe die Hardware entsprechend bestellt. Ich bin gespannt.

Um den Stromverbrauch zu reduzieren, hatte ich auf die Lösung von Icinger gehofft:

Zitat von: Icinger am 09 Dezember 2019, 21:34:52
Mal eine kleine Info:

In Vorbereitung auf einen evtl. Akku-Betrieb habe ich die Software von meinem ESP32 jetzt dahingehend verändert, dass der ESP nach einem empfangenen Bild in den Deep-Sleep geht, und nach (aktuell 10 Minuten) wieder aufwacht.
Danach wartet er einfach auf das nächste Bild und geht wieder pennen.
Zusätzlich habe ich noch einen MQTT-Client eingebaut, der ein "online" sendet, bzw. als LWT halt "offline".
Somit könnte ich jetzt sogar die Bildübertragung direkt anstoßen und wäre nicht auf ein Intervall-Attribut angewiesen.
....

Dann wäre die Idee, wir hier auch schon mal angedacht, einen dickeren Bilderrahmen mit dünner Powerbank zu nutzen.
Ist die Software für den ESP32 von Icinger eigentlich hier im Forum vefügbar, im Thread habe ich sie noch nicht gesehen (oder übersehen?)

Danke nochmals und viele Grüße
Dirk
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: Dirk070 am 15 April 2022, 16:40:02
Noch eine Frage zu GD:
welcher der 4 Klassen müssen installiert werden?

gd::Image
gd::Font
gd::Polygon
gd::Simple

EDIT: hab's im Sourcecode gefunden, es wird nur "GD::Image" aufgerufen.

Danke und schöne Grüße
Dirk
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: maltejahn am 20 Mai 2022, 14:31:31
Hallo,

nach einigen Wochen läuft es soweit stabil. Ein "-1" reduziert allerdings nicht wirklich, aber erträglich:
2022.05.20 03:57:44 3: inkplate_6_hallway: sending HTTP request to http:///EPD with data: aa
2022.05.20 03:57:44 1: inkplate_6_hallway: problems with communication to device, max retries (-1) reached



Was komisch ist, vermutlich ist das schon immer vorhanden. Ab und zu kommt etwas in diese Richtung:
2022.05.20 04:00:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 23624
2022.05.20 04:00:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 23625
2022.05.20 04:00:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 23626
2022.05.20 04:00:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 23627
2022.05.20 04:00:30 1: Timeout for ESPEInk_DoConvert reached, terminated process 23628

Verbose zur Zeit auf 3


Neues Problemchen:

In Proplanta lasse ich mir per Userreadings ein neuen Eintrag erstellen der x (y) mit x= Windgeschwindigkeit, y= Wind in Boen
sein soll:
fc0_windboen_18 {ReadingsVal("WetterProplanta","fc0_wind18",0).' ('.ReadingsVal("WetterProplanta","fc0_gust18",0).')'},

Es wird auch ein reading erstellt, z.B.
Zitatfc0_windboen_18 25.2 (61.2)

Allerdings, wenn ich darauf wie auf jedes andere Reading zugreife erhalte ich diese Meldung:
2022.05.20 14:27:04 1: PERL WARNING: Argument "25.2 (61.2)" isn't numeric in sprintf at ./FHEM/89_ESPEInk.pm line 1320.
mit
textreading#WetterProplanta:fc0_windboen_18{%2.1f}#360#585#11#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

Das wollte ich deshalb so machen, weil ich ja Reading1 + " (" + Reading2 + ")" als string erstellen möchte, wobei die Readings variabel in deren Breite sind(Anzahl Zeichen)

Danke für die Unterstützung bisher!
Malte
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: hajo23 am 21 Mai 2022, 00:13:39
Zitat von: maltejahn am 20 Mai 2022, 14:31:31
...

Neues Problemchen:

In Proplanta lasse ich mir per Userreadings ein neuen Eintrag erstellen der x (y) mit x= Windgeschwindigkeit, y= Wind in Boen
sein soll:
fc0_windboen_18 {ReadingsVal("WetterProplanta","fc0_wind18",0).' ('.ReadingsVal("WetterProplanta","fc0_gust18",0).')'},

Es wird auch ein reading erstellt, z.B.
Allerdings, wenn ich darauf wie auf jedes andere Reading zugreife erhalte ich diese Meldung:
2022.05.20 14:27:04 1: PERL WARNING: Argument "25.2 (61.2)" isn't numeric in sprintf at ./FHEM/89_ESPEInk.pm line 1320.
mit
textreading#WetterProplanta:fc0_windboen_18{%2.1f}#360#585#11#0#000000#/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf#0#0

Das wollte ich deshalb so machen, weil ich ja Reading1 + " (" + Reading2 + ")" als string erstellen möchte, wobei die Readings variabel in deren Breite sind(Anzahl Zeichen)

Danke für die Unterstützung bisher!
Malte

Ich tippe auf {%2.1f} in deiner textreading-Definition. In fc0_windboen_18 wird deshalb eine Zahl erwartet, Du lieferst aber einen Text "25.2 (61.2)".
Titel: Antw:Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)
Beitrag von: maltejahn am 22 Mai 2022, 17:32:36
Hallo und vielen Dank! Einfach nur das Reading übernehmen ohne die Formatierung funktioniert ...

Grüße
Malte