ようつべを見ていたらMarlin-2.0が動く32bitボードとしてBIGTREETECH SKR v1.3なるものがあったので、早速注文して取り寄せた。
サミットの中、注文して1週間で通常の国際郵便で届き、今回はかなり早かった。
本ボードは標準でMarlinが焼かれているが、最新のbugfix版の適用とプリンタ環境を反映するため、以下の環境整備を行った。
- VisualStudioCodeをインストール
- VSを起動したら、PlatformIOを導入
- PlatformIOでプロジェクトを開く際、Marlinのフォルダを選択
詳しいことは動画などでわかりやすく説明されているので、ここでは書かない。
※configフォルダがあるが、ビルドする際はMarlinフォルダ直下のファイルが使用される。
環境が整ったので、次はダイヤモンドホットエンドに合わせてConfiguration.hを書き換える作業のほか、本ボードは2エクストルーダまでしか対応しないので、3エクストルーダに対応させるため試行錯誤した。
●3エクストルーダ設定
[Configuration.h]
#define SERIAL_PORT -1 #define SERIAL_PORT_2 0 #define EXTRUDERS 3 #define SINGLENOZZLE #define X_DRIVER_TYPE TMC2208 #define Y_DRIVER_TYPE TMC2208 #define Z_DRIVER_TYPE TMC2208 #define E0_DRIVER_TYPE A4988 #define E1_DRIVER_TYPE A4988 #define E2_DRIVER_TYPE A4988 #define DISTINCT_E_FACTORS #define DEFAULT_AXIS_STEPS_PER_UNIT { DEFAULT_XYZ_STEPS_PER_UNIT, DEFAULT_XYZ_STEPS_PER_UNIT, DEFAULT_XYZ_STEPS_PER_UNIT, 150.9, 150.9, 150.9 } #define DEFAULT_MAX_FEEDRATE { 999, 999, 999, 100, 100, 100 } #define DEFAULT_MAX_ACCELERATION { 9000, 9000, 9000, 10000, 10000, 10000 }
[Configuration_adv.h]
//#define STEALTHCHOP_XY //#define STEALTHCHOP_Z //#define STEALTHCHOP_E
[pins_BTT_SKR_common.h]
CSピンは使用していないので、DIR/STEPへ割り当てる。TMC2130-SPIモード用のピンをENに割り当てた。
// // Steppers // #ifndef E1_STEP_PIN #define E1_STEP_PIN P0_01 #endif #ifndef E1_DIR_PIN #define E1_DIR_PIN P0_00 #endif #ifndef E1_ENABLE_PIN #define E1_ENABLE_PIN P0_10 #endif #ifndef E2_STEP_PIN #define E2_STEP_PIN P1_08 #endif #ifndef E2_DIR_PIN #define E2_DIR_PIN P1_01 #endif #ifndef E2_ENABLE_PIN #define E2_ENABLE_PIN P4_28 #endif
[pins_BTT_SKR_V1.3.h]
#define E0_STEP_PIN P2_13 #define E0_DIR_PIN P0_11 #define E0_ENABLE_PIN P2_12 #ifndef E0_CS_PIN //#define E0_CS_PIN P1_08 #define E0_CS_PIN -1 #endif
●接続箇所
この図とは別にピン名称が書かれたPDFが存在するが、中華クオリティのためか実際と合ってない。
●実装
※firmware.binを書く際はStepperExpanderのボードは外しておく必要がある。付けたままでは焼き込みに失敗するが、焼き込み後は付けたままで問題なく立ち上がる。
ほかに、TMC2208のUARTモードを使用時は、ボードのジャンパはUARTのみに挿し他はすべて外しておくのと、TMC2208の裏側の3連パッドを半田ブリッジしておく。