Autor Thema: Neues Modul: ESPEInk für e-Paper Displays (Name geändert, war ESP8266EInk)  (Gelesen 46983 mal)

Offline eki

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1408
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.

Offline Shortie

  • New Member
  • *
  • Beiträge: 37
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.

Offline hajo23

  • New Member
  • *
  • Beiträge: 45
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.

Offline Borkk

  • Full Member
  • ***
  • Beiträge: 464
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
2xDocker@Raspi4: FHEM1 (Main) / FHEM2 (Connect)/ ConBeeII / Homebridge / Nginx ReverseProxy / ConfigDB / DBLog / Grafana usw.
Raspberrymatic@Raspi3: div. HmIP Akt- und Sensoren
Alexa; ASC; Gardena; Netatmo; Withings; Pioneer; LG; Harmony; FritzBox; Tado°; HOMEMODE; iBeacon, OLED ; ESP8266 ...

Offline eki

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1408
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).

Offline Borkk

  • Full Member
  • ***
  • Beiträge: 464
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?
2xDocker@Raspi4: FHEM1 (Main) / FHEM2 (Connect)/ ConBeeII / Homebridge / Nginx ReverseProxy / ConfigDB / DBLog / Grafana usw.
Raspberrymatic@Raspi3: div. HmIP Akt- und Sensoren
Alexa; ASC; Gardena; Netatmo; Withings; Pioneer; LG; Harmony; FritzBox; Tado°; HOMEMODE; iBeacon, OLED ; ESP8266 ...

Offline m.zielinski

  • Jr. Member
  • **
  • Beiträge: 78
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)

 

decade-submarginal