Linux操作科诚G500U标签机调试笔记
# 前言
需要让标签机在 linux 环境下配合 python 打印指定的字符串, 我们手上科诚 G500U, 有商家推荐科诚 G500UES, 但是后面发现 G500U 也能打印, 后面再说
# 资料下载
[下载地址](https://www.godexintl.com/downloads?locale=zh_TW)
SDK: Ezio.so Linux DLL V1.1.0
命令解析: EZPL命令手冊-Rev.O.4
# 调试
里面有一个 x64.zip 的压缩包, 解压完之后目录是这样子的
```
.
├── ezio.cmd
├── ezio.h
├── libezio.so -> libezio.so.1.1.0
├── libezio.so.1 -> libezio.so.1.1.0
├── libezio.so.1.1.0
├── libttf_x64.so
├── libusb-1.0.so -> libusb-1.0.so.0.3.0
├── libusb-1.0.so.0 -> libusb-1.0.so.0.3.0
├── libusb-1.0.so.0.3.0
├── license
│ ├── FTL.TXT
│ └── libusb-LGPL-V2.1.txt
├── makefile_x64_test
├── readme
├── test.c
└── test_x64
```
其中 test_x64 是直接可以用的, 编译好的demo, 他会读取标签机信息, 打印预设图案, 再打印 ezio.cmd 的图案
不过我运行的时候遇到字体等问题, 所以我改了 test.c 里面的内容, 并且编译运行:
```
gcc -D_GNU_SOURCE test.c -I. -L. -lezio -lttf_x64 -lusb-1.0 -lm -lpthread -o a && LD_LIBRARY_PATH=. ./a ezio.cmd
```
# 指令解析
[命令解析](https://godex.s3-accelerate.amazonaws.com/PalMOUQVAD8fE7zwPTFcsQ.preview?v01)
我在 demo 指令的基础上, 加 #解析:
```
^Q50,0,0 #标签长度设定
^W50 #标签宽度设定
^H5 #打印浓度设定
^P1 #打印的张数
^S2 #打印速度
^AD #热感模式, AD AT到时候都试一下
^C1 #复制张数, 有一些+1的参数, P2 C2组合在一起就会变成 000 000 001 001
^R0 #左边界起印点, G500U是203dpi, R8就是1mm
~Q+0 #上边界起印点
^O0 #自动剥纸器
^D0 #裁纸设定
^E12 #标签往出吐
~R200 #翻转180度打印, x是标签长度
^XSET,ROTATION,0 #整页翻转
^L #反白镜像等处理
Dy2-me-dd #日期
Th:m:s #时间
AD,74,18,1,1,0,0,Ezio-Internal #打文字, 跟^A不一样
AT,26,50,68,68,0,0,0,0,Ezio-TrueType #打文字, 跟^A不一样
W108,156,5,2,M,8,5,11,0 #二维码
01234566789 #上面二维码的数据
Lo,12,134,354,145 #画直线
E #结束
```
倒退指令
```
^Bx
```
# 实机调试遇到的坑
1. 需要将本机电脑用户加入到标签机的组里, 重启生效
```
sudo usermod -aG lp jax
```
2. 注意结尾的两个回车不能少, 回车相当于开始执行指令
3. demo的 ^Q 指令有3个参数, 2个参数是标签纸模式, 3个参数是连续纸模式
4. 最小字体只有A, 对应6号字体, 但是我之前在他们官方的Windows软件里, 可以手动输入数字4, 不知道他们调用的是什么接口, 最后只能让供应商把字体改成6
评论
发表评论