6. SatNOGSコミュニティとのやりとり
RSP-03衛星の .ksy
デコーダを satnogs-decoders に追加するにあたり、Libre Space FoundationのGitLabやLibre Space Forumでコミュニティの皆さんと丁寧に会話し、やり取りを行いました。
Step 1:Merge Request提出と最初のフィードバック
まずは satnogs-decoders
に rsp03.ksy
を追加するMR(Merge Request)を提出しました。
MRでは以下のコメントを記載しました:
- Add rsp03.ksy defining AX.25 + RSP-03 telemetry structure
- YAML file will be submitted later after satellite launch
- Referenced internal HK Beacon Format (PDF)
提出後、コミュニティのコアメンバー(deckbsd, dl7ndr, SA2KNG)からレビューコメントが入りました。
Step 2:deckbsdさんからのコメント
原文:
"Please add :field definitions in the doc: section so that SatNOGS DB can extract and display telemetry fields."
訳:
「doc: セクションに :field 定義を追加してください。これがないとSatNOGS DBがテレメトリ項目を抽出・表示できません。」
初めは、kaitai構文のfields:化と勘違いしましたが、他の衛星のKsyを覗いて、SatNOGS独特のフォーマットであることがわかりました。この指摘を受け、.ksy 内の doc: にSatNOGS特有の :field 記述を追加しました。
Step 3:dl7ndrさんからのコメント
原文:
"Make sure the packet_type switch covers all possible values, even if some are unused."
訳:
「packet_type の switch 文は、未使用の値も含め、すべての可能な値をカバーしてください。」
これを受けて .ksy の switch-on において default: ケースを追加し、不正値を受け取っても構文エラーにならないよう修正しました。
Step 4:SA2KNGさんからのコメント
原文:
"Your ksy indentation is off in some nested types. The Kaitai compiler is strict about this."
訳:
「一部のネストされた型でインデントがずれています。Kaitaiコンパイラはこれに非常に厳しいです。」
これを受けてKaitai Struct IDEで構文を確認しながら、全フィールドのインデントを修正しました。
Step 5:Libre Space Forumでの補足説明
GitLab MRだけでなく、Libre Space Forumにも以下のような投稿を行い、背景を説明しました:
原文:
"We are adding RSP-03 GMSK beacon support. The satellite will be launched later, YAML registration will be done after launch."
訳:
「RSP-03のGMSKビーコン対応を追加しています。衛星の打ち上げは後、YAML登録を行います。」
このように事前に情報を共有しておくことで、レビュー側が「YAMLが未提出である理由」を理解してくれ、MRの承認プロセスがスムーズになりました。
実際は,rsp03ksyファイルをMRマージリクエストを承認した後に、DBを動作させるのに、yamlファイル、AX.25 G3RUHのランダマイズ、scamblingなどのデコード部分でyamlファイルの内容をやり取りで、はまりました、完成度が高くなった時点で、コミュニティへRSP-03.yml(チャットへはZIP形式で)添付して対応を相談しました。そこからは一期にSatNOGSメンバーが作業を引き取ってくれることになりました
Step 6:調整内容のまとめ
今回のやり取りを通じて、以下の対応を行いました:
- .ksy に :field 定義を追加(Grafana/CSV出力用)
- packet_type の switch に default ケースを追加
- インデント修正(Kaitai構文エラー防止)
- YAML未提出の理由を事前にフォーラムで説明
📌 学びと今後の工夫
- GitLab MRだけでなく、フォーラムでも事前説明すると誤解や差し戻しが減る
- レビューコメントはすぐ反映するとコミュニケーションが円滑になる
- :field定義はSatNOGS特有なので早めに準備しておくとよい
- インデントやswitchの網羅性など、Kaitaiは細部まで厳密に書く必要がある
実際には、1ケ月間、仕事から帰ってきて2,3時間Ksy、ymlファイルを作りこむ日々が続きました。めげずにやってこれたのも、SatNOGSメンバーのサポートのおかげでした。ありがとうございます。chatGPTをフルに活用しましたが、かなり返答が想定と違うことが多く、他の衛星のksyファイルを参考に、chatGPTに読み込ませながら作成しました
関連記事リンク
0. 初めに — リーマンサット RSP-03 受信チャレンジの歩み
5. GitLabでの開発・連携メモ①(SatNOGS-decoders編)
7トラブルとその解決の記録
8.今後の実施項目・メンテナンス