はじめに
この記事は、以前公開したRepetier-Server版の話をOctoPrintでやれるよ、という内容です。
背景等については、以前の記事と同様になりますので、そちらも参照してください。
端的に言えば、RepetierServerが有料ライセンスでしかタッチUIを使えなくなったので、OctoPrintに乗り換えてみた、ということです。
手順
- 動いている液晶・タッチパネル付きRaspberryPiを用意する
- OctoPrintをインストールする
- TouchUIプラグインをインストールする
- ショートカット・自動起動化設定をする
動いているRaspberryPiを用意する
このへんは以前の記事を参照してください。
OctoPrintをインストールする
公式のマニュアルにかかれている通りで問題ありません。
ただし、Basic setupの項目までやれば十分です。Stretchでは自動起動の設定などが異なるので、そこから先はやらなくて良いです。
上記インストール後、
~/OctoPrint/venv/bin/octoprint serve
を実行した段階ですでに全機能が起動しています。そのため、http://らずぱいのアドレス:5000/
にアクセスすると、OctoPrintのUIが表示できます。
ただし、起動にはある程度時間がかかります。また、デーモンではないため、上記コマンドをCtrl+Cで終了したらサーバ機能も終了してしまいます。
TouchUIプラグインをインストールする
これが肝心なものですが、簡単に導入できます。
ラズパイ上でなくて良いのでWEB UIの設定から、Plugin Managerを選択し、Get Moreボタンを押します。
表示された画面内の検索窓で TouchUI
を検索してインストールします。
以上でインストールは完了しますが、OctoPrintの再起動が必要になります。
再起動後、同じようにWEB UIを起動すると、右上にスマホっぽいアイコンが出ていると思います。その状態でブラウザの幅を980px以下まで狭めてリロードすると勝手に表示がタッチUIモードになります。
あとはこれをラズパイの画面上で表示するだけです。
ショートカット・自動起動化設定をする
OctoPrint本体
stretch用に起動スクリプトをサービス化する話はすでにQiitaに記事があったので、そちらにまかせて…
上記サービスファイルを有効にすれば完了です。
sudo systemctl enable octo.service
有効にするだけでは実行されないので、
sudo systemctl start octo.service
で起動します。
Touch UI
これもブラウザを指定のアドレスで開くだけなので、以前の記事と同様です。
[Desktop Entry]
Name=Repetier-Server
Type=Application
Path=/usr/bin/
Exec=chromium-browser --noerrdialogs --disable-suggestions-service --disable-translate --disable-save-password-bubble --disable-session-crashed-bubble --disable-infobars --touch-events=enabled --disable-gesture-typing --kiosk --force-device-scale-factor=0.5 http://127.0.0.1:5000/
Icon=chromium-browser
Terminal=false