JI1FGX/DU9 フィリピンミンダナオ島 アマチュア無線日記 IOTA OC-130
English Japanese



昨日までのアクセス
TOPページ 【 リリー日記 】
ミンダナオでの生活日記
26/11/12  JG2TST製作 YAESU FT-991A CATコントローラー
26/11/11  SatBox Mini制作 
26/11/08  IC-705用冷却ファンユニットの3DデータUpdated
26/11/07  SatBox_Ver0.1.1c-beta IC-9700テストバージョン
26/11/07  SatBox取り扱い説明書
26/11/06  USB FSIOインターフェース用プログラム
26/11/03  SatBox開発用のFT-847を入手
26/11/02  デジタルマルチテスターZT219を購入
26/10/28  Linuxを使ったホームサーバーの構築
26/10/27  レピーターコントローラーの機能説明
26/10/27  レピーターコントローラー基板とファームウェア
26/10/26  JTDX自動運用 Ver0.7.7
26/10/26  WSJT-Xリモート運用 Ver0.1.6
26/10/22  米沢の無線室から始まったUNIXとネットワークの思い出
26/10/20  レピーター用YAESU FT-2600M入手
26/10/19  ローテーター用リレーインターフェース販売
26/10/18  ケンプロローテーターリレーインターフェース KiCAD データー再掲載
26/10/17  インドネシアのJOTA/ジャンボリー・オン・ジ・エア
26/10/17  日記にコメントが書けるようになりました
26/10/11  Arduino IDEをインストールする
26/10/09  DXCC200のステッカー到着
26/10/08  SatBox Cloudをリリース
26/10/06  オークションでミニPC ECS LIVA Zを落札
26/10/05  1か月ぶりのHF運用でガンビアのC5RとQSO
26/10/04  Raspberry Pi OSのインストール
26/10/02  レピーターコントローラーの機能説明
26/10/01  レピーターコントローラー基板とファームウェア
26/09/30  JLCPCB社へ基板を発注する手順
26/09/24  Ozamizのパーツショップ UNITRUST
26/09/22  ケンプロローテーターインターフェース
26/09/18  SatBox Bate版基板とファームウェア
26/09/14  SatBoxの基板を設計してみました
26/09/12  太陽光発電システム計画
26/09/09  サテライト用SatBox パート4
26/09/04  孫のZion君
26/08/29  ハムフェア2026開催
26/08/25  フランツ・ヨーゼフ諸島のDXペディションRI1FJL
26/08/23  衛星RS-44を使ったQSO
26/08/22  現在サテライトVUCC48
26/08/16 サテライト用SatBox開発中 パート3
26/08/05  HP 8656B SGを使用してIC-820Hの受信感度を測定
26/08/02  サテライト用SatBox開発中 パート2
26/07/16  発注していた3Dプリントのパネル納品
26/07/12  サテライト用SatBox開発中
26/07/05  気温・湿度・気圧モニター室内ユニット
26/06/30  FreeCADで3Dプリンターの為のデーターづくり
26/06/16  KR-500にAS5600磁気エンコーダ取り付け
26/06/05  孫Zion君のCQ
26/06/04  仰角ローテ―ターKR-500のポテンションメーター交換
26/06/03  レピーターコントローラーの制作その4
26/06/01   気温・湿度・気圧モニターソフト
26/05/31  気温・湿度・気圧モニター
26/05/21  JTDX自動運用BUGFIX
26/05/17  サテライト用アンテナ系修理
26/05/13  AlincoDR-130バックライト修理
26/05/07   レピーターコントローラーの制作その3
26/05/03  サテライトのお友達YC8RPK
26/04/26  DXCC200達成
26/04/23  ISSボイスレピーターでの交信
26/04/20  WSJT-Xリモート運用ソフト
26/04/19  アルインコDR-130ゲット
26/04/15  ClublogのCharts
26/04/10  POCトランシーバーについて
26/04/08 YAESUの無線機でKENWOOD AT-300を使う
26/03/17  フィリピンでアマチュア無線クラブを作るには
26/03/10  YAESUの無線機でKENWOOD AT-300を使う
26/03/07  Linux Mintのインストール
26/02/27  フィリピンアマチュア無線試験問題集
26/02/20  JK1SNSから荷物到着
26/02/18  テンポラリーライセンスの更新
26/02/14  サテライトトラッキングプログラムSattrack
26/02/05   レピーターコントローラーの制作その2
26/02/02  衛星IO-86でCQを出す
26/01/27  シャック&レピーターコントローラー
26/01/16  レピーターコントローラーの制作
26/01/16  ローテーターインターフェース基板制作
26/01/10  サテライト用アンテナ設置
26/01/08  WSJT-Xリモート運用ソフト
26/01/07  JTDXリモート運用ソフト
26/01/04  log_reciver_Ver2.6.6ソフト
26/01/04  VPNソフト Tailscale
JG2TST製作 YAESU FT-991A CATコントローラー(2026/11/12)

