M5Stackからサーマルプリンタを駆動してレシートを印刷してみました。
M5Stackからサーマルプリンタを制御できた!好きなだけレシートを印刷していこうな😎 pic.twitter.com/0G8NaikTNx
— ししかわ (@meganetaaan) November 27, 2018
サンプルコード一式はこちらのリポジトリにあります。 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|
- Adafruitが提供するArduino向けサーマルプリンタライブラリを利用します(使い方はサンプルコード参照)
以上を実行することでM5Stackから任意の文字(日本語もOK)、バーコード、QRコード、画像が印刷できるようになります。 プリンタ用の電源も無く、M5Stackとプリンタを接続するだけで制御可能なので取り回しもよいです。 また、QRコード印刷と→M5CameraでQRコードを認識などを組み合わせても面白いことができそうです。 ぜひ試してみてください。