JR-D TYPE TRAIN RADIO / DATA RECEIVERv0.2.0

見えない電波を、読めるデータに。

JR-Dタイプ列車無線のデータ波を SDR で受信。生フレームと復号情報を画面で確かめながら、JSONL に記録するデスクトップアプリです。

  • macOS(Apple Silicon / Intel)
  • Windows x64
  • RTL-SDR / HackRF One
16波
D1〜D7 の上下 14 波と、共用波の上下 2 波を監視
2台
基地局と移動機を 1 台ずつ。上りと下りを同時に記録
3入力
RTL-SDR、HackRF One、録音済みの cu8 ファイル
2OS
macOS と Windows に配布版を用意
01しくみ

電波が、1 行のデータになるまで。

1受信

SDR が電波を IQ サンプルとして取り込みます。RTL-SDR と HackRF One のほか、録音済みの cu8 ファイルも入力に選べます。

2チャンネル分離

受信窓に入るチャンネルを、4.8 kHz 幅の受信帯域ごとに切り出します。監視する波は、ウォーターフォールの枠かチャンネル一覧のクリックで選べます。

3フレーム同期

ビット列からフレームの区切りを見つけ、336 bit の生フレームを取り出します。同期の確からしさも、行ごとに残します。

4復号

生フレームから電文を組み立て、在圏・登録・呼・運行情報などの復号情報にします。FEC の検証結果とチェックサムの一致は、別々に確かめられます。

5記録

生フレームと復号情報を、チャンネルごとの JSONL に追記します。ファイルは営業日(既定は 3 時区切り)で切り替わります。

02機能

受信から記録まで、1 つの画面で。

スペクトル、チャンネル、生フレーム、復号情報。必要なものを同じ画面に並べ、止めずに記録し続けます。

共用D1D2D3D4D5D6D7↓ 基地局↑ 移動局

監視中 16 / 16升をクリックして切り替え

16 波を同時に監視

D1〜D7 の上下データ波 14 波と、共用波の上下 2 波が対象です。チャンネル一覧の行かウォーターフォールの枠をクリックするだけで、監視を切り替えられます。

基地局

352.603125MHz

移動機

336.103125MHz

JSONL

2 台で、上りと下りを同時に

1 台に「JR東基地局」、もう 1 台に「JR東移動機」のプリセットを選べば、上下を同時に記録できます。

detailregistration

列車番号
1481K
先頭車
クハE217-53
駅
東京

FEC検証済みチェックサム一致

日本語の項目名で読む

選んだ復号情報を、日本語の項目名で表示します。FEC の検証、チェックサムの一致、本文の欠落を確かめられ、生の JSON も開けます。

…D1ch_データ波_基地局.frames.jsonl

  • {"si":1234183,"kind":"data","slot":10,"raw_hex":"45f0c66202a7…"}
  • {"si":1234567,"kind":"idle","slot":11,"raw_hex":"b73e2035814c…"}
  • {"si":1234951,"kind":"data","slot":12,"raw_hex":"81025e9381b4…"}
  • {"si":1235335,"kind":"data","slot":13,"raw_hex":"7d3acf48fbbd…"}
  • {"si":1235719,"kind":"idle","slot":14,"raw_hex":"8e833c976b53…"}
  • {"si":1236103,"kind":"data","slot":15,"raw_hex":"0ddfef231ae1…"}

生フレームごと残す JSONL

チャンネルごとに、生フレームと復号情報の 2 本を追記します。生フレームの行には、デスクランブル前の 336 bit がそのまま入ります。

デバイス

cu8 ファイルを再生…

録音した cu8 を再生

録音済みの cu8 ファイルを入力に選べます。ファイルを無線機カードへドロップするだけです。

presets/jr-east-base-d1.csv

key,valuelabel,JR東基地局(D1のみ)center_hz,352603125channel,d1_down

プリセット

  • JR東基地局
  • JR東移動機

プリセットは CSV で足せる

中心周波数と監視チャンネルの組を、1 ファイル 1 プリセットの CSV で管理します。追加や編集は、アプリの再起動で反映されます。

新しい版があります更新して再起動
記録中押すまで再起動しません

