CaribouLite #122024/07/13 09:31

Cariboutliteが(条件付きで)快調に動くsdr++はsoapy_sourceがDeprecatedとなり、使用しているBullseyeのEoLが近づいたので、環境を再構築してみた。

Bookworm 64bitでinstall.shが完了しないissueは、soapysdr0.8のパッケージをインストールして解決したように見えたが、 depmod -a でsmi_stream_dev.ko.xzがInvalid argument となりCaribouliteを認識せず。 でも、smi_stream_dev.cを修正すれば解決と、OSの延命はできた。

リグコンに対応した別SDR:Gqrxは、SoapyRemote利用だと音が飛ぶので、ローカルで実行してみたらSIGSEGVが発生。 よく調べるとissueに挙がっており、受信不可となり詰んだ。Caribouliteの利用はオシマイ。

openSUSE 15.6をインストール #22024/07/04 09:32

GPUコンピューティングに興味があるが、ローカルにはNVIDIA社のGPUが無いので、OpenCLを試したいと ずっと 思っていたが、 LeapのバージョンアップによりOpenCLが3.0となり、メイン機で使っているIntel N100に やっと 対応した。

まずはOpenCLのインストールから。 ここを参考にして、 リポジトリの追加・パッケージを差し替えたら、 clinfoでデバイス数=1と表示された。

対応アプリはSatDumpを使った。SatDump uses OpenCL for projections だそうで、 SatDump 1.2.1をbuildしたら、 OpenCLデバイスとして「Intel(R) UHD Graphics」が認識されて、 LRPT画像の処理(Observation #9780586)が7.9倍速くなったが、CPUだけで処理しても1.421744秒なので、効果は・全く・体感できないし、 APT画像ではGPUの出番が無かっった 💦

HDDデータの完全消去2024/06/13 21:45

Win10なPCをリサイクル回収することにした。内蔵HDDのデータ消去にあたり、homeだとドライブ暗号化できないので、 いつものshredを使った。レスキュー・ディスクとしてFinnixを試したら、黒い画面が表示されて好感触だった。

本日の衛星: KASHIWAたんのMoGは空振りだった。

CaribouLite #112024/04/30 10:01

ラズパイ HATなSDR: Cariboulite、ソフトを久しぶりに最新化した。 最近のアップデートはgr-caribouliteに集中しており、 気まぐれで購入したPi zero 2Wのヘッドレスインストールのテストがメインだ。

bookworm 64bitでは、install.shが完了しない。症状はissue #198と同じ。

bullseye 64bitでは、CaribouliteをSoapySDRUtilでは認識するが、sdr++のSoapySDR Sourceから見付からない。

で、bullseys 32bitに戻ったら、sdr++からCaribouliteを認識したので、アプリのテストに進む。

SoapySDRServer/zero 2W⇛Gqrx/別PCを試すと、 install.sh install 6 2 3 な設定でrebuildしたら連続再生が可能!とマシン交換によるカイゼンがあったが、再生音が時々割れて ちょっと 残念。

sdr++サーバ/zero 2W⇛sdr++のクライアント/別PCでは、SDRのsampling rateを2.0⇛1.0Mbpsに変更しないと再生音が割れて ちょっと 残念な結果になった。

Bit Rate=72.2 Mb/sのwlan0で、sampling rate 2.0Mbpsな通信(sdr++のStatus表示では ほぼ30Mbps)を捌けないので、ネット接続を無線⇛有線に変更してみた。 zeroで動作報告のあるmicroUSB-LAN変換アダプタ(TM-microUSBLAN)を接続したら、2.0Mbpsのsampling rateでも割れることなく再生可能になった。

が、SoapySDRServer/zero 2W⇛Gqrx/別PCで、受信中に信号が・何度も・途切れる症状が(有線接続で)復活した。Gqrx側ではSSS・・・が表示されるので、(O)verflow, (U)nderflowとは違う感じ。ログを調べると、数秒ごとに kernel: smi-stream-dev soc:smi_dev: init programmed read. missed: 2389, sema 7100 なメッセージが残っており、HATとの通信が追いついてないようだ。

本日の衛星: RS-44で交信。GARDENsからKASHIWAたんのQSLカードが届いてた。

nn-morse、その後2024/04/04 11:10

前回の続き。 深層学習でモールス信号を解読するソフト(nn-morse)を動かすにはPytorchが必要だが、 当局のPi4は(SatNOGS環境のために)32bit OSなのでPytorchが動かず、ネット記事をみてonnxruntimeを使うことに決めた。

onnxruntimeをググるとPi4でbuildする記事が多かったが、whlファイルを見付けた。 自分の環境はpython 3.9なので、onnxruntime-1.16.0-cp39-cp39-linux_armv7lをダウンロードすればOK。 それからruntimeの実行には、libopenblas-baseの追加が必要!だった。

SatNOGS Observation #928492を処理した結果を以下に示す。 206秒の録音を約30秒で処理できたので、まずまずのスピードだと思う。 デコードの成績はまあまあ:単語を正しく区切れてないが、文字は正しく認識できている。あと、サイズの大きなWAVファイルを処理すると4GBモデルでもOOM Killerが発動するので注意💦

$ time python3 decode_morse.py 9284942.wav
… 3TOKYO METROPOLITAN COLLEGEOFINDUSTRIALTECHNOLOGY …

real	0m29.735s
user	0m31.408s
sys	0m6.287s

このプログラムはgithubにて公開しました。