ePaper (e-ink) Tags mit OpenEPaperLink (OEPL) verwalten

Worum geht’s?

Vor gut zwei Jahren bekam ich mit, dass die ePaper-Displays, de z.B. in Supermärkten die gedruckten Preisschilder zusehends ablösten, in der Hardware-Hacker- und Maker-Community ‘angekommen’ waren. Damals verhalf mir Aaron Christophel (atc1441), dankenswerterweise zu ein paar “SOLUM GR29000 ePaper Price Tags”, die mit ihrer Diagonale von 2,9″ (~7cm) eine vernüftige “Leinwand” für Experimente boten. Inzwischen sind Preisschilder in ebook-Reader Größe, mit über 5 Zoll, z.B. bei Lidl, ein üblicher Anblick.
So begab es sich also zu der Zeit, dass ich an Weihnachten 2022 einen “ZBS Flasher” aufbaute und ein paar Displays mit der alternativen Firmware für das ePaper Server Project bespielte. Das Projekt nutzte einen ESP8266 oder ESP32 mit einem CC2531 Zigbee-Dongle, um die Displays aus direkter Nähe mit statischen Bildern zu versorgen. Die vergangenen 2 Jahre war so ein Display hier als “Gäste-WLAN Zettel” im Einsatz: unsere Besucher konnten davon die Zugangsdaten ablesen, das Handy mit einem QR Code konfigurieren oder (über ein aufgeklebtes RFID-Tag) per NFC konfigurieren. Das Schöne an den ePaper Displays ist, dass sie keinen Strom benötigen, wenn der Inhalt nur angezeigt, aber nicht verändert werden soll. So lag unser Guest WiFi Tag zwei Jahre “funktionsfähig” ohne Batterien neben dem Telefon…

Auftritt OpenEPaperLink

Bereits ein Jahr später, im Januar 2023, startete Jonas Niesner dann das Projekt OpenEPaperLink (“OEPL”), das eine bessere Verwaltung der Tags erlaubt. Kern der Projekts sind zwei ESP32: der erste (ein ESP-S3 mit PSRAM) übernimmt die Darstellung eines Webfrontends zur Verwaltung der Tags und der zweite (ein ESP32-C6 oder -H2), dient zur Kommunikation mit den Tags über das (modifizierte) Zigbee Protokoll. So ist es nun bequem möglich, mehrere Duzend Displays zu verwalten, und ihnen Funktionen wie eine Google Kalenderanzeige, die Anzeige des Wetters oder eben weiterhin statischer Bilder zu geben.

Da ich wieder etwas Zeit an der Hand hatte, lag es nahe, mein ePaper-Server Setup upzugraden.

Das OpenEPaperLink Projekt auf GitHub beschreibt in seinem Wiki recht detailiert ein paar Startpunkte für einen OEPL Server. Ich entschied mich für den sog. “Spaghetti-AP”, bei dem die beiden ESP über Dupont Steckkabel miteinander verbunden werden.

Einkaufsliste AP

Der Spaghetti-Server benötigt:

  • einen ESP32 mit ausreichend PSRAM, wie einen ESP32-S3 N16R8 (z.B. auf AliExpress oder ebay) für ca. 6-10 €
  • einen ESP32 mit Zigbee Protokoll, wie den ESP32-C6 oder -H2 (hier oder dort) für nochmal 6-12 €
  • ein USB-C Kabel, um die Microcontroller zu betanken
  • ein USB-Netzteil, um den AP ggfs. später unabhängig von einem Rechner zu betreiben

Umsetzung

Das OEPL Wiki beschreibt, wie die beiden ESP32 zusammengesteckt werden. Das kann entweder über Dupont-Kabel oder durch verlöten geschehen. Die Steck-Variante ist für den Beginn zu empfehlen, um zu testen, ob der Aufbau funktoniert. Insbesondere falls die gekauften Boards von den Beschriebenen abweichen, kann man so schnell den einen oder anderen Port umstecken!

È pronto… Spaghetti-AP: oben der C6 für die Zigbee Kommunikation und unten der S3 für die WiFi-Kommunikation.

Für einen dauerhaften oder regelmäßigen Betrieb empfiehlt sich die verlötete Variante: Bei meinen 2 Tagen “Dauerbetrieb” mit fliegender Verkabelung, schien es als machte die Steckverbindung das eine oder andere Mal Pause, was nach einem beherzten ‘wackel’ mal am Kabel’ und einem Neustart der ESPs “geheilt” wurde.

