初めて投稿します。
CNC xPro V5は初期状態でwifi接続できるようになっていますが、接続方法をBluetoothに変更したら接続できなくなってしまいました。
元に戻す方法はないでしょうか?
こんにちは。
USBでxPROとPCを繋いで、CNCjsとかのコンソールで
$Radio/Mode=AP
(Wifi親機モード)とか$Radio/Mode=STA
(WiFi子機モード)とかを入れればWiFiに切り替わるかと思います。
もしかしたらSSIDやPasswordの設定が消えているかもしれないので、そのへんは随時$AP/SSID
等設定し直すとよいかもしれません。
nyaru様、情報提供ありがとうございます!
USB接続のほうにも問題がありまして、
rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) flash read err, 1000
というのが繰り返されて、まともに繋がらないんですよね・・・
一番最初は繋がったんですが、ファームウェア更新を試みたところこうなってしまいました・・・。
なにか解決策は無いでしょうか?
それはファームウェアがトラブっていてうまく起動できていないように見えますね
現在SparkConceptsが案内を出しているFluidNCの新ファームウェアを書き込んだとかでしょうか?もしそうだとしたら、更新作業のステップをなにか抜いているかもしれません。
直すにはファームウェア書き直しが必要ですが以下のどちらかになるかと思います。
- 旧ファームウェアを書き込みする
- 新FluidNCファームウェアを書き込みする
どっちもやや面倒な方法になりますが紹介します。
新FluidNCファームウェアを書き込みする
現在SparkConceptsが案内を出している更新方法です。
ただ問題があって、
- grblからFluidNCというファームウェアに変わるため、今までのパラメータ($10=0みたいな)による設定が使えなくなり設定方法を覚え直す必要がある。(基本的はgrbl互換のためNCプログラムは問題ないが設定だけ使えなくなる)
- FluidNCに関する情報が現時点であまりネット上にないため、基本公式のページ(英語)を見る必要がある
更新手順はSparkConceptsから案内がでている通りに実行します。(若干分かりづらいですが・・・)
簡単に説明するとerase.bat→install-wifi.bat→install-fs.batの順で実行します(Connecting表示が出るたびxPROのPROGRAMボタン押す)。
その後SparkConceptsが出しているconfig.yamlをアップロードしてxPRO用の設定を反映させる感じです。モーター等の設定は全てconfig.yaml編集にて行います。
旧ファームウェアの書き込み
似たようなことをやったときのメモで今試したわけではありませんが、以下のようにやります。
手動作業なので間違えると文鎮化まではいかないですが、復旧がさらに大変になる可能性はあります。
- FlashDownloadToolsをダウンロード
Tools | Espressif Systems - xPROの旧ファームウェアをダウンロード(デフォルトは CNC_xPRO_V5_XYYZ_NO.bin)
https://github.com/Spark-Concepts/xPro-V5/tree/main/Firmware - 解凍した FlashDownloadToolsのexeファイルを実行
- 下図のように設定
- 下図のように設定(COMは繋いでいるxPROのポートを指定)
上のボックスにはダウンロードしてきたxPROの旧ファームウェアを選択し、アドレス0x10000を指定しておく
- xPROのPROGRAMボタンを押しながらソフトのSTARTを押す。(ここはxPROのPROGRAMボタン押しながらリセットだったりするかもしれません。書き込みが始まればOKです)
- 左下の部分にFINISHが出たら完了
以上です。
新ファームウェアは自動でやってくれますが、更新した後の設定がやや面倒になる、今までの方法が使えなくなるというのが難点です。
旧ファームウェアは更新作業を間違える(書き込みアドレスを間違える)と、認識しなくなる等のトラブルが発生する可能性があるのが難点です。
情報ありがとうございます!
やったのは旧ファームウェアでNC.binへの更新でした。
今回、教えていただいたとおりに旧バージョンファームウェアへの更新を試しましたが、ダメでした・・・TT
これはFluidNCへの更新をトライするしかないかもですね・・・^^;
ちょっと気になって調べていましたが、
の部分はxPROのマイコンであるESP32のflashのアドレス0x1000が読めないよというエラーであるようです
https://docs.espressif.com/projects/esptool/en/latest/esp32/advanced-topics/boot-mode-selection.html?highlight=err%201000#later-boot-messages
そして0x1000は何かというとブートローダーのデータに該当します(ブートローダーはPCでいうとBIOSのようなものです)
https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/startup.html
なので、不幸にも最初のアップデートの際に何かが悪さをしてブートローダのデータが飛んでしまったのかと考えられます。
そのため、書き込んだファームウェアまで到達せず起動ループに入っているという状態かと。(PCでいうとBIOSが壊れたために電源を入れてもWindowsにまでいかず真っ黒画面という状態)
ではどう直すかという話で、試したことないので憶測になりますが
前述のFlashDownloadToolsでアドレス0x1000にブートローダーのデータを書き込みでいけないかなぁと考えています。
ブートローダーはESP32開発の公式が出しているbootloader~.binがおそらく使えるのではと思います。
ただ何種類(フラッシュモード、周波数)があり、適合するブートローダーがわからないという感じです。qio_40m.binではないかと思いますが確証がもてません・・・
以上、こちらでわかった情報と考察ですが並べてみました。ご参考まで。
参考:
https://docs.espressif.com/projects/esptool/en/latest/esp32c3/esptool/flash-modes.html
追記:
FluidNCの更新作業はブートローダーもファームウェアも含めて全部書き込む作業のようなので一度FluidNCにしてから旧ファームウェアに戻すというのも有りかもしれません。
いろいろ情報ありがとうございます!
とりあえず、FluidNCを書き込んだらまともに通信できるようになりました!
まだ機械としては立ち上げ中なので、これからgrblでやるかFluidNCでやるか悩み中です^^;