.. _`tp2/eink`: KogniDoor-eInk ============== :Kontakt: Alexander Neumann :CITK: `kognidoor-eink `_ :Vorbedingung: Der Bildserver benötigt die `Image Component Library (ICL) `_, welche auch durch das :ref:`guides/citk` installiert werden kann mit Hilfe des Rezeptes `icl-kognihome `_. Außerdem muss ein eInk-Display des Typs `TCM2-P102-231_v1.1 `_ über eine `CP2130 USB-SPI-Bridge `_ angeschlossen sein. :Quickstart: ``eink_usb`` findet die angeschlossene CP2130-Bridge eigenständig und benötigt deshalb keine Argumente:: $ eink_usb RSB-Schnittstellen ------------------ .. rsbpubsub:: IN /io/vision/eink/file string lädt lokale Datei in den nächsten Buffer .. rsbpubsub:: IN /io/vision/eink/file/1 string lädt lokale Datei in Buffer 1 .. rsbpubsub:: IN /io/vision/eink/file/2 string lädt lokale Datei in Buffer 2 .. rsbpubsub:: IN /io/vision/eink/file/3 string lädt lokale Datei in Buffer 3 .. rsbpubsub:: IN /io/vision/eink/html string lädt HTML-Snippet in den nächsten Buffer .. rsbpubsub:: IN /io/vision/eink/html/1 string lädt HTML-Snippet in Buffer 1 .. rsbpubsub:: IN /io/vision/eink/html/2 string lädt HTML-Snippet in Buffer 1 .. rsbpubsub:: IN /io/vision/eink/html/3 string lädt HTML-Snippet in Buffer 1 .. rsbpubsub:: IN /io/vision/eink/refresh bool zeigt nächsten Buffer an .. rsbpubsub:: IN /io/vision/eink/refresh/1 bool zeigt Buffer 1 an .. rsbpubsub:: IN /io/vision/eink/refresh/2 bool zeigt Buffer 2 an .. rsbpubsub:: IN /io/vision/eink/refresh/3 bool zeigt Buffer 3 an .. rsbpubsublist:: :type: IN Beispiele --------- Lokale Bild hochladen ^^^^^^^^^^^^^^^^^^^^^ Lokale Bilddateien sind unter ``${prefix}/etc/doorcontroller`` hinterlegt. .. literalinclude:: /../static/examples/tp2/door.yaml :language: yaml :start-after: Lokales Bild hochladen :end-before: END :dedent: 10 HTML Snippet hochladen ^^^^^^^^^^^^^^^^^^^^^^ Für das Hochladen eines HTML-Snippets wird kein ````-tag benötigt. Die Integration, sowie die Formatierung wird während der Erstellung des Bildes hinzugefügt. .. literalinclude:: /../static/examples/tp2/door.yaml :language: yaml :start-after: HTML Snippet hochladen :end-before: END :dedent: 10 Nächsten Buffer anzeigen ^^^^^^^^^^^^^^^^^^^^^^^^ .. literalinclude:: /../static/examples/tp2/door.yaml :language: yaml :start-after: Naechsten Buffer anzeigen :end-before: END :dedent: 10 Bilder konvertieren ------------------- Bilder, die auf dem Display angezeigt werden sollen, müssen korrekt orientiert sein, in der Auflösung 1024x1280 vorliegen und nur Graustufen beinhalten. `ImageMagick `_ ist ein Kommandozeilenprogramm welches bei der Konvertierung helfen kann:: $ convert -colorspace Gray -resize 1280x1024\! -rotate 270 output.png Als Eingabe dient ein Bild welches horizontal orientiert ist (mit einer Auflösung ca. 1280x1024) und damit der Anzeigen auf dem Display nachempfunden ist. Die Reorientierung um 270 Grad ist notwendig, da das Display horizontal in die Tür eingebracht worden ist, die 'Standardorientierung' jedoch vertikal. Der oben genannte Aufruf ignoriert das Seitenverhältnis des Eingabebildes. ImageMagick kann auch genutzt werden, um ein Bild anzupassen und dabei das Seitenverhältnis möglichst unverändert zu lassen:: $ convert -colorspace Gray -resize 1280x1024^ -gravity center -extent 1280x1024 -background white -rotate 270 output.png Je nach Eingabe können jedoch auch andere Parameter notwendig sein.