(この記事は2023/8/3に作成しました。)
Ender-3 Pro をオーバーホールして、全体的にファームウェアをアップデートしたところ、いくつか詰まってしまったところがあったので、備忘録として、また、誰かの役に立てばと思い記録します。
私の環境は下記の通りです。
ハードウェア構成
- Creality Ender-3 Pro:3Dプリンタ本体
- SKR Mini E3 V1.2 コントローラーボード:標準のコントローラーボードから換装
- TFT35 E3 V3.0 グラフィックディスプレイ コントローラボード:標準のディスプレイから換装
- BLTouch V3.1:ABL(オートベッドレベリング)センサーを追加
SKR Mini E3 V1.2 コントローラーボードのファームウェア更新
前準備
Visual Studio Code をインストールして、PlatformIOというエクステンションをインストールします。(ファームウェアの話から脱線してしまうので、本稿では割愛させていただきます。)
Marlin の最新版をダウンロード(今回は2.1.2.1)
https://marlinfw.org/meta/download/ で、「Current Marlin Release」の「2.1.2.1.zip」をクリックして Marlin-2.1.2.1.zip ファイルをダウンロードします。
ダウンロードしたzipファイルを右クリックしてプロパティ画面を表示したら、画面下部の「セキュリティ」の欄にある「許可する」のチェックボックスをオンにして「OK」をクリックします。
(以降、ダウンロードするファイルはすべて同様の操作をしてください。)
Marlin-2.1.2.1.zipファイルを展開して、「Marlin-2.1.2.1」フォルダが作られたことを確認します。(展開には7-Zipの使用を推奨します。)
「Marlin-2.1.2.1」フォルダを Visual Studio Code で開きます。中にはファイル・フォルダがずらっと並んでいます。
一旦、Visual Studio Codeを開いたまま次に進みます。
Ender-3 Pro + SKR Mini E3 V1.2用 Marlin設定ファイルのサンプルをダウンロード
Marlin公式 の GitHub内に、Ender-3 Pro + SKR Mini E3 V1.2 の組み合わせ用の設定ファイルサンプルが置かれているので、全てダウンロードします。
- Configuration.h
- Configuration_adv.h
- _Bootscreen.h
- _Statusscreen.h
4つのファイルはすべて必要ですのでダウンロード漏れの無いよう注意してください。
Marlin最新版にサンプル設定ファイルを取り込む
Visual Studio Code の Marlin フォルダ内に、サンプル設定ファイル4つを移します。
元々ある「Configuration.h」と「Configuration_adv.h」は上書きしてしまって問題ありません。
Configuration.hを編集する
「Configuration.h」を Visual Studio Code で開いて以下の通り編集します。
ボードの設定
#define MOTHERBOARD BOARD_BTT_SKR_MINI_E3_V1_2
上記のように設定されていることを確認します。
BLTouchの有効化
#define BLTOUCH
BLTOUCH の行を有効にします。(コメントアウトを外す)
BLTouchをZ軸のホーミングに使用する設定
//#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN の行をコメントアウトします。
#define USE_PROBE_FOR_Z_HOMING
USE_PROBE_FOR_Z_HOMING の行を有効にします。(コメントアウトを外す)
BLTouchのプローブがベッド外でホーミングしたときの保護設定
#define Z_SAFE_HOMING
Z_SAFE_HOMING の行を有効にします。(コメントアウトを外す)
BLTouchのプローブオフセット位置の設定
#define NOZZLE_TO_PROBE_OFFSET { 10, -10, -4 }
NOZZLE_TO_PROBE_OFFSET の数字を、以下を参考に設定します。
ノズルの先端を原点としたときのBLTouchセンサーのプローブ先端までの位置を、単位は mm(ミリメートル)で測って設定します。ファームウェア適用後に正確な数値に修正できますので、大体合っていれば問題ないと思います。
- X軸方向:プリンタ正面からみて右がプラスの方向
- Y軸方向:プリンタ奥側がプラスの方向
- Z軸方向:上方向がプラスです。プローブの先端はノズル先端より先にベッドに触れる位置にあるので、必ずマイナスの位置です。
BLTouchの複数回プロービングの設定
#define MULTIPLE_PROBING 2
MULTIPLE_PROBING の行を有効にします。(コメントアウトを外す)
1つの測定位置に対して複数回測定することで精度を高められます。
オートベッドレベリング(ABL)方式の選択
//#define MESH_BED_LEVELING
MESH_BED_LEVELING の行をコメントアウトします。
#define AUTO_BED_LEVELING_BILINEAR
AUTO_BED_LEVELING_BILINEAR の行を有効にします。(コメントアウトを外す)
レベリング時の測定箇所の数の設定
#define GRID_MAX_POINTS_X 5
GRID_MAX_POINTS_X の行が有効になっていることを確認します。
ZMINを無効化
//#define USE_ZMIN_PLUG
USE_ZMIN_PLUG の行をコメントアウトします。
※これをしないとプローブを使ったホーミングをしませんでした。(参考URL:https://reprap.org/forum/read.php?415,876363)
platformio.ini を編集する
Visual Studio Code で、「platformio.ini」ファイルを開きます。
SKR Mini E3 V1.2用のファームウェアファイルをコンパイルするためには、「platformio.ini」の中にあるdefault_envsの行を以下のように書き換える必要があります。
default_envs = STM32F103RC_btt
ファームウェアをコンパイルする
Visual Studio Code ウィンドウの左下に並んでいるアイコンの中から「✔」のマークを探してクリックします。
コンパイルに成功すると「Marlin-2.1.2.1\.pio\build\STM32F103RC_btt」と辿った先に「firmware.bin」という名前のファームウェアのファイルが作成されます。
Ender-3 Pro の Z軸エンドストップスイッチのケーブルを外す
Ender-3 Pro の電源は切っておきます。
ファームウェア更新で「ZMINを無効化」するので Z軸のエンドストップスイッチのケーブルを抜きます。
また、BLTouchによるZ軸ホーミングの邪魔にならないように、Z軸のエンドストップスイッチを外す or 下げておきます。
microSDカードにファームウェアのファイルを格納する
microSDカードは FAT32 でフォーマットしてください。
microSDカードに「firmware.bin」ファイルを格納します。それ以外のファイルは入れないようにしてください。
Ender-3 Pro にファームウェアをインストール
microSDカードを Ender-3 Pro 本体の microSDカードスロットに挿入し、電源をONします。(ディスプレイ等のSDカードスロットは使用できないことに注意してください。)
少し待つとディスプレイに「Marlin 2.1.2.1」と表示され、ファームウェアがインストールされたことがわかります。
TFT35 E3 V3.0 グラフィックディスプレイ コントローラボード のファームウェア更新
後日更新予定です。
コメント