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



昨日までのアクセス
TOP
【 リリー日記 】
ミンダナオでの生活日記
26/10/27  レピーターコントローラーの機能説明
26/10/27   レピーターコントローラー基板とファームウェア
26/10/26  JTDX自動運用 Ver0.7.7
26/10/26  WSJT-Xリモート運用 Ver0.1.6
26/10/18  ケンプロローテーターリレーインターフェース 改定版
26/09/22  ケンプロローテーターインターフェース
26/09/18  SatBox Bate版基板とファームウェア
26/06/01  気温・湿度・気圧モニター
26/05/21  JTDXリモート運用BUGFIX
26/04/08  KENWOOD AT-300をYAESUの無線機で使うESP32-S3ソフト
26/01/04  log_reciver_Ver2.6.6
25/11/04  APRS用TNCソフト Dire Wolf_console Ver1.2
25/10/11  APRS用TNCソフトマニュアル
25/10/10  APRS用TNCソフト Dire Wolf_console
25/09/23  APRS用TNCソフト
 Dire Wolf with Hamlib
25/09/14  AutoCWType_Ver1.5.9
25/08/10  ソフトウェア一覧
25/07/26  AutoCWType_Ver1.5.8
25/07/25  JTDXから1ヶ月分のADIFファイルを作るプログラムVer2.6.5
25/07/20  AutoCWType_Ver1.5.5
25/07/13  CQマシーンプログラム Ver1.5_2
25/07/10  AutoCWType_Ver1.4.2
25/07/07  CQマシーンプログラム
25/06/15  時刻合わせ Ver0.5
25/06/10  Google,DeepL翻訳API
25/06/08  AutoCWType_Ver1.4.1
25/04/24  AutoCWType_Ver1.3

AMSATグループからテスト参加を申し出てくださった皆様、ありがとうございます。本ページではテスト用ファームウェアのソースとKiCadデータを公開します。IC-9700は実機未テスト、USB/FTDI接続は未対応です。公開PCBはJLCPCBへ未発注・未検証です。不具合は再現手順とログを添えて JI1FGX/DU9 へご連絡ください。テスト環境の準備手順を下部に掲載しています。

SatBoxのKiCADによる基板とファームウェア (2026/11/07) 

 
SatBoxの基板
まだ設計しただけで実際の基板試験は行っていません
 KiCADによる回路図とPCB  SatBox_KiCAD_2609171745-bate.zip
 SatBox_KiCAD_2609191530-bate.zip
 SatBox_KiCAD_2609200000-bate.zip
 SatBox_KiCAD_2609281500-bate.zip
 SatBox_KiCAD_2609301200-bate.zip
 SatBox_KiCAD_NoSA818S_2611061700.zip
ダウンロード回数: 3
 KiCADのライブラリー  KiCad_Library.zip
 KiCad_Library_ver2.zip
 KiCad_Library_ver3.zip
 KiCad_Library_ver6.zip
ダウンロード回数: 2
 SatBoxファームウェア  SatBox_v0.1.0a-beta.zip
 SatBox_v0.1.0b-beta.zip
 SatBox_Ver0.1.1c-beta.zip
ダウンロード回数: 2
IC-820HおよびFT-847で動作チェック中。IC-9700のCT-17経由CI-V制御は実装済みですが、実機テストは未実施です。

本ファームウェアはIC-9700対応のためのテストバージョンです
予告なくバージョンアップが行われます

問い合わせ
SatBoxの試作構成
アンケート
もしSatBoxが完成したら
基板の半完成品
0 回
0 回
0 回
0 回
基板の完成品
0 回
0 回
0 回
0 回
完全完成品
0 回
0 回
0 回
0 回
SatBoxの操作説明
 https://ji1fgx.com/260909.html
ESP32-S3と周辺回路の回路図
LCD・タッチパネル、DS3231時計、ADS1115角度測定、ローテーター接続、USB OTG RESET周辺の構成を示しています。
SatBox ESP32-S3と周辺回路の回路図
 