sobald die ESP verkabelt sind, werden sie mit der nötigen Firmware geladen. Am bequemsten verrichtet man dies direkt im Browser, mit dem Web-Flasher unter install.openEPaperLink.org. Hier ist darauf zu achten, für den Spaghetti-AP den “Yellow AP” auszuwählen. Die Website funktioniert nur unter Chromium-basierten Browsern (Google Chrome oder MS-Edge). Nachdem der ESP mit dem USB-Port des Computers verbunden ist, gilt es den richtigen COM-Port auszuwählen. Dann wird der erste der beiden ESP32 geflashed. Der Flash-Vorgang benötigt etwa eine Minute. Nach einem Reset des ESP wird der Vorgang mit dem “Yellow AP” wiederholt. Dabei “merkt” der Web-Flasher, dass der erste ESP bereits versorgt ist und bespielt dann den zweiten ESP, der später für die Komunikation mit den Displays genutzt ird, mit einer eigenen Firmware.

Nach einem weiteren Reset kann der OEPL Server dann endlich konfiguriert werden. Dazu spannt der ESP ein eigenes Konfigurations-WLAN (SSID: OpenEpaperLink) auf. Am einfachsten betritt man mit dem Smartphone oder dem Computer das WLAN, und konfiguriert (http://192.168.4.1/setup) initial das eigene Heim-WLAN. So ist der OEPL Server später bequem aus dem LAN erreichbar. Eine feste Adresszuweisung und ein “merkbarer” Name, den man in der Fritz!Box für den AP vergibt, erleichtern auch in ein paar Monaten die Verbindung…

Die Displays vorbereiten…

Da ich, wie in der Einleitung beschrieben, vor zwei Jahren bereits ein paar der Displays mit einer alternativen Firmware für den ePaper Server beglückt hatte, hatte ich die Hoffnung, dies nicht nochmals tun zu müssen. Meine Suche führte zu keinem eindeutigen Ergebnis. Zwar beschreibt das OEPL Wiki zwar recht detailliert verschiedene Tags und die nötige Firmware, aber die eigentliche Antwort auf meine konkrete Frage gab erst eine EMail von Aaron Christophel:

… da gehen sie hin, die Hoffnungen auf einen quick-and-dirty Nachmittagshack: mal schnell den AP zusammenstecken und eine Stunde später Erfolg vermelden ;-).
Aber dennoch: Danke, Aaron, für die schnelle Antwort! <3

Einkaufsliste für den Flasher

Um die Tags mit der alternativen Firmware zu betanken, müssen wir nochmals Hand anlegen, da dies nur über die Schnittstelle auf dem Board geht.

Dazu benötigen wir:

  • einen “einfachen” ESP32, wie z.B. den ESP32-S2 mini (Ali, Elektrobucht) für ca. 3 Euro
  • einen Adapter, um die Preisschilder an den Microcontroller anzubinden.

Insbesondere für den Adapter gibt es eine Reihe von Möglichkeiten. Möchte man nur mal 1-2 Displays betanken, kann es ausreichen, die notwendigen 9 Käbelchen direkt auf die Platine des Displays zu löten. spätestens nach dem dritten Display schaut man sich aber nach einer anderen Möglichkeit um. Hier bietet es sich an Federkontaktleisten, sog. “Pogo Pins” zu besorgen, die man z.B. in ein 3D-gedrucktes Element einklebt und mit dem ESP32 verbindet. Damit kann man je nach Modell und Aufwand mehr oder weniger bequem viele Displays in Serie flashen, indem man die Pins auf die Kontakte des Displays drückt:

  • Pogo Pins mit 1mm Durchmesser bei AliExpress oder ebay (ruhig ein paar mehr ordern..)
  • eine Aufnahme für die Pins. Hier gibt es 3D-Druck Modelle für verschiedene Displaytypen: Hier mein Modell für die SOLUM Tags.
  • Die Pins lassen sich m.E. am einfachsten mit Lackdraht verlöten. Etwas Vorsicht ist danach beim Umgang mit dem “Rigg” geboten, damit die Kabel nicht abreissen.

