NEWS
E-INK Display OpenEPaperLink - Displayanzeige mit Batterie
-
@draexler nein. Aber es gibt wohl einen Bug im esp32 Layout wo der wifi Sender vom Board den reset Knopf trigger đ Abhilfe gibt es indem man die wifi DB reduziert auf 8 reduziert. Das geht mit der 1.6 beta Firmware! Auch die neuen s3 haben das Problem.
https://www.wemos.cc/en/latest/c3/c3_mini_1_0_0.html
Was sagt denn der serial log?
@bimmi Log, sat leider nichts... Aber ich probiere es mal mit den DB Wert kleiner als 8. Ich berichte :-)
-
@bimmi Log, sat leider nichts... Aber ich probiere es mal mit den DB Wert kleiner als 8. Ich berichte :-)
-
Hmpf, die anfÀngliche Freude ist wieder gewichen. Seit Stunden bekommen meine Displays keine Updates mehr. AP auch schon mehrfach neugestartet und auch Batterien der Displays raus/rein.
Gibt es eigentlich irgendwelche Tricks bezgl. der Batterien?
-
Hmpf, die anfÀngliche Freude ist wieder gewichen. Seit Stunden bekommen meine Displays keine Updates mehr. AP auch schon mehrfach neugestartet und auch Batterien der Displays raus/rein.
Gibt es eigentlich irgendwelche Tricks bezgl. der Batterien?
@oxident die displays sind ja recht empfindlich auf die Spannungsversorgung.
Einfach beide Batterien in den Deckel legen und dann gleichzeitig zu machen. Vorher nochmal kurz resetten.
Meine laufen so extrem zuverlÀssig!
Hast du neue Batterien rein? Die displays sind ja gebraucht und die Batterien evtl nicht mehr ganz so frisch.
-
@oxident die displays sind ja recht empfindlich auf die Spannungsversorgung.
Einfach beide Batterien in den Deckel legen und dann gleichzeitig zu machen. Vorher nochmal kurz resetten.
Meine laufen so extrem zuverlÀssig!
Hast du neue Batterien rein? Die displays sind ja gebraucht und die Batterien evtl nicht mehr ganz so frisch.
@bimmi Alles klar, ich habe mich immer gefragt, warum die das in den YT-Videos immer so mit dem Deckel machen. Soll also heiĂen, die Batterien sollten möglichst gleichzeitig eingelegt werden?
Wie kann man die Tags denn ĂŒberhaupt resetten? Muss man dafĂŒr einen bestimmten Kontakt brĂŒcken?
Habe jetzt in der Tat erstmal neue Batterien geordert. Als die Tags noch funktionierten hatte ich in der Tat Spannungen von 2,4-2,5V. Erscheint mir auch ein bisschen zu wenig ;-)
-
@bimmi Alles klar, ich habe mich immer gefragt, warum die das in den YT-Videos immer so mit dem Deckel machen. Soll also heiĂen, die Batterien sollten möglichst gleichzeitig eingelegt werden?
Wie kann man die Tags denn ĂŒberhaupt resetten? Muss man dafĂŒr einen bestimmten Kontakt brĂŒcken?
Habe jetzt in der Tat erstmal neue Batterien geordert. Als die Tags noch funktionierten hatte ich in der Tat Spannungen von 2,4-2,5V. Erscheint mir auch ein bisschen zu wenig ;-)
-
@oxident Okey đ in diesem Video zeigt Aaron das man die Tags mit einem Kurzschluss resetten. Einfach die Batterien verkehrt herum einlegen oder mit einem Draht plus und minus BrĂŒcken.
-
@bimmi Alles klar. Mein Fehler war das Einsetzen der Batterien. Muss wirklich so wie im Video gemacht werden.
-
@oxident sehr gut! jetzt mĂŒssen wir nur noch die Bildergenerierung optimieren. GefĂ€llt mir noch nicht.
Eine puppeteer "queue" wÀre geil...
-
@bimmi Hmm, wie genau meinst du das mit der Queue?
Mit Javascript habe ich das ja jetzt eigentlich so am Laufen. Vielleicht verstehe ich aber das Problem noch nicht ;-)
-
@oxident ich hab festgestellt, dass puppeteer nicht mehr als 4 Screenshots gleichzeitig machen kann. Zumindest sieht es bei mir so aus. Daher eine queue đ
Hast du grad Javascript in ein blockly eingebettet? Oder reines js?
@bimmi Okay, das kann natĂŒrlich sein. Ich glaube auch, dass Puppeteer recht ressourcenintensiv ist.
Ich nutze das derzeit als reines Javascript so:function updateEPaperWithView(sView, sEPaperMac, imgWidth, imgHeight) { sendTo('puppeteer.0', 'screenshot', { url: 'http://localhost:8082/vis/index.html#' + sView, ioBrokerOptions: { storagePath: sView + '.jpg', }, waitOption: { waitForTimeout: 5000, }, viewportOptions: { width: imgWidth, height: imgHeight }, type: "jpeg", quality: 100 }, obj => { if (obj.error) { log(`Error taking screenshot: ${obj.error.message}`, 'error'); } else { //log('Sucessfully took screenshot'); sendImageToEPaper(obj.result, sEPaperMac); } }); } function sendImageToEPaper(objImage, sMac) { var request = require('request'); var options = { url: 'http://IP-VOM-AP/imgupload', method: 'POST', formData: { "dither": "0", "mac": sMac, "image": objImage }, }; request(options,function (error, response, body){ //log("Login-Antwort: " + JSON.stringify(response)); if(parseInt(body.error_code)==0) { } else { } }); } schedule("*/1 * * * *", function () { updateEPaperWithView("epaper_pool", "MAC1", 296, 128); updateEPaperWithView("epaper_solar", "MAC2", 128,296); });Da siehst Du im Prinzip am Ende, dass jede Minute nacheinander Screenshots von zwei verschiedenen VIS-Views (epaper_pool im Querformat und epaper_solar im Hochformat) erstellt und hochgeladen werden. Das lÀuft absolut sequentiell. Denke ich zumindest :face_with_rolling_eyes:
-
@bimmi Okay, das kann natĂŒrlich sein. Ich glaube auch, dass Puppeteer recht ressourcenintensiv ist.
Ich nutze das derzeit als reines Javascript so:function updateEPaperWithView(sView, sEPaperMac, imgWidth, imgHeight) { sendTo('puppeteer.0', 'screenshot', { url: 'http://localhost:8082/vis/index.html#' + sView, ioBrokerOptions: { storagePath: sView + '.jpg', }, waitOption: { waitForTimeout: 5000, }, viewportOptions: { width: imgWidth, height: imgHeight }, type: "jpeg", quality: 100 }, obj => { if (obj.error) { log(`Error taking screenshot: ${obj.error.message}`, 'error'); } else { //log('Sucessfully took screenshot'); sendImageToEPaper(obj.result, sEPaperMac); } }); } function sendImageToEPaper(objImage, sMac) { var request = require('request'); var options = { url: 'http://IP-VOM-AP/imgupload', method: 'POST', formData: { "dither": "0", "mac": sMac, "image": objImage }, }; request(options,function (error, response, body){ //log("Login-Antwort: " + JSON.stringify(response)); if(parseInt(body.error_code)==0) { } else { } }); } schedule("*/1 * * * *", function () { updateEPaperWithView("epaper_pool", "MAC1", 296, 128); updateEPaperWithView("epaper_solar", "MAC2", 128,296); });Da siehst Du im Prinzip am Ende, dass jede Minute nacheinander Screenshots von zwei verschiedenen VIS-Views (epaper_pool im Querformat und epaper_solar im Hochformat) erstellt und hochgeladen werden. Das lÀuft absolut sequentiell. Denke ich zumindest :face_with_rolling_eyes:
@oxident ok, ja im javascript schaut das gut aus soweit. Das wĂ€re fĂŒr mich auch kein Problem. Bin halt eher der quick&dirty typ und mal fix in blockly was zusammen gestellt ist fĂŒr mich einfacher! :dog:
aktualisierst Du auch den Tag in Dauerschleife? Die Batterien halten laut Hersteller 5 Jahre bei 2 Aktualisierungen tÀglich!
-
@oxident ok, ja im javascript schaut das gut aus soweit. Das wĂ€re fĂŒr mich auch kein Problem. Bin halt eher der quick&dirty typ und mal fix in blockly was zusammen gestellt ist fĂŒr mich einfacher! :dog:
aktualisierst Du auch den Tag in Dauerschleife? Die Batterien halten laut Hersteller 5 Jahre bei 2 Aktualisierungen tÀglich!
@bimmi said in EPS E-INK Display Ansteuerung -> Statusdisplay fĂŒr 2âŹ:
aktualisierst Du auch den Tag in Dauerschleife? Die Batterien halten laut Hersteller 5 Jahre bei 2 Aktualisierungen tÀglich!
Hoppla, ja, derzeit schon. Aber der AP ist ja zum GlĂŒck so schlau und sendet nur, wenn sich der Inhalt auch geĂ€ndert hat. Erstaunlicherweise klappt das auch mit den Puppeteer-Screenshots super. Da ich mir aber auch die PV-Leistung (im 15min-Mittel) anzeigen lasse mĂŒsste dort wohl noch optimiert werden ;-)
Danke fĂŒr den Hinweis!
-
@bimmi said in EPS E-INK Display Ansteuerung -> Statusdisplay fĂŒr 2âŹ:
aktualisierst Du auch den Tag in Dauerschleife? Die Batterien halten laut Hersteller 5 Jahre bei 2 Aktualisierungen tÀglich!
Hoppla, ja, derzeit schon. Aber der AP ist ja zum GlĂŒck so schlau und sendet nur, wenn sich der Inhalt auch geĂ€ndert hat. Erstaunlicherweise klappt das auch mit den Puppeteer-Screenshots super. Da ich mir aber auch die PV-Leistung (im 15min-Mittel) anzeigen lasse mĂŒsste dort wohl noch optimiert werden ;-)
Danke fĂŒr den Hinweis!
-
@draexler der serial log wenn du ihn direkt am Rechner hÀngen hast sagt nix? Mit terraterm oder so
@bimmi Am Rechner habe ich jetzt keine Logs gezogen. Aber das regulieren des DB Wertes war die Lösung. Keine AbbrĂŒche mehr seit zwei Tagen. Danke fĂŒr den Tipp.
-
Alles klar, habe es jetzt mal selber "gefrickelt". Hierzu habe ich im Vis eine View erstellt und mir dort als Hilfsmittel einen 296x128px Rahmen gezogen. AuĂerdem habe ich den Adapter "Puppeteer" installiert.
Im Vis tobe ich mich dann innerhalb des Rahmens aus und nutze folgendes Javascript:
sendTo('puppeteer.0', 'screenshot', { url: 'http://localhost:8082/vis/index.html#NAME_DER_VIEW', ioBrokerOptions: { storagePath: 'test.jpg', }, waitOption: { waitForTimeout: 5000, }, viewportOptions: { width: 296, height: 128 }, type: "jpeg", quality: 100 }, obj => { if (obj.error) { log(`Error taking screenshot: ${obj.error.message}`, 'error'); } else { log('Sucessfully took screenshot'); sendImageToEPaper(obj.result, "MAC-VOM-DISPLAY"); } }); function sendImageToEPaper(objImage, sMac) { var request = require('request'); var options = { url: 'http://IP-VOM-AP/imgupload', method: 'POST', formData: { "dither": "0", "mac": sMac, "image": objImage }, }; request(options,function (error, response, body){ //log("Login-Antwort: " + JSON.stringify(response)); if(parseInt(body.error_code)==0) { } else { } }); }@oxident
Danke fĂŒr das Javascript - das Funzt wirklich klasse,
so kann ich verschiedene Ansichten zu bestimmten Ereignissen anzeigen lassen.Auf einem Display nutze ich die "Buienradar" Regenvorhersage. Auch hier wĂŒnsche ich mir temporĂ€re Ereignisansichten. WeiĂt du wie ich die "Buienradar" Ansicht mit einem Javascript wiederhole?
-
habe es leider immer noch nicht geschafft ein funktionierendes blockly zu erstellen. ich hĂ€nge immer noch bei den clip einstellungen. leider ĂŒbernimmt mir das doofe ding die settings nicht. :deer:
Er ĂŒbernimmt mir zwar path, url und quality und speichert den screenshot auch da wo ich ihn haben möchte, aber das mit der höhe und breite haut null hin. immer 800x600. Ebenso ĂŒbernimmt er nicht den waitforselector wie in der puppeteer api beschrieben.
Da ich jeden Display ĂŒber Datenpunkte einstelle, wĂ€re ein blockly fĂŒr mich am einfachsten.

Hat noch jemand ne idee?
-
habe es leider immer noch nicht geschafft ein funktionierendes blockly zu erstellen. ich hĂ€nge immer noch bei den clip einstellungen. leider ĂŒbernimmt mir das doofe ding die settings nicht. :deer:
Er ĂŒbernimmt mir zwar path, url und quality und speichert den screenshot auch da wo ich ihn haben möchte, aber das mit der höhe und breite haut null hin. immer 800x600. Ebenso ĂŒbernimmt er nicht den waitforselector wie in der puppeteer api beschrieben.
Da ich jeden Display ĂŒber Datenpunkte einstelle, wĂ€re ein blockly fĂŒr mich am einfachsten.

Hat noch jemand ne idee?
-
habe es leider immer noch nicht geschafft ein funktionierendes blockly zu erstellen. ich hĂ€nge immer noch bei den clip einstellungen. leider ĂŒbernimmt mir das doofe ding die settings nicht. :deer:
Er ĂŒbernimmt mir zwar path, url und quality und speichert den screenshot auch da wo ich ihn haben möchte, aber das mit der höhe und breite haut null hin. immer 800x600. Ebenso ĂŒbernimmt er nicht den waitforselector wie in der puppeteer api beschrieben.
Da ich jeden Display ĂŒber Datenpunkte einstelle, wĂ€re ein blockly fĂŒr mich am einfachsten.

Hat noch jemand ne idee?
-
@bimmi said in EPS E-INK Display Ansteuerung -> Statusdisplay fĂŒr 2âŹ:
aktualisierst Du auch den Tag in Dauerschleife? Die Batterien halten laut Hersteller 5 Jahre bei 2 Aktualisierungen tÀglich!
Hoppla, ja, derzeit schon. Aber der AP ist ja zum GlĂŒck so schlau und sendet nur, wenn sich der Inhalt auch geĂ€ndert hat. Erstaunlicherweise klappt das auch mit den Puppeteer-Screenshots super. Da ich mir aber auch die PV-Leistung (im 15min-Mittel) anzeigen lasse mĂŒsste dort wohl noch optimiert werden ;-)
Danke fĂŒr den Hinweis!
@oxident @bimmi Kann man die Empfindlichkeit, bei der der AP ein neues Bild als solches erkennt irgendwo anpassen? Momentan bediene mit dem Script von @oxident 4 Tags. Ich habe das Problem, das der AP im Log bei 2 der Tags immer meldet, es gĂ€be nichts zu senden, da sich der Inhalt nicht geĂ€ndert habe. Da ich immer die Uhrzeit des Snapshots in diesem mitsende, halte ich das fĂŒr sehr unwahrscheinlich. Wo kann ich mir die erstellten Snapshots ansehen?
Das Ganze sieht dann so aus:

