無料で始める

zplCloud Blog

USB のみの GK420 をクラウドプリンターに: Raspberry Pi、エージェント 1 つ、100 ユーロ未満

新しく買うなら Link-OS を。動いているものは動く限り使い続ける。どちらも最後は同じプラットフォームに収まります。

2 分で読了 zplCloud Team

正直な推奨事項から

zplCloud エージェントを実行する Raspberry Pi に接続された USB 専用の Zebra GK420d

これからラベルプリンターを購入するのであれば、Link-OS 搭載の Zebra、つまり ZD421、ZD621 またはそれ以上の機種を選んでください。Cloud Connect / Weblink が標準で組み込まれており、Wi-Fi、より高速なプリントヘッド、300 dpi および RFID のバリエーション、リモートでのファームウェアと設定の管理が利用できます。zplCloud への接続はコマンド 1 行で終わり、その後も何年にわたって管理しやすい状態が続きます。

ただし、多くの工房や小規模倉庫が抱えている問いはそこではありません。実際の問いはこうです。

「梱包台に GK420d が 1 台あります。2014 年から毎日出荷ラベルを印刷していて、一度も故障していません。しかし USB しかありません。クラウドから印刷するには、これを廃棄しなければならないのでしょうか。」

いいえ、その必要はありません。

これらのプリンターにできること、できないこと

GK420d/GK420t、GC420、LP2844、そして旧来の TLP シリーズは、機械的に優れていて構造も単純です。203 dpi、感熱式または熱転写式、EPL2 と ZPL II に対応しています。今なお数百万台が稼働しています。

これらに欠けているものは 1 つだけ、接続性です。Link-OS ではないため、Weblink も Cloud Connect も使えません。多くは USB 専用です。クラウドから見れば、これらのプリンターは存在していないのと同じです。

一方で、買い替えに費用がかかる部分はすべて揃っています。正常なプリントヘッド、プラテン、メディアセンサー、そして現場がすでに使い慣れた機器です。

必要なもの

部品費用備考
Raspberry Pi Zero 2 W、3、4 または 5約 20–80 €64 ビットの Raspberry Pi OS であれば何でも可。Zero 2 W で 1〜2 台のプリンターを扱えます
電源、microSD、USB ケーブル約 15 €プリンターに付属のケーブルがそのまま使えます (Pi Zero では micro-USB OTG アダプター)
zplCloud CLI エージェント込みStarter はリモートプリンターエージェント 1 台、Pro は 5 台
合計100 € 未満新しい Link-OS デスクトッププリンターの数百ユーロと比べてください

エージェントの消費電力は 1 桁ワット台で、systemd サービスとして動作し、停電後は自動的に再接続します。受信ポートの開放も VPN もファイアウォールの変更も不要で、api.zplcloud.com への送信方向の接続を 1 本開くだけです。

セットアップ、所要約 20 分

1. Pi を準備する

Raspberry Pi Imager で Raspberry Pi OS Lite (64 ビット) を書き込みます。カードに書き込む前に Imager の設定で SSH と Wi-Fi を有効にし、起動してログインします。

2. プリンターを接続する

lsusb
# Bus 001 Device 004: ID 0a5f:0084 Zebra Technologies ...

ベンダー ID 0a5f が Zebra です。ドライバーに関する話はこれで全部です。エージェントは USB プリンタークラス (libusb) 経由でプリンターと通信します。CUPS もスプーラーもメーカー製ドライバーも必要ありません。

何も表示されない場合は、充電専用ではなくデータ通信対応のケーブルを使ってください。また、プリンターがポートの供給を超える電力を必要とする場合、Pi Zero には電源付きハブを追加します。

3. CLI をインストールする

curl -fsSL https://zplcloud.com/install-cli.sh | sh
zplcloud --version
zplcloud usb list

インストーラーは適切なビルドを選択します。64 ビットの Pi OS には linux-arm64、32 ビットには linux-arm です。usb list には Zebra のプリンタークラスデバイスが表示されるはずです。

4. Pi からテストラベルを印刷する

zplcloud send --usb --zpl "^XA^FO50,50^A0N,32,32^FDHello from the Pi^FS^XZ"

ラベルが出てくれば、ハードウェア側の作業は完了です。

何も起きない場合は、言語モードを確認してください。GK420 が EPL2 で動作していると、ZPL は単なるテキストとして届き、無視されます。どのモードが有効かは設定ラベルで分かります。USB へのアクセスには権限も必要です。テストであれば sudo で十分ですが、サービスとして動かす場合は、udev ルールでデバイスをグループに割り当てるのがきれいな解決策です。

5. エージェントをサービスとして実行する

プラットフォームの API タブで API キーを作成し、次を実行します。

sudo zplcloud proxy --agent "Packing table Pi" --service-install --api-key sk_zplcloud_xxxx
systemctl status zplcloud-agent
journalctl -u zplcloud-agent -f

これで Restart=always を指定した zplcloud-agent.service がインストールされます。Pi は起動時に接続し、すべてのジョブを USB プリンターへ転送します。

Docker でも動作します。/dev/bus/usb をコンテナにマッピングし、ZPLCLOUD_API_KEYZPLCLOUD_AGENT を設定してください (docker-compose.agent.yml を参照)。1 台の Pi で複数の USB プリンターと、TCP 9100 の LAN プリンターを同時に扱えます。

6. どこからでも印刷する

エージェントは USB プリンターとともに Remote Printers に表示され、そこからは通常の zplCloud プリンターとして扱えます。デザイナー、REST API、CSV/JSON からのバッチジョブ、Kafka や SQL のデータソース、梱包担当者向けの Print View、リトライ付きのキュー、成功時と失敗時の Webhook がそのまま使えます。

古いプリンターについて知っておくべき 3 点

フォント。 GK420 のフラッシュメモリは数メガバイトです。11 MB の ZPLCloud Unicode フォントは収まらず、7 MB のスリム版でもぎりぎりです。何かを転送する前に確認してください。

zplcloud send --usb --zpl '! U1 getvar "memory.flash_free"'

アクセント付きのラテン文字には Liberation Sans (0.4 MB) を使うか、zplCloud にテキストを画像としてレンダリングさせてください。デザイナーは画像モードのテキストフィールドに対してこれを自動的に行います。GK420 で CJK を扱う場合は、画像モードが答えになります。SVG から作成したアイコンフォントは数 KB しかなく、余裕で収まります。

解像度と速度。 203 dpi、約 4 ips です。出荷ラベル、商品ラベル、棚ラベルには十分ですが、小型電子機器向けの高密度な 2D コードには向きません。

RFID なし、300 dpi なし、プリンター内蔵の Wi-Fi なし。 これらが必要になったときが買い替えのタイミングです。しかも移行は安く済みます。デザイン、バインディング、Print View、API 呼び出しはそのままで、変わるのはプリンターの登録だけだからです。

使い続けることが筋の通った答えである理由

まだ動くプリンターを廃棄場に送るのは、選べる中で最悪の結果です。機構部品と電子部品に投じられたエネルギーが失われ、そのうえ代替機の輸送が加わります。良好に印刷できる GK420 に必要なのは数年ごとのプリントヘッドであり、これは新しい機器ではなく交換部品です。Pi が追加する消費電力は LED 電球 1 個ほどです。

新しく買うなら Link-OS を。動いているものは動く限り使い続ける。 zplCloud はどちらも同じように扱います。

関連

その他の記事