前置き
ラズパイでプリンターを使うには、いくつか方法があります。
PostScriptプリンターを使うとか、Google Cloud Printを利用するとか。
これらは簡単に設定できるのですが、PostScriptプリンターは高価だし、Google Cloud Printは不便な一面があります。
家庭用の安価なEPSONプリンターが普通に使えると良いのですが、ラズパイ(Raspbian)用のプリンタードライバはどこにあるのでしょうか?
我が家ではPX-048Aというプリンターを使っています。このプリンターのラズパイ用のドライバを手に入れて設定する方法を紹介します。ドライバはソースからビルドします。多分PX-049Aとか別のEPSONプリンターでも同様に使えるはずです。
以下のリンク先を参考にして設定しましたが、一部異なる部分や追加した部分もあります。
http://nodemand.hatenablog.com/entry/2016/05/09/184411
環境
Raspberry Pi 4 model B 4GB
Raspbian Buster (2019-09-26-raspbian-buster-full)、piユーザーとして利用
プリンター:EPSON PX-048A、Wi-Fi接続
手順
まずは、システムのアップデート
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get dist-upgrade
CUPS(Common Unix Printing System)と、プリンター設定ツールのインストール
$ sudo apt-get install cups
$ sudo apt-get install system-config-printer
ビルドに必要なものをインストール
$ sudo apt-get install libtool autoconf
$ sudo apt-get install libcups2-dev
$ sudo apt-get install libcupsimage2-dev
$ sudo apt-get install devscripts
エプソンの以下のサイトで、PX-048Aのドライバを検索してダウンロード
ラズパイのCPUはARMで、残念なことにビルドされたものはありません。以下のソースファイルをダウンロードします。バージョンは執筆時点のものです。
epson-inkjet-printer-escpr-1.7.7-1lsb3.2.tar.gz
ダウンロードしたファイルは、
/home/pi
に移動します。あらかじめpiユーザーとしてログインしておきます。
ビルド
$ tar zxvf epson-inkjet*
$ cd epson-inkjet-printer-escpr-1.7.7/
$ chmod u+x bootstrap
$ ./bootstrap && ./configure --prefix=/usr
$ automake --add-missing
$ ./configure
$ make
$ debuild -us -uc -b
インストール
$ sudo dpkg -i ../epson-inkjet-printer-escpr_1.7.7_armhf.deb
PPDとFilterをコピー
PPDファイルは、お使いのプリンターにあわせて選んでください。
$ sudo cp -f ppd/Epson-PX-048A_Series-epson-escpr-en.ppd /usr/share/ppd/cupsfilters/
$ sudo cp -f src/epson-escpr-wrapper /usr/lib/cups/filter/
再起動
プリンターをシステムに追加
- プリンターの電源を入れます。
- 画面左上のラズベリーマークから、設定→印刷設定を選びます。
- ロック解除を押して、ユーザー名(pi)とパスワードを入力します。
- addを押します。
- ネットワークプリンターを選ぶと、PX-048Aが表示されるので、それをクリックします。次に進むとプリンターが追加されます。
以上です。お疲れ様でした。