2021年10月2日土曜日

Anet ET4 Pro / Labists ET4のベッドの調整の理屈がようやくわかってきた

 Anet ET4 ProやLabists ET4のベット調整の理屈がようやくわかってきました。


手順としては以下のものになっています。

a.設定メニューからホーム手前でZ軸調整で紙が滑る程度に調整してセンサー調整をする

b.手動設定で四角で紙が滑る程度に調整して、中央で手動の+ーで紙が滑る程度にする

c.自動レベル調整をする。


この手順の前提は

 ・センサー調整は大まかにしかできない

 ・四角の調整は隙間の調整ではなく水平調整

 ・センサーによる高さの調整は手動の+ー調整で行う

というものでしょう。これが説明されないので、手順を見てもどう調整していいかわかりませんでした。


この前提で調整をするならば、各手順の意図は

a.設定の手動移動を使って、紙の厚みでセンサー感度をおおよそで合わせる(ここで完璧に合わせることはできない)。

b.手動レベル調整では、まず四角で紙が滑る程度を「同程度」にし、ベッドを水平にする(ここで高さを合わせるものではない)

c.手動レベル調整で「OK」を押すと、調整した高さでヘッドが停止するので紙の厚みになるように手動レベル調整の+ーで高さを決定する(おそらくOKではセンサーを使わず手動ボタンを押した高さで停止する)

d. これでセンサーがただしい隙間で機能するようになったので、自動レベリング調整でベッドの凹凸に合わせて動作するように調整する

ということだろう。

ただ、これでもまだ正確にベッド高を調整できるわけではなく、次の調整が必要

・スカートを描いた結果を見ながら水平・隙間が問題ないかを確認する

・問題がある場合、水平であればベッドの四角のダイヤルで、高さであれば手動の+ーで調整する

ここで疑問なのは、自動レベリングにも違う+ーがあることだ。自動レベリングを選ぶと自動レベリングの+ーを使うのかもしれない。

また、四角の水平調整は、紙の厚みの感覚で合わせるしかなく、実際にスカートを印刷すると水平が取れていないことが多い。そのため、次のような水平調整があるといい。

・プリンタで実際に四角に一定の大きさの数層のオブジェクトを印刷して、その印刷程度から水平を合わせる

しかし印刷したあとで調整印刷分の材料を取るのは手間なので、スカートで調整するというが現実的かもしれない。

 やっと正規の手順と意図がつかめたので、なんだかスッキリしました。

2021年9月30日木曜日

FLASH_EEPROM_EMULATIONって何?

 Anet ET4用のmarlin2.0には、次の記述があり、インストール前に確認が必要と考えました。

  • Onboard EEPROM I2C (4Kb/512B)
    • Adapted and working, but not usable. Onboard EEPROM IC is too small to store marlin config, so, expect EEPROM errors if used. Use FLASH_EEPROM_EMULATION instead or solder another 24CXX EEPROM IC (24C32 or above recommended).

なにやはボード上のEEPROMのもっと容量の大きいものに帰る必要がありそうです。

しかしハードウェアの知識に乏しい自分にとってはハードルが高そう(というか半田付け?)なので、もう一つの選択肢「FLASH_EEPROM_EMULATION」について確認する必要がありそうです。

いろいろとググっているとこんなやりとりを見つけました(というかどこかにドキュメントはないのか?)。

https://forum.fysetc.com/d/71-cheetah-v1-1-tmc-and-marlin-2-0/4

英語だと頭に入ってこなかったのですが、chromeの自動翻訳で断片がつかめてきました(翻訳ありがとう:Google先生)

FLASH_EEPROM_EMULATIONとは、marlin2.0の設定を保存するためにSDカードを利用する方法らしいです。設定が保存できないといろいろと不具合が出る感じです。

ただし、マシンの電源を入れる前にSDカードをスロットに差し込んでおく必要がありそうです。

有効にするには、configration.hのなかで、この部分に

#define FLASH_EEPROM_EMULATION

を記述する必要がありそうです


しかし本当にそれでうまくいくかは不明・・やってみるか?


2021年9月29日水曜日

Anet ET4 PRO 用marlon2.0のコンパイル

 前々回の記事で、Anet ET4 PRO用のファームについて、メーカが出しているものは怪しいため、GitHub上のコードを直接コンパイルしたほうがいいとしましたが、

GitHub Marlin2.0コード(Anet用)

https://github.com/davidtgbe/Marlin

そのコンパイル方法が今ひとつわからないというか、取っ付き方が今ひとつ要領を得ない感じでした。

しかしGitHubを見ていると、親切にドキュメント化されていることがわかりました。

英語では斜め読みがむずかしいので、Google Chromeで翻訳したほうがいいかもしれません。

要約すると、

 ・EEPROMの内容は、あらかじめバックアップをとっておいたほうがいい

 ・フラッシュの方法には、ブートローダを入れる方法とそうでない方法があり、ブートローダを入れないと毎回フラッシャーでファームを更新する必要がある

 ・ソースコード中にあるEasyConfig.hファイルをつかうと構成が便利

とあり、おおかた構成方法がわかりました(原則機種指定のみ。BL-Touchへ変更する場合もEasyConfig.hで構成可能)

  ・EasyConfig.hの#define ET_MODEL で機種を指定する

 (自分は、ET_MODEL_ET4_PROですね)

  ・configuration.hの#define ET_EASY_CONFIG 行のコメントアウトを外す

くらいです。


あとはどうやってコンパイルするかです。しかもMacだし。

というこでぐぐってみると非常に親切な動画がYouTubeにありました。


ちょっとバージョンが古く画面が少しづつ違う感じはありますが、だいたいわかります。

・コンパイルツールは、MSの「Visual Studio Code」のMac版を使う。
 このページですね(https://code.visualstudio.com/download

・アプリケーションフォルダにVisual Studio Code(現行版は2)を入れて起動する

・ExtentionタブからPlatformIO IDEをインストールする
・再起動してExtention タブからAuto Build Marlinをインストールする

・OpenFolderタブからフmarlin2のフォルダ(platformio.iniが入っているフォルダ)を指定する
・Auto build marlinタブをクリックし「show the ABM」 panelをクリック
・buldボタンをクリック
・成功したら、built〜とかかれている箇所をクリックするとコンパイル結果(ファーム用ファイル)が表示される。

ただ、カスタムマシン名を構成しましたが、PIO HOMEで表示されるのはET4という初期設定の名前だけ。はたしてこれでいいのだろうか。