首页 文章

通过命令行将打印指令发送到Star TSP143LAN热敏收据打印机

提问于
浏览
5

我正在尝试通过以太网连接向Star TSP100(TSP143LAN型号)热敏打印机发送打印指令 .

我没有问题打开原始数据连接到打印机使用它的LAN IP和端口9100,这似乎是打开的端口,但一旦连接我无法执行任何操作,我怀疑我正在使用命令不正确,但我很难说我打算如何使用它们 .

我在http://www.starmicronics.com/support/Mannualfolder/linemode_cm_en.pdf找到了一些文档似乎是正确的模型,但是他们的命令参考是模糊的 .

到目前为止,我已经尝试使用纯文本命令(例如,键入'LF'并命中返回以提供单行),而没有任何结果 .

我也尝试使用键盘上的明显按键,在这个例子中,我按下键盘上的ESC键,然后是文档中附带的字符,使用“ESC”命令,也没有任何结果 .

Edit:

我还将控制字符作为十六进制值发送,并作为十进制值发送,没有任何不同的结果 .

3 回答

  • 2

    TSP143是FuturePRNT模型 . 如果打印机处于FuturePRNT模式,则无法使用“线路模式”命令 .

    如果可以在线路模式下配置,则可以通过直接以太网连接向其发送线路模式命令 . 与ESC / POS命令如何发送到Epson LAN收据打印机非常相似 .

  • 2

    某些Star系列打印机无法通过命令行直接与之通信,必须通过自己的软件驱动程序使用 .

    在这种情况下的解决方案是模拟打印机上的COM端口,这使您的通信过滤器通过其驱动程序,因此“开箱即用”工作 .

  • 2

    STAR SP500点阵 printers themselves are lovely and reliable .

    finding their English documentation is very disorganized 并无望 . 所以这里's everything you need to know, so you don' t必须去搜索 .

    对于STAR SP500点阵和可能的其他类似STAR收据打印机,当使用并行USB电缆 and when module/driver is not running/installed 连接时,从命令行使用它就像下面这样简单:

    sudo chown you:you /dev/usb/lp0
      echo -e "SOME SAMPLE TEXT\n\n" > /dev/usb/lp0
      echo -e "\x1b\x4d MORE SAMPLE TEXT" > /dev/usb/lp0
    

    最后一行包括一个“转义序列”代码,用于将字体更改为比默认值更加时尚的复古/像素 . 以上命令经过测试并在新的Linux liveUSB上运行 - 无需配置!谢谢f *** . 它使用打印机上预安装的固件将文本或转义序列转换为格式化文本 .

    所有其他转义序列 - 例如粗体,突出显示或更大的文本和其他位 - 可以在稍微不同的模型的手册的'control codes'章节中找到,这里:http://www.starmicronics.com/support/mannualfolder/sp300pm.pdf

    Note :安装 cups 驱动程序并通过 lpr 或任何基于GUI的程序使用打印机似乎删除了 /dev/usb/lp0 处的设备文件,因此使用上述简单命令使打印机完全无法使用,直到它被拔出并重新插入,然后重新插入注册为 /dev/usb/lp0 文件 . 还应注意,执行此操作时,将重置 /dev/usb/lp0 文件的所有权,因此您可能需要添加 crontabudev 规则,或者只是 add desired user to the lp group on Debian and derivatives.

    Note two :要使用上面的命令,打印机必须处于'STAR Line'模式,我认为这是默认购买时的新模式,但如果不是,则只需要一两分钟 . 有关STAR SP500的说明,请参见第114页:http://www.starasia.com/%5CDownload%5CManual%5Csp500_um_en.pdf

    这不是原始问题的确切答案,但我花了几个小时研究这台打印机如何从命令行工作,现在我知道我真的很想分享给那些像我一样被困的人,因为我有点爱现在我已经了解了它 .

相关问题