0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

7. トラブルとその解決の記録 リーマンサット RSP-03 受信チャレンジの歩み

Last updated at Posted at 2025-08-11

7. トラブルとその解決の記録

6.ではSatNOGSメンバーとのやり取りでの気づきを主に記載しました。
ここでは、私自身が試行錯誤した内容を記載します

RSP-03対応のデコーダ開発では、Kaitai StructやGitLab MR提出時にさまざまなトラブルが発生しました。ここでは、発生順に沿って原因と対応策を整理します。


Step 1:Kaitai Structでのパースエラー

TEXT
**エラー例:**
Parse error (ValidationNotEqualError): not equal, expected [126], but got [3]

原因:

  • wavファイルから.binファイルを無理やり作成したのですが、GNU Radioで処理した他メンバーがデコードした結果はKISS形式のままで、0xC0FCS が残っていた
  • Kaitai .ksy がAX.25のデコード部分はSatNOGS標準機能で対応してもらい、通信(ペイロード部分)だけを想定していた

対応:

  • 手動で、.bin 整形時にヘッダ・フッタ・FCSを除去
  • Kaitai構造に default: ケースや assert を追加して柔軟化

Step 2:インデントミスによるコンパイルエラー

エラー例:

TEXT
TypeError: Cannot convert undefined or null to object

原因:

  • .ksy 内で seq:types: のインデントがずれていた
  • YAMLとしては有効だが、Kaitaiコンパイラではエラーになるパターン

対応:

  • Kaitai IDEで逐次検証
  • インデントを2スペース単位に統一

Step 3:GitLab cherry-pick時のコンフリクト

TEXT
**エラー例:**
CONFLICT (rename/delete): rsp03/decode_rsp03_gmsk.py renamed to RSP03/decode_rsp03_gmsk.py in HEAD...

原因:

  • リポジトリ側で不要ファイルの削除やリネームが進行しており、手元の変更と競合
  • 古いファイルパスを参照していた

対応:

  • コンフリクトファイルを確認し、不要ファイルは削除
  • .ksy ファイルのみを残して再コミット

Step 4:KISS整形後にサイズが変わる問題

現象:

  • KISS整形後の .bin が元より長くなっていた

原因:

  • 元のKISSバイナリが途中で切り詰められていた可能性
  • 整形時に余分なヌルバイト(0x00)が付与されていた

対応:

  • wc -c でバイト数を比較
  • Kaitaiの doc: に残すデータ構造コメントを確認

📌 教訓

  • Kaitai Structは構文・インデント・データ整合性すべてに厳密
  • SatNOGS特有の :field 定義は早めに準備しないとGrafana連携が止まる
  • MR提出前にフォーラムで背景説明をしておくとレビューが円滑になる
  • .bin はKISS整形後に必ずサイズと中身を比較する

関連記事リンク

0. 初めに — リーマンサット RSP-03 受信チャレンジの歩み
6.SatNOGSコミュニティとのやりとり
8.今後の実施項目・メンテナンス


0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?