随分前に、nanoVNAを購入したのですが、FirmwareのUpdate作業をしました。
作業内容的には
1.電池電圧表示用にダイオードの追加
2.FirmwareのUpdate
です。
1.電池電圧表示用にダイオードの追加
これまでに表示画面上に電池の残量が表示されないので、使っている途中で急に電源が落ちる、なんていうことがありました(大して使っていないけれど、、)。色々と調べていると、ダイオードの追加と新しいFirmwareの組み合わせだと電池残量がわかる仕組みがある、ということでやってみました。購入時に乗っていたFirmwareは随分古いものだったようで、ダイオードを追加しても表示されませんでした。
個体によってコネクタでバッテリーが繋げてあるものと、直接ハンダ付けしてあるものがあるようです。私のものはコネクタ接続でした。ダイオードを追加する場所は、基板裏側の電源コネクタのすぐ下(ランドがコネクタで隠れてしまっている)です。当初電源コネクタを基板からはずしてやろうと思っていたのですが、どなたかのWEBでコネクタを外すのに相当苦労した(特にGND側はベタで基板につながっていたのではんだコテで熱しても放熱しちゃって、、、ということらしい)という記載があったので、ちょっと強引ではありますが、コネクタを上に曲げて空いたスペースではんだ付けしました。ですが、なんてことはない、このベース側の白いコネクタのプラスチック部分は、写真の下方向に抜けるので、コネクタがついているときには強引にコネクタを曲げなくてもこの白いプラスチックを外せすだけではんだ付けできるような気がします。また、はんだ付けする場所がベース側のコネクタの下で干渉するので私はコネクタの角の部分を削ったので、結局外さないとできないので最初から外してやるのが正解のような気がします。
ダイオードの方向は、基板上に白い線が入っているので、極性を合わせます。(写真でいうと下向き)
これで完了。私はとりあえず手元にあったIN4148をありあわせでつけました。ショットキーが良い、というような記載もありましたが、よく調べていません。私に取っては、とりあえず、急に電源が落ちなければそれで良いですので。
上記は、後でFirmwareのUpdateのときに使ったので、載せておきますが古いFirmの場合は、これまた電源コネクタの下に隠れて見えませんが、P1と書かれた2つの端子のジャンパが必要です。ショートさせて電源投入、画面が白くなったら*(正常です)ジャンパを外す、という作業ですが、新しいFirmwareになるとメニューからこのモードに入ることができるので、「一度限り」の作業です。私は、ピンセットでショートさせて電源投入、で済ませました。
コネクタがかぶさっているので見えませんが、この端子は「BOOT0」という名称の端子のようです。
*:このモードをDFU (Device Firmware Update)モードと言うようです。
2.FirmwareのUpdate
FirmwareのUpdateは、Windows11からUSB経由で行いました。作業は次の通りです。
(1)FirmwareをPCにダウンロードする
(2)FirmwareをPCからnanoVNAへ書き込む
以下それぞれの説明です。
(1)Firmwareのダウンロード
”https://cho45.github.io/NanoVNA-manual/#ファームウェアの更新方法”
を参照のこと。
2023/5/20時点での最新は、0.8.0-20200620でした。随分Updateされていないので、よっぽどのこと無いとこれで打ち止めなのでしょうね。
nanovna-firmware-0.8.0.zip をダウンロードして、unzipしました。
(2)FirmwareをPCからnanoVNAへ書き込む
WSL2が動いているのでubuntuで、と思いましたが、WSL2から素の状態ではPCのUSBが見えないので、設定が面倒だったのでWindows用のbinaryで行いました。
・デバイスドライバの設定
Windowsで書き込む場合には、DFUモードのデバイスをUSBにつなげたときに自動インストールされるデバイスドライバでは利用できないということで、「Zadig」というアプリを使ってそれを回避します。
まず、nanoVNAをDFUモードにします(P1をジャンパして電源On、その後ジャンパを外します)。nanoVNAの画面は真っ白になります(正常)。それからPCにUSBで接続します。
Zadigを https://zadig.akeo.ie/ からダウンロードして起動、"STM32 BOOTLOADER" に対して "WinUSB" をドライバとして利用するように設定します。(詳細は参考文献参照)
・書き込み用ソフトウェアのdownloadとnanoVNAへの書き込み
dfu-util-0.9-win64.zip 2016-02-11 23:08 718K
Windows用のbinaryは随分古いものですが、Windows11でも動作しました。以下作業手順です。
- zipを解凍します。
- "dfu-util-0.9-win64" へ移動します。
- "dfu-util.exe"があることを確認
- 上記の状態のままで、以下の図のようにExplorerのUNCが記載されているとこに"cmd"と打ちます。そうするとそのフォルダでcmd.exeが起動します。ちなみにWSLが動いていれば、wslと入れるとbashが起動します、、。→結構このTIPSが使えます!
- cmd.exeのウィンドウで"dfu-util.exe --version"とでも打って、意図したものであることを確認(上記の例だとversionが表示されます)
- 続けて、"dfu-util.exe -d 0483:df11 -a 0 -s 0x08000000:leave -D ..\build\ch.bin" (-D以下は、半角スペースで区切った上で、上記でnanovna-firmware-0.8.0.zip をダウンロードしてunzipした中に"build"というフォルダがあるので、そこにある"ch.bin"への相対パスを記載します。上記の例だと、dfu-util.exeのあるフォルダを起点として、その一つ上のフォルダにあるbuildの下にch.binがあることになります)
これであとは転送完了を待って、USBケーブルを抜いておしまいです。電源を入れると、左上に"バッテリモニタ"が表示されていれば、ハンダ付けしたダイオードがうまく動いていることが確認できます。
番外:
今回久しぶりにnanoVNAを引っ張り出してきたら、バッテリーが膨らんでいました。
多少基板に圧力がかかっているようですが、とりあえず動いているので今回はこのままにしておきました。
結言:
無事、Updateできましたが、多分このhardでは今後Updateは無いと思いますので、最初で最後ですね、きっと。備忘録なので、なにかあったときの参考にします。
今回なんでこんなことをしてのか、という話ですが、「超再生受信機」なるものを作っているのですが、自作したコイルとバリコンでの共振周波数が分からず、おもちゃの病院の先輩がGridDipMeterまで持ってきてくれて、測ってみたところ、随分共振周波数が低かったことがわかりました。今どきGridDipMeterも売ってないし、自分でなんとかできないかな、といろいろ考えて、nanoVNAでできんじゃない?というところにたどり着いたわけです、、。
超再生受信機については近々、忘れないうちに書きます。
↑nanoVNAで共振周波数を計測している図、、。計測用のOneTurnのコイルを共振計測するコイルに近づけています。
参考:
nanoVNAのmenu treeが書かれているengerさんのホームページ:https://engineer-climb.com/nanovna-0/