Klipperを導入したけど、Mainsailの画面を見て「うーん、どこから触ればいいんだろう…」って思ったことありませんか?
そう感じている方も多いのではないでしょうか。Mainsailは、Klipperを搭載した3Dプリンターをパソコンやスマホから遠隔操作するためのいわば「司令塔」です。
この記事では、Mainsail osのセットアップが終わっている方を対象に、使い方を基本からしっかり解説していきます。難しそうに見えるかもしれませんが、一つずつ覚えていけば大丈夫。最初は最低限の操作だけできればOKですからね!
Mainsailとは?どんなことができるのか
まずはMainsailがどんなツールなのか、何ができるのかを簡単に見ていきましょう。
Mainsailは、Klipperを搭載した3Dプリンターを、パソコンやスマホのブラウザから操作できるようにしてくれるツールです。「WebUI」なんて呼ばれたりもしますね。
MainsailはKlipper専用のWeb操作インターフェース
Mainsailは、Klipperの機能に最適化された、軽快で直感的なWebインターフェースです。
OctoPrintを使ったことがある方なら「あ、あれのKlipper版か!」とピンとくるかもしれません。でもMainsailはKlipperに特化して作られているので、動作が軽くてサクサク動くのが特徴。画面のデザインも洗練されていて、初めてでも直感的に操作できるように工夫されています。
ポイント:OctoPrintとの違いは?
Klipper環境でよく比較される「OctoPrint」よりも、Mainsailは軽量で、Klipperとの連携を重視して開発されています。Webブラウザからアクセスするだけで、すぐにプリンターを操作できるのが魅力です。
できること一覧(モニタリング・制御・ファイル管理・マクロ実行など)
Mainsailを使うと、こんなことがブラウザ上でできちゃいます:
- リアルタイムモニタリング: プリンターの温度や印刷進行状況をリアルタイムで確認
- プリンター制御: ノズルやベッドを動かしたり、温度を設定したり
- G-codeファイル管理: ファイルのアップロード、削除、整理整頓
- マクロ実行: ボタン一つで複雑な操作を自動実行
- 設定ファイル編集: printer.cfgなどの設定を直接編集
- ログ確認: エラーが起きたときの原因調査
要するに、プリンターの前に立たなくても、ほとんどの操作ができるってわけです。
ホーム画面の見方と基本操作
Mainsailを開くと、最初はいろんな情報がぎっしり詰まった画面が表示されます。
「うわ、情報多すぎ…」って感じるかもしれませんが、見るべきポイントさえ押さえれば意外とシンプルなんです。
ステータスバー(温度・印刷進行・接続状態)
画面の上の方や、メインエリアのカードに表示されているのがステータスバーです。ここを見れば、プリンターの「今」がすぐわかります。
| 確認項目 | 主な役割と表示の例 |
| 温度表示 | ノズル・ベッドの目標温度と現在温度。 |
| 印刷進行 | 印刷中の進捗バー(パーセント表示)や、残り時間の予測。 |
| 接続状態 | KlipperやMoonrakerとの接続状態を表示。 緑色ならOK! |
よく見る表示の意味はこんな感じ:
- Standby: 待機中。印刷してない状態ですね
- Printing: 印刷中!順調に動いています
- Paused: 一時停止中。フィラメント交換とかでストップしてる状態
- Error: エラー発生。ログを確認して原因を探りましょう
温度表示は、ノズルとベッドの「現在温度 / 目標温度」という形式で表示されます。例えば「210°C / 210°C」なら目標温度に到達済み、「180°C / 210°C」ならまだ加熱中ってことですね。
コントロールパネル(移動・原点復帰・ヒーター設定)
プリンターを手動で動かしたいときに使うのがコントロールパネル。「TOOL」タブとか「CONTROL」タブに配置されていることが多いです。プリンターを動かすための手動操作を行う場所ですね。
ここでできる主な操作はこちら:
- XYZ移動: X/Y/Z軸を「10mm」「1mm」「0.1mm」などの単位で動かせます。テストプリント時や、ノズル掃除に便利!
- 原点復帰(ホーミング): 「All」「X」「Y」「Z」ボタンを押すと、各軸が設定されたホームポジションに戻ります。印刷前に必ず行う操作の一つです。
- 押出し: フィラメントを出したり引っ込めたり。詰まりチェックに使えます。
- ヒーター設定:ノズルとベッドの温度を自由に設定できます。
ボタンをポチポチ押すだけで操作できるので、直感的で分かりやすいと思います。ただし、ホーミングしてない状態で無茶な移動をさせると、プリンターが「え、どこにいるか分からないんだけど…」ってエラーを出すので注意が必要です。
コンソールとログ(エラー確認や手動コマンド入力)
画面の右側にある「CONSOLE」タブ。ここはKlipperと直接おしゃべりできる場所です。
ここでできる主な操作はこちら:
- Klipperエラーの確認
- 手動コマンド入力
プリンターに問題が発生してエラーが出たとき、ここに赤文字でメッセージが表示されます。
「Heater extruder not heating at expected rate」とか「TMC UART error」みたいな感じで英語で出てくるんですが、これをコピーして検索すれば解決策が見つかることも多いです。
また、G-code(ジーコード)やKlipper特有のコマンドを手動で入力することもできます。
例えば
G28でホームに戻る- 「SET_PIN PIN=case_light VALUE=1」って入力すればケースライトを点灯できる
- 「TEMPERATURE_WAIT SENSOR=extruder MINIMUM=200」って入力すればノズルが200度になるまで待機させる
ちょっと上級者向けですが、覚えておくと便利な機能です。
印刷を始めるまでの基本フロー
さて、いよいよ実際に印刷してみましょう!G-codeファイルをアップロードして印刷開始するまでの流れを説明しますね。
G-codeファイルのアップロードと管理方法
まずは印刷したいG-codeファイルをMainsailにアップロードします。左側のメニューから「FILES」または「JOBS」タブを開いてください。
- アップロード: ファイルをアップロードする方法は簡単。画面の「Upload」ボタンから、スライサーソフトで作成した
.gcodeファイルをドラッグ&ドロップ、もしくは「アップロード」ボタンをクリックしてファイルを選択してもOK。 - ファイル管理のコツ:
- フォルダを作って整理整頓すると後で探しやすい
- 不要なファイルはこまめに削除(ストレージ容量も限られてますからね)
- ファイル名は分かりやすいものに(「test.gcode」より「pikachu_base_v2.gcode」みたいな)
サムネイル画像も一緒にアップロードすると、視覚的に選びやすくなって便利ですよ。
印刷開始〜モニタリングまでの操作手順
- ファイル選択: 「FILES」から印刷したいG-codeファイルを選び、再生ボタン(▶️)をクリック。
- 確認: 印刷が始まると、ホーム画面に戻って以下の項目を確認しましょう。
- 温度が上昇しているか: ノズルとベッドが設定温度まで上がっていくのを確認
- 進捗バーが動いているか: ちゃんと印刷が進んでいることの証拠
- 予想残り時間: 「あと2時間か〜」って分かると予定が立てやすいですよね
- レイヤー情報: 今何層目を印刷中か表示されます
ダッシュボードに表示される温度グラフを見ると、温度の安定性も一目瞭然。波打ってたらPIDチューニングが必要かもしれません。
印刷中にできる操作(一時停止・再開・キャンセル)
印刷中に「あ、フィラメント変えたい!」とか「やっぱりこの印刷ダメだわ…」って思うこと、ありますよね。そんなときの操作方法です。
| 操作 | アイコン |
| 一時停止 | ⏸️ |
| キャンセル | ⏹️ |
一時停止は「PAUSE」ボタンをクリック。すると印刷が止まって、ノズルが安全な位置に退避します。フィラメントを交換したり、ベッドを調整したりできますよ。再開するときは「RESUME」ボタンを押すだけ。ノズルが元の位置に戻って、印刷が続きます。
キャンセルは「CANCEL」ボタン。これを押すと印刷が完全に中止されます。
注意点として、一時停止してから長時間放置すると、ノズルに残ったフィラメントが固まっちゃうことがあります。できるだけ早めに再開か、キャンセルを決断しましょう。
温度・ファン・照明などの制御
印刷してないときでも、プリンターをいろいろ制御できます。メンテナンスするときとか、テストするときに便利な機能です。
ノズル・ベッド温度の設定とプリセット登録
コントロールパネルの温度設定エリアを使います。
- 任意温度入力: 温度の数値部分をクリックして、直接温度を入力して設定できます。
- プリセット機能: 便利なのがプリセット機能。よく使う温度を登録しておけるんです。
- PLAプリセット: ノズル200度、ベッド60度
- ABSプリセット: ノズル240度、ベッド100度
- TPUプリセット: ノズル230度、ベッド50度
こんな感じで登録しておけば、ボタン一つで目的の温度に設定できます。いちいち数字を入力する手間が省けて、ミスも減りますよ。
ファンコントロールの使い方(Part・Hotend・ケースファンなど)
Mainsailからはファンの速度も調整できます。スライダーをググッと動かすだけ。
プリンターには何種類かファンがついてることが多いです:
- パートクーリングファン: 印刷物を冷やすファン。オーバーハングの仕上がりに影響します
- ホットエンドファン: ヒートシンクを冷やす重要なファン。これが止まるとヒートクリープで詰まります
- ケース排気ファン: エンクロージャー内の温度調整用
印刷中は基本的に自動制御されますが、手動でファンの回転速度を0〜100%の間で設定できます。例えばABS印刷で反りを防ぐため、最初の数層はファンを弱めに…みたいな細かい調整もできちゃいます。
LEDやケースライトのON/OFF制御
Neopixelとかケースライトを付けてる方は、Mainsailから制御できます。設定次第では、UIにボタンが表示されてワンクリックでON/OFF可能。
ボタンが表示されてない場合は、コンソールから手動でコマンドを入力します。例えば:
SET_PIN PIN=case_light VALUE=1 # ライトON
SET_PIN PIN=case_light VALUE=0 # ライトOFF印刷中の様子を撮影したいときとか、ライトをつけると映えますよね。夜中に印刷してるときは消しておけば節電にもなります。
マクロとカスタム操作を活用しよう
Mainsailの本当の便利さは、マクロを使い始めてから実感できます。複雑な操作を自動化できるので、作業効率がグンと上がりますよ。
マクロ一覧の確認と実行方法
マクロとは、複数のG-codeやコマンドを一つの名前にまとめて、ワンクリックで実行できるようにしたものです。
printer.cfgに[gcode_macro]として定義されたマクロが、ここに自動的に表示される仕組みです。最初から入ってるマクロもあれば、自分で追加したマクロもここに並びます。
- メニューの確認:下にスクロールすると「MACROS」があってクリックすると、現在登録されているマクロの一覧が表示されます。
- 手動実行: 使いたいマクロの名前をクリックするだけで、複雑な一連の動作(例:ベッドを温めてからプローブで測定する)が自動で実行されます。
よく使われる便利マクロ例:
| マクロ例 | 用途 |
BED_MESH_CALIBRATE | ベッドレベリングを自動で行い、ベッドの歪みを補正します。 |
Z_OFFSET_ADJUST | 印刷の1層目の高さ(Zオフセット)を調整するモードに入ります。 |
PURGE_LINE | 印刷開始前にノズルからフィラメントを押し出して準備します。 |
自作マクロを追加するには(printer.cfg連携)
「こんな操作を自動化したいな〜」って思ったら、自分でマクロを作ることもできます。
Mainsailの左メニューから「MACHINE」タブを開くと、設定ファイルの一覧が表示されます。その中から「printer.cfg」を選んでクリック。するとテキストエディタが開くので、そこに新しいマクロを書き込みます。
例えばこんな感じ:
[gcode_macro HEAT_NOZZLE]
gcode:
M104 S200 # ノズルを200度に設定
TEMPERATURE_WAIT SENSOR=extruder MINIMUM=200 # 到達まで待機編集したら「SAVE & RESTART」ボタンをクリック。Klipperが再起動して、新しいマクロが反映されます。次に「MACROS」タブを開くと、追加したマクロがちゃんと表示されてるはず!
最初は既存のマクロをコピペして、ちょっとだけ数字を変えてみる…みたいな感じで試してみるといいと思います。
便利なモニタリング・ログ機能
印刷がうまくいかないとき、原因を突き止めるのに役立つのがモニタリングとログ機能です。「何が悪いんだろう…?」って悩んだときは、ここをチェック。
リアルタイム温度グラフの見方
「TEMPERATURE」エリアには、温度の推移がグラフで表示されます。このグラフ、実はすごく便利なんですよ。
温度が安定してるときは、線がほぼ水平になります。でも上下に波打ってたら、PIDチューニングがうまくいってない証拠。特に温度が±5度以上も上下してたら、改めてPIDチューニングした方がいいですね。
また、温度上昇のスピードも重要。「全然温度が上がらない…」ってときは、ヒーターの出力不足か、サーミスタの接触不良を疑いましょう。逆に急激に上がりすぎるときは、PID設定が過激すぎるかも。
印刷履歴と統計情報のチェック
「HISTORY」タブを開くと、過去の印刷ジョブが一覧表示されます。いつ、何を、どれくらいの時間で印刷したかが記録されてるんです。
統計情報も見られます:
- 総印刷時間
- 成功率(完了した印刷 / 全印刷)
- 総フィラメント使用量
- 最長印刷時間
「今月は合計50時間も印刷してたのか…」とか「成功率85%」とか、自分のプリンター運用を客観的に見られて面白いですよ。
失敗した印刷もちゃんと記録されてるので、「あのときなんで失敗したんだっけ?」って振り返るのにも便利です。
Klipperログの確認方法(エラー解析)
トラブルが発生した際に、最も重要な情報源が「ログ」です。エラーが起きたとき、詳しい情報を知りたいなら「klippy.log」を見ましょう。
「MACHINE」タブから「klippy.log」を選んでクリック。すると、Klipperの動作ログがズラーッと表示されます。エラーの直前にどんな処理をしていたのか、どんなコマンドが実行されたのか、全部記録されてるんです。
エラーメッセージをコピーしてGoogle検索すると、同じ問題にぶつかった人の解決策が見つかることも多いです。ログファイルはダウンロードもできるので、フォーラムとかで質問するときに添付すると、詳しい人が原因を特定しやすくなります。
正直、最初は「英語ばっかりで何書いてあるか分からん…」って思うかもしれません。でも、赤文字の「ERROR」とか「Exception」とかのキーワードを探すと、重要な情報が見つかりやすいですよ。
よく使うトラブルシューティング操作
「動かない!」「エラーが出た!」そんなとっさの時に役立つ対処法をまとめました。
Mainsailが応答しないときの再接続手順
「あれ、Mainsailの画面が固まった?」ってときは、まず落ち着いて。いくつか試せることがあります。
まずはリフレッシュ: ブラウザの更新ボタン(F5キー)を押してみましょう。これだけで復活することも多いです。
それでもダメなら: 一度Mainsailのタブを閉じて、もう一度URLにアクセスしてみてください。
ブラウザキャッシュをクリア: たまにキャッシュが原因で動作がおかしくなることも。Ctrl+Shift+Deleteでキャッシュクリアできます。
最終手段はKlipper再起動: 「MACHINE」タブから「RESTART」ボタンを押すか、Raspberry Piを再起動。これで大体の問題は解決します。
ちなみに、Wi-Fi接続が不安定だと頻繁に切断されることがあります。できれば有線LAN接続にするのがオススメ。
温度異常・エラー発生時のリカバリ方法
ノズルやベッドの温度が異常に高くなったり、低くなったりすると、「ADC out of range」とか「Heater extruder not heating at expected rate」みたいなエラーが出たとき、焦りますよね。
Heater Shutdownが起きたときは:
- 「FIRMWARE_RESTART」ボタンをクリックしてKlipperを再起動
- サーミスタの配線を確認(抜けてないか、断線してないか)
- ヒーターカートリッジの接続も確認
- 問題が解決したら、もう一度PIDチューニングを実行
温度がおかしい値を示してるとき(例:室温なのに-50度とか表示される):
- サーミスタの種類がprinter.cfgの設定と合ってるか確認
- サーミスタの接続を確認
- 最悪の場合、サーミスタ自体が故障してる可能性も
エラーメッセージは必ずメモかスクショを取っておきましょう。後で調べるときに役立ちます。
印刷ジョブが途中停止した場合の確認ポイント
印刷が途中で止まってしまった場合、原因と再開の可否を確認しましょう。
「印刷が途中で止まってる…なんで?」ってときは、こんなポイントをチェック:
フィラメント切れ: 一番よくある原因。スプールを確認してみましょう。
通信エラー: コンソールに「Lost communication with MCU」とか表示されてたら、USB接続が切れた可能性。USBケーブルを交換してみるのも手です。
SDカード/ストレージエラー: G-codeファイルの転送が途中で失敗することも。ファイルを再アップロードして、もう一度トライ。
温度関連エラー: ヒーターがシャットダウンしてたら、上で説明した温度異常の対処法を試してみて。
電源瞬断: 一瞬でも電源が落ちると、プリンターは止まります。電源タップやUPS(無停電電源装置)の導入も検討の価値あり。
残念ながら、Klipperには印刷再開機能(Power Loss Recovery)が標準では搭載されてません。途中で止まったら、基本的にはやり直しです。悲しいけど、これが現実…。
まとめ:Mainsailを使いこなして快適なKlipper環境を
ここまで読んでいただき、ありがとうございます!Mainsailの基本的な使い方は、だいたい掴めたでしょうか?
最初は「機能がいっぱいで覚えられない…」って思うかもしれませんが、大丈夫。まずは印刷を開始して、温度を確認して、ファイルをアップロードする…この基本操作だけできればOKです。
慣れてきたら、少しずつマクロを使ってみたり、設定画面をいじってみたり。そうやって徐々にステップアップしていけば、いつの間にかMainsailを使いこなせるようになってるはずです。
覚えておきたいポイント:
- Mainsailは頻繁にアップデートされるので、たまにUIが変わることもある
- 分からないことがあったら、公式ドキュメントやコミュニティを活用しよう
- 設定をいじるときは、必ず元の設定をバックアップしてから
Mainsailを使いこなせるようになると、3Dプリンターライフがグッと快適になります。遠隔から印刷をスタートしたり、出先から印刷状況を確認したり、トラブルシューティングもスムーズに。
次のステップとして、FluiddやMoonraker設定についても学んでみるのもいいかもしれませんね。Klipperの世界は奥が深いので、一緒に楽しく学んでいきましょう!
それでは、良い3Dプリンターライフを!