暫定版SatBox PCBの部品配置・配線図
ローテーター制御とドプラー制御はユニバーサル基板でテスト済みですが、このPCBを実装した状態では未テストです。JLCPCBに発注する予定です。
未検証のSatBox PCB配置・配線図

SatBox Ver0.1.1c — テスト環境の準備

SatBoxは、JI1FGX/DU9が開発しているESP32-S3ベースの衛星運用コントローラーです。衛星の軌道予測、アンテナローテーター制御、無線機の周波数・モード制御などを行います。ほとんどの設定・操作はPC設定プログラムとWebブラウザーで行えるため、LCDは必須ではありません。

FacebookのAMSATグループでテスト参加を申し出てくださった皆様、ありがとうございます。現時点のファームウェアのソースとKiCad回路図・基板データを、評価・テスト用に公開します。開発中のため、不具合や改善点をご報告ください。

コメントは極力日本語と英語の両方で記述していますが、日本語のみの場合があります。

1. 対応状況と未確認事項

無線機・ハードウェア 接続方法 状況
ICOM IC-820H ESP32-S3のUSBホストポート → OTGアダプタ → FTDI社のUSB-RS232C変換アダプタ(FT232C IC) 作者が動作チェックしている構成。このアダプタ構成のみをテスト対象としてサポート
Yaesu FT-847 SatBoxのRS232Cポート → 無線機のCATポート 作者が動作チェックしている構成
ICOM IC-9700 SatBoxのRS232Cポート → CT-17または相当品 → 無線機のREMOTE端子 コード実装済み。実機テストは未実施
IC-9700のUSB/FTDI接続 USB接続 未実装。この組合せを選択してもCAT制御は開始しません
公開するKiCad基板 回路図・PCBデータ JLCPCBへ未発注。基板製作・実装後の動作確認は行っていません

IC-9700のコードには不具合がある可能性があります。動作がおかしい場合は、再現手順と現象をJI1FGX/DU9へお知らせください。模擬テストの成功は、実機での正常動作を保証するものではありません。また、試作機の動作と公開PCBの動作確認は別です。

設定画面にある既存USB接続の表示は USB (FT232B) です。本テストのIC-820H用サポート対象は上記FT232C構成であり、この画面表示をもって他のFTDI IC、CH340、CP210x、IC-9700本体のUSB接続などへの対応を示すものではありません。

2. 用意するもの

部品・機器 用途
ESP32-S3ボード、適切な電源、書込み・通信対応USBケーブル 共通。回路図のGPIOとUSBホスト接続が使用できるボード
バックアップ電池付きDS3231 RTCモジュール 標準テスト構成で必要。ネットワーク時刻が取得できない場合の時刻保持
PC、2.4GHz Wi-Fi環境 初期設定。同一LAN上のブラウザーでWeb操作
MAX3232などの3.3Vロジック対応RS232Cレベル変換モジュール FT-847・IC-9700のRS232C接続
FTDI FT232CのUSB-RS232C変換アダプタとOTGアダプタ IC-820HのUSB接続
CT-17または相当品のCI-Vインターフェース IC-9700のRS232CとREMOTE端子の間に必要
ADS1115モジュール ローテーターのAZ・ELアナログ角度信号の取込み
ULN2803Aドライバー回路 ローテーター制御出力
外部リレーインターフェース ACモーター式ローテーターの制御
ST7796S 3.5インチLCD、必要に応じFT6336タッチ 任意。ローカル画面・タッチ操作

LCDパネルがなくてもテストできます。 ESP32-S3、RTC、PC、Wi-Fiから準備し、無線機、ローテーター回路の順に追加できます。ADS1115やモーター出力回路は、それぞれのローテーターテストを行う場合に必要です。LCDを取り付けない場合も、コンパイル時のTFTライブラリーは必要です。

3. 配線

KiCad回路図と Pin.h を参照してください。PCBは未検証のため、使用するモジュールの端子配列、電源、コネクターの向き、信号電圧を実物と照合してください。

RS232Cポートと無線機

FT-847とIC-9700はUART1の同じGPIOを、機種選択により排他的に使用します。

