DMR (Digital Mobile Radio)/D-STAR REFLECTORの構築
このページでは、DMR(Digital Mobile Radio)のリフレクター構築と、DMRハンディ機MD-380と、
実際のリフレクターを使用した交信方法、免許申請の情報を扱っています。
目次
単体では任意の周波数に設定できないので、専用のUSB接続ケーブルでPCに繋ぎ、
設定編集ソフトを使って16個あるチャンネルに任意の周波数等を書き込む必要がある。
RspberryPi Zero HWに重ねて使うハードウエア。
ZUMSPOTの互換品と思われる。
消費電流はRasPiZと合わせて250mA以下(220〜240mA)と小さい。
今回はこちらを使用した。
AliExpressの割引キャンペーン中で57.06ドルでした。(ケース&表示付きのフルセット)
RaspberryPi等でリフレクタを動かすファームウエア。
Webから任意のイメージをダウンロードし、MicroSDカードにddして使用する。
pi-starサイトからイメージファイルをダウンロードする。
http://www.pistar.uk/
今回は「Pi-Star_RPi_V3.4.11_17-Mar-2018.zip」をダウンロードした。
※以下、このバージョンを使用した表現となる。
zipを解凍後、Windows機でW32 Disk Imagerを使用してIMGファイルをMicroSDカードに書き込む。
16GBを使用したが8GBでも足りるらしい。(32GB以下で大きい方が後々良いでしょう)
このMicroSDカードをRasPiZに挿して電源を入れれば良いが、家のWiFiに繋ぐため、
WiFi接続設定ファイルを作成してMicroSDカードに入れておく必要がある。
以下のサイトにアクセスして、SSIDとPASSWARDから自動スクリプトで設定ファイルを生成する。
ボタンを押すと生成された設定ファイルがダウンロードされる。
http://www.pistar.uk/wifi_builder.php
ダウンロードされたファイル→ wpa_supplicant.conf
これを、MicroSDのFAT領域のルートディレクトリにそのままコピーする。
ここまででRasPi側の準備は完了。
次にJumboSPOT-RTQをRasPiに載せるのだが、OLEDが付いている物では背面のピンが
RasPi側と干渉するため短く切っておく。
SMAジャックはケースに入れると凸量が少ない。
間に樹脂スペーサーを入れておくと良い。
裏はSMAジャックのピンが面一くらいがちょうど良かった。
スペーサーは秋月のM3樹脂ナットがぴったり。
ケースをかぶせるとこんな感じ。
ネジ部分が全部露出している。
電源を入れる。(向かって右側のMicroUSBジャック)
OLEDは表示が出なくて正しい。(あとで設定すると表示されるようになる)
https://www.dmr-marc.net/cgi-bin/trbo-database/register.cgi →移転しました
https://www.radioid.net/cgi-bin/trbo-database/register.cgi
ここにアクセスし、コールサインを入力。
QRZ.comに登録していればそのまま承認される。
登録していなくてもとりあえず無視して進められる。
State/Provには「(4401)kanto」を指定した。kanto=関東
Radio TypeにはD-STARのCCS7を指定した。(D-STAR・DMR共通らしい)
取得したIDはDMRとD-STARのどちらでも事実上使えますが、それぞれ専用に取得するのが正しいようです。
DMR用とD-STAR用の2つのIDを取得することも可能との事です。
(訂正:2018-04-17)
しばらくするとメールでIDが送られてくる。(すぐは来ない→2〜3日かかるらしい)
※DMR-IDがなくてもD-STARモードでテストは進めることはできます
さらに、登録されてから各サーバーにDBがUpdateされるのに2〜3日かかるようです。
ID発行まで約2日、ID発行からDB登録されて使えるようになるまで3日かかりました。
ID発行申請→(2日)→ID発行通知→(3日)→DB登録完了
pi-starのDashboardに、自分が送信したLogが見えますが、ID(数字7桁)で表示されている段階ではDB登録が反映されていません。
ここが数字では無くコールサインで表示されるようになって、DB登録の反映が進んだことが分かります。
pi-star自身は24時間周期でDB Updateしているようです。
最初のうちは手動でUpdate実行すると良いでしょう。
一般設定
DMR/D-STAR設定
JumboSPOT-RTQの周波数誤差を補正します。
これをやらないとまともに動きません。(DMRはFズレに対して非常に敏感です)
JumboSPOT-RTQの裏に貼ってあるシールの数字をRXOffsetとTXOffsetに設定します。
以前は手書きでしたが最近は500決め打ちのようです。
DashbordのBER値を見ながら調整します。0.2%以下まで追い込めました。
これをやっておかないと、TGに繋いでおいても切れてしまったり呼び出しが聞こえなくなる場合があるようです。
sshでRaspberryPiにつなぎ、ログインします
pi-star@pi-star(ro):~$ rpi-rw pi-star@pi-star(rw):~$ sudo vi /etc/network/interfaces
ストレージをROからRWに切り替え、viで設定ファイルを編集します
iface wlan0 inet manual wireless-power off allow-hotplug wlan0 iface wlan0 inet manual wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
上記の最初の2行を追加します。
※/etc/dhcpd.confを編集するのが正しいとのご指摘を頂き訂正しました(2018/4/21)
sshで繋いだshell上での作業。
ストレージをR/Wモードに切り替え、dhcpd.confファイルをviで開く
$ rpi-rw $ sudo vi /etc/dhcpd.conf
末尾に次の記述を追加する。(アドレスは例)
# Fixed IP Address interface wlan0 static ip_address=192.168.1.100/24 static routers=192.168.1.254 static domain_name_servers=192.168.1.1
ストレージをROモードに切り替え、再起動する
$ rpi-ro $ sudo reboot
重要なキーワード
MD-380を専用USBケーブルでPCに繋ぎ、PCにインストールしたエディタで各種設定をします。
詳細は作成中。
詳細別途。
ここに免許申請(保証認定)に必要な資料を揃えてあります。
送信機系統図ですが、MD-380は回路図と実機から、JumboSPOT-RTQは実機から読み取って作成しました。
おそらく間違いは無いと思いますが、使用は自己責任でお願いします。
初版公開:2018/4/13
日本では同一局同士の交信は認められていないようで、例えばHotSpotとMD-380を同じ1つの免許状に
登録すると、自分はそのHotSpotを使用できなくなります。
詳しいお話→ http://www.d-star.asia/license.html.ja
これを回避するには2つの方法があります。
同一エリア内で同一コールサインで移動する局を複数開設したり、50W以下の固定局を開設することは困難です。
不可能ではありませんが、特別な理由を説明して納得されないと原則的に却下されます。
WIRES-XやECHO-LINKと同じで、マイノードを使う場合は局が2つ必要です。
かなり前はパケットのデジピーター同様に黙認されていたようですが、ある日誰かが「通信の相手方の解釈では、
自分自身(自局同士)は含まないんじゃないか?」と問題提起してから、このような扱いが原則となったようです。
DMRとD-STARのリフレクター(HOTSPOT)を構築したい場合
TGはリフレクターチャンネルの事です。
このTGに接続することで、ラウンドQSOが可能になります。
日本のBMには44120(メイン)と44121(サブ)があり、主に44120でQSOが行われています。
また、441300〜441900は自由に使用して良いTGで、アクセスすると臨時にそのTGが有効になり、一定期間経過するとTGは消滅する仕様になっています。
ローカルラグチューに最適な使い方です。
DMRハンディのメモリーにTG(たとえばTG44120)を設定しておき、HOTSPOTに対して1秒間ほど送信するとTGに接続されます。
TGの切断はTG4000にアクセスします。
アクセスしたTGは(HOTSPOTの設定に寄りますが)、切断するまでHOTSPOTにどんどん追加されていきます。つまり、マルチTGワッチ状態になります。
TG44120にアクセスし、続けてTG44121にアクセスし、そしてTG440にアクセスすると、3つのTGを同時ワッチしている状態になります。
ただし、同時に使われても音声が混ざることは無く、先取り優先で聞こえます。
自分の送信は指定したTGにのみ音声が出ていきます。
TG間を切り替えるには、間に切断コマンドのTG4000アクセスを入れます。TG4000にアクセスすると全てのTGから切断されます。
TG440はDX向けのTGです。(TG440120にもDX局は出てきます)
※なお、このマルチTG接続はHOTSPOT共の設定によるようです。JumboSPOT-RTQは設定変更するパラメータが見つかっていません。
OpenSpotはデフォルトでマルチTG接続ができないようになっているようです。このあたりの仕様は調べているところです。
TG440997と440991はパロット(オウム返し)TGです。
このTGにプライベートでアクセスして何かしゃべると、録音が折り返し返ってきます。
アクセステストやレベル調整に使えます。
リフレクターでテストはせず、パロットを使って変調具合の確認をしましょう。
MD380とJumboSPOT-RTQを使っている限りは調整は不要でした。
デジタルはレベルオーバーで歪むと了解度が急激に落ちますから、浅め(低め)の変調が良いです。FMとは違います。
GroupではなくPrivateで相手のDMR IDを設定して呼び出します。
最近は新規格DMR+でのリフレクター交信が始まっているようです。
DMR+はヨーロッパにおけるレピーター間接続のスタンダードのようで、日本のD-STARレピーターの構成と似た感じです。それにリフレクターが装備されている感じ。
よって、リフレクターの使い方としては、使うときに目的のリフレクターに繋ぎ、交信が終わったら切断するというのが基本ルールのようです。
Pi-starのConfigration画面にて、DMR Configrationの項目でDMR Masterに「DMR+_USA_CALIFORNIA」を指定します。
MD-380の方は、デジタルコンタクトにTG4900(グループ)とTG9(グループ)を登録しておき、メモリーチャンネルに「TG4900」と「TG9」を設定しておきます。
TG4900の方でカーチャンクするとリフレクターに繫がります。
続いてメモリーチャンネルを変えてTG9で送信すると交信が可能になります。
ワッチしてみているとTG4900のまま交信しています。TG9との関係が不明です。受信はデジタルコンタクトとデジタル受信グループリストにに設定してあるためか、どちらもできています。
ルールとしては、TG4900に繋いでからTG9に切り替えて交信するのが正しいようです。
いちいちカーチャンクせずHOTSPOTをTG4900固定にする方法もあります。
DMR Configrationの項で、DMR+ NetworkのOptionに
StartRef = 4900; RelinkTime = 60; UserLink = 1;
と指定しておけば、
デフォルトでTG4900に接続し、他のTGに繋ぎ直していたとしても60秒のタイムアウト後にデフォルトのTG4900 に戻るようです。
通常ですと、リフレクター接続状態で(切断処理せず)通信が無くなって10分経過すると他のTG(リフレクター)に自動接続されるようです。
以下のスクリーンショットは現在の設定です。DMR-ID等は自分の物に差し替えてください。
「TG9、SLOT1、CC1」に設定して交信している例がある。(US/EU地域の実例)
日本の430MHz帯の場合、デジタルの呼び出し周波数は433.30MHzが推奨されています(JARLが提唱)。
メモリーに433.30〜433.98でTG9-Privateの設定を作っておくと便利でしょう。
最も重要なチップはHR_C5000で、デジタル変調波を作るBASEBAND DSPです。
内部には4値FMと通常のFMの2種類の変調機が内蔵されており、出力はI/QとMOD/IFが切り
替え式で選択できます。BASEBAND処理までなので、RFは扱いません。
オーディオ入力はA/Dされ、ひとまずCPU側に送られます。CPU側ではVocoder処理とスク
ランブル処理を行ってC5000に戻します。圧縮処理された音声信号はデジタル変調用DSP
ブロックに入力されます。DSPでは4値FMまたは通常FMの処理が行われ、MOD1ピンからVCO
を駆動する4値DC電圧が出力されます。
RF部のメインチップであるSKY72310は周波数シンセサイザーで、REF(基準クロック)と
外部VCO(ここでは430MHz帯)を接続することで、内部の位相比較器と分周器でVCを発生
するPLLの一部になっています。VCO回路は内蔵されていませんので、外付けでVCO回路を
用意する必要があります。この部分は昔から有るVCO〜分周〜位相比較〜VC出力の構成そ
のものですから珍しい物ではありません。
ただし、入力できる周波数が最大2GHzと超広帯域なので、後段でIF MIXをして目的周波
数を作る必要は無く、外部VCOは2HGHz以下なら直接発振が使用できます。200MHz以下な
らVCXOモジュールがあるのでそれを採用するのが手軽ですが、430MHz帯となるとLC発振
でVCOを作るしか有りません。したがって、2SC3356とVariCAPで組まれたLC発振回路が組
まれています。このVCOは2回路あり、片方が送信用、他方が受信用になっています。受信
用は周波数がIF分ズレています。
DMR 4値FMの時はC5000のMOD1側から変調信号(ベースバンド)が出ます。これをVCOのVC
に与えて変調を掛けています。SKY72310のREFは、C5000のMOD2を固定電圧にして16.8MHz
のVCOをPLL位相比較器のREFに使います。この16.8MHzは受信時のIF LOにも使っています。
変調された430MHz帯の信号はVCOから直接取り出し、2段のアンプでレベルを上げ、LPFを
通して送信系のアンプステージに進みます。アンプステージの説明は省略します。
FMモードの時はMOD1は出力せず固定。MOD2から16.8MHz VCOに変調をかけます。CTCSSもVCO
に与えています。
REF側に変調を掛け、結果として430MHz帯VCOにFM変調がかることになります。このときPLL
のループフィルターは音声周波数帯を外した帯域にしておけば変調された音声はそのまま
出力されることになります。
pi-star@pi-star(ro):~$ rpi-rw pi-star@pi-star(rw):~$ sudo pistar-expand自動的に領域拡張されますので、完了したらrebootします。
pi-star@pi-star(ro):~$ rpi-rw pi-star@pi-star(rw):~$ sudo pistar-update pi-star@pi-star(rw):~$ sudo pistar-upgrade
pi-star@pi-star(ro):~$ rpi-rw pi-star@pi-star(rw):~$ sudo pistar-mmdvmhshatflash hs_hat
公開になりました(2018-04-22)
軽微な修正が行われました。(2018-05-05)
ここから先はMD-380を文鎮化する恐れがあります。
一度失敗して動かなくなりました。(boot loaderは生きていたので助かりましたが)
http://md380.org/releases/daily/
ここに毎日ビルドされた最新のファームウエアがあります。
一番下の最新日付の物をダウンロードします。
デスクトップに置いたフォルダで作業したら失敗しました。
これで起動できなくなったので、Cドライブ直下にコピーします。
<<現在、調査&トライ中>>
gitはここ
https://github.com/travisgoodspeed/md380tools
Pythonスクリプトを使うようなので、Linux環境でPythonが動くようにしているところ。
gitとpythonが入っている環境が前提。
Cygwinはなんかめんどくさいので断念。
git clone https://github.com/travisgoodspeed/md380tools.git cd md380tools sudo cp 99-md380.rules /etc/udev/rules.d/
git pull make flash
make updatedb flashdb
Ubuntu16をVMWareに構築してやってみたが、armライブラリが無いとかのエラーが出て上手くいかず。
MD-380 Tools2.0はDFUモードでFLASHしてFirmwreを書き換えて入れます。
USER DBは通常モード(メモリー編集と同じ)でFLASHします。
USER DBのインポートはUHF版のMD-380でしかできません。VHF版はSPI FLASHが1MBしか載っていないので無理です。
Menu → Utility → MD380 Tools
Display → Show Calls
○CPS only
○User DB
○Talk Alias
●DB & TA
Menu → Utility → MD380 Tools
Display → Channnel Info
●CH RX/TX info
MD-380は電源が入っているかどうかが全く分かりません。
LCDがカラーなのですが、TH-D74みたいな半反射型じゃないので不便。
Menu → Utility → MD380 Tools
Display → Backlight
これで、画面が真っ暗になること無く、常にうっすらと光っているようになります。
操作すると明るくなります。