Arduino & Analogue FT-8 TRX    2025.2.10



 ネットをふらふらしていて、FT-8の信号がArduinoの低速CPUでも生成できるネタをたまたま見つけました。数年前に話題になっていたと記憶していましたが、当時、私はDSPによるSD-TRXに夢中になっていたので、このネタはちらっと一瞥して終わっていました。FT-8は低速のFSKですからCPUに入力された信号の周波数を測って、それに応じてRFを直接変調(Si5351を周波数偏移させる)するという考え方に、面白いなぁ・・・と興味は持っていました。そうこうするうちに、ADS-Xや7L4WVUさんの頒布するFT-8TRCVが大人気になってきたので、私も少しかじっておこうかと遊び始めたのがこのプロジェクトです。

 まずは、先に述べた方法でどんなFT-8信号が生成できるのか確認することから始めました。最初に見たのがこのサイトです。かなり簡単な構成でトランシーバ形式で紹介がされており、コードも記載されていたので、早速作ってみることにしました。





Arduino NANOとSi5351で作るFSK変調器


 先のドイツのサイトのCodeをそのまま入れ込んで実際に送信させてみました。WSJT-XでCQ送信させて、PCからのAudio信号をArduinoに突っ込んで、Si5351の出力スペクトラムを、いまやほぼPWZ局のメイン機となったESP32 SD-TRXで受信させてみます。Si5351とRXの間には適当なATTを挿入してあまり過大入力にならないようにします。





ドイツのサイトのFT-8変調器のスペクトラム


 これを見ると、なんだかスペクトラムが広がっていて「美しく」ありません。処理になんらかの不都合な要因があるのではないでしょうか?元ネタのサイトではこれで交信しているみたいなのですが、流石に私はこのままでは使う気がしないので、ADX-Sのサイトを見ていたら、JA発でGitHubに情報がありました。JE1RAVさんがめちゃくちゃ詳しく解説してくれています。これには感謝しかありません。Codeを見ると周波数分析のループがオリジナルのサイトのCodeに比べて一段多いようで、厳密な周波数同定ができるのだろうと思います。なので、早速送信してみると以下のようになりました。





JE1RAVさんのCodeで送信させてみる


 これを見ると、いつも見ているスペクトラムと同じで、裾野の広がりが見られません。これなら、このまま増幅しても問題なさそうなレベルになりました。勿論、確認のためのDecodeも行っていて、以下のようにしっかりCQメッセージが復調されていましたので安心しました。





ESP-32 SD-TRXでCQ受信している様子


 これで変調器ができたので、RX側についても考えてみます。最初はCD2003でちゃっちゃと済まそうかと思ったのですが、ドイツのサイトにあるようなダイレクトコンバージョンで済ます気にもならず、またモニタ的ではありますが、SSBも受信だけはしたかったので、シングルスーパーで仕上げてみようと思い立ちました。





受信部の考え方



 上記はIF FilterにCB用AMフィルタを用いたシングルスーパーで考えてみました。ここではMixer/Product DETにゲインのあるSA602を使い、IF AMPはこれもいにしえのMC1350で描いていますが、その後の検討で、MixerはDual Gate MOSの3SK59、DETはµPC1037Hを部品箱から引っ張り出して来ました。流石に現代では忘れ去られた昭和の半導体ですが、部品箱に残っていて今後もあまり活躍に機会がなさそうなので、ここで使ってあげた・・・という次第です。
  
 また、下の図は、CB用のXFを使うのだからスプリアスの多いSi5351から生成されるFT-8信号をIFフィルタに通過させることでクリーンアップできないかと考えたものです。面白そうだとは思ったのですが、最初は単純に機能確認をしたいので上図の単純なシングルスーパで行くことにしました。





CB用AMクリスタルフィルタ





ミクサー部の様子


 ここで使ったCB用XFはAM/SSB用として熊本シティースタンダード(古!)とかで盛んに使われ、私も熊本STDが一回作った覚えがあるのですが、確かSSBでは帯域が広くて、当時は超混雑だった7MHz帯では実用的ではなかったので、最後まで熊本STDでセットを組むまでには至らなかったように覚えています。

 これがFT-8になると状況が一変します。昨今に入手できるXF(ジャンク含む)はSSB用が多く、これでは帯域が2.4kHz位なので。3kHzくらいまで通過させないと、CQの応答をミスることがありそうです。なので、CB用XFは帯域が4kHz近くもありますが、それなりに帯域外減衰も期待できるのでIF用XFの選択肢になりますね。

 ミクサーは先にも述べたとおりDG-MOSの3SK59で、この素子を使うのは25~30年ぶりじゃないでしょうか?この当時の小信号MOS FETをミクサに使うと「根変調特性が良好だ」と盛んに言われていましたね。バイポーラTrに比べたら当然ですが、利得があまり取れないので、当時のメーカー機はIFも同じようなDG-MOS FETでRFアンプを組んでいたようです。私は、RFアンプでは無く入力に1:9のステップアップトランスを用いて、少し利得をアップさせています。





