====== Zebra lp2824 ====== {{tag>sprzęt}} ---- To taka słodka mała drukarka termiczna https://github.com/cod3monk/zpl programowanie w ZPL https://www.zebra.com/us/en/support-downloads/knowledge-articles/zpl-command-information-and-details.html ===== Instalacja ===== Pod [[CUPS]] przeklikać przez interfejs webowy. Powinien zostać wykryty jeden z kilku sterowników. Zebra obsługuje dwa protokoły, EPL2 oraz ZPL. ===== Konfiguracja ===== **ZAPOMNIJ O KONFIGURACJI DO ZPL, BO TO NIE JEST WERSJA PLUS TEJ DRUKARKI ARGH!!!!** **Zmiana trybu** – ZPL to nowszy język, posiada dostęp do generowania kodów. Domyślnie drukarka przychodzi w trybie EPL2, starszego języka. **Defaults** 203 dpi **Dostępny papier** Zostanie utworzony plik .ppd który jest sterownikiem(?) konfiguracją drukarki. Dla wygody możemy wywalić etykiety podane w calach i podać normalne jednostki. #!/bin/python3 """#!/bin/python3 """generate_page_sizes.py MIT, 2020 not7cd usage: echo "56x42\n38x69\n40x28\n32x20" | ./generate_page_sizes.py """ import sys for line in sys.stdin: w, h = (int(n) for n in line.split("x")) pw, ph = (round(n*2.83446712) for n in (w, h)) print( '*PageSize w{pw}h{ph}/{w}x{h}mm: "<>setpagedevice"' .format(pw=pw, ph=ph, w=w, h=h) ) Paste inside ''/etc/cups/ppd/Zebra_LP2824.ppd'' *PageSize w159h119/56x42mm: "<>setpagedevice" *PageSize w108h196/38x69mm: "<>setpagedevice" *PageSize w113h79/40x28mm: "<>setpagedevice" *PageSize w91h57/32x20mm: "<>setpagedevice" ===== Komunikacja ===== ''lp -h 192.168.88.119:631 -d Zebra_LP2824 -o raw example.epl'' Wysyłanie ustawień przy pomocy SGD nie za bardzo działa pod linuksem https://unix.stackexchange.com/questions/383792/how-to-send-sgd-commands-to-usb-printer ==== EPL2 ==== **example.epl** https://support.zebra.com/cpws/docs/eltron/common/epl2_samp.htm N q812 S2 A50,0,0,1,1,1,N,"Example 1 0123456789" A50,50,0,2,1,1,N,"Example 2 0123456789" A50,100,0,3,1,1,N,"Example 3 0123456789" A50,150,0,4,1,1,N,"Example 4 0123456789" A50,200,0,5,1,1,N,"EXAMPLE 5 0123456789" A50,300,0,3,2,2,R,"Example 6 0123456789" LO25,600,750,20 B50,800,0,3,3,7,200,B,"998152-001" P1 Więcej o samym EPL2 https://www.zebra.com/us/en/support-downloads/knowledge-articles/ait/epl2-command-information-and-details.html ==== ZPL ==== Najpierw trzeba przestawić frajera na tryb ZPL. Nie za bardzo wiem jak się dobrać do interfejsu. Możliwe, że trzeba strzelić tę komendę przez klienta windowsowego i zapomnieć o sprawie. ! U1 setvar "device.languages" "zpl" ===== Szufladki ===== https://gist.github.com/not7cd/592f8989c1cc0f1ee22b94ffd186664c wygeneruj plik z labelkami które chcesz, 40 znaków maks, label per line\ ''cat labels.txt | python szufladki.py | lp -d Zebra_LP2824 -o raw''