18:42:17 D1 ↓ in_zone

18:42:16 D3 ↓ registration

18:42:16 D5 ↑ report_b

記録を止めない更新

新しい版は起動時に確認します。適用するのは「更新して再起動」を押したときだけなので、記録中に勝手に再起動しません。

03動作環境

手持ちの SDR で、すぐに。

macOS
Apple Silicon / Intel
配布版
Windows
x64
配布版・管理者権限は不要
受信機
RTL-SDR(RTL2832U)/ HackRF One
2 台あれば上下を同時に記録
ファイル入力
cu8
録音済みの IQ を再生
対象
JR東日本向けのチャンネルと復号器
音声波は表示だけで、復号しません

Linux 向けの配布版はありません。

04導入

コマンド 1 行で、入れる。

macOS はターミナルから、Windows はインストーラーから。どちらも数ステップで終わります。

zsh

$curl -fsSL https://jrd.linux.moe/install.sh | sh

  • この Mac のアーキテクチャに合う最新版を取り、SHA-256 を照合してから「アプリケーション」に入れます。
  • minisign が入っていれば、アプリの更新と同じ公開鍵で署名も検証します。
  • curl で取ったファイルには隔離属性が付かないため、初回起動で Gatekeeper の確認画面を経由しません。

WINDOWS x64

インストーラーを実行するだけ。

JR-D.Receiver_0.2.0_x64-setup.exe

  • インストーラーを実行します。ユーザー単位で入るので、管理者権限は要りません。
  • WebView2 がない環境では、インストーラーが導入します。
  • USB ドライバは入りません。Zadig で、使う各デバイスに WinUSB ドライバを当ててください。
05ライセンス

認証すると、すべてが読める。

未認証の間は、在圏・呼・呼設定・運行情報以外の復号内容が伏せ字になり、JSONL も記録しません。購入時に届くライセンスキーを設定画面に入れて「認証」を押すと、制限が外れます。

起動のたびに自動で更新

認証の有効期間は 30 日です。ネットワークにつながる状態でアプリを起動するたびに、自動で更新されます。更新は起動時だけなので、何日も動かし続けるときは、期限の前に起動し直してください。

別の PC へ移せる

設定画面の「このPCの認証を解除」を押すと、同じライセンスを別の PC で認証できます。

ライセンス

未認証

  • 18:42:17D1↓在圏 編成 47 slot 14
  • 18:42:16D3↓(未認証のため伏せ字)
  • 18:42:16D5↑(未認証のため伏せ字)
  • 18:42:15D2↓呼設定 列車 834C 運転台 2
  • 18:42:14共用↓運行情報 配信先 3 線区
  • 18:42:13D6↓(未認証のため伏せ字)
JSONL の記録: 停止未認証

スイッチを切り替えて、違いを確かめられます。

06FAQ

よくある質問

困ったときの手引きを見る

現在の内蔵チャンネルと復号器は、JR東日本向けです。D1〜D7 の上下データ波と、共用波の上下が対象です。

聞けません。音声波はチャンネル一覧とウォーターフォールのマーカーに表示するだけで、復号しません。

RTL-SDR(RTL2832U)か HackRF One に対応しています。2 台あれば、基地局と移動機のプリセットを 1 台ずつ選んで、上りと下りを同時に記録できます。録音済みの cu8 ファイルも再生できます。

起動と受信はできます。未認証の間は、在圏・呼・呼設定・運行情報以外の復号内容が伏せ字になり、JSONL は記録されません。

認証の有効期間(30 日)の間は使えます。期限までにネットワークにつながる状態で起動すれば、自動で更新されます。期限を過ぎると未認証に戻るので、ライセンスキーを入れ直して再認証してください。

配布版は macOS と Windows 向けです。Linux 向けの配布版はありません。

ターミナルのコマンドで入れた場合は、Gatekeeper の確認を経由しません。dmg から入れた場合は初回起動が止められるので、アプリを右クリックして「開く」を選んでください。

最初の 1 フレームを、受信しよう。

アプリを入れて、無線機を追加し、プリセットを選んで開始。受信はそこから始まります。

最新版 v0.2.0