マーリン2の設定 その1
メーカー製のプリンタに新しく別のマザーボードを載せる設定
ここでは、GeeetechのA10MにBIGTREETECHのSKR1.4Turboを搭載する設定をしてみる。
まず用意するのは、もちろんPCにVSCode+PlatformIOがインストールされているのが条件である。最新のマーリン2のソースコード、メーカーごとの定義ファイル、マザーボードのリソースがあれば良い。
四角く囲ったリンクがメーカーの定義ファイルである。
定義ファイルのコピー
書き換えるファイルはplatformio.ini,Configration.h,Configuration_adv.hの3つを書き換えることで完了する。
まずは、A10Mの定義ファイルを先程ダウンロードしたファイルの中から探し、marlinフォルダにコピーする。
Platformio.iniの編集
メーカーのサンプルコードを参考に書き換えると良い。
[platformio]
src_dir = Marlin
boards_dir = buildroot/share/PlatformIO/boards
default_envs = mega2560
のdefalt envsを
default_envs = LPC1769
に書き換えるだけである。Turbo無しの1.4はLPC1768なので注意のこと。
Configuration.hの編集
ここからが本題の編集作業になる。ファイルの初めから順番に編集していくとこにする。私の場合はVScodeと別のエディタである程度書いておき、その後vscodeでコンパイル、修正を繰り返すことにしている。
シリアルポートの設定
#define SERIAL_PORT 0
#define SERIAL_PORT_2 -1
#define BAUDRATE 115200
ここではマザーの定義ファイルから写すと良い。
マザーボードの指定
#ifndef MOTHERBOARD
#define MOTHERBOARD BOARD_GT2560_V3
#endif
を
#ifndef MOTHERBOARD
#define MOTHERBOARD BOARD_BIGTREE_SKR_V1_4_Turbo
#endif
に書き換える。と実はエラーになる。マザーボードの定義名が変わってしまっている。調べるにはフォルダsrc¥coreの中のboard.hの中を探さなければならない。
// LPC1769 ARM Cortex M3
//#define BOARD_MKS_SGEN 2500
#define BOARD_AZTEEG_X5_GT 2501
#define BOARD_AZTEEG_X5_MINI 2502
#define BOARD_AZTEEG_X5_MINI_WIFI 2503
#define BOARD_COHESION3D_REMIX 2504 // Cohesion3D ReMix
#define BOARD_COHESION3D_MINI 2505 // Cohesion3D Mini
#define BOARD_SMOOTHIEBOARD 2506 // Smoothieboard
#define BOARD_TH3D_EZBOARD 2507 // TH3D EZBoard v1.0
#define BOARD_BTT_SKR_V1_4_TURBO 2508
となっておりBOARD_BTT_SKR_V1_4_TURBOと定義すれば大丈夫である。
書き忘れていたが、A10MはLCDが2004なので、接続するLCDに合わせて書き換えなければならない。
// RepRapDiscount Smart Controller.
// https://reprap.org/wiki/RepRapDiscount_Smart_Controller
#define REPRAP_DISCOUNT_SMART_CONTROLLER
となっているのでここをコメントアウトし
// RepRapDiscount FULL GRAPHIC Smart Controller
// https://reprap.org/wiki/RepRapDiscount_Full_Graphic_Smart_Controller
#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
これを有効にすれば、BIGTREETECHのTFTに表示できる。
コンパイル
ここで一度コンパイルしてみると良い。
まず、”Open Project"でマーリンのフォルダを指定して開く。
次に画面左下”✔”をクリックするとコンパイルが始まる。
hecking size .pio\build\LPC1769\firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM: [==== ] 44.6% (used 14584 bytes from 32736 bytes)
Flash: [==== ] 37.9% (used 180128 bytes from 475136 bytes)
=========== [SUCCESS] Took 219.25 seconds =============
Environment Status Duration
------------------------ -------- ------------
mega2560 IGNORED
mega1280 IGNORED
省略
LPC1768 IGNORED
LPC1769 SUCCESS 00:03:39.247
STM32F103RC IGNORED
STM32F103RC_fysetc IGNORED
省略
include_tree IGNORED
======== 1 succeeded in 00:03:39.247 ============
Terminal will be reused by tasks, press any key to close it.
と出ればコンパイル成功である。
この時は、エラーが2回出て修正している。
一度エラーで修正した時は、ゴミ箱アイコン(Clearn)をするとコンパイルできる場合が多い。
pio>build>LPC1769の中にfirmware.binが出来ている。このファイルをメモリカードにコピーしてマザーに挿入しリセットすればファームウェアの書き換えが完了する。
ここまで、出来れば90%完成である。大まかな設定はA10Mの設定をコピーした時に設定されているので、あとはTMCドライバーの設定やLCDの設定、等、次回は細かな設定をしていくことにする。