ESP32-S3 接続先
GPIO15/RX MAX3232のロジック側受信出力(RO)。無線機・インターフェースからの受信
GPIO16/TX MAX3232のロジック側送信入力(DI)。無線機・インターフェースへの送信
GND レベル変換回路のロジック側GND。信号GNDの配線は回路図に従う

RS232Cレベル変換モジュールの接続が必要です。ESP32-S3のGPIOにRS232C電圧を直接接続しないでください。 外部ポートにはモジュールのRS232C側を使用し、ケーブルは無線機・インターフェースの端子配列に合わせてください。

  • FT-847: RS232Cポートから無線機のCATポートへ接続します。UART1は 8N2。通信速度は両側を一致させます(4800/9600/57600bps)。
  • IC-9700: RS232Cポートから CT-17または相当品 を介して REMOTE端子 へ接続します。UART1は 8N1。CI-V通信速度・アドレスを両側で合わせてください。このREMOTE/CT-17経路では 4800/9600/19200bps を使用します。CI-Vアドレスの工場設定は A2h です。設定画面に表示される高速側の値は、このREMOTE接続用ではありません。
  • GPIO15/16は Pin.h で将来のSA818 UHF用にも割り当てられています。同時に競合するUART機器を接続しないでください。

IC-820HのUSB接続

ESP32-S3の USBホスト/OTGポート に、OTGアダプタを介してFTDI FT232CのUSB-RS232C変換アダプタを接続します。無線機側は回路図と動作確認済みのIC-820H構成に従って配線してください。USB-TTL変換アダプタはUSB-RS232C変換アダプタの代用品にはなりません。

無線機用USBホスト接続とPC設定用シリアル接続は別です。ファームウェアは GPIO21 でUSB VBUS電源を制御するため、回路図のVBUS電源スイッチ回路も必要です。GPIO21からUSB電源を直接供給するものではありません。FTDI接続中はホストポートを無線機用に使い、ボードに独立したUSB-UART書込みポートがある場合はそちらをPC設定用に使用してください。

RTC・アナログ角度入力・制御出力

信号 現在の割当て
共通I2C SDA/SCL GPIO1/GPIO2
RTC 共通I2CバスにDS3231
角度入力ADC ADS1115、I2Cアドレス 0x48
仰角/方位のアナログ入力 ADS1115 A0=EL、A1=AZ
AZ右回転/左回転出力 GPIO47/GPIO45
EL上昇/下降出力 GPIO35/GPIO36

角度入力には回路図の分圧・入力回路を使用してください。現在のファームウェアは15kΩ/22kΩの分圧を前提としています。電圧が不明なローテーターの角度信号をADS1115へ直接入れず、使用電源に対するADC入力許容範囲内か確認してください。

制御出力には ULN2803A のドライバー回路が必要です。ESP32のGPIOからモーターを直接駆動しないでください。ACモーター式ローテーターには、別途リレーインターフェースが必要です。

モーター制御テストの前にWebのCalibration画面でAZ・ELを校正し、短時間の手動操作で方向を確認してください。

LCDを取り付ける場合

対象は LCD ST7796S、3.5インチパネル です。SPI配線はCS=10、DC=9、RST=14、MOSI=11、MISO=13、SCK=12、バックライト制御=8です。FT6336タッチは共通I2Cバス、RST=3、INT=4を使用します。パネル電源とコネクター端子番号は回路図で確認してください。LCDなしのテストではパネルを未接続にでき、専用ファームウェアへの変更は不要です。

