TS-690でJT65などを行うのにWSJT-Xを使っているが、周波数をちょっと動かしたくなることがある。理由は、こちらの記事。
簡単にいえば、端の方ではパワーが上手く出ないから。効率のよいところで送信するために、数百Hzとか1kHzとか動かしたくなる。VFOダイヤルを回せばいいのだけど、つい多目に回ったりしてあまり具合が良くない。PC上で制御できればその方がいい。
以前、HDSDRをつかってリグ制御を行ったりもしてみた。本当はバンドスコープとして使いたかったのだけど、これは残念ながら断念。
バンドスコープを諦めて、単にリグコントロールとして使う手もあるわけだけど、ここで問題なのは、シリアルポートの数の問題。一つしかないので、Turbo HAMLOGと共存できない。WSJT-XとHDSDRとの共存は、両者がOmniRigに対応しているので、WSJT-XをOmniRig経由での制御にすれば大丈夫。しかし、Turbo HAMLOGはそうはいかない。
そこで試したのがLPB2というソフトウェア。
LPB2 Software Page
http://www.telepostinc.com/LPB2.html
こんな具合に設定したら動作してくれた。
実機がCOM5につながっており、それを、COM11、COM12、…に分配する格好。
ただし、問題あり。何しろ遅い。起動が遅いという話は調べればいくつか見つかる。まぁ、それはいい。最初我慢すればいいのだから。しかし、実際にはそれだけじゃなくて、動作が遅い。LPB2の仮想ポート経由でつないだHDSDR(OmniRig)だと、無線機のVFOを回してもHDSDRの周波数がついてこない。結果、HDSDRの周波数に無線機のVFOが動悸されてしまい、周波数が戻る。VFOをグルグル回すと周波数が行ったり来たりするわけだ。これじゃまったく使いもにならない。ちなみに、このとき、WSJT-XをOmniRig経由にしても、LPB2の仮想ポートを使うようにしても、どちらでも結果は一緒だった。Turbo HAMLOGはちゃんと動いてくれるのだけど…。
シリアルポートの分割は、LPB2の他に、VSPEというのもある。
VIRTUAL SERIAL PORTS EMULATOR
http://www.eterlogic.com/Products.VSPE.html
多分、こちらの方がメジャー。それなら素直にこちらを使えばいいのだけど、有料ソフトなのでちょっと敬遠していた。そんなに高いわけでもないけど、使えなかったら悲しので。ちなみに、32bit版は無料。64bit版は有料。
しかし、LPB2が使い物にならないし、それに、64bit版も質問に取り敢えず「いいえ」で答えればお試し利用みたいなことができるらしいので、トライしてみた。
結果は良好。HDSDRの周波数もちゃんとついてきて、VFOを回したら行ったり来たりなどというバカなことにはならない。
設定方法は、あちこちで紹介さている。
1つのシリアルポートを複数で共用する
http://www.fbnews.jp/201603/tech/VSPE_01.html
仮想シリアルポート編/アマチュア無線家の遠隔操作技術/JA4ECX
http://ja4ecx.yumekou.org/vspe.htm
VSPE(Virtual Serial Ports Emulator)の設定:
http://ja1xuy.in.coocan.jp/CW_Skimmer/vspe.html
ポイントは、
- Splitterを設定する
- 一つの仮想ポートをすべてのアプリケーションが使う
と言ったところ。LPB2の方法だと仮想ポートを複数作りアプリケーションごとに振り分けるが、VPSEでは仮想ポートは一つ。例えば、COM11が仮想ポートならWSJT-XもTurbo HAMLOGもCOM11を指定するということ。ここ、最初悩んだ。
これで動いたと思ったのも束の間。Turbo HAMLOGの周波数がパタ付く現象に気づいた。なんだろうと思ったら、無線機のVFO-AとVFO-Bの周波数でパタパタしている。調べてみたところ、どうやらOmniRigとの相性が悪いようだ。VSPE仮想ポートは一つでそれを共用するのは上に書いた通りで、OmniRigとTurbo HAMLOGを共存させるとこの現象が起きる。HDSDRを使わずに、WSJT-XだけをOmniRig経由で動かしても発生する。WSJT-XにVSPEの仮想ポートを直接指定する(OmniRigを使わない)とTurbo HAMLOGの周波数パタ付き問題は起きない。
ならば、次の策として、リグコントロールをHDSDRではなくDX Lab Commanderで行ってみる。
Commander
http://www.dxlabsuite.com/commander/
バンドスコープを諦めているのでHDSDRである必要はなく、シンプルなCommanderの方が却っていいかもしれない。
CommanderとWSJT-Xの連携については、jh8jnfさんのブログが詳しい。
WSJT-XとDX lab suite commanderの連携
https://jh8jnf.wordpress.com/2016/03/23/wsjt-x%E3%81%A8dx-la…
こちらのブログではポートを変更しているが、私の環境ではその必要はなかったのでデフォルトのまま。
結果は、動作はするがTurbo HAMLOGの周波数パタ付き問題は解決されず。OmniRigだけではなくCommanderとも相性が悪いようだ。
さて、困った。
ここで、Commanderをよくよく見ると、Secondery CAT Serial Portというのがある。プライマリポート(無線機を接続するポート)のデータをこちらのセカンダリポートに流せるらしい。こちらの概念図がわかりやすい(かも)。
Configuring HDSDR and CW Skimmer with a Transceiver and SDR Hardware
http://www.dxlabsuite.com/dxlabwiki/HDSDRCWSkimmerConfigurat…
このセカンダリポートにTurbo HAMLOGをぶら下げれやればいいんじゃなかろうか?それなら、VSPEの仮想ポートを共用することは避けられる。
というわけで、まずは、VSPEで仮想のスプリッタではなく、クロスケーブルを作る。Pairを使う。
この例では、COM18とCOM19でクロスケーブルを構成した格好。
Commander側の設定はこんな感じ。
Primary CAT Serial Portには無線機のシリアルポートを設定。Secondery CAT Serial PortにはVSPEの仮想ペアポートの一方(COM18)を指定。Turbo HAMLOGの方では、もちろん、COM19を指定する。
結果、上手く行った。Turobo HAMLOGの周波数のパたつきはなくなった。もちろん、VFO-AとVFO-Bを切り替えれば、それがちゃんと反映される。
これで解決。ではあるが、クロスケーブルなら、わざわざVSPEを使うことない。ヌルモデム(com0com)でいいじゃないか。
com0comの設定等はこちらを参考に。
仮想シリアル(COM) ポートドライバ「com0com」によるシリアル通信
http://qiita.com/yaju/items/e5818c99857883a59033
ポイントは、上記のページにもあるように、デジタル署名付きのバージョンを使うこと。新し版は署名が入っていないので面倒。後は、デフォルトのポート名、CNCA0、CNCB0を、希望のポート番号(例えば、COM18とCOM19)に変えてやればOK。
さて、結果。これで、ちゃんと動いてくれた。つまりは、VSPEを使う必要はないということ。もっとも、「この構成ならば」という条件だけど。この他にさらにシリアルポートを共有するソフトを使いたくなったら、やはり、VSPEのスプリッタを使うことになるだろう。
さて、この構成でしばらく使ってみたところ、WSJT-Xの周波数がときどきブッ飛ぶことがある。こんな具合に、
無茶苦茶な表示になったり、
桁がズレたり(本当は、7.076)。大抵は、すぐに自動復帰するけど、まれに、このままになってしまうことがある。この場合は、WSJT-Xのバンド切り替えで戻すか、あるいは、無線機の周波数をちょっとずらしてやるとWSJT-Xの周波数が動悸する(このときは、無線機のVFOを回してもいいし、Commanderで周波数を変更してもよい)。
ということで、なんとか共存できる方法を見つけたので、しばらくはこれで様子を見てみることにする。
コメント