よくあるエラー表示
このページでは、Klipperでよく発生するエラーを素早く特定できます。まず klippy.log で完全なエラーを確認し、その後に対応する説明をご覧ください。
接続の問題
mcu 'xxx': Unable to connect
エラー内容:上位機がマザーボードを見つけられない、または接続できない。
よくある原因:
- USB デバイス ID が未記入、または誤って記入されている。
- CAN UUID が未記入、誤って記入されている、またはデバイスがオフラインである。
- UTOC、USB ケーブル、CAN ブリッジファームウェア、または電源供給に異常がある。
- CAN0 が起動していない、または CAN ネットワーク設定に異常がある。
対処方法:
-
klippy.logを開いて一番下までスクロールし、具体的なエラー情報を確認する。 -
[Errno 2]が表示された場合、通常は検出された USB デバイス ID がprinter.cfgに追加されていないことを意味する。Loading... -
Serial connection closedが表示された場合、通常は CAN ID を再検索し、CAN ネットワークを確認する必要がある。Loading... -
Unable to open CAN port: [Errno 19] No such deviceが表示された場合、UTOC デバイス、USB ブリッジ CAN ファームウェア、または CAN0 デバイスが不足していることを示す。Loading... -
[Errno 100] Network is downまたは[Errno 105] No buffer space availableが表示された場合は、CAN ネットワークと ID の検索 に従って CAN0 設定を再確認する。
mcu 'mcu': Invalid CAN uuid
エラー内容:CAN UUID が無効、または認識できない。
エラー原因:canbus_uuid: の記入ミス、デバイスがオフライン、または CAN ネットワークが正常に通信できていない。
解決方法:
- CAN ネットワークと ID の検索 に従って CAN UUID を再検索する。
printer.cfgに実際に検出された UUID が記入されていることを確認する。- 同じ
[mcu]内でserial:とcanbus_uuid:が同時に有効になっていないことを確認する。 - CAN-H、CAN-L、終端抵抗、電源供給、ファームウェアの CAN レートを確認する。
Option 'serial' in section 'mcu' must be specified
エラー内容:[mcu] 設定セクションで serial を指定する必要がある。
エラー原因:USB ファームウェア接続時に serial: が未記入、または [mcu] 設定セクションが誤って削除された。
解決方法:
- USB デバイス ID を再検索する。
printer.cfgの[mcu]設定セクションに以下を記入する:
[mcu]
serial: /dev/serial/by-id/実際に検出されたID
- 保存して Klipper を再起動する。
現在のマザーボードが CAN ファームウェアで書き込まれている場合は、canbus_uuid: を使用し、serial: を記入しないでください。
Lost communication with MCU
エラー内容:Klipper と MCU の通信が切断された。ログに Lost communication with MCU、Lost communication with mcu、または類似のメッセージが表示される可能性がある。
よくあるシナリオ:原点復帰や移動中に、リミットスイッチが作動した瞬間にマザーボードやツールボードが切断される。再起動すると再接続できる。
よくある原因:
- リミットスイッチの配線ミスにより、作動時に信号ピンが電源またはグランドと異常にショートする。
- 3線式リミット、光電リミット、ホールリミットを使用する際に、電源、グランド、信号線の順序を間違えて接続している。
- リミット配線の被覆が破れたり、挟まれたり、ケーブルチェーン内で動いた際にショートする。
- リミット作動の瞬間にマザーボードの電源に変動が生じ、MCU が再起動したり、USB/CAN 通信が中断する。
- MCU と上位機間の USB/CAN 通信線が強い干渉源の近くを通っており、リミット作動や移動時に切断が発生しやすくなる。
- 設定内のリミットピンと実際の配線が一致しておらず、誤ったインターフェースがトリガーされる。
確認方法:
- 電源を切り、リミットスイッチの配線順序、特に3線式リミットの
VCC、GND、Signalが逆になっていないか確認する。 - 該当するリミット線を一時的に抜き、再び電源を入れてマザーボードが切断されないかテストする。
- マルチメーターを使用して、リミット作動前後でショートが発生していないか確認する。特に信号ピンが電源に接続されていないか重点的に確認する。
- ケーブルチェーン、コネクタ、配線の屈曲箇所を確認し、作動や移動時に配線が圧迫されてショートしないようにする。
- MCU と上位機間の USB/CAN 通信線を、モーター線、ヒーター線、ヒートベッド線、電源線から可能な限り遠ざける。
- マシンの筐体、電源、またはシールドが適切にアースされていない場合も干渉を受けやすくなるため、機器の電気安全要件に従ってアースを確認する。
- 設定内のリミットピンが、マザーボードのドキュメントや実際の配線と一致していることを確認する。
- 問題修正後に
QUERY_ENDSTOPSを実行し、リミット状態がopenからTRIGGEREDに正常に変化することを確認する。
MCU Protocol error
エラー内容:MCU プロトコルエラー。ログに MCU Protocol error、Unknown command、または Command format mismatch が表示される可能性がある。
よくある原因:
- 上位機の Klipper を更新したが、マザーボードまたはツールボードのファームウェアを再コンパイルして書き込んでいない。
- マザーボード、ツールボード、EDDY、ADXL などの周辺 MCU のファームウェアバージョンが上位機の Klipper と一致していない。
- カスタムシステムやサードパーティプラグインを使用した結果、Klipper ホスト側と MCU がサポートするコマンドに不一致が生じている。
解決方法:
- 最近 Klipper、システムイメージ、またはプラグインを更新したかを確認する。
- 該当する MCU の Klipper ファームウェアを再コンパイルして書き込む。
- ツールボード、EDDY、ADXL などの周辺 MCU の場合、該当する周辺ファームウェアも同時に更新する。
- カスタムシステムを使用している場合は、そのシステムが現在の Klipper バージョンをサポートしていることを確認する。
- 書き込み完了後に
FIRMWARE_RESTARTを実行し、再接続してテストする。
設定の競合問題
homing override method always homes X and Y before homing Z. The safe_z_home
エラー内容:安全 Z 原点復帰と原点復帰オーバーライド設定の競合。
エラー原因:[safe_z_home] と [homing_override] が同時に設定されているため、Klipper がどちらの原点復帰ロジックを使用すればよいか判断できない。
解決方法:
- 設定ファイル内で
[safe_z_home]と[homing_override]を検索する。 - マシンの実際の原点復帰ロジックに基づいて、どちらか一方のみを残す。
- 保存して Klipper を再起動する。
動作と原点復帰の問題
Move out of range
エラー内容:目標座標が Klipper で許可されている動作範囲外。ログには通常 Move out of range: X Y Z [E] のように表示される。
よくある原因:
- スライサー上のマシンサイズと、Klipper 設定の
position_min/position_maxが一致していない。 - 開始 G-code、終了 G-code、フィラメント交換マクロ、一時停止マクロがマシン範囲外に移動している。
M600、PAUSE、CANCEL_PRINTなどのマクロの待機位置が境界に近すぎる。- スキュー補正、プローブオフセット、またはメッシュベッド設定を使用した後、実際に計算される座標が負の値になったり、最大ストロークを超えたりする。
- モデルの高さが Z 軸の最大ストロークを超えている。
解決方法:
- エラー内の座標から、どの軸が範囲外かを特定する。
- 該当軸の
position_min、position_max、およびスライサーのマシンサイズを確認する。 - 開始、終了、一時停止、フィラメント交換などのマクロ内の待機座標を確認し、
0,0や最大境界に配置しないようにする。 - エラーがメッシュベッド測定中に発生した場合、
[bed_mesh]のmesh_min、mesh_max、およびプローブオフセットを確認する。 - 設定を保存して Klipper を再起動し、再度テストする。
Must home axis first
エラー内容:軸がまだ原点復帰していないため、現在の移動コマンドを実行できない。
よくある原因:
- 起動後または
FIRMWARE_RESTART後にG28を実行していない。 - マクロ内で、移動コマンドが原点復帰コマンドより先に実行されている。
- 印刷の一時停止、再開、またはキャンセル後、マシンの状態がリセットされた。
- 原点復帰マクロ、プローブマクロ、またはリミットスイッチなしの原点復帰設定に異常があり、Klipper が原点復帰状態を正しく記録できていない。
解決方法:
- 手動で
G28を実行してから、該当軸を移動する。 - 開始 G-code とマクロを確認し、移動コマンドの前に原点復帰が完了していることを確認する。
- Klipper またはファームウェアを最近更新した場合、原点復帰関連のマクロが現在のバージョンと互換性があるか確認する。
- リミットスイッチなしの原点復帰を使用している場合、モーター電流、感度、および
homing_retract_distを確認する。
Endstop still triggered after retract
エラー内容:原点復帰でリミットスイッチを作動させた後、後退距離の終了時点でリミットスイッチがまだ作動状態にある。
よくある原因:
- リミットスイッチのノーマルオープン/ノーマルクローズのロジック設定が逆になっている。
- リミットスイッチが固着、破損している、または配線順序が間違っている。
homing_retract_distが小さすぎて、後退後もリミットスイッチを押したままになっている。- リミットスイッチなしの原点復帰の感度が高すぎて、後退後も作動状態と判断される。
- ドライバの
enable_pin、モーター方向、またはリミットピンの設定が誤っており、原点復帰動作が正常に行われない。
解決方法:
QUERY_ENDSTOPSを実行し、未作動時はopen、手動作動後はTRIGGEREDとなることを確認する。- 状態が逆の場合は、リミットピンの前に
!を追加するなどして調整する。 - リミットスイッチの機械的状態、配線順序、コネクタを確認する。
homing_retract_distを適切に増やして再テストする。- リミットスイッチなしの原点復帰を使用している場合、感度を下げ、原点復帰時の電流が適切であることを確認する。
No trigger on probe after full movement
エラー内容:プローブが完全な下降ストローク内で作動しなかった。
よくある原因:
- プローブの配線、電源供給、またはピン設定が誤っている。
- プローブの取り付け高さが不適切で、下降ストローク内で作動できない。
- Z 軸の方向、プローブオフセット、またはレベリングエリアの設定が誤っている。
- プローブ本体の故障、または移動時の配線接触不良。
- ヒートベッド、ノズル、またはプローブの位置が検出可能範囲外にある。
解決方法:
QUERY_PROBEを実行し、プローブを手動で作動させて、状態が正常に変化するか確認する。- プローブの電源供給、信号線、設定ピンを確認する。
- プローブの取り付け高さを確認し、下降前にプローブが作動可能な範囲にあることを確認する。
[probe]、[bed_mesh]、[z_tilt]、または[quad_gantry_level]内の測定ポイントがヒートベッドの外側にないか確認する。- 問題が特定の位置でのみ発生する場合、配線の引き回しとプローブオフセットを重点的に確認する。
温度検出の問題
Error 'XXX mcu' shutdown: ADC out of range
エラー内容:ADC が測定範囲外。温度検出に異常がある。
エラー原因:Klipper が設定で許可されている範囲を超える温度を検出した。サーミスタの断線、ショート、配線ミス、サーミスタモデルの設定ミス、またはピン設定ミスが一般的な原因。
min_temp と max_temp を一時的に緩和するのは調査目的のみとし、恒久的な設定にしないでください。問題を確認後は必ず安全範囲に戻し、温度保護が無効にならないようにしてください。
調査手順:
- サーミスタがしっかりと接続されているか、線材が断線またはショートしていないか確認する。
- サーミスタのモデルとピン設定が実際のハードウェアと一致しているか確認する。
- 必要に応じて、一時的に温度範囲を緩和して読み値の変化を確認する(例:
min_tempを低く、max_tempを高くする)。 - 配線または設定の問題を特定して解決した後、すぐに元の安全な温度制限に戻す。
- 保存して Klipper を再起動する。
Heater not heating at expected rate
エラー内容:ヒーターが期待される速度で昇温していない。ログに Heater extruder not heating at expected rate または Heater heater_bed not heating at expected rate が表示される可能性がある。
よくある原因:
- ヒートカートリッジ、ヒートベッド、または SSR/MOS 管の出力異常。
- サーミスタの接触不良、線材の半断線、または読み値の跳躍変動。
- ファンがホットエンド、ヒートベッド、または加熱エリアを直接冷却し、昇温が遅くなっている。
- ヒートベッドの出力不足、または
max_powerの制限が低すぎる。 - PID パラメータが不適切で、目標温度付近での変動が大きい。
解決方法:
- ヒーターとサーミスタの配線がしっかりと接続されているか確認する。
- 温度曲線を観察し、昇温が連続的か、異常な跳躍がないか確認する。
- ファンがホットエンドやヒートベッドを直接冷却していないか確認する。
- ヒーター出力、電源供給、ヒューズ、SSR/MOS 管、および
max_power設定を確認する。 - ハードウェアが正常であることを確認した後、PID キャリブレーションを再実行する。
- 大型ヒートベッドや特殊構造のために昇温が遅いことが確認された場合のみ、verify_heater の最適化 を参照してください。
押出の問題
Extrude below minimum temp
エラー内容:ノズル温度が押出を許可する最低温度に達していない。ログに Extrude below minimum temp または Extruder not hot enough が表示される可能性がある。
よくある原因:
- ノズルを加熱せずに押出コマンドを実行した。
- 開始 G-code、フィラメント交換マクロ、一時停止/再開マクロに温度待機コマンドが不足している。
- 目標温度にまだ達していないのに、マクロが押出またはリトラクトを早まって実行した。
- 温度センサーの読み値に異常があり、Klipper がノズルが押出可能温度に達していないと判断した。
解決方法:
- 押出を実行する前に、ノズルがフィラメントに必要な温度に達していることを確認する。
- 開始 G-code、
M600、PAUSE、RESUMEなどのマクロに温度待機ロジックが含まれているか確認する。 - 温度待機が必要な箇所で
M109または Klipper の同等の待機コマンドを使用する。 - サーミスタと温度曲線を確認し、温度読み値が安定していることを確認する。
- エラーを回避するために
min_extrude_tempを恒久的に下げることは推奨されません。
パフォーマンスとタイムアウトの問題
原点復帰タイムアウトの問題
原点復帰時に通信タイムアウト、MCU 切断、またはマルチ MCU 原点復帰の異常が発生した場合は、原点復帰タイムアウトの問題 を参照してください。
MCU 'mcu' shutdown: Stepper too far in past
エラー内容:ステッパーイベントが MCU で処理可能な時間範囲を超えており、プリンターがシャットダウン状態になる。
参考シナリオ:このエラーは必ずしもメッシュベッド設定によって引き起こされるわけではありません。実際の原因は klippy.log と現在の操作に基づいて判断する必要があります。多点メッシュベッド測定を実行する際に、[bed_mesh] の probe_count が非常に大きく(例:20,20)設定され、かつ高い mesh_pps(例:mesh_pps: 4,4)が設定されている場合、過密なグリッドデータが生成される可能性があります。これにより上位機の計算と動作計画への負荷が増大し、類似のエラーが発生する可能性があります。
解決方法:
- エラーが多点メッシュベッド測定中に発生した場合、まず
[bed_mesh]のprobe_countを減らします(例:7,7または9,9に変更してテスト)。 - 高い
mesh_ppsが設定されている場合は、値を下げるか削除します(例:mesh_pps: 2,2)。補間が不要な場合は、実際のニーズに応じて0,0に設定できます。 - 設定を保存して Klipper を再起動し、エラー発生前の操作を再実行します。
- それでもエラーが発生する場合は、上位機の負荷、印刷速度、加速度、通信品質、および現在実行中のマクロや G-code を引き続き確認します。
MCU 'mcu' shutdown: Timer too close
エラー内容:MCU タイマーが近すぎて、システムがタイムアウトした。
エラー原因:下位機の処理負荷が高すぎる、上位機の応答がタイムアウトする、印刷速度が高すぎる、マイクロステップ数が高すぎる、システム時刻同期による干渉、または MCU 通信線への干渉などが原因で発生する可能性がある。
解決方法:
- ステッピングモーターのマイクロステップ数を減らし、MCU のパルス処理負荷を軽減する。
- 印刷速度と加速度を下げ、問題が解決するか観察する。
- 上位機の負荷、電源供給、および USB/CAN 通信品質を確認する。
- MCU と上位機間の通信線がモーター線、ヒーター線、ヒートベッド線、または電源線の近くを通っていないか確認し、必要に応じて配線を引き直すかシールド付き通信線に交換する。
- マシンのアース状況を確認する。適切にアースされていないマシンは通信干渉が発生しやすい可能性がある。
- 問題が原点復帰段階で発生する場合は、原点復帰タイムアウトの問題 を参照してください。
- 問題が継続する場合は、上位機システムまたはファームウェアの再書き込みを検討する。
Raspberry Pi ユーザーは、NTP 時刻同期状態を確認できます:
sudo timedatectl status | grep "NTP service"
NTP 同期を一時的に無効にするには、以下を実行します:
sudo timedatectl set-ntp false
問題が NTP に関係ないことが確認できたら、必要に応じて再度有効にします:
sudo timedatectl set-ntp true