ピン設定置き換え説明
このページは、既存のKlipper設定を現在のFLYメインボードで使用可能なピンに変更する手順を説明します。多くのオンライン設定は構造の参考としてのみ使用でき、そのままコピーして使用することはできません。実際に使用する前に、実際のメインボードのモデル、インターフェースの位置、配線方法に応じて対応するピンを置き換える必要があります。
開始する前に、プリンターの電源を完全に切ってください。通電状態でケーブルを抜き差ししたり、インターフェースの配線順序を整理したり、端子に触れたりしないでください。
- この記事では、設定内のピンを検索して置き換える方法のみを説明します。特定のマシンの完全な完成設定は提供しません。
position_max、rotation_distance、microsteps、run_current、sensor_typeなどのパラメータは、実際のマシンとハードウェアに基づいて確認する必要があります。メインボードを交換したからといって、盲目的にコピーしないでください。- メインボードのピンは、対応するFLY製品ドキュメント、メインボードのシルク印刷、および公式リファレンス設定を基準にしてください。
変更の考え方
設定を変更する際は、以下の順序で処理することをお勧めします。
- 現在使用しているFLYメインボードのモデルを確認します。
- 対応するメインボード製品ドキュメントを開き、ドライバー、エンドストップ、ファン、ヒーター、サーミスタなどのピン説明を確認します。対応するメインボードの Klipper リファレンス設定 も直接参照できます。
printer.cfgとすべての[include]ファイル内で、変更が必要な機能セクションを見つけます。- 使用予定の新しいピンを検索し、それが他の有効な設定で占有されていないことを確認します。
- メインボードのインターフェースに関連するピン項目のみを置き換え、必要な
!、^、~の記号はそのまま保持します。 - 設定を保存し、Klipperを再起動します。
- 個別の機能ごとにテストを行い、すべての周辺機器を一度に通電テストしないでください。
よくある機能セクション
| 機能 | よくある設定セクション | よくある置き換えが必要な項目 |
|---|---|---|
| X / Y / Z モーター | [stepper_x]、[stepper_y]、[stepper_z] | step_pin、dir_pin、enable_pin、endstop_pin |
| 押出機モーター | [extruder] | step_pin、dir_pin、enable_pin |
| TMC ドライバー通信 | [tmc2209 stepper_x]、[tmc5160 stepper_x] など | uart_pin、cs_pin、spi_software_mosi_pin、spi_software_miso_pin、spi_software_sclk_pin、diag_pin |
| ホットエンド加熱 | [extruder] | heater_pin、sensor_pin |
| ヒートベッド加熱 | [heater_bed] | heater_pin、sensor_pin |
| ファン | [fan]、[heater_fan xxx]、[fan_generic xxx] | pin、tachometer_pin |
| エンドストップスイッチ | [stepper_x]、[stepper_y]、[stepper_z] | endstop_pin |
| プローブ | [probe]、[bltouch] | pin、sensor_pin、control_pin |
| LED / ブザー | [output_pin xxx]、[neopixel xxx] | pin |
対応する設定を探す
設定がどのファイルにあるかわからない場合は、Web設定インターフェースから探すことをお勧めします。
- ブラウザでプリンターのWebインターフェース(Fluidd や Mainsail など)を開きます。
- 設定ファイルページに移動し、
printer.cfgを開きます。 - ブラウザまたはエディターの検索機能を使用して、以下のキーワードを検索します。
[include xxx.cfg]が表示された場合、設定の一部が他のファイルに分割されていることを意味するため、対応する include ファイルを開いてさらに検索する必要があります。
よくある検索方法:
- X軸を探す:
[stepper_x]を検索 - Y軸を探す:
[stepper_y]を検索 - Z軸を探す:
[stepper_z]を検索 - 押出機を探す:
[extruder]を検索 - ヒートベッドを探す:
[heater_bed]を検索 - ファンを探す:
[fan]、[heater_fan、[fan_genericを検索 - ドライバーを探す:
[tmc2209、[tmc5160、[tmc2240を検索 - ピン項目を探す:
step_pin、dir_pin、enable_pin、heater_pin、sensor_pin、endstop_pin、uart_pin、cs_pinを検索
設定は通常、すべて printer.cfg という1つのファイルに書かれているわけではありません。[include mainsail.cfg]、[include fluidd.cfg]、[include printer/*.cfg]、[include xxx.cfg] のような内容が見つかった場合は、対応するファイルを開いて実際の設定を確認する必要があります。
ピンの競合を確認
ピンを置き換える前に、使用予定の新しいピンを検索し、他の機能で重複して占有されていないことを確認してください。Klipperでは、同じ物理GPIOは通常1つの機能にのみ割り当てることができ、重複して使用すると pin xxx used multiple times in config エラーが発生する可能性があります。
検索時は、ピン名の前の修飾子を削除してください。例えば、!PA15 を使用予定の場合は PA15 を検索し、^PD9 を使用予定の場合は PD9 を検索します。
| 検索された場所 | 処理の必要性 | 説明 |
|---|---|---|
| 同じ機能セクション内の同じ項目 | 通常は処理不要 | 例えば、現在変更中の [stepper_x] 内に step_pin がある場合 |
| コメントアウトされたサンプル行 | 通常は処理不要 | 行頭に # があるサンプルは有効になりません |
| その他の有効な機能セクション | 処理が必要 | 同じピンをファン、加熱、エンドストップ、プローブなど複数の機能で同時に使用することはできません |
TMCドライバーの diag_pin と物理エンドストップの併用 | どちらかを選択する必要があります | 物理エンドストップを使用する場合、同じピンの diag_pin を同時に有効にしないでください。エンドストップなしホーミングを使用する場合、endstop_pin を対応するドライバーの virtual_endstop に変更してください |
| 複数MCUのピン | プレフィックスの確認が必要 | toolboard:PA0 とメインボードの PA0 は同じMCUではありませんが、プレフィックスは [mcu toolboard] の名前と一致している必要があります |
保存後に pin xxx used multiple times in config が表示された場合は、Web設定インターフェースに戻り、printer.cfg とすべての include ファイル内でエラーに表示されている xxx を検索し、正しい機能を保持し、他の重複して占有している項目を削除、コメントアウト、または変更してください。
ピン記号の説明
Klipperのピン名の前には特殊記号が付く場合があります。ピンを置き換える際は、これらの記号をむやみに削除しないでください。
| 記号 | 意味 | よくある位置 |
|---|---|---|
! | レベル反転 | dir_pin、enable_pin、endstop_pin |
^ | プルアップ有効 | 機械式エンドストップ、プローブ入力 |
~ | プルダウン有効 | 一部の入力信号 |
mcu1:PA0 | 特定のMCUのピンを指定 | 複数MCUまたはツールボード設定 |
例:
enable_pin: !PC3
endstop_pin: ^PA1
sensor_pin: toolboard:PA0
!PC3 の実際のピンは PC3 であり、! はレベル反転を意味するだけです。新しいメインボードに置き換える場合は、新しいメインボードのピンに基づいて !<new_enable_pin> のように記述し、! を直接削除しないでください。
置き換え例
古い設定でX軸が他のメインボードのピンを使用していたとします。
[stepper_x]
step_pin: PA3
dir_pin: PA2
enable_pin: !PA1
endstop_pin: ^PB10
以下、FLY-C8P のX軸ドライバースロットを例にします。C8Pメインボードの資料を確認した後、X軸ドライバー口とXエンドストップ口を対応するピンに変更できます。変更する前に、PE5、PA8、PA15、PD9 を検索し、これらのピンが他の有効な設定で占有されていないことを確認してください。
[stepper_x]
step_pin: PE5
dir_pin: !PA8
enable_pin: !PA15
endstop_pin: ^PD9
X軸がTMC2209ドライバーを使用する場合、対応するドライバー通信ピンも確認する必要があります。
[tmc2209 stepper_x]
uart_pin: PC9
run_current: 0.800
上記の例は、FLY-C8P のX軸ドライバースロットの記述方法のみを示しています。モーターが他のドライバースロットに接続されている場合や、C8P以外のメインボードを使用している場合は、実際のメインボードのドキュメントと実際の配線位置に従って記述し、直接コピーしないでください。
モーターの回転方向が逆の場合は、通常は dir_pin の前の ! を追加または削除するだけで済みます。例えば、現在 dir_pin: !PA8 の場合は dir_pin: PA8 に変更し、その逆も同様です。
エンドストップ状態が逆の場合は、通常、endstop_pin の前の ! と ^ が実際の配線方法と一致しているか確認します。
endstop_pin: ^!PD9
機能別の置き換え
モーターとドライバー
同じモーターでは、通常、[stepper_x] と [tmc2209 stepper_x] の両方の設定セクションを同時に確認する必要があります(完全な例は上記の「置き換え例」を参照)。ピンを置き換える際は、以下の点にも注意してください。
[tmc2209 stepper_x]、[tmc5160 stepper_x]、[tmc2240 stepper_x] などの設定セクションは、実際のドライバーモデルと一致している必要があります。メインボードを交換する際は、ピンだけでなく、ドライバーモデル、通信方式、サンプリング抵抗のパラメータが一致しているかも確認してください。
C8PのXエンドストップ口の例は PD9 です。エンドストップなしホーミングを使用する場合は、endstop_pin: ^PD9 をそのまま使用せず、ドライバーモデルに応じて virtual_endstop に変更し、TMC設定で対応する diag_pin を有効にしてください。物理エンドストップとエンドストップなしホーミングを同じエンドストップピンで混用しないでください。
[stepper_x]
endstop_pin: tmc2209_stepper_x:virtual_endstop
homing_speed: 40
homing_retract_dist: 0
[tmc2209 stepper_x]
uart_pin: PC9
diag_pin: ^PD9
run_current: 0.800
加熱と温度
ホットエンドの加熱は通常 [extruder] にあります。
[extruder]
heater_pin: PD12
sensor_pin: PC2
sensor_type: Generic 3950
ヒートベッドの加熱は通常 [heater_bed] にあります。
[heater_bed]
heater_pin: PB0
sensor_pin: PC5
sensor_type: Generic 3950
上記はC8Pの一般的なホットエンドとヒートベッドの例です。heater_pin は加熱出力口に対応し、sensor_pin はサーミスタ入力口に対応します。両方を逆に記述したり、同じサーミスタピンを複数の温度センサーに書き込んだりしないでください。sensor_type の例は Generic 3950 ですが、実際のサーミスタのモデルに従ってください(他によくあるものとして ATC Semitec 104GT-2、PT1000 などがあります)。
ファン
通常のモデルファンの一般的な記述方法:
[fan]
pin: PA0
ホットエンド冷却ファンの一般的な記述方法:
[heater_fan hotend_fan]
pin: PA1
heater: extruder
heater_temp: 50.0
上記はC8Pのファン口の例です。置き換える前に PA0、PA1 を検索し、これらのピンが同時に [output_pin]、[fan_generic]、または他のファン設定で占有されていないことを確認してください。メインボードのファン口が常時オン口と制御可能口に分かれている場合は、ドキュメントで対応するファン口がPWM制御をサポートしているか確認してください。
プローブとエンドストップ
機械式エンドストップの一般的な記述方法:
[stepper_x]
endstop_pin: ^PD9
通常のプローブの一般的な記述方法:
[probe]
pin: ^PC0
BLTouchタイプのプローブの一般的な記述方法:
[bltouch]
sensor_pin: ^PC0
control_pin: PE6
上記はC8Pのエンドストップとプローブ口の例です。通常の [probe] と [bltouch] は、実際に使用する一方のみを選択し、同じプローブ信号ピンを同時に有効にしないでください。エンドストップやプローブなどの入力信号に ^ や ! が必要かどうかは、モジュールのタイプと配線方法によって異なります。変更する前に PD9、PC0、PE6 を検索し、重複して占有されていないことを確認してください。変更後は、Webコンソールで QUERY_ENDSTOPS、QUERY_PROBE などのコマンドを使用してトリガー状態を確認してから、ホーミングまたはレベリングを行ってください。
保存と検証
変更が完了したら、Webページの右上にある SAVE & RESTART をクリックしてKlipperを保存し再起動します。変更がMCU接続やドライバー通信などの低レベル設定に関わる場合は、通常の RESTART ではなく、コンソールで FIRMWARE_RESTART を実行する必要がある場合があります。
以下の順序で検証することをお勧めします。
- Klipperが正常に起動し、
Unknown pin chip name、Pin is not a valid pin name、Unable to parse optionなどの設定エラーが発生しないことを確認します。 pin xxx used multiple times in configが表示された場合は、まず重複して占有されているxxxを検索して対処し、テストを続行しないでください。- Webコンソールで
QUERY_ENDSTOPSを使用して、エンドストップの状態が正常かどうかを確認します。 - ファン、加熱、プローブを個別にテストし、複数の周辺機器を同時にテストしないでください。
- 小さな距離(例:
1mmまたは5mm)を移動してモーターの方向をテストします。 - 方向、エンドストップ、温度、ファンがすべて正常であることを確認してから、ホーミングとプリントのテストを行います。
よくある問題
| 現象 | よくある原因 | 対処方法 |
|---|---|---|
| モーターが動かない | enable_pin のレベルが間違っている、ドライバー通信ピンが間違っている、ドライバーモデル設定が一致しない | enable_pin に ! が必要か確認、TMC設定セクションを照合 |
| モーターの回転方向が逆 | dir_pin のレベル方向が一致しない | dir_pin の前の ! を追加または削除 |
| エンドストップが常にトリガーされている | endstop_pin の反転またはプルアップ設定が一致しない | ^ と ! を確認し、QUERY_ENDSTOPS を実行して検証 |
| 保存後にピン重複エラーが表示される | 同じGPIOが複数の機能で同時に使用されている | エラーに表示されているピン名を検索し、重複して占有されている項目を削除、コメントアウト、または変更 |
| TMC通信エラー | uart_pin / cs_pin / SPIピンが間違っている、またはドライバーモデルが一致しない | メインボードのドライバースロットに従って通信ピンを再確認 |
| 加熱に反応がない | heater_pin を間違って記述している、または制御不可能な出力口に接続している | 加熱口の番号とメインボード資料を照合 |
| 温度表示が異常 | sensor_pin または sensor_type が一致しない | サーミスタ口とサーミスタタイプを照合 |
| ファンが制御できない | pin を間違って記述している、または常時オンのファン口に接続している | 制御可能なファン口に変更し、設定を修正 |
メインボードの取り付けに関するその他の注意事項については、メインボードよくある注意事項 を参照してください。
ピンエラーのトラブルシューティング:Unknown pin / pin used multiple times