こんにちは。たねやつです。
今回の記事では、Raspberry Pi上でklipperの設定を進めていきます。klipperはVORONを動かすための3Dプリンター用のファームウェアです。
前の記事
前回はRaspberry PiにPCからSSH接続できるようになるまで進めました。
各ドキュメント
基本的なKlipperの初期設定等は以下の各ドキュメントに従って進めていきます。
動画ではいつものVORONおじさんの動画も参考になります。
printer.cfg
という最も良く触るコンフィグファイルに関してはSIBOORのGithubリポジトリに公開されているものを使用します。私が参照したタイミングは2023年10月頃なのでそこからいくつか変更されている様子です(もうすでに問題なく動いているのであまり根幹部分はいじらないようにしています)。
Klipperの画面にアクセスしてみる
とりあえず前回Mainsail OSを導入したRaspberry Piを起動してSSH接続するところまでは確認できているので、今度はブラウザからKlipperの画面にアクセスしてみます。このこの辺りのWEBサーバーの自動起動なども設定されているのでかなり楽ですね。
VORONの電源を投入しブラウザから前回Raspberry Pi Imagerで設定したホスト名
を入力してアクセスします。ホスト名がvoron2350-0
であれば、
http://voron2350-0
にアクセスすれば画面が開くはずです。IPアドレスが分かっている場合はそれでもOKです。
初めてアクセスした時にはエラー画面が表示されていると思いますが問題ないです。printer.cfg
という設定ファイルをまだ作成していないためこれが表示されます。
printer.cfgを作成する
アクセスが確認出来たら、一つファイルを作成します。画面左上のハンバーガーボタンをクリックしてMACHINE
を選択します。ここではVORONの設定ファイルを編集したり、各種アップデートやエンドストップのテスト等を行うことができます。
画面上の方にある上矢印のアップロードボタンがあるのでそれを使用してファイルをRaspberry Piへと送ります。送るファイルはSIBOORのリポジトリにあるprinter.cfg
ファイルです。
ファイル名はprinter.cfg
から変更しないでください。アップロードが成功したら画面右上の電源ボタン内からFirmware Restart
を実行してKlipperを再起動します。これはVORON本体やRaspberry Piの再起動ではなくKlipper自体の再起動となります。今後設定ファイルを修正した時などに毎回必要になってきます。
再起動が完了するとエラーメッセージの内容がMCUと疎通できませんという内容に変わってるはずです。エラーが出ているままですが現状ではOKです。
各設定値について
ぱっと見でそこまで難しい記法ではなくプログラミングとかやったことない人でも読みやすいかと思います。そこまで深掘りはしませんが今後変更する必要のある箇所について少し触れていきます。
mcu EBBCan
[mcu EBBCan] #serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00 canbus_uuid: 2789c6737f74 # The following command is used to view the ID of canbus and needs to be entered in the ssh terminal. # “ ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0 ”
今回のVORONキットの一番と言ってもいいほどの特徴のCAN通信を使用してツールヘッド部分を制御するために必要な記述です。詳細は後ほどに作業しながらとなりますが、ここではStealthBurner内につけるSB2209
のIDを指定して通信できるようにしています。基本的にとりあえず初期セットアップできるように動かすのに必要な設定値はこれだけになります。
300mmビルドプレートの設定を350mmに
今のコンフィグファイルは一部が300mm用のビルドプレートの設定となっているため、350mmのものを使用している方は変更する必要があります。
[stepper_x] position_endstop: 300 #350 ## Mechanical reset point coordinates for X-axis (change to 350 for 350 models) position_max: 300 #350 ## X-axis maximum travel - software limit (change to 350 for 350 models)
300の値を350に変更します。
[bed_mesh] # 修正前 # mesh_max: 270, 270 # Maximum calibration point coordinates x, y mesh_max: 320, 320 # Maximum calibration point coordinates x, y
270の値を320に変更します。ベッドの歪みを測定するときの処理なのですが、300mmビルドプレートの設定のままだとせっかくの大きなビルドプレートの端っこの歪みを測定できなくなってしまいます。
[homing_override] axes: z set_position_z: 0 gcode: G90 G0 Z5 F1800 G28 X Y G0 X150 Y150 F7200 #300mm # G0 X175 Y175 F7200 #350mm G28 Z G0 Z10 F1800 G0 X150 Y150 Z30 F1800 # G0 X175 Y175 Z30 F1800 #350mm
ホーミング地点を指定する座標を150から175に変更します。300mmの行を消して350mmの行の頭にある#
を削除してコメントアウト状態を解除します。
[quad_gantry_level] ## Gantry Corners for 300mm Build ## Uncomment for 300mm build gantry_corners: # 300mm machineries -60,-10 360,370 ## Probe points points: 50,25 50,225 250,225 250,25 ## Gantry Corners for 350mm Build ## Uncomment for 350mm build # gantry_corners: # -60,-10 # 410,420 ## Probe points #points: # 50,25 # 50,275 # 300,275 # 300,25
ガントリーの水平をとる処理の設定となります。各Zモーターの座標と測定地点の値があります。上のfor 300mm build
の部分をすべて削除して、下のfor 350mm build
の部分のコメントアウトを解除します。
[gcode_macro PROBECALIBRATE] gcode: G28 G0 X150 Y150 Z1 F3600 # G0 X175 Y175 Z1 F3600 ##350mm PROBE_CALIBRATE [gcode_macro G32] gcode: BED_MESH_CLEAR # Unloading net beds G28 # Homing all axes QUAD_GANTRY_LEVEL # Gantry levelling G28 # Homing all axes G0 X150 Y150 Z30 F3600 # 300mm #G0 X175 Y175 Z30 F3600 # 350mm
最後にGコード内の座標も修正しておきます。
すべて完了したら画面右上のSAVE (& RESTART)
のボタンを押して修正を反映させます。
次の記事
次の記事ではOctopus ProとSB2209のファームウェアを書き込みます。