JR-D TYPE TRAIN RADIO / DATA RECEIVERv0.3.0
見えない電波を、読めるデータに。
JR-Dタイプ列車無線のデータ波を SDR で受信。生フレームと復号情報を画面で確かめながら、JSONL に記録するデスクトップアプリです。音声も復号して、再生と WAV への録音ができます。
- macOS(Apple Silicon / Intel)
- Windows x64
- Linux(ヘッドレス版)
- RTL-SDR / HackRF One
- 16波
- D1〜D7 の上下 14 波と、共用波の上下 2 波を監視
- 2台
- 基地局と移動局を 1 台ずつ。上りと下りを同時に記録
- 3入力
- RTL-SDR、HackRF One、録音済みの cu8 ファイル
- 3OS
- macOS / Windows / Linux(ヘッドレス版)
電波が、1 行のデータになるまで。
アンテナに届いた電波は、5 つの段を通って JSONL の 1 行になります。スクロールして、その過程をたどってください。
1受信
SDR が電波を IQ サンプルとして取り込みます。RTL-SDR と HackRF One のほか、録音済みの cu8 ファイルも入力に選べます。
2チャンネル分離
受信窓に入るチャンネルを、4.8 kHz 幅の受信帯域ごとに切り出します。監視する波は、ウォーターフォールの枠かチャンネル一覧のクリックで選べます。
3フレーム同期
ビット列からフレームの区切りを見つけ、336 bit の生フレームを取り出します。同期の確からしさも、行ごとに残します。
4復号
生フレームから電文を組み立て、在圏・登録・呼・運行情報などの復号情報にします。FEC の検証結果とチェックサムの一致は、別々に確かめられます。
5記録
生フレームと復号情報を、チャンネルごとの JSONL に追記します。ファイルは営業日(既定は 3 時区切り)で切り替わります。
受信から記録まで、1 つの画面で。
スペクトル、チャンネル、生フレーム、復号情報。必要なものを同じ画面に並べ、止めずに記録し続けます。
監視中 16 / 16升をクリックして切り替え
16 波を同時に監視
D1〜D7 の上下データ波 14 波と、共用波の上下 2 波が対象です。チャンネル一覧の行かウォーターフォールの枠をクリックするだけで、監視を切り替えられます。
基地局
352.603125MHz
移動局
336.103125MHz
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/user-d1.toml
format = 1label = "JR東基地局(D1のみ)"center_hz = 352603125[[channels]]
プリセット
- JR東基地局
- JR東移動局
プリセットは自分で作れる
標準プリセットを複製して、中心周波数と波を自分用に作れます。TOML のファイル 1 つで人に渡せて、アップデートでも消えません。
18:42:17 D1 ↓ in_zone
18:42:16 D3 ↓ registration
18:42:16 D5 ↑ report_b
記録を止めない更新
新しい版は起動時に確認します。適用するのは「更新して再起動」を押したときだけなので、記録中に勝手に再起動しません。
手持ちの SDR で、すぐに。
- macOS
- Apple Silicon / Intel
- 配布版
- Windows
- x64
- 配布版・管理者権限は不要
- Linux
- Debian 12+ / Ubuntu 22.04+
- x86_64 / arm64 のヘッドレス版
- 受信機
- RTL-SDR(RTL2832U)/ HackRF One
- 2 台あれば上下を同時に記録
- ファイル入力
- cu8
- 録音済みの IQ を再生
- 対象
- JR東日本向けのチャンネルと復号器
- 音声波と共用波の下りの音声は、再生と WAV 録音ができます
Linux 版はブラウザーから操作します。Raspberry Pi OS bookworm(64 ビット)にも対応します。
使う OS に合わせて入れる。
macOS と Linux はターミナルから、Windows はインストーラーから。Linux は Debian と Ubuntu 向けの手順を用意しています。
$curl -fsSL https://jrd.linux.moe/install.sh | sh
- この Mac のアーキテクチャに合う最新版を取り、SHA-256 を照合してから「アプリケーション」に入れます。
- minisign が入っていれば、アプリの更新と同じ公開鍵で署名も検証します。
- curl で取ったファイルには隔離属性が付かないため、初回起動で Gatekeeper の確認画面を経由しません。
dmg で入れる:Apple SiliconIntel
DEBIAN / UBUNTU
ベータ版をインストール
sudo apt update
sudo apt install -y ca-certificates curl jq minisign
curl -fsSL https://jrd.linux.moe/install-headless-beta.sh | sudo shLinux 版は現在ベータ配布です。このコマンドで導入し、systemd への登録と USB の権限設定も行います。
ベータ版の導入手順を見る- Debian 12 以降、Ubuntu 22.04 以降、Raspberry Pi OS bookworm(64 ビット)向けです。
- x86_64 と arm64 に対応します。
- 画面のない機械でも使えます。設定と受信の確認は、SSH のポート転送や Tailscale を通してブラウザーから行います。
使い方に合わせて、3 つから選べる。
IQ の録音は、未認証でも使えます。未認証の間は、在圏・呼・呼設定・運行情報以外の復号内容が伏せ字になり、JSONL も記録しません。音声の再生と WAV の録音もできません。購入時に届くライセンスキーを設定画面に入れて「認証」を押すと、買ったエディションの機能が使えます。
データのみ20,000 円
復号情報を画面と events.jsonl で読めます。音声の再生と WAV の録音はできません。
音声のみ30,000 円
音声を再生し、WAV に録音できます。復号情報は伏せ字になります。
フルパック40,000 円
データと音声のすべてが使えます。
価格は税込です。認証できる PC は、どのエディションも最初は 3 台です。データのみ・音声のみは、差額(データのみは 20,000 円、音声のみは 10,000 円)でフルパックにできます。アップグレードは、アプリを再起動すると効きます。
認証に期限なし
一度認証すれば、期限を気にせず使い続けられます。ネットワークにつながらない場所でも、何日も動かし続けても、認証済みのままです。
別の PC へ移せる
設定画面の「このPCの認証を解除」を押すと、同じライセンスを別の PC で認証できます。
ライセンス
未認証
- 18:42:17D1↓in_zone在圏 編成 47 slot 14
- 18:42:16D3↓registration(未認証のため伏せ字)
- 18:42:16D5↑report_b(未認証のため伏せ字)
- 18:42:15D2↓call_setup呼設定 列車 834C 運転台 2
- 18:42:14共用↓service_info運行情報 配信先 3 線区
- 18:42:13D6↓registration(未認証のため伏せ字)
スイッチを切り替えて、違いを確かめられます。
よくある質問
現在の内蔵チャンネルと復号器は、JR東日本向けです。D1〜D7 の上下データ波と、共用波の上下が対象です。音声は、音声波と共用波の下りから復号します。
聞けます。音声波と共用波の下りの音声を復号して再生し、通話ごとに WAV へ録音できます。音声波を聞くときは「JR東基地局・音声込み」のプリセットを選びます。音声の復号表は推定値のため音は粗く、通話によっては聞き取れません。
RTL-SDR(RTL2832U)か HackRF One に対応しています。2 台あれば、基地局と移動局のプリセットを 1 台ずつ選んで、上りと下りを同時に記録できます。録音済みの cu8 ファイルも再生できます。
起動と受信はできます。IQ の録音も、未認証で使えます。未認証の間は、在圏・呼・呼設定・運行情報以外の復号内容が伏せ字になり、JSONL は記録されません。音声の再生と WAV の録音もできません。
データのみ 20,000 円、音声のみ 30,000 円、フルパック 40,000 円です(税込)。データのみ・音声のみは、差額でフルパックにできます。認証できる PC は、どのエディションも最初は 3 台です。
使えます。ネットワークが要るのは、ライセンスを認証するときと、認証を解除するときだけです。認証に期限はないので、一度認証すれば、つながらない場所でもそのまま使えます。
Debian 12 以降や Ubuntu 22.04 以降で、ブラウザーから操作するヘッドレス版を使えます。x86_64 と arm64 に対応します。導入欄の Linux タブから、配布状況と手順を確認できます。
ターミナルのコマンドで入れた場合は、Gatekeeper の確認を経由しません。dmg から入れた場合は初回起動が止められるので、アプリを右クリックして「開く」を選んでください。
GitHub の issue で受け付けています。GitHub のアカウントが必要です。対応の状況と、次の版に入る予定の機能は、公開の一覧で確かめられます。