こんにちは、せしろです。
今回は「The Unofficial JGAURORA wiki」を頼りにカスタムファームウェアをインストールしたいと思います。
目次
カスタムファームウェアで何が変わるのか?
The Unofficial JGAURORA wikiより抜粋(意訳)
工場出荷のオリジナルファームウェアはやばい!
温度は全く合ってないよ(+10ºC!) エクストルーダの押出しも足りてないよ 14% デフォルトの移動速度は大きなプリン度ベッドには早すぎるよJGAuroraは工場出荷のMarlinファームウェアの提出を拒否した。なのでこのファームウェアはMarlinファームウェアを使用してゼロから準備したよ!オリジナルとは次の点が変わっているよ。
プリンターの動きを良くして表面の印刷品質が向上するよ より早く、より正確に原点に戻るようにしたよ エクストルーダの校正をしてより正確なフィラメント供給が出来るようになったよ ホットエンドの温度センサーの校正ではるかに正確な温度を検出するよ Marlinソフトウェアの最新バージョンによるバグの減少(印刷の途中でランダムにリセットされるようなことは無くなったよ) MODと拡張機能を完全に有効にできるようにしたよ
ってことらしい。かなり改善されているようで本当に感謝です。以前記事にしたエクストルーダの吐出量が足りないこともこのカスタムファームウェアで改善できそうです。
カスタムファームウェアをインストールしてみる
まずはカスタムファームウェアを手に入れる
「The Unofficial JGAURORA wiki」からダウンロードします。
ダウンロードページ:https://jgaurorawiki.com/a5/firmware
DropBoxに移動しますので、ここからダウロードすることができます。
「JG A3S Custom LCD Fir…3.03.zip」と「JG A3S Custom Main M…1.8C.zip」が最新だと思われます。
メインボードのファームウェアを更新してみる
「The Unofficial JGAURORA wiki」の先ほどのページのインストール手順通りに進めていきます。手順は以下の通りです。
The Unofficial JGAURORA wikiより
- AC電源ケーブルをプリンターから外します。
- ArduinoIDEソフトウェアをダウンロードしてインストールします。
- シリアルポートで通信する他の全てのプログラムを閉じます。
- ダウンロードしたファームウェアを解凍しArduinoIDEで「Marlin.ino」を開きます。ファームウェアファイル全て「Marlin」フォルダにあることを確認し、Arduino IDEで選択したタブが「conditionals.h」のようなものではなく「Marlin」であることを確認します。
- USBケーブルでPCとプリンターを接続します。
- 重要:プリンタの8ピンLCDパネルヘッダーコネクタを取り外します。 LCDが完全にオフになります。 これはLCDの下にあり、ネジを外さずにプリンタの下からアクセスできます。 フラッシュした後に元に戻す場所を覚えておいてください。
- Arduino IDEの[ツール]メニューで、以下を設定します。
- -ボード: “Arduino/Genuino Mega or Mega 2560”
- -プロセッサ:“Atmega 2560 (Mega 2560)”
- -COM:プリンターにUSBを差し込むとCOMポートが表示されます。適切なポートが見つからない場合、又はデバイスが検出されない場合はCH340シリアルUSBインターフェースドライバーをインストールする必要があります。
- メニュー「Sketch→Include Library→Manage Libraries」の下にあるライブラリマネージャーを使用して、u8glibライブラリをインストールします。
- プリンターのLCDに接続されている8ピンリボンケーブルを抜いたことをトリプルチェックします。
- Arduinoソフトウェアで、スケッチメニューの下のアップロードを選択します。
- ファームウェアのアップロードが完了するまで待ちます。
- LCDコネクタを再び差し込みます。
- arduino IDEで、「ツール」メニューをクリックし、「シリアルモニター」をクリックします。 これによりウィンドウが開きます。 ボーレートのオプションを「250000bps」に設定し、行末を「CR」に変更します。
- 入力ボックスに、次のGCodeコマンドを入力します。M502と入力し、returnキーを押してから、M500と入力し、returnキーをもう一度押します。 この手順は、新しいファームウェアのEEPROMを初期化するために使用されます。
- 祝う! できたね!
以上となります。
関係ありませんが、「Google Translate」で翻訳したんですけどほぼ翻訳のままです。かなり自然な日本語でびっくりしました。
この中で分かりづらい手順だけ説明します。
ArduinoIDE COMポートについて
3DプリンターとPCをUSBケーブルで接続すると、ArduinoIDEのシリアルポートに自動的にポートが割り付けられます。念の為、デバイスマネージャで確認することをお勧めします。
OSがWindows10なら接続した際に自動的にドライバがインストールされるようです。もし、ポートが見つからない、デバイスが検出されないということがあれば、「CH340 ドライバ」で検索すれば見つかります。
「u8glib」ライブラリのインストール
ライブラリのインストールはArduinoIDEから行います。「スケッチ」→「ライブラリをインクルード」→「ライブラリを管理」と進みます。
ライブラリマネージャで「u8glib」検索します。すると一番下に「U8glib」が出てきますのでインストールを押します。どうやらタッチパネル用のライブラリのようですね。
インストールが完了したら「閉じる」ボタンでライブラリマネージャを閉じます。
念の為、ArduinoIDEの検証ボタンでコンパイルを実行します。「コンパイルが完了しました」となればOKです。
LCD8ピンフラットケーブルの抜き差しについて
始め手順を見たときに、このケーブルは電源が入っていない状態で抜くものだと思っていました。しかしよく見るとUSBケーブルでPCと接続した後に抜く手順になっているんですよね。なので、USB給電されている状態でケーブを抜いていることになります。再接続するときもUSBからの給電がされた状態で行うのも別に問題ないってことなんでしょう。
何か理由があってこのような手順になっているのでしょう。
安全性からACアダプターからの給電さえ切っていれば問題ないという理解で良いと思います。
ArduinoIDEシリアルモニターでのG-Code送信について
ファームウェアのアップロードが完了した後に送るG-codeの内容は次の通りです。
- M502(Factory Reset):すべての構成可能な設定を工場出荷時のデフォルトにリセットします。
- M500(Save Settings):すべての構成可能な設定をEEPROMに保存します。
説明通りEEPROMを初期化する為に行います。順を間違えない様に送信しなければなりません。
LCDのファームウェアを更新してみる
はい。前回からおかしくなった部分ですね・・・。これで良くなることを祈ります・・・。
こちらに関しても「The Unofficial JGAURORA wiki」の手順で進めていきたいと思います。
The Unofficial JGAURORA wikiより
- ファームウェアファイルをSDカードにコピーします。これにはファームウェア「.bin」ファイル、アイコンフォルダ「bmp_XXX.bin」、構成「.text」ファイルが含まれている必要があります。
- プリンターの電源を切ります。
- SDカードをLCDモジュール背面のSDカードスロットに差し込みます。差し込むには同じ背面のUSBケーブルを抜く必要があります。
- プリンターの電源を入れます。
- ファームウェアの更新が自動的に開始されます。
- ファームウェアの更新が終わるとプリンターが起動します。
- プリンターの電源を切ります。
- SDカードを抜き取ります。
- SDカード上のファイルは名前が変更されています。従って、SDカードを挿入したままプリンタの電源を入れても再度更新が行われることはありません。
- SDカードを抜き取ったら内部のUSBケーブルを接続するのを忘れない様にしてください。
- 更新後、LCDはSDカードのファイルを検索するように設定されています。これをUSBに戻すには、LCDメニューを使用する必要があります。設定を変更しないと、USBを差込んでもプリンターにはファイルが表示されません。
以上となります。
特に難しいことはありませんね。
前回おかしくなった表示は良くなったのか?
結果です。
完全復活です!あぁ良かったぁ。。。
まとめ
前回、JGAuroraのファームウェアの入れ直しでLCDの表示がおかしくなってしましましたが、今回入れたカスタムファームウェアで良くなりました。何が悪かったのかはよく分かりません。
まあ、工場出荷状態にはもう戻せないということは分かりましたが・・・。
でも、カスタムファームウェアの方が格段に良さそうなのでこれからが楽しみです。
次回はカスタムファームウェアで追加されている部分を試したいと思います。