K210採用商品にFirmwareを書き込むにはkflashというツールを使います。が、皆さん、kflashって複数種類あるの知ってますか?
kflash.py
- https://github.com/kendryte/kflash.py
- kendryte製のpythonで書かれたCUI
- pipでインストールできてWin/macOS/Linuxすべてで動くのでうれしい。
- 何気にボードの自動検出機能が強い。Sipeedの通常のMaixシリーズならポートすら指定しなくても自動で検出して書き込める。
kflash_gui
- https://github.com/sipeed/kflash_gui
- Sipeedがkflash.pyにGUIをつけたもの、という理解
- Win/macOS/Linuxすべてで動く唯一のGUIアプリ
- なぜかkflash.pyよりも書き込みが安定しない。5回同じbin焼いたら成功した、とかある。
K-Flash
- https://kendryte.com/downloads/
- kendryte製のWindows用GUIアプリ
- Windowsに限定されるが、kflash_guiより安定している印象。
-
Open terminal after flash
のチェックは外しておいた方がいい。(MF1の場合) - アイコンがかわいい(CV種田梨沙)ので癒される。
Tips
Ubuntuで使う場合
普段使うユーザを dialout
に追加する必要あり。
詳しくは以下。
[小ネタ]Ubuntu でttyUSB0(USBシリアル変換)が権限関連で使えない場合の対処方法
Sipeed MF1に書き込む場合
公式のドキュメントではkflash_guiを使うことになっているけど、超絶安定しない。
一日置いて再試行したらなぜか成功する、とかある。
kflash.pyも本来なら書き込めるはずだが、 bit with micのconfigが無いせいかうまくいかない確率が高い。
K-Flashが今のところ一番成功率が高い。
macOSでkflash_guiが起動しない
macOS環境にて kflash_guiを使用していたが、2019年8月に1.5.2に上げたら急に起動できなくなった。
その時に教えてもらって以来、macOSではkflash.pyを使っている。kflash.pyの方がfirmwareのパスを渡すだけで書き込めるので楽。
さいごに
macOS/Ubuntuですべてのボードへの書き込みが安定する環境がねぇ。。。
MF1への書き込みまで合わせると、今のところ僕の環境で 信用して使えるFirmware Download構成は Windows PC + K-Flash しかないです。
上記以外にツールがあれば教えてほしいです。