octopiを使ってみた
元がPythonなのでどの環境でも構築できる。
イメージを使えば何も考えずに使える。
インストール
Raspberry PI Imager から Other specific-purpose OS を選び 3D Printing へ進む。 octopiを選び octopi(STABLE)を選ぶ。
あとはSDに焼くだけで終わる。 起動するとSDカードのサイズに合わせて resizeしてくれる。 最初は有線LANにさして立ち上げても良いかも知れない。
基本的には、キーボード、マウス、HDMIを挿してセットアップする。 セットアップと言ってもIPの固定化くらいなので、最初からリモート でも良いかも知れない。
因みに FreeBSDの時の UEFI-BOOT(UBOOT)にあるconfig.txtには、
hdmi_force_hotplug=1
hdmi_group=1
hdmi_drive=2
hdmi_mode=16
と
[pi4]
#hdmi_safe=1
FreeBSDとかに入れる場合は、pythonと virtualenv があれば良い。 octopiを動かすユーザーで、
$ virtualenv OctoPrint
$ OctoPrint/bin/pip install OctoPrint
Wifi
Wifi は標準で使えるようだ。インターフェースがあるか確認して SSIDを調べてみる。
$ ifconfig wlan0
wlan0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether dc:a6:32:93:91:a6 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
$ sudo iwlist wlan0 scan | grep ESSID
ESSID:"TP-Link_0CBC"
ESSID:"DCONM-16AD9-G"
ESSID:"DCONM-16AD9"
ちゃんと動いているようなので、wpa_supplicant.confを作る。
$ wpa_passphrase SSID himituhimitu > ws.conf
$
$ cat ws.conf
network={
ssid="SSID"
#psk="himituhimitu"
psk=836f3f8cb11d9c48301b7b67ee3827539010a1331109bcf7b1c73740c420d822
}
FreeBSDなら /etc/wpa_supplicant.confに書けば良いんだけど、octopiの場合は、 /etc/wpa_supplicant/wpa_supplicant.confにシンボリックリンクが置いてあって 実体は、/boot/octopi-wpa-supplicant.txtのようだ。
なので、イメージを書いた時に Windowsから書いても良い。初期状態では、 country=GB # United Kingdomになっているので、
country=JP # JAPAN
avahiが動いているから、 octopi.localでアクセスできると思うし、cura の pluginでも 認識すると思うけど、IPアドレスは固定にしたい。
/etc/dhcpcd.conf
interface wlan0
static ip_address=192.168.0.100/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1
interface eth0
ついでにプロセスを覗いてみると、
307 ? I 0:00 [kworker/1:2-cgroup_destroy]
318 ? Ssl 0:00 /lib/systemd/systemd-timesyncd
366 ? Ss 0:00 /usr/bin/dbus-daemon --system --address=systemd: --no
372 ? Ssl 0:12 /home/pi/oprint/bin/python3 /home/pi/oprint/bin/octop
374 ? Ss 0:00 /usr/sbin/thd --triggers /etc/triggerhappy/triggers.d
375 ? SNs 0:00 /usr/sbin/alsactl -E HOME=/run/alsa -s -n 19 -c rdaem
378 ? Ss 0:00 /usr/sbin/cron -f
まずは日本語化してみる。
https://github.com/Osawa-Yoshiki/OctoPrint-JA-LangPack から zip を取り寄せてアップロードする。
後は王道のPluginを入れて終わり。