遅ればせながらtinySA(本家)とnanoVNA-H(ZeenKo社)を入手しました。アマチュア無線的には手のひら装置は楽なんですが、モニタで大きく表示したり測定データ保存もしたいので、PCからのコントロールソフトを設定しておきます。
使用OSとソフトウエア
物置作業机のMac mini(M1の梅 2022)で使えるようにします。OS versionは12.6.1(Monterey)です。
tinySA用は. QtTinySAを利用します。 https://github.com/g4ixt/QtTinySA
nanoVNA-H用は NanoVNA-Saverです。 https://github.com/NanoVNA-Saver/nanovna-saver
pythonで書かれていてGUI表示にはpyQTが使われています。
conda環境の設定
どちらもpyQTモジュールの正常動作が肝となります。
pyQTを正しくincludeするには、pythonのバージョン管理下で動かすのが穏当です。
その環境を整えておきます。
Apple siliconに適合したarm64用condaを使います。minicondaです。https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-MacOSX-arm64.sh
その設定は詳く明快なこのページが参考になります。
なおpythonバージョンは大人しいところで、3.10、にしています。
QtTinySAのインストール
(以下conda環境下)
git clone https://github.com/g4ixt/QtTinySA.git
cd QtTinySA
pip3 install -r requirements.txt
Collecting PyQt5==5.15.9 (from -r requirements.txt (line 10))
Using cached PyQt5-5.15.9.tar.gz (3.2 MB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... error
error: subprocess-exited-with-error
....
*snip*
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
こうなるとrequirements.txtを使わない方がよさげだと判断し直接
python3 QtTinySA.py
でエラーを出しながら不足のライブラリをpip3 インストールしました。ad-hocですが悩まなくて済みます。
あとはconda下でpython3 QtTinySA.pyとすれば動きます。
NanoVNA-Saverのインストール
https://github.com/NanoVNA-Saver/nanovna-saver/releases
からlatestのソースコードのzipかtar.gzをダウンロードし展開します。
展開ディレクトリにあるbuild-macos-app.shを実行してsetuptoolによるバージョン管理を伴ったbuildを行いながらインストールするのが間違いないところです。
もしライブラリ不足だった場合はQtTinySAと同様にpip3で個別インストールしてから、build-macos-app.shを再実行します。なおこちらのほうのpyQTはversion6が使われてます。
起動アイコンの設定
このままターミナルからpythonファイルを直接起動してもいいのですが、Dockにアイコン付きで置いとく方が便利です。
シェルスクリプトを単にマウスクリックで起動させるにはcommand拡張子を使えばいいです
が、独自iconで起動したいので、automatorを使いシェルスクリプトをアプリケーション化します。
その上で同アプリのiconを望みのものに変更したうえでDockに登録します。なおiconの画像はそれぞれのソースに入っています。
アプリケーションにするシェルスクリプトは単なる二行です。
#nanovna-saverの場合 bash起動
source ~/.bash_profile
python3 ~/bin/nanovna-saver/nanovna-saver.py #QtTinySAの場合も動作するpythonパスを書きかえるだけです。
.bash_profileにはcondaの環境情報が書かれていなければいけません。この記述は使い手のシェル種別に依存します。同じbashでも昔ながらのbash使いなら.bashrcかもしれません。ですので単に参考情報です。
ちなみに.bash_profileには次の様な記述が必要です。
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/Users/ユーザホームディレクトリ/miniforge3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/Users/ユーザホームディレクトリ/miniforge3/etc/profile.d/conda.sh" ]; then
. "/Users/ユーザホームディレクトリ/miniforge3/etc/profile.d/conda.sh"
else
export PATH="/Users/ユーザホームディレクトリ/miniforge3/bin:$PATH"
fi
fi
unset __conda_setup
# <<< conda initialize <<<
「tinySA/nanoVNA-H用ソフトウエアの設定:arm64版MacOS」への1件のフィードバック