このFT-991Aコントローラーは、コーア技研の松井さん(JG2TST)が作成されたもので、ご本人から掲載の許可をいただいて公開しています。

松井さんから、FT-991Aの操作を手元のつまみで行えるコントロールユニットの写真・資料と、製作の背景や設計についての説明をいただきました。以下、ご本人のお話をもとに、その工夫と使い勝手を紹介します。

製作の背景 ― メニューをたどらず操作したい

松井さんはFT-991Aを入手してから、その操作性に不便さを感じていたそうです。特に、受信フィルターやFM運用時のスケルチなど、すぐに変更したい項目でも、メニューボタンやタッチパネルで機能を選んでから調整する必要がある点に戸惑っていました。

また、本体のLCDに表示される情報が直感的につかみにくかったり、メニューを開かなければ機能のON/OFFが分からなかったりすることも、使いにくさの一因だったとのことです。

こうした不便さを改善するため、松井さんは独自に外部コントローラーを考案し、設計からプログラミング、ハードウェアの製作まで、ご自身で行いました。よく使う機能を手元のロータリーエンコーダーやスイッチに割り当て、CAT通信を通じてFT-991Aを制御する構成です。

JG2TST製作のFT-991A用CATコントローラーの正面
左側に縦長のLCD、右側につまみと押しボタンを配置したコントロールユニット。

設計の考え方 ― つまみで操作し、画面で確認

設計で重視したのは、直感的に操作できることです。物理的なダイヤルとスイッチを多めに配置し、松井さん自身がよく使う機能を割り当てています。バンドや運用モードも、ダイヤルを回してすぐに変更できます。

表示については、運用中に確認したい情報を常に見られるようにして、FT-991A本体のLCDを補う考え方です。受信フィルターの状態は数値だけに頼らず、帯域やノッチの位置を図で示し、ひと目で把握できるようにしています。

調整した設定を戻しやすいことも工夫の一つです。スイッチの長押しでフィルター設定を初期値に戻したり、ノッチ周波数を運用モードに応じた基準値へ戻したりできるようにしています。

FT-991Aの表示を補う2.2インチLCD

表示には、SPI接続の2.2インチグラフィックLCDを使用しています。周波数や運用モードだけでなく、フィルターなどの設定状態をまとめて確認できる画面になっています。

松井さんからは、表示について次の説明をいただいています。

「FT-991Aでメニューに入らないと表示されないような情報を補完する形で表示されるようにしています。」

写真の表示例には、アンテナチューナー、スケルチ、ブレークイン、ノイズブランカー、オートノッチ、IFシフトなどの状態が並びます。フィルターの帯域幅や中心周波数に加え、画面下部ではフィルター幅やノッチ位置も図で確認できます。

各表示項目の説明。FT-991A本体の表示を補い、設定状態をまとめて確認できます。

ロータリーエンコーダーとスイッチの割り当て

前面には6個のロータリーエンコーダーと3個の押しボタンが配置されています。回転・短押し・長押しや設定モードの切り替えを組み合わせ、複数の機能を操作する構成です。

現在の操作説明図では、例えば次のような割り当てが示されています。

周波数・モード周波数の変更、周波数ステップの切り替え、運用モードやバンドの変更。
受信フィルターWIDTH、NOTCH、IFシフトの調整や、WIDE/NARの切り替え。
スケルチ・CWスケルチやキーヤー速度の調整、キーヤーやブレークインの設定。
チューナーなどアンテナチューナーやDNF(オートノッチ)の操作。

SW3を短押しすると、SW1の機能がWIDTH調整とNOTCH調整で切り替わります。WIDTHとNOTCHを同時に調整することはめったにないため、1つのつまみを切り替えて使う構成にしています。

個々の操作は下の説明図をご覧ください。モードによって割り当てが変わるため、この表は機能の概要です。操作割り当ては、今後の改良で変更される可能性があります。

ロータリーエンコーダーと押しボタンの操作説明図。画像をクリックすると元の大きさで確認できます。
つまみとスイッチの配置が分かるコントローラーの外観
つまみの配置と前面パネルの様子。

内部の構成とハードウェアのブロック図

制御の中心はSTM32F4のマイコンボードです。Microchip製のI/Oエキスパンダーを、ロータリーエンコーダーなどの入力に使用しています。表示用の2.2インチグラフィックLCDはSPI経由で駆動します。

