Im Alltag vorallem von Kassenesystemen bekannt sind Thermodrucker – Drucker die durch erhitzen Papier farblich verändern (meist schwärzen) und so ohne Tinte drucken können.
Die günstigsten Komplettsysteme gibt es für nichteinmal 15€. Ein solches System habe ich mir gekauft, ein “Celetronic D10 Thermodrucker”.
Solche günstigen Drucker sind in ihrem Funktionsumfang beschränkt, können keine Barcodes generieren und keine Grafiken ausdrucken, ausschließlich Text.
Fähigkeiten
- 58mm Thermopapier bis zu einem Durchmesser von 28mm
- 24 Zeichen CP437 pro Zeile
- USB Anschluss über Adapter
- Vorschubbutton
Funktionsweise
Dieser Drucker wird per LTP->USB Adapter (im Lieferumfang) an einen Computer angeschlossen und kann ab dann Zeichen ausdrucken, den CP437 Charaktersatz. Das bedeutet man kann in einer Zeile 24 Textzeichen ausrdrucken, inklusive Sonderzeichen wie ä, ö, ü, …
Mit einem einfachen Programm lassen sich nach dem Anschlißen Daten ausdrucken.
Den Code dafür habe ich von hier entliehen: Nervengiftlabs Blog
#!/bin/bash while IFS= read -r line do echo -n "$line" | iconv -t cp437 > /dev/usb/lp0 echo "$line" echo -n -e "\r" >/dev/usb/lp0 done
Zum testen reicht auch ein einfaches
echo -e "Hallo, der Drucker geht\r" >> /dev/usb/lp0
Der Text wird an den Drucker gesendet und mit einem Carriage Return beendet, die den Druck der Zeile auslöst. Der Parameter -e erlaubt das Nutzen von Sonderzeichen wie zum Beispiel \r.
Druckanwendungen
Die wichtigsten Funktionen sind nun beschrieben, jetzt geht es noch darum dem Drucker sinnvolle Anwendungen zu geben.
Druckscript
Ich hatte mit dem Druckscript von Nervengift ab und an Probleme, dass Zeichen falsch gedruckt wurden. Meine Vermutung war dass der Drucker zu wenig Zeit hatte, oder der LTP Adapter, ich habe dann eine Wartezeit zwischen den Zeilen eingefügt. Da ich für vieles keine CP417 Codes benötige hier mein “thermoascii” Script:
#!/bin/bash while IFS= read -r line do echo -n "$line" > /dev/usb/lp0 echo "$line" echo -n -e "\r">/dev/usb/lp0 sleep 1.5 done
Sudoku
Ich habe ein Sudoku Script von gitlab benutzt und es meinem Bedarf angepasst
Das habe ich daraus gemacht: Sudoku in a Shell.
Jeder Aufruf von ./sudoku erzeugt ein neues zufälliges Sudoku
+------+------+------+ |2 5 | 6 | 1 9| | 6 | 5 1 | 4 | | 4 1 | 8 7 |6 3| +------+------+------+ |1 | 5 | | |4 9 | 3 2 |1 8 | | 8 3 | 7 1 |9 2 6| +------+------+------+ | 1 8 | 5 | 9 2| |7 | 2 8 | 1| |6 2 | 1 7 | 3 8| +------+------+------+
Bald mehr Anwendungen
Leave a Reply