4. ファームウェアのビルド・書込み

  1. スケッチフォルダー名を SatBox_Ver0.1.1c-betaとし、Arduino IDEで SatBox_Ver0.1.1c-beta.ino を開きます。ルートの .cpp/.h と tft_setup.h も同じ場所に保持してください。.inoだけではプログラム全体になりません。
  2. EspressifのESP32ボードパッケージを導入し、実際に使用するESP32-S3ボードを選択します。Flash・PSRAMは実物に合わせ、アプリケーション容量とファイルシステム領域のあるパーティション構成を使用してください。作業記録では ESP32-S3/Huge APP、Arduino-ESP32 3.3.8 でビルドを試行していますが、現リビジョン全体のビルド成功を示すものではありません。
  3. 下表のライブラリーと依存ライブラリーを導入します。バージョンは作者のPCに存在する環境を示し、全組合せの動作保証ではありません。
  4. ST7796S設定の tft_setup.h を保持します。TFT_eSPI 2.5.43は、このスケッチ内設定ファイルを読み込む仕組みに対応しています。LCD未接続でも必要です。
  5. ボードの書込みポートからコンパイル・書込みを行います。FTDI使用時はネイティブUSBを ホスト に使うため、同じポートでPC向けUSB CDC設定通信を同時に行える前提にしないでください。独立したUSB-UARTポートがある場合はそちらを使用します。
  6. シリアルモニターを 115200bps で開いて起動を確認し、PC設定プログラムを使う前にモニターを閉じてください。

Arduino IDEの「ツール」設定

提示した設定画面の4MB構成では、次の値を使用してください。

ツールの項目 設定値
Partition Scheme Huge APP (3MB No OTA/1MB SPIFFS)
Flash Mode QIO 80MHz
Flash Size 4MB (32Mb)

パーティションのメニュー名には「SPIFFS」とありますが、本ファームウェアはファイルシステム領域にLittleFSを使用します。選択する項目は上記のままです。この構成はアプリケーションに3MBを割り当て、OTA更新用の領域はありません。Flash設定は作者と同じハードウェア構成で使用してください。

Arduinoライブラリー 作者PCのバージョン
TFT_eSPI 2.5.43
RTClib 2.1.4
Adafruit ADS1X15 2.6.2
Adafruit BusIO 1.17.4
SparkFun SGP4 Arduino Library(Sgp4.h) 1.0.4
ReadyMail 0.4.2

Wi-Fi、WebServer、Wire、LittleFS、USBホスト関連ヘッダーはESP32環境に含まれます。FTDI通信には本プロジェクトの FTDI.cpp/FTDI.h を使い、別の汎用FTDI Arduinoライブラリーは使用していません。

ビルド状況: IC-9700実装記録では、ESP32全体のビルド試行はWindowsの Illegal System DLL Relocation によりコンパイラー起動段階で停止しています。記録上のホスト模擬テスト合格は、ファームウェア全体のビルドや実機確認の代わりにはなりません。ビルドに失敗した場合は、ボード・コア・ライブラリーのバージョンとエラー全文をご連絡ください。

5. LCDなしでの初期設定

Tkinterが使える Python 3.10以降 とpyserialを用意します。プロジェクトの software フォルダーで次を実行してください。

python -m pip install pyserial
python SatBox_Settings.py

ローカルの settings.ini を同フォルダーで扱うため、software を作業フォルダーにして起動してください。

  1. PCとESP32-S3の書込み・設定用シリアルポートを接続します。Arduinoシリアルモニターなど、同じポートを使うプログラムは閉じます。
  2. COMポートを選択し、必要なら Refresh を押してから LOAD で本体設定を読み込みます。
  3. Wi-Fi SSID・パスワード、ホスト名、局名、緯度・経度・標高、タイムゾーン、夏時間を自分の環境に合わせます。初回はDHCPを使用すると準備しやすくなります。
  4. SAVE を押し、再接続・起動処理の完了を待ちます。再度 LOAD して Current IP を確認してください。必要に応じ本体を再起動して確認します。PC設定用通信は 115200bps で、無線機の通信速度とは別です。
  5. 同一LAN上のPC・スマートフォンのブラウザーで http://<Current IP>/ を開きます。初期ホスト名でmDNSが利用できる環境では http://satbox.local/ も使えます。
  6. Webの Setup メニューから残りの設定を行います。IC-9700の機種・COM(RS-232C)接続・CI-V通信速度・アドレスは、Webの無線機設定画面またはPC設定プログラム(SatBox_Settings.py)の無線機タブで設定できます。 IC-9700はCOM接続を選択し、CT-17または相当品を介してREMOTE端子へ接続してください。USB/FTDI接続は未対応です。