ミクサーの利得特性


 ちなみに興味本位でミクサーの電圧利得を測ったらアンテナtoフィルター端で、リニアな領域では20dB位の電圧利得でした。ちょっと稼ぎ過ぎかもしれませんが、RX全体ができた後調整しようと思っています。





IF AMPの様子


 XF以降のIFアンプは懐かしいMC1350を使ってみました。この石は古くはアナログTVの音声IF用に作られたモノらしく58MHzで動作可能です。オリジナルはモトローラ製のDIP-8ピンですが、以前、7/CB用ポータブル機を作ったときに蟻から仕入れた、多分模造品でSOIPです。ここに当時の実験結果が残っていますが、VCC=8Vでもなんとか動くので採用してみました。ただ、安易に作ると、2段ではゲインが大きいので発振しやすいです。ここでは負荷インピーダンスを下げて、ゲインを抑え気味にして、2段で80dB弱のゲインに抑えています。





DET、AGC、AF AMPの様子


 プロダクト検波はµPC1037Hという、これまた太古のDBM ICを使ってみました。秋月で購入以来、幾星霜という状況なので、ここで使わなければ出番は永久になさそうでした。結果は入力レンジが狭いようですが、ローカルtoIFリークも少なそうで、AGCに悪影響がなさそうです。ま、SN146514とかもまだ、余っているので、これとともにどこかで使ってあげないと・・・・

 AGCは2SK241のAGC AMPで軽く増幅して、LM358でレベル変換してMC1350にフィードバックしています。普通の回路ですね。あとはお決まりのLM386のAF AMPで締めます。けっこうな高密度なランド工法になってしまいましたが、このあとトラブルが出なければいいのですが。。。

 一応IF以下ができたので感度を測ってとりあえずここで一休み。TX方面の検討に移ります。

 TXは、Si5351のFM出力信号を増幅するだけですから、リニアリティなんていう我儘YLの機嫌をとるような面倒な増幅器はいりません(←ポリコレ違反表現だが、昨今は反動が出ているので無視)。なので、とにかく能率だけに絞ったアンプを採用することにします。





E-Class AMPの構想


 上図はE-Classアンプ用のLPF(ADX-Sに附属)を用いて構成してみたPA部です。Driverは74AC00の4パラでダイレクトにFETのGateに直結させて、単純にOn/Off動作を行わせてみます。最初はIRF系の石(510?)を使ったのですが、このいい加減なドライブ法では28MHzまで伸びないで往生しました。この原因は明らかでCissが大きくてドライブ波形がへたってくるためです。何らかの補正を加えれば伸びるかもしれませんが、ここでは素性の悪い石は使用を止めて、もともとSW用だが、アナログリニアアンプにも使えた、Cissのかなり少ないVN66AFDを引っ張り出してきました。





以前のE-Class PA用FET(FDD86113LZ)とVN66AFD


 このFDD86113LZという石はここで極座標変調のPAとして使っていたので、今回も使ってみたのですが、HFハイバンドでの動作が苦しく、せいぜい21MHzがやっとでした。なのでいまさらですが大昔のVN66AFDに活躍してもらっています。

 ちなみにこの石はPdが少なく(確か12Wくらい)昨今の石と比較すると、心もとないのですが、苛烈な動作をさせても、一回も飛んでいません。アナログアップコンバージョン機のPAでリニア動作をさせた時には、数回飛ばしてしまって結局RD16HHF1に換装した覚えがあります。ことほど左様にリニア動作というのは難しいということなのかもしれませんね。

 さて、この回路で気になっていた特性を見ておくことにしましょう。以下に28MHzに於ける送信スペクトラムを示します。Si5351からの出力をドライバーの74AC00を介してVN66AFDで増幅したものです。





Si5351と74AC00を直結した場合




段間にBPFを挿入した場合


 1枚目はSi5351の近傍スペクトラムに加えてPAの高調波が見える、ADX-S等のQRP機に固有なスペクトラムですね。高調波は-50dBをかろうじて切っていますが、近傍のスプリアスはどうも-50dBを満たさないモノもあります。ま、出力が5W以下であれば、法規上は50nW以下ですから、セーフという場合もあるでしょう。ADX-S等はそれで法規を潜り抜けることができるでしょう。

 ただ、今回は、出力を50W(できれば100W)まで増力したいので-60dBを確保したいと思っています。そのためには、高調波はともかく、Si5351のスプリアスはここで低減しておきたいものです。というわけで、28MHzの3段直列共振型BPFを通して見たのが2枚目というわけです。これだとかなり綺麗なので、本機単体で用いる場合でも50Wまでなら法規上問題ありません。勿論50Wとかではリニアの後にLPFをかますので、それで、高調波を抑圧することになります。

 なお、参考までに28MHzで直列共振型BPFをかますと、どんな感じでキャリア周辺のスプリアスが減じて行くのか、メモを残しておきます。キャプションを見てください。





Si5351の28MHzのFT-8スペクトラム
けっこうスプリアスが見える





これに28MHzのBPFを挿入する
スプリアス比-60dBが確保でき、100Wが見えてくる




同狭い帯域の様子
近傍の厭なスプリアスは-60dB以下になっている





