An alle die sich einen übertriebenen Wohnungsputz-Weihnachtsstress machen.
Es kommt das Christkind - nicht das Gesundheitsamt.
Trotzdem eine frohe Weihnachtszeit und einen guten Rutsch in das neue Jahr.
An alle die sich einen übertriebenen Wohnungsputz-Weihnachtsstress machen.
Es kommt das Christkind - nicht das Gesundheitsamt.
Trotzdem eine frohe Weihnachtszeit und einen guten Rutsch in das neue Jahr.
@mcm57
Displays:
www.tindie.com/products/electronics-by-nic/5-pcs-29-epaper-tags-for-openepaperlink
AP:
www.tindie.com/products/electronics-by-nic/openepaperlink-mini-ap-v3-zigbee-wifi-gateway/
@doggie sagte in Wasserzähler - Version 2 - all-in-device:
Mir scheint das ganze AI on the edge Projekt ist nicht annähernd ausgereift. Sehr, sehr schade. Und enttäuschend.
Was sagen andere dazu?
Gibt es eigentlich Systeme die fehlerfrei laufen?
Als Entwickler des Systems würde mich so ein Fehler nicht schlafen lassen.
Ein klein wenig Demut wäre nicht schlecht. Hier macht jemand ein Projekt in seiner Freizeit. Alles kostenlos. Letztendlich ist es "Bastelei". Was nicht bedeutet das es sehr, sehr gute Projekte sind.
Wenn ein 100% zuverlässiges System gesucht wird, sollte man sich event. im Fachhandel umschauen. Ob dort die entsprechenden System und Programme auch kostenlos angeboten werden, kann ich so nicht sagen. Ich glaube aber eher nicht.
Grüße
Manfred
Vielen Dank.
Ich liebe dieses Forum und die Leute darin.
@bananajoe sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:
@beowolf hast du die selbst geflasht? In der Bucht sind die gerade zu kaufen und ich starre gerade schon eine ganze weile auf das Pinout wo ich denn ran müsste ... (ich bin Tasmota-verwöhnt, da wird immer ein Bild hinterlegt welche Pins man nehmen muss)
Eines vorab. Das ist nicht auf meinem Mist gewachsen. Ich habe das auch nur mit der Hilfe von Aaron Christophel hin bekommen.
Vielen, vielen Dank dafür.
Hier z.B. ein Video von ihm.
https://www.youtube.com/watch?v=8oQdo9bJ7Rk
Es geht um diesen TAG
https://github.com/jjwbruijn/OpenEPaperLink/wiki/2.9″-EL029H3WRA#pinout
Für den Anschluss und Positionierung der POGO-Pins geht dieses z.B.
https://github.com/jjwbruijn/OpenEPaperLink/blob/master/Hardware/M3 Newton Jigs by Jelmer/M3-2.9.stl
Ich habe dieses
https://github.com/jjwbruijn/OpenEPaperLink/tree/master/Tag_Flasher
herunter geladen.
Nun in das Verzeichnis ESP32_Flasher wechseln und dann mit der Hilfe von Visual Studio Code den Flasher auf einen ESP32 S2 aufgespielen.
Den ESP dann so wie hier mit dem TAG verbinden.
Nun ein Verzeichnis höher gehen. Also in den Tag_Flasher Ordner gehen.
Dann diese Datei herunterladen und in das Verzeichnis ablegen.
https://github.com/jjwbruijn/OpenEPaperLink/blob/master/binaries/Tag/SOL_M3_Uni_full_26.bin
Ich habe es mit diesem Befehl gemacht.
python3 OEPL-Flasher.py -p COM11 -e -n write SOL_M3_Uni_full_26.bin --flash --pt
COM11 natürlich anpassen.
Für das Flashen muß auf dem Rechner Python installiert sein.
Hier die passende Version laden.
Bei dem Versuch kamen bei mir ein paar Meldungen das diese oder jenes nicht da ist.
Ich musste z.b. dieses nachinstallieren: "pip install pyserial". Sollten da noch Meldungen kommen. einfach kurz bei google suchen.
Danach sollte der Tag mit OPenEPaper geflasht sein.
Ich hoffe ich habe nichts vergessen.
Halloö zusammen,
event. ist das ja etwas für den ein oder anderen.
https://www.tindie.com/products/muino/smart-water-meter-reader/
Grüße
@bananajoe sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:
@beowolf sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:
Ich bin ein wenig Ratlos und weiß nicht wo ich anfangen soll.
Hier mal grob in Schritten zusammengefasst:
Schritt 1: Eigene VIS für die ePaper Tags
.........
Für die schwarzen TAGs muß die Auflösung geändert werden. Sonst gibt es nur Schrott in der Anzeige.
Also auf 384 x 168 Pixel
Grüße
So, ich habe jetzt das Skript mal ein wenig umgebaut.
sendTo('puppeteer.0', 'screenshot', {
url: urlOfVISView,
path: imageSaveToFilenameWithPath,
width: viewWidth,
height: viewHeight,
quality: jpgQuality,
waitOption: {
waitForSelector: waitForSelector,
waitForTimeout: 20000
},
fullPage: false,
clip: {
x: cutoutX,
y: cutoutY,
width: cutoutWidth,
height: cutoutHeight
}
}, obj => {
if (obj.error) {
console.warn("Fehler beim Aufruf der View: " + urlOfVISView + " => " + obj.error.message);
} else {
const http = require('http');
const https = require('https');
const { URL } = require('url');
const boundary = '--------------------------' + Date.now().toString(16);
const CRLF = '\r\n';
// Payload-Erstellung
const payload = Buffer.concat([
Buffer.from(`--${boundary}${CRLF}Content-Disposition: form-data; name="dither"${CRLF}${CRLF}0${CRLF}`),
Buffer.from(`--${boundary}${CRLF}Content-Disposition: form-data; name="mac"${CRLF}${CRLF}${ePaperMAC}${CRLF}`),
Buffer.from(`--${boundary}${CRLF}Content-Disposition: form-data; name="image"; filename="screenshot.jpg"${CRLF}Content-Type: image/jpeg${CRLF}${CRLF}`),
Buffer.from(obj.result, 'binary'),
Buffer.from(`${CRLF}--${boundary}--${CRLF}`)
]);
// URL Parsing
const url = new URL(imageUploadURL);
const options = {
hostname: url.hostname,
port: url.port || (url.protocol === 'https:' ? 443 : 80),
path: url.pathname + (url.search || ''),
method: 'POST',
headers: {
'Content-Type': 'multipart/form-data; boundary=' + boundary,
'Content-Length': payload.length
}
};
// Protokollwahl
const protocol = url.protocol === 'https:' ? https : http;
// HTTP Request
const req = protocol.request(options, function(res) {
console.log('ImageUploadStatusCode:', res.statusCode);
res.on('data', function(chunk) {
console.log('Response:', chunk.toString());
});
});
req.on('error', function(e) {
console.error('Fehler beim Hochladen:', e.message);
});
req.write(payload);
req.end();
}
});
Na ja, ich bin jetzt mal ehrlich. Ich habe ChatGPT solange damit gernervt bis ich eine Version hatte die jetzt funktioniert.
Ich habe keine Ahnung was da wie gemacht wird, aber es läuft. Die TAG werden sehr schnell aktualisiert und alles ohne Fehlermeldungen.
Grüße
Manfred
Genau für den Fall, weil "request" nicht mehr geht, hatte ich doch das Skript geändert.
Hier läuft es ohne Probleme mit der Java-Skriptversion 8.3.1
Das das mit Javascript zusammen hängt hatte ich auch schon gedacht. Die Bildchen werden ja schließlich immer sehr schnell erstellt.
@haselchen
Die Anleitung kenne ich.
Bei den grossen Displays sieht dann die Terminansicht so aus.
Das hilft mir leider nicht weiter.
Auf den kleinen sieht der selbe Link so aus.
@eisbaeeer
Hatte ich doch auch geschrieben. Ich habe seit einem "komplett" Update auch nur noch Probleme mit Puppeteer und dem Skript..
Hab´ da noch mal eine Frage.
Der ical-Adapter gibt mir das im Datenpunkt "Text" zurück. Ist ja schon so formatiert.
Übermorgen 10:00-11:00 Termin vereinbaren
Übermorgen 11:30-12:30 Partale
In 6 Tagen Papiertonne Fa. Ahlert Königstraße, Greven
27.01.2025 Gelber Sack/Gelbe Tonne Königstraße, Greven
28.01.2025 Restmüll Königstraße, Greven
10.02.2025 Gelber Sack/Gelbe Tonne Königstraße, Greven
11.02.2025 Restmüll Königstraße, Greven
18.02.2025 08:15-09:15 Tante
24.02.2025 Gelber Sack/Gelbe Tonne Königstraße, Greven
25.02.2025 Restmüll Königstraße, Greven
28.02.2025 Papiertonne Fa. Ahlert Königstraße, Greven
10.03.2025 Gelber Sack/Gelbe Tonne Königstraße, Greven
11.03.2025 Restmüll Königstraße, Greven
18.03.2025 12:00-13:00 Abholung
Wie bekomme ich das so schön auf ein grosses Display?
Da der ganze VIS Kram mit Puppeteer anscheinend nicht mehr so richtig funktioniert, gibt es eine andere schöne Möglichkeit wie man Kalenderdaten usw. auf größeren Displays darstellen kann?
ical usw. gibt die Daten ja als html oder json raus.
Nur wie bekomme ich das an die Displays gesendet?
@bananajoe sagte in E-INK Display OpenEPaperLink - Displayanzeige mit Batterie:
@beowolf sagte in E-INK Display OpenEPaperLink - Displayanzeige mit Batterie:
#w00016
finde ich da - welchen hast du genommen und wie klappt es wenn du #w00016 nimmst?
Einen #w00016 gibt es dort nicht.
Das komische ist, egal welchen "VIS-TAG Bild" ich in einem Browserfenster aufrufe, es steht immer der #w00016 drin.
Trage ist die #w00016 ein kommt die Fehlermeldung auch.
Ich habe das jetzt mal mit einem neuen VIS-View gemacht. Hat nichts mit den TAGs zu tun. Einfach ein paar Widgets eingefügt. Der Seitenqelltext ist auch dort identisch mit den VIEWs der TAGs.
@bananajoe sagte in E-INK Display OpenEPaperLink - Displayanzeige mit Batterie:
Schau dir die Seite im Webbrowser an
Du meinst die VIS erzeugte Web-Seite, richtig?
Also das z.B.:
http://192.168.49.38:8082/vis/index.html?E-Paper-Allgemein#EmsPegel
Dort gibt es nur eine Zeile in der überhaupt etwas mit #w000 steht
data-vis-prev='<div id="prev_tplSTab" style=" position: relative; text-align: initial;padding: 4px "><div class="vis-widget_prev ui-selectee" style="top: 76px; left: 23px; width: 138px; height: 121px; position: absolute;" > <div class="vis-widget-prev-body"> <span style="width:100%;height:100%" class="ui-slider-tabs"> <!-- Unordered list representing the tabs --> <div class="ui-slider-tabs-list-wrapper"><div class="ui-slider-tabs-list-container" style="margin: 0px 35px;"><ul class="ui-slider-tabs-list" style="margin-left: 0px; width: 166px;"> <li class="selected" style="height: 32px;"><a href="#w00016_st1" style="height: 32px;">Tab</a></li><li style="height: 32px;"><a href="#w00016_st2" style="height: 32px;">Tab</a></li><li style="height: 32px;"><a href="#w00016_st3" style="height: 32px;">Tab</a></li></ul><a href="#" class="ui-slider-left-arrow edge" style="width: 35px; height: 32px;"><div></div></a><a href="#" class="ui-slider-right-arrow" style="width: 35px; height: 32px;"><div></div></a></div></div><div class="ui-slider-tabs-content-container" style="height: 86px;"><div style="padding-left: 0px; height: 100%; display: block; left: 0px; width: 126px;" class="ui-slider-tab-content selected"> <div class="editmode-helper"></div> <div data-vis-contains="hallo" class="vis-widget-body vis-view-container"></div> </div><div style="padding-left: 0px; height: 100%; left: 138px; width: 126px;" class="ui-slider-tab-content"> <div class="editmode-helper"></div> <div data-vis-contains="" class="vis-widget-body vis-view-container"></div> </div><div style="padding-left: 0px; height: 100%; left: 138px; width: 126px;" class="ui-slider-tab-content"> <div class="editmode-helper"></div> <div data-vis-contains="" class="vis-widget-body vis-view-container"></div> </div></div></span> </div> </div>'
data-vis-set="tabs"
@bananajoe
Muß das immer der niedrigste sein, oder eicht wenn es einer aus dem View ist?