Edited at
M5StackDay 22

M5Stackでレシートを印刷する

M5Stackからサーマルプリンタを駆動してレシートを印刷してみました。

サンプルコード一式はこちらのリポジトリにあります。

https://github.com/meganetaaan/suburi-m5stack-thermal-printer


手順

サーマルプリンタの購入から準備までは、次の記事の手順に沿って進めました。

Maker向けサーマルプリンタ『DP-EH600』を爆速化する

元記事の差分として、元記事ではプリンタの制御にRaspberry Pi + Pythonを使っていましたが、今回はM5Stack + Arduinoを使います。

この環境では元記事の手順と次の違いがあります。


  • RasPiの「UARTを利用可能にする」「CTSを有効化する」の手順は不要です。M5Stackにはこれらのプロトコルが使えるピンがあらかじめ割り当てられているのでそれを利用します

  • M5Stackは5Vを給電可能なので、別の電源を用意する必要はありません

  • あらかじめAdafruit提供の設定ツールを使って「ボーレート(BAUDRATE)を115200に」「CODEPAGEをUTF-8に」設定しておきます

  • サーマルプリンタと通信するためのピンは次の通りです

プリンタ側のピン
M5Stack側のピン

VC
5V

GND
GND

Tx
G1

Rx
G3

CTS
G18

以上を実行することでM5Stackから任意の文字(日本語もOK)、バーコード、QRコード、画像が印刷できるようになります。

プリンタ用の電源も無く、M5Stackとプリンタを接続するだけで制御可能なので取り回しもよいです。

また、QRコード印刷と→M5CameraでQRコードを認識などを組み合わせても面白いことができそうです。

ぜひ試してみてください。