広帯域で見た様子
高調波は終段LPFあるいはリニア後のLPFで低減可能



 さて、ということで私のよく使うバンドはADX-Sに附属のLPFではまかなえないので追加でLPFを作ることにします。





10MHz帯と24MHz帯のE-Class用LPFを追加


 つらつらとADX-Sのサイトを見ていたら、いつの間にか周波数が7/14/21/28以外に10/18/24が追加になっていたので、10MHzと24MHz帯のE-Class用LPFを作ってみた。キャパシタは丁度いい値のものが見あたらず、ジャンクのシルバードマイカを用意したが、なんと500WVなんていう超オーバースペック物だったりでLPF形状が大型化してしまいました。ま、それでも実用上は問題無く使えています。





各バンドにおける出力と効率特性


 ここらで、各バンドの出力と効率特性を見てみましょう。上図に示すようにVdd=12Vで3.5~5.4Wの出力が得られました。ハイバンドで出力が落ちてくるのは、LPFの特性なのかあるいはFETの限界なのか分かりませんが、とりあえず、出力で1~2Wの偏差は、まったく通信上に影響を及ぼさないと思います。なので、ギリギリつめることはせず、このまま進めることにしたいと思います。





TXの立ち上がり特性




TXの立下り特性


 上図は入力にFT-8のAudio信号を入れた時のTX出力の立ち上がり/立下り特性です。立ち上がり時のみ、制御信号に比べて出力を20mSばかり遅らせています。これはリレーのバタつきが終わった後に出力しようと考えてのことです。変なオーバーシュートもなく綺麗に信号がON/OFFされていて安心しました。RX側への漏洩も素子を壊すようなレベルになっていないことが確認できました。

 さて、長くなったので、この辺で一旦区切ることにします。(続く)


<仕上げに向けて> 【2025.2.28】

 さて、だんだんと回路の特性が分かってきて、このままセットに纏められそうなので、一気にパーツを基板に搭載していくことにしましょう。





パーツを殆ど搭載・配線し終わったマザー基板


 これは、先の基板に、TRX用BPF、TX Driver PA、LPF、TRX-SWとArduino制御/送信部を搭載して機能を集約させた状態です。最初はこのまま最終試験に臨もうかと思ったのですが、丸裸だと事故が怖いので、下記のごとくインターフェース(SWやVR、RE)を固定できるシャーシに内蔵し、軽く固定してみました。





総合的な試験を行うために仮固定したFT-8トランシーバ


 このシャーシはJF3HZB式SD-TRXを評価するために使っていた評価用シャーシで、当時のVRとかが残っていますが、仮固定してあると、操作する場合にずいぶんと安心になります。各部とインターフェースを結線してTRXの動作の最終確認に臨みます。





FT-8信号の送信


 以前にも示しましたが、上記のごとく本FT-8 TXの出力を適度に減衰させて、他のセット(ここではいつものアップコンESP32 SD-TRX)で受信したスペクトラムです。まぁ、綺麗なスペクトラムなので、PA出力も問題が無さそうです。次は受信の様子です。





7MHzの様子


 7041を受信している様子を上図に示します。確か、未チューン状態でのGPアンテナを繋いだ状態で、復調結果をみても、しっかり動作していることを確認しました。

 ということで、このあとは最終的なケースへの搭載が待っているわけですが、ここからがいつもの難事業(なかなか進まない)となります。

 今回はどういう形に纏めようかと迷ったのですが、充電池を内蔵した「ポータブル型」にまとめ、外部にアンプを繋いで自家からオンエアする方式に決めました。外付けアンプについては、同時にここにアップしてみます。まずは、部品をシャーシに並べて様子を見てみます。問題無ければ、部品に合わせて穴あけになります。





まずは、部品をおいて様子を見る




内蔵させる充電池と全てのパーツが収容できるか確認




穴あけを行って「面構え」の最終確認をする


 収容ケースはリードS6(230×150×60)というシャーシですが、リードのシャーシはこの春で販売中止になるとアナウンスされているので、これが最後の仕込みになるのかもしれません。このようにシャーシのフロント面にフレームで囲うことで、「なんとなくケース感」を出す手法は既に4作目になりました。

 さて、一応収容法も問題なさそうなので、塗装を行います。今回は若干明るめの日産KL0にクリアラッカー仕上げという感じです。





塗装してみる


 この辺りになると最終形が見えてきてなんとなく先を急ごうかという気もおきるのですが、実は、仮止めしてある評価用シャーシから「臓物」を最終ケースに移すときが結構緊張します。ESP32 SD-TRX機や同ダイレクトコンバージョン機も同じ手法で作り上げたのですが、事故が起きやすいプロセスです。





内蔵物を全て移し終わってホッと一息




動作も問題ないようだ


 一応、綺麗に収容することが出来ました。このあとはリニアと組み合わせて評価をするのですが、ダミー上では全く問題がないので、申請手続きに進むことになりますね。

 あと、最後になりますが、この機器はSSBも受信できるのですが、帯域が4kHzと広いので、今の7MHzだと、混んでいるときは結構、対域外の(高音の)干渉が多く、あまり快適な受信にはなりません。なので、動画については省略しようと思います。