内部写真では、前面の操作部とマイコンボードなどを接続する配線の様子が分かります。

ケース内部のSTM32F4ボードと操作部・表示部への配線
コントロールユニットの内部。

下の図は、主要な接続をまとめたブロック図です。細かい部品や部品定数は省略されています。初期の構成スケッチなので、最終版では細部が異なる可能性があります。

図には、FT-991A側・PC側のシリアル通信部、I/Oエキスパンダー、LCD、オプションのEEPROMなどが描かれています。製作に使用する詳細回路図ではなく、全体の構成を把握するための資料として掲載しています。

STM32F4・シリアル通信部・I/Oエキスパンダー・LCDのブロック図
ハードウェア構成の初期スケッチ。部品や定数の一部は省略されており、最終仕様を示すものではありません。

ソフトウェアはFreeRTOSで処理を分担

ソフトウェアはFreeRTOS上で複数のタスクを動かす構成です。頂いた図には、スイッチ入力の読み取り、画面表示・操作処理、CATコマンドの送信、無線機からの応答解析などの役割分担が示されています。

ソフトウェア内部では、CATパラメーターの取得・設定処理を共通の部品としてまとめています。操作や表示の処理から利用できる形にすることで、機能の追加や仕様変更に対応しやすい仕組みにしています。

下の図は、操作入力、画面表示、無線機との通信などの処理をどのように分担しているかを示したものです。

FreeRTOSのタスクと周辺デバイスの関係。

動作動画

コントローラーの動作を紹介する動画です。下の再生ボタンからご覧ください。

JG2TST製作 FT-991Aコントローラーの動作紹介。

使い勝手の特徴 ― 状態が見えて、すぐに調整できる

松井さんが普段の運用でよく使う機能をまとめたことで、一般的な運用であれば、FT-991A本体のダイヤルやスイッチに手を伸ばさず、このコントローラーで操作できる構成になっています。

受信フィルターの状態がひと目で分かるため、意図せずナローモードになっていたり、IFシフトを動かしたままにしていたりすることにも気付きやすくなります。設定を変えた結果をすぐ画面で確認できるので、操作と状態の把握を一緒に行えるのが利点です。

CW運用でも、キーヤーのON/OFFやスピードを手元で簡単に変更できます。よく使う調整を物理的なつまみにまとめ、本体だけでは確認しにくかった情報を補うことで、FT-991Aをより扱いやすくするコントローラーです。

追記・開発秘話 ― 画面表示を支える自作ライブラリとエンジニアの経験

記事の公開後、松井さんから、LCD表示の仕組みやプログラムを書いたときの様子について、追加のお話をいただきました。多くの情報をまとめて表示する画面の裏側には、文字表示を使いやすくする工夫がありました。

座標と表示内容を渡せば、文字を表示できる仕組み

LCD画面の文字表示には、松井さんが作成したライブラリを使っているそうです。

「LCD画面は、文字を表示するライブラリを作成して、X,Y座標と表示内容を渡すと表示できるようにしています。」

X座標とY座標は、画面上の横方向・縦方向の位置を指定するものです。「どこに」「何を」表示するかを渡せるように、文字を描く処理をライブラリとしてまとめています。表示を利用する側からは、座標と表示内容を指定して呼び出せる、という仕組みです。

このように文字表示の処理を共通化しておく考え方は、周波数や運用モード、各種設定などを一つの画面に配置する際にも役立ちます。画面の見た目だけでなく、その表示を組み立てるソフトウェアにも工夫があることが分かります。

「勢いで書いてしまった」― 組み込みソフトエンジニアの一面

これだけの操作や表示を実現するには、プログラミングにも相当苦労されたのでは、と想像してしまいます。ところが、ご本人のお話は少し違いました。

「プログラムは勢いで書いてしまったので、それほど苦労していないんです。」

「最近は仕事ではプログラム書いていないとはいえ、いちおう組み込みソフトエンジニアですので。」

控えめな言い方ですが、組み込みソフトエンジニアとしての経験がうかがえるお話です。マイコンで入力を受け取り、無線機と通信し、その状態をLCDへ表示する。ここまで紹介してきた構成を見ると、「こう操作したい」という思いを、ハードウェアとソフトウェアの両面から形にできることが、この自作機の強みなのだと感じます。

「使いにくいところを、自分の使いやすい形に変える」。その発想を、文字表示のライブラリから手元のつまみまで具体化した今回のコントローラーには、無線を楽しむ人の視点と、ものづくりに携わる技術者の経験が重なっています。

2026年11月11日 2026年11月12日