Vor zwei Jahren hatte ich bereits den ZBS-Flasher gebaut. Weil nun OEPL den alten ePaper Server ablösen sollte, habe ich einfach meinen Pogo Pin Adapter “kannibalisiert” und an den S2 mini gelötet. Die ersten Displays waren dann auch irgendwann mit der OEPL Firmware beschrieben.

Für neue Tags ist es wichtig, dass die MAC-Adresse des Tags in einen separaten Speicherbereich, die Infopage, geschrieben wird. der OEPL Flasher bietet hierfür die Option -info an. Ich habe mir für den Flash-Vorgang ein Skript geschrieben das diesen Vorgang automatisiert. Mehr dazu in einem weiteren Artikel.

Programmieradapter (“Rigg”) mit Pogo-Pins: Nicht hübsch, aber hässlich!

Nach einem Reboot melden sich die Displays dann mit der Firmware Message und, abhängig davon, ob man daran gedacht hat, ihnen die passende MAC-Adresse mitzugeben, warten sie geduldig auf einen Link zum OEPL Access Point (AP).

Sobald der OEPL AP richtig funktioniert, erscheinen die Tags dort im Interface und können testweise beschrieben werden. Sollte man noch kein passend skaliertes Bild zur Verfügung haben, bietet der OEPL AP die Möglichkeit, eine Reie vordefinierter Automationen zu laden, wie z.B.:

  • aktuelles Datum
    • aktuelles Wetter am Standort
    • Wettervorhersage
    • QR-Code

Eigene Inhalte

Das Wiki bietet bereits eine Reihe guter Tipps, wie eigene Bilder am optisch besten auf den Tags erscheinen. Ich plane dazu einen separaten Artikel, in dem ich Beispiele vorstelle, Templates verlinke und einige Schriftarten aufzeige, die für eInk besonders geeignet sind.

Links

Android Folder Sync: Verbindungsprobleme mit neuem Debian/Ubuntu/OMV

Nach einem Upgrade von OpenMediaVault (OMV) auf die aktuelle Version 6.0 funktioniert der Samba/CIFS Login mit SMB1 nicht mehr. Das liegt daran, dass das Sicherheitskonzept von SMB1 seit Jahren veraltet ist und der Server-Default nun die Protokollvariante SMB2 ist.

Clients, die sich noch mit SMB1 verbinden, laufen auf einen Fehler und müssen auf SMB2 umgestellt werden.

In Folder Sync ist dazu ein neuer Account im “Konten”-Tab zu erstellen, der als Account-Typ SMB2 benutzt. Dieser neue Account wird dann in den “Ordnerpaaren” gegen den alten SMB1 Account ausgetauscht. Achtung: dabei wird der “Remote-Ordner” aus der Konfiguration entfernt und muss neu gewählt werden. Vergessliche machen vor der Änderung einen Screenshot vom Konfigurationsfenster. ;-)

Es ist soweit: 5 Jahre sind um!

Seitdem die Automobilkonzerne and selbstfahrenden Fahrzeugen arbeiten, werden sie immer wieder gefragt, wann diese denn für den Massenmarkt verfügbar werden. Die Antwort: in fünf Jahren! Immer. Jedesmal.

Seit gefühlt 15 Jahren warten wir darauf, dass fünf Jahre um sind. Jetzt ist es endlich soweit: Cruise nimmt in San Francisco selbstfahrende Taxis in Betrieb. Herzlichen Glühstrumpf und danke, dass ihr uns endlich erlöst habt!

Dann können wir uns jetzt darauf konzentrieren, den nächsten industriellen Quantensprung Zu erleben: Der Roboter als Haushaltshilfe. In …. Moment … fünf Jahren sollte es soweit sein!

BTW: Für alle, denen 5 Jahre zu lang sind, empfehle ich, den Zeitraum greifbarer umzurechnen: in nur 260 Wochen steht der Robby in der Küche und schalt die Kartoffeln!

Na dann…

:06:08:03: mac mini ganz groß!

ich habe einen der ersten mac mini mit intel prozessor “übrig” gehabt, den ich als heimserver einrichten wollte. aus verschiedenen gründen, die ich in einem anderen posting erkläre, habe ich mich gegen die einrichtung von mac os x server entschieden. da ich bootcamp bislang nie selbst angewandt habe, wollte ich es benutzen, um einen windows server auf der mac mini hardware zu installieren.

