はじめに
3Dプリンタの制御器としてRaspberry Piなどの比較的高性能な組み込み用ボードを利用し,印刷速度や品質の向上を図るのが最近の流行です.しかし,昨今の情勢を受けてRaspberry Piは今や高級&レアなアイテムになってしまい,入手が中々困難.売っていたとしても約1万円前後と地味に高く,手が出しにくかったりもします.そこで,「普通に4千円ちょいで購入できるNano Pi Neo 2を代替として使おう!」という目的でまとめたのが本記事です.
初心者の作業ログなので,間違い等あればご教示頂けますと大変助かります.
購入先
秋月電子の秋葉原店舗で買いました.通販のリンクはこちら.
ヒートシンクも一緒に買っておくと良いと思います.付けずに稼働させたことないのでどの程度の効果なのか厳密には分かりませんが,これだけ大きなモノを付けさせているということはきっと無いとヤバいのでしょう...
2つ合わせて4420円.安いとまでは言い難いかもですが,代替案としてそこまで悪い品でもないのではないでしょうか.(Raspberry Pi Zero 2 Wが買えるならそちらで良いとも思います)
Nano Pi NEO 2のOSセットアップ
Nano Pi NEO 2はUbuntu CoreかArmbianをインストールして使われることが多いようですが,「今回使う無線LANアダプタを指すだけで動かせる」という理由でArmbianを採用します.知人に譲って頂いたアダプタなので型番が不明なのですが,おそらく[WLI-UC-GNM-B]のように見えます.また,公式wikiによると厳密にはArmbianは非公式ROMらしいです.
ダウンロード
armbianのNano Pi NEO 2向けイメージをこちらからDLします.なぜかDLリンクの大半がアクセスできなくなっており,僕は Other download variants
のEUサーバのjammy版をDLしました.(他全部ダメでした...怖い…)
SDカードへ書き込み
ダウンロードしたOSイメージは.xz形式で圧縮されていたので,7zipで解凍しました.久々に使いましたね7zip.未インストールの方はこちらから.
解凍できたらあとはSDカードへ焼き込むだけです.僕はRaspberry PiやJetsonのイメージ焼くときにも使っているbalenaEtcherで焼きました.未インストールの方はこちらから.イメージファイル選択→書き込み先選択→書き込み開始 で大丈夫だと思います.詳しい使い方は解説記事がたくさんあるので割愛します.
初回ユーザ設定とSSH設定
このQiita記事の電源投入の節以降の手順に従えばOKです.
シリアルポート設定
USB接続でつなぐプリンタにアクセスするため,下記コマンドでシリアルポートの設定を行います.
sudo usermod -a -G tty [YOUR_USER_NAME]
sudo usermod -a -G dialout [YOUR_USER_NAME]
[YOUR_USER_NAME]にはお使いのユーザ名を指定します.例えば,ユーザ名が pi
であれば,次のようになります.
sudo usermod -a -G tty pi
sudo usermod -a -G dialout pi
この設定を有効にするには,一度ログアウトしてからログインする必要があります.僕はとりあえずで再起動しています.
Wi-Fi対応(任意)
本節はNano Pi NEO 2をWi-Fi接続して利用したい方向けです.有線で十分!という場合は読み飛ばして次節へ進んでください.
Nano Pi NEO 2は標準でWi-Fiモジュールを搭載していないので,USBドングル等を利用する必要があります.今回はNano Piヒートシンクとセットで知人に譲ってもらったBuffaloのWLI-UC-GNM-B(箱ないので分からないけどググった感じ多分これ)を使っています.
手順
まずは lsusb
で繋いだWi-Fiドングルが認識されているかを確認します.下記ログ2行目のようにそれっぽいデバイスが表示されたらOKです.
pi@nanopineo2:~$ lsusb
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 007: ID 0411:01a2 BUFFALO INC. (formerly MelCo., Inc.) WLI-UC-GNM Wireless LAN Adapter [Ralink RT8070]
Bus 005 Device 002: ID 05e3:0610 Genesys Logic, Inc. 4-port hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 009 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
ドングルが認識されていたら,sudo nmcli dev
を実行してネットワーク接続に使用可能なデバイス一覧を確認します.下記ログのように,TYPEが wifi
になっているデバイスが表示されればOKです
pi@nanopineo2:~$ sudo nmcli dev
DEVICE TYPE STATE CONNECTION
eth0 ethernet connected Wired connection 1
wlx****** wifi disconnected --
lo loopback unmanaged --
Wi-FiをONにします.
sudo nmcli r wifi on
下記コマンドで利用可能なアクセスポイントをスキャンして,つなぎたいWi-Fiが見えているか確認します.
sudo nmcli dev wifi
下記コマンドでSSIDとパスを指定してWi-Fiへ接続します.
nmcli device wifi connect [YOUR_SSID] password [YOUR_PASSWORD]
[YOUR_SSID], [YOUR_PASSWORD
には,それぞれ接続先のSSDIとパスを書きます.例えば,SSIDが my-wifi-ssid
,そのパスが my-ssid-pw
であったとすれば,
nmcli device wifi connect my-wifi-ssid password my-ssid-pw
とすればOKです.
もう一度 sudo nmcli dev
を実行して,下記のようにSTATEがconnectedになれば成功です.
pi@nanopineo2:~$ sudo nmcli dev
[sudo] password for pi:
DEVICE TYPE STATE CONNECTION
wlx****** wifi connected aterm-******-g
参考
https://qiita.com/youyo_/items/376503446135c0dd3da7
https://tomono.tokyo/2017/11/29/6476/
Mainsail, Klipper等のインストール
手順
まずはaptで更新しておきます.
sudo apt update
sudo apt upgrade
Klipperたちのインストールには,kiauhというインストール&アップデートヘルパを利用するのが便利です.まずはこのリポジトリをホームへcloneしてきます.
cd ~
git clone https://github.com/th33xitus/kiauh.git
cloneが完了したら,下記コマンドでさっそくkiauhのスクリプトを実行してインストール開始です.
./kiauh/kiauh.sh
基本的には,上から順に選んでインストールしていけばOKです.まずは1)のKlipperから.
今更Python2.7でインストールするのは気が乗らないので,experimental
にはなっていますがPython3系でインストールしました.Klipper単体で入れたときもPython3で普通に動いてる雰囲気だったので大丈夫でしょう(各位自己責任でお願いします).インスタンスは1個で良いと思います.最後に Y
でインストール開始します.
この調子で 2) Moonraker
, 3) Mainsail
, 4) Fluidd
までインストールしました.
4) Fluidd
でインストーラがデフォで設定しようとするポート(80番)がMainsailと競合すると警告が出たので,とりあえず88番ポートに指定を変えました.正しいのかはよくわかっていないので詳しい方いらしたらご教示ください...
起動確認
Nano Pi NEO 2と同じネットワークに接続したブラウザから,http://[YOUR_NANO_PI_ADDR]
にアクセスします.例えばNano Pi NEO 2のIPアドレスが192.168.1.33
であれば,ブラウザのアドレスバーにhttp://192.168.1.33
と入力すればOKです.
下記スクショのようにMainsailのUIが表示されれば成功です!
各自のプリンタのファーム生成法は,様々な記事が見られましたのでそちらに譲ります.お疲れ様でした!(スクショは諸々設定を終えたあとのものなので,厳密にはレイアウトや内容が違うと思います)