Webのパス 用途
/ 衛星表示・メイン操作
/setup 設定メニュー・言語選択
/network、/station ネットワーク・局情報
/radio 機種・接続方式・速度・CI-Vアドレス。無線機設定保存後は再起動
/satsetup、/tledownload 衛星選択・TLE更新
/dopplersetup 衛星の周波数・モード情報。LittleFSの /doppler.csv に保存
/offsetsetup 無線機・衛星ごとのOFFSET
/calibration ローテーター角度校正
/control 追尾・制御・通知設定
 /settings-restore  設定を一括復元


軌道予測の評価前に、現在日時と観測地点を確認してください。初回のTLE取得とNTP時刻同期にはインターネット接続を用意し、TLEが利用可能になったことを確認します。その後のオフラインテストではRTCの時刻と保存済みTLEを使用できます。対象衛星の周波数・モード情報も設定してください。

PC設定プログラムとWebでほとんどの操作ができるため、LCD・タッチ・ローカルエンコーダーは必須ではありません。PCログサーバーは別機能で、基本的な無線機・ローテーターテストには不要です。

6. 推奨するテスト順序

  1. モーター出力を未接続にして起動し、PCのLOAD/SAVE、Wi-Fi、Webアクセス、時刻、TLEを確認します。
  2. /radio で機種と通信条件を設定し、無線機側も合わせてSatBoxを再起動します。IC-9700は COM(RS-232C) を選択し、CT-17からREMOTE端子へ接続します。USBは選択しないでください。
  3. 衛星プリセットの周波数・モード、送受信バンドの割当て、受信マニュアル操作、ドプラー更新、無線機の電源OFF/ON後の復帰を確認します。送信を伴うテストの前に、受信・制御の確認から進めてください。
  4. IC-9700のサテライトモードでは、本体 MAIN=受信、SUB=送信 です。意図した側の周波数が変わるか、反対側が不用意に動かないかを確認してください。今回の対象は144/430MHz帯の衛星運用で、1200MHz、DV/DD、メモリー、CAT PTT、電源ON/OFF制御は対象外です。
  5. ADS1115の角度入力を確認・校正した後、ULN2803Aと必要なモーター/リレー回路を接続し、短時間の手動操作、追尾の順に確認します。
  6. ユニバーサル基板などの試作配線か公開PCBか、LCDを接続したかも記録してください。

7. 不具合の連絡

不具合は、参加を申し出た AMSAT Facebookの投稿・メッセージ、または du9@ji1fgx.com で JI1FGX/DU9 へお知らせください。IC-9700は実機未テストのため、特に報告をお願いします。

次の情報があると確認が進めやすくなります。

  • ファームウェアのバージョン・リビジョン、テスト日時。
  • ESP32-S3のボード名、Flash/PSRAM、Arduinoコア・ライブラリーのバージョン、ビルド設定。
  • 無線機の機種・ファームウェア、接続図、インターフェース・アダプタ型番とIC、通信速度、CI-Vアドレス。
  • LCDの有無、RTC・ADS1115・ローテーター回路の構成。
  • 衛星名、時刻、関係する周波数・モード、操作手順、期待した動作、実際の現象。
  • 115200bpsのシリアルログ、画面や動画、再現性、再起動で復帰するか。

ログ・画面を送る前に、Wi-Fiやメールのパスワードなどの個人情報を取り除いてください。

8. KiCadデータについて

KiCad回路図と基板データは、レビュー・試作を目的として公開します。JLCPCBへの発注、基板製作、実装後の動作確認はまだ行っていません。 発注前に設計内容をご確認ください。ファームウェアだけでなく、回路図・基板の誤りもご連絡ください。ローテーター用リレーインターフェースはSatBox基板とは別です。
年金生活のためJLCPCBへの発注費15,000円が捻出できずにいます。開発費の為のドネーションをお待ちします。  Paypal: du9@ji1fgx.com

文書作成日:2026年11月6日。実装記録は IC9700_CI-V_実装メモ.md と 変更履歴.txt を参照してください。

 2026年11月06日  2026年11月07日