da der mac mini schon einige jahre auf dem buckel hat (version 1,1 early 2006) und auch die hardware nicht mehr ganz taufrisch ist, verlief die installation nicht ganz geradlinig. ich packe das ganze in ein blogpost, damit andere evtl. daraus lernen können.

der initiale plan war, eine aktuelle version von windows server zu installieren. nun ist der early 2006 mini mit seinem intel core duo prozessor nicht in der lage, 64bit code auszuführen! damit fallen also die varianten weg, die nur noch als 64bit versionen hergestellt werden: win2008 r2 und natürlich auch win2012/server8. die letzte, auf diesem mini nutzbare 32bit servervariante ist demnach windows server 2008 r1.

ein weiteres manko ist dass der mini an einem schicksal leidet, dass viele seiner zeitgenossen teilen: superdrive-arthrose! das optische laufwerk des 06’ers liest zwar noch cd’s, erkennt aber keine dvd’s. das macht die installation von windows zu einer herausforderung.

die letzte hürde besteht darin, dass apple’s bootamp die installation der servervarianten von windows nicht unterstützt. xp, vista, 7: alles o.k., aber bitte kein 2003 oder 2008.

schluss mit dem geplänkel, auf zur installation!

auf dem mac ist bereits ein mac os x snow leopard mit den letzten verfügbaren systemaktualisierungen installiert. dieses soll erhalten bleiben (remineszenz an bessere zeiten? :-). der erste schritt besteht nun also darin, die interne Festplatte (120gb) aufzuteilen, sodass sie neben der mac os partition auch eine windows partition enthält. dazu kann man eine reihe von programmen verwenden, aber der mac bringt für unseren fall ein ideales werkzeug bereits mit: den bootcamp assistenten unter “programme -> dienstprogramme -> boot camp-assistent“. der assistent erlaubt es, die hfs-partition des mac einmal zu teilen, also insgesamt eine hfs. und eine windows-partition anzulegen. (dieses verhalten ist konform zu der tatsache, dass bootcamp originär nur die installation eines fremdsystems erlaubt). die erstellung der windows-partition geht flott vonstatten: eine 40 gb-partition innerhalb des 120 gb volumes anzulegen dauert keine 5 minuten.

der bootcamp-assistent würde bei der installation eines unterstützten betriebssystems nun die installation mit einem reboot vom supedrive laufwerk fortsetzen. da das defekte superdrive die installations-dvd nicht lesen kann, soll das iso auf einen memorystick geschrieben werden.

im netz kursieren verschiedene varianten, ein iso bootfähig auf einen usb-stick zu bringen. Ich habe zwei davon ausprobiert: die variante über das windows bordwerkzeug “diskpart” (anleitung z.b. hier), sowie über die tools yumi oder xboot. alle diese varianten haben in meinem Fall nicht funktioniert. das beste ergebnis war  noch ein schwarzer schirm und “boot file not found”!

ein anderes medium muss her: von einem netbook habe ich noch ein externes optisches laufwerk mit usb-anschluss. der mac bootet auch tatsächlich davon: im netz ist immer wieder davon zu lesen, dass ältere laufwerke nicht unterstützt würden. Nach dem start des win2008 installers und der auswahl von sprache und tastaturbelegung dann der Rükschlag: der installer beklagt sich, dass ihm für ein dvd.drive keine passenden treiber vorliegen und man doch bitte die richtigen treiber nachladen soll.

