Când vă gândiți la mașinile mici care imprimă etichetele lipicioase pe pachete, s-ar putea să nu vă așteptați să găsiți o imprimantă complexă cu propriul limbaj de programare (ZPL). Cu toate acestea, [Dan Pasteuk] se uita în jurul online și a găsit o imprimantă de etichetă mică pe facilitatea de depozitare online preferată pentru un preț excelent care a sugerat că a acceptat ZPL. Din păcate, [Dan] a avut vise mari pentru a crea o stație de imprimare bazată pe zmeură și a constatat că șoferii ambalate pentru această imprimantă particulară nu au fost compatibile cu brațul. Nu este destul de mulțumit să-l lași acolo, a început să citeze la straturi până când avea un șofer de lucru.
Zpl, în centrul său, este doar o limbă care descrie comenzile ASCII transmise pe o conexiune serială. Deci, în timp ce imprimanta a apărut ca un punct final, nu a funcționat ca filtre (partea șoferului care știe cum să convertească de la un PNG la Zpl) a fost doar X86. Pe Linux, șoferii de imprimantă au, de asemenea, un fișier PPD care descrie ceea ce imprimanta se poate ocupa de dimensiunea hârtiei și alte setări. Fișierul PPD pentru imprimanta mică a dat primul indiciu. În câmpul ShortcickName, se identifică ca HPRT N41, care este o imprimantă HP populară. Deci, această imprimantă mică ar trebui să fie o clonă a unei imprimante în acea familie. În special, ei nu susțin ZPL. În schimb, seria HPRT suportă TSPL, o altă limbă de imprimantă dezvoltată de TSC.
Aceasta a prezentat o problemă ca serviciul de transport maritim care a oferit etichetele pe care [Dan] le utilizează etichete cu trei formate: PNG, PDF și ZPL. În prezent, se pare că există un TSPL la convertorul Zpl acolo pentru utilizare, mai degrabă decât să-i scrieți propriul său, a luat o scurtătură și a scris un rasterizator în schimb. Inițial, a încercat să folosească un cod de eșantion pe care la găsit și în timp ce el a luat ceva de ieșit din imprimantă, a fost gol. Deci, următorul test a fost salvarea ieșirii TSPL brute de la un fișier și pisică direct la portul serial. Acest lucru a funcționat uimitor. Apoi, el a scris un convertor pentru a lua un PNG și a le transforma în format bitmap TSPL. Convertorul se află în JavaScript, deoarece rulează ca parte a serverului web care gestionează stația de imprimare. Ar putea fi mai rapid într-o altă limbă? Sigur. Dar o altă limbă nu ar face imprimanta mai rapidă.
Odată cu adăugarea unui scaner fără fir de coduri de bare, este satisfăcător pentru a vedea stația de imprimare în sus și rulează. Aici, la Hackaday, nu suntem străini să vedem că oamenii să iau imprimante să se desprindă de software-ul și straturile fizice care le fac.