das problem ist bekannt – nicht nur im falle von bootcamp-installationen, sondern insbesondere bei “nativen” windows-rechnern. ursache dafür ist in letzter konsequenz eine “selbsfindungskrise” von windows: der installer findet die installationsdateien nach dem initialen start nicht mehr! folgende lösungsansätze finden sich:

  • das (gebrannte) image der installations-dvd ist defekt. hier scheint in einigen fällen tatsächlich ein neu-brennen der dvd (evtl. kombiniert mit einem re-download des iso-images) geholfen zu haben. da es sich um meine dvd um ein originalmedium (“genuine”) handelt, hatte ich dabei wenig hoffnung. aber dennoch: hab’ ich gemacht – hat nicht geholfen.
  • das dvd-laufwerk soll statt auf ide-master auf ide-slave gejumpert werden (geht hier nicht, wegen usb.
  • Das usb-kabel des laufwerks soll nach der auswahl der tastaturbelegung abgezogen und dann wieder aufgesteckt zu werden. dies soll dazu führen, dass der installer das laufwerk reinitialisiert und dadurch im nächsten Schritt findet.
  • zusätzliches kopieren der installationsfiles auf einen memory stick – sinnlos.

kurz gesagt hat bei meinem mini nix geholfen: das medium wurde nicht mehr erkannt und geholfen hätte letzten endes wohl nur, das superdrive-laufwerk zu ersetzen.

win 2003 r2

 

‘txtrbeagle: e-ink display als zubehör für’s handy

der ‘txtrbeagle ist ein kleines e-ink display, das vom smartphone aus mit e-books gefüllt werden soll. einmal befüllt ist der ‘txtrbeagle autark.

im gegensatz zu kindle und konsorten fasst der txtrbeagle weniger bücher, ist kleiner, bunter, kostet aber auch nur einen bruchteil: unter 10 euro soll das smarte teil uns endkunden kosten!

“papa ich brauch nen neuen ‘txtrbeagle!”
“warum? passt der alte nicht zu deinem neuen shirt?”
“nein. er ist voll und ich hab’ ihn ausgelesen!” 

 

internet unterwegs … im urlaub … in frankreich!

sunset over radio tower

wir haben diesen sommer mal wieder zwei wochen in südfrankreich verbracht (wer noch nicht dort war, dem ist es dringend zu empfehlen)!

in den vergangenen jahren war es jedoch schwierig gewesen, während des urlaubs auf wichtige emails zu antworten: die ferienwohnung bot keinen internetanschluss und in der ländlichen camargue sind offene hotspots rar gesät. (irgendjemand sollte mal all diesen dämlichen moskitos einen wlan-sender genmanipulieren und sie als gigantisches mesh-network konfigurieren — dann wären die viecher endlich auch zu was anderem als vogelfutter nützlich!)

deshalb entschloss ich mich dazu, dieses mal eine prepaid sim eines lokalen providers zu besorgen. letztendlich lief es auf eine karte des providers “orange” heraus. der “pass let’s go” bietet für acht euro die möglichkeit, innerhalb eines monats 100 mb zu übertragen (s.u.).

zugegebenermassen nicht viel, wenn man das smartphone für online-navigation und youtube nutzt. für unsere zwecke war es aber genau das richtige: emails abholen/beantworten und hin und wieder per what’s app chatten.

einen nachteil hat der tarif jedoch: die sim funktioniert nicht in einem iphone! laut der beraterin im orange-shop, die die karte gleich für uns registriert hat, ist der tarif ausschließlich für “tablets und surf-sticks” gemacht.

jedoch: während ich mit dem 3gs keine chance hatte, brachte meine tochter ihr android-phone problemlos ins netz: offenbar ist es für orange zu viel arbeit, alle phone-kennungen von den jeweiligen tablets zu unterscheiden und in die netz-blacklist einzutragen. die fünf bis sechs iphone-kennungen sind dagegen schnell drin und werden zuverlässig geblockt.

wir haben das problem dann so gelöst, dass meine tochter auf dem androiden einen wlan hotspot eingerichtet hat, über den papa seine mails beantworten durfte! :-)

ja, ich weiss: kritiker des silbernen apfels werden nun rufen: “ein weiterer grund kein iphone zu kaufen!” — ich halte dagegen: es ist ein Grund, zusätzlich zum iphone ein android-phone zu beschaffen!

das problem: mobil surfen im urlaub in frankreich
das produkt: orange “pass let’s go”
:
erhältlich in orange-shops, z.b. in größeren supermärkten.
der preis: die variante für 8,- euro bietet initial 100 mb datentraffic innerhalb eines monats. danach mit verschiedenen prepaid-vouchers aufzuladen, die es “überall” in supermärkten und tankstellen gibt.
zu beachten: die karte wird nach 15 tagen abgeschaltet, falls der nutzer sie nicht in der zwischenzeit auf seinen namen registriert (das wird im orange-shop automatisch gemacht).
funktioniert in surf-sticks, tablets und allen nicht-apple smartphones — funktioniert nicht im iphone.

alternativ gibt es für vielnutzer auch andere “let’s go”-tarife von orange.

… einen vergleichbaren tarif eines anderen anbieters habe ich “auf die schnelle” übrigens nicht gefunden…