にゃん太郎とアマチュア無線

メインクーンのにゃん太郎と趣味のアマチュア無線と電子工作の記録です。

2020年02月

raspberry-pi xastir 最新版へupgrade

いま現状のバージョンはi
@raspberrypi:~ $ uname -a
Linux raspberrypi 4.19.97-v7+ #1294 SMP Thu Jan 30 13:15:58 GMT 2020 armv7l GNU/Linux
になってします。
sudo apt-get install xastirで入るバージョンは2.1.0です。昔は最新バージョンにするのにarm環境ではなかなかコンパイルが大変で苦労した思い出があります。それでしばらくは楽な2.101を使っていたのですが、この際いろいろいじったこともあってバージョンアップすることにしました。

今はRaspbian Jessieでは、簡単にインストールできるスクリプトを作って公開されているようでえらく簡単にできるようになりました。

まずは現状の2.1.0をアンインストール
$ sudo apt-get remove xastir
スクリプトを入れる
$ wget http://www.175moonlight.com/xastir/raspbian-xastir-git-build.sh
$ chmod +x raspbian-xastir-git-build.sh
実行
$ ./raspbian-xastir-git-build.sh

これはmakeに必要なパッケージも全部入れてくれ、makeが完了したらインストールまで全自動でしてくれるすぐれものです。インストールされるパッケージはかなり多いです。
なお地図をバックアップするように書いてありますが、そのままokでした。設定は
/home/pi/.xastir/conf/xastir.cnf
にありそのまま残っているので、なにもせずに大丈夫です。
これでxastirは最新の2.1.5になりました。見た目は地図が同じなのであまり変わらないですけど、raspberry-pi4では地図の表示がえらく早いです。sdカードの性能にもよりますが、おそらくpi3の1.5倍くらいにはなっている感じです。xastirでは地図の拡大や縮小にストレスがあったのですが、このくらい早いとあまりストレスを感じません。


raspberry-piのdirewolfでaprsとxastir

久しぶりにaprsネタです。rasberry-pi3とTH-D72上でもう4年も稼働しているAPRSですが、今度raspberry-pi4に交換したので、ついでにメモリーも4Gもあるので、direwolfも入れて実験してみました。もともとdirewolf自体が仮想tncの役目をしているので簡単に構築できます。
インストールも簡単でsudo apt-get install direwolfでできます。Raspbianでは1.4が入ります。
最新版は1.5 ですが、これも簡単で

$ git clone http://github.com/wb2osz/direwolf
$ cd direwolf
$ make
$ sudo make install
これだけでRaspbianではエラーもなく最新の1.5が入ります。

必要なもの
USB接続サウンドカード これはジャンク箱の転がっていたsound braster playを使いました。たしか昔amazonで1000円ぐらいで買った? 実はこれが後述するCM119のサウンドチップを使っていました。raspberry-piのUSBポートに差すだけで簡単に認識してくれました。
お勧めはCM108のチップを使っているもので、しかもPTT信号が出せるためGPIO端子が引き出せそうなものみたいです。しかしなかなか日本では入手困難なようで、工作も結構大変だったりします。下記の海外のアマチュアが制作されているキットを購入するのがいいかもしれません。

$aplay -l

**** ハードウェアデバイス PLAYBACK のリスト ****
カード 0: U0x41e0x30d3 [USB Device 0x41e:0x30d3], デバイス 0: USB Audio [USB Audio]
  サブデバイス: 0/1
  サブデバイス #0: subdevice #0
カード 1: ALSA [bcm2835 ALSA], デバイス 0: bcm2835 ALSA [bcm2835 ALSA]
  サブデバイス: 7/7
  サブデバイス #0: subdevice #0
  サブデバイス #1: subdevice #1
  サブデバイス #2: subdevice #2
  サブデバイス #3: subdevice #3
  サブデバイス #4: subdevice #4
  サブデバイス #5: subdevice #5
  サブデバイス #6: subdevice #6
カード 1: ALSA [bcm2835 ALSA], デバイス 1: bcm2835 IEC958/HDMI [bcm2835 IEC958/HDMI]
  サブデバイス: 1/1
  サブデバイス #0: subdevice #0
カード 1: ALSA [bcm2835 ALSA], デバイス 2: bcm2835 IEC958/HDMI1 [bcm2835 IEC958/HDMI1]
  サブデバイス: 1/1
  サブデバイス #0: subdevice #0
カード 0: U0x41e0x30d3 [USB Device 0x41e:0x30d3], デバイス 0: USB Audio [USB Audio]

なお上記は標準のサウンドbcm2835の優先順位を変えています。

PTT制御用 RTS信号がでるUSBシリアル変換ケーブル またはDTR信号がでるUSBシリアル変換アダプタであればなんでもいいと思います。
direwolfで一番むずかしいのがこれでリグのPTT制御をどうするのかという問題があります。本来はちゃんと2SC1815あたりでちゃんとスイッチする必要があるんだけど、お手がるで実験用ということで、そのまま上記変換のRTSかDTRをPTT信号として、入力したらどちらでもちゃんと動作しました。

IMG_20200228_091105


上記を一気に解決するのが、下記の製品です。いずれもC-Media CM108/CM119 GPIOを利用してサウンドを内蔵してPTT制御も可能です。
DMK URI     
RB-USB RIM   
RA-35       
一番安い$35のRA-35を注文してみました。送料とか入れてpaypalで6900円くらいになりました。しかし日本で使ったレポートが皆無で少し心配です。人柱覚悟でやってみます。
キットですが、
U1 - CM119A (presoldered)
U2 - LM386 JRC386
U3 - LM386 JRC386
U4 - NE555
U5 - EEPROM (REV2 and later) (presoldered)
となっているので、
presolderedとなっているので、ちょっと心配なんでメールで問い合わせたらすぐにキットの基盤の写真を送ってくれました。さすがにCM119Aの半田つけはもうきついです。

ra35-top-board-only

到着して完成したらまたレポートします。送料が高いのが難点ですね。

今回はお試しで手元にあったもので構築してみました。
まずdirewolf.confの内容ですが、PTT制御は
PTT /dev/ttyUSB0 RTS    RTS信号を使う場合
PTT /dev/ttyUSB0 DTR DTR信号を使う場合
 
接続
SOUND   MIC------------RIG音声出力
SOUND   OUT------------RIG音声入力
USB変換  RTS---2.2k --RIG PTT(2.2Kの抵抗はハンディ機を使う場合はつけたほうがいいみたいです。)

起動はそのまま引数なしで起動したらxastir上でAGWPEとしてインターフェイスに追加します。direwolf.confのデフォルト設定ならばそのまま追加で設定すれば簡単に動きます。
direwolf -p で起動するとkissTNCとして動作します。kissTNCとしたらインターフェイスの設定はSerial KISS TNCとして追加して、tnc-portの部分は/tmp/kisstncとして記述します。当然ながら上記2つともdirewolfを起動してないとupになりません。
direwolfはそのまま起動するとターミナルでtxt colorが設定され環境によっては見にくいです。-t 0のオプションで起動するとcoloerが設定されず見やすくなります。
1200では、tnc-piよりもデコード率はいいみたいです。
今はTH-D72で運用中の9600ですが、リグをFT-817NDにして比較するとあまり変わらないみたいです。まあアンテナも違うのであまり比較にはならないですが、、、ARATEは48000にしています。96000にしてもあまり変わらないみたいです。9600に関しては9600専用のIN-OUTが必要で、ハンディ機は使えないのが難点ですね。

これのいいところは入手困難なTNCを使わなくていいことです。特に1200であれば、ハンディ機で簡単に構築できます。MIC端子をそのまま入力で使えるし、しかもデコード率も結構いいです。余っているハンディ機と、raspberry-piとシリアル変換モジュールがあればすぐに使えます。
あとUSBサウンドモジュールは、安価でAMAZONで入手できるSYBA SD-CM-UAUDがCM108のチップを使っているいたいです。なお私自身が検証してないのであくまで自己責任でお願いします。

さらにAPRS最強のTH-D72ですが、2波同時受信機能があるので、D72のスピーカ出力(2.5ミニジャック)をUSBサウンドカードの入力に利用すれば144.64での9600送受信運用と144.66の1200のdirewolfの受信専用ノードとして1台で利用できます。xastirのインターフェイスはサーバ接続と/dev/ttyUSBのD72用9600接続 さらにdirewolf用に/tmp/kisstncとして3つ設定します。

raspberry-piでDTV02-1T1S-Uを使ってtvtestで見る

最近xastirだけであまりさわってなかったraspberry-piですが、久しぶりにちょっと触ってみました。目的はtvをノート㍶のtvtestで見ることです。
元々家のメインのデスクトップ㍶にはPT3を入れてあり、問題なくtvtestでみています。しかしノート㍶で見るためにはusb接続のチューナが必要というこで、どうせなら衛星もみられる3波チューナ degibest製DTV02-1T1S-Uを購入しました。なぜか amazonで手に入るので一番安かったからです。しかしながらちょっときわものだったようで少し苦労したので忘備録もかねて。
まずwindpws10でのtvtestではbondriverが用意さえていることもありすぐに問題なく視聴できました。windows用のドライバは2種類あり、ここを見ると親切に解説されています。ebest純正?はBonDriver_ISDB2056_D0.dllでこれを使う場合はRegisterFiltersを実行してfilterを登録する必要があります。もう一つはrasi-sh氏のBonDriver_1T1S.dllです。
どちらでも問題なく視聴できます。
しかし問題はノート㍶を別部屋に移動したときはチューナもわざわざ持っていかなくてはならず、さらには、アンテナの接続が必要です。
そこでちょっとぐぐってみるとraspbeery-piで動作するmirakurunというチューナサーバが存在することを知りxastirサーバで24時間稼働しているraspberry-piに入れてみようと思い立ったわけです。

ドライバーのインストールirrun 
先人に感謝してTatsuya Uedaさんのここを見てpx4_drvをインストールする。なおこのpx4_drvは内臓のカードリーダをサポートしていないため、bcas用に別途カードリーダが必要です。私はtvtest側で復号してみるため必要ないのでここではb25関連は書いていません。

$ cd /home/pi
$ sudo gpasswd -a $USER video
$ wget http://katsunoki.kilo.jp/e-better/download_file/201905-DTV02-1T1S-U.zip
$ unzip 201905-DTV02-1T1S-U.zip

$ git clone https://github.com/nns779/px4_drv.git
$ cd px4_drv/fwtool
$ make
$ cp /home/pi/DTV02-1T1S-U/Driver/x64/ISDB2056.sys .
$ ./fwtool ISDB2056.sys it930x-firmware.bin
$ sudo cp it930x-firmware.bin /lib/firmware/
$ cd ../
$ sudo cp -a ./ /usr/src/px4_drv-0.2.1
$ sudo dkms add px4_drv/0.2.1options px4_drv xfer_packets=51 urb_max_packets=816 max_urbs=6 
$ sudo dkms install px4_drv/0.2.1

ここでカーネルヘッダが見つからないとかのエラーがでたらsudo apt-get install --reinstall raspberrypi-bootloader raspberrypi-kernelで再取得して再実行します。どうもapt-get upgradeしたときのタイミングでずれがあったようです。これで1日はまった。
$sudo vi /etc/modules
px4_drvを追加する
$sudo vi /etc/modprobe.d/px4_drv.confo
options px4_drv xfer_packets=51 urb_max_packets=816 max_urbs=6 

再起動してうまくドライバーが入ると/devにisdb2056video0というデバイスができます。これが録画と再生デバイスになりますが、チューナの仕様上1つなので同時に再生録画は1つしかできません。

上記blogを参考にしてrecpt1の構築をおこないます。b25関連はtvtest側で行うので私はインストールしていません。できたら
recpt1 xx 20 test.ts --device /dev/sdb2056video0 
で正常にtest-tsができることを確認する。(xxはch名) なおこのtest.tsは復号してませんので見ることはできません。

mirakurunのインストール
$ curl -sL http://deb.nodesource.com/setup_8.x | sudo bash -
$ sudo apt install -y nodejs
$ sudo npm install pm2@2.10.4 -g
$ sudo npm install mirakurun -g --unsafe --production
$ sudo npm install arib-b25-stream-test -g --unsafe

正常にインストール完了したら /usr/local/etc/mirakurun/
channels.yml
server.yml
tuners.yml
に3つのファイルができる。

sudo nano /usr/local/etc/mirakurun/tuners.yml
でチューナの設定変更する。

- name: ISDBT2056
  types:
    - BS
    - CS
    - GR
  command: recpt1 --device /dev/isdb2056video0 <channel> - -
  isDisabled: false$
上記で変更確認できたら、
$sudo mirakurun restart
$ sudo curl -X PUT "http://localhost:40772/api/config/channels/scan" 
で地上波を受信して自動設定を行います。時間は15分ほどかかかります。

channel scanning... (type: "GR")

channel: "13" ...
-> 3 services found.
-> {"name":"NHKEテレ","type":"GR","channel":"13"}

channel: "14" ...
-> no signal. [Error: s$ sudo mirakurun restarttream has closed before get network]

こんな感じで受信できるはずです。もしできないのなら上記チューナ設定かアンテナ接続関係を見直してください。
完了したらsudo mirakurun restartで再起動します。
1、raspberry-piでDTV02-1T1S-Uを利用してmirakurunを入れてBonDriver_Mirakurunでwindows10のtvtestで視聴する。bonDriver_Mirakurun.iniの設定は

SERVER_HOST="192.168.xx.xx"    ------raspberry-piのipアドレス
SERVER_PORT=40772
; B25(1=enable)
DECODE_B25=1           -------b25のデコードをwindowspc側で行う   
; Priority(0=Low Priority)
PRIORITY=0
; Service Split(1=enable)
SERVICE_SPLIT=0
; MagicPacket(1=enable)
MAGICPACKET_ENABLE=0
MAGICPACKET_TARGETMAC="00:00:00:00:00:00"
MAGICPACKET_TARGETIP="192.168.0.255"でいけるはずです。

b25のデコードをtvtest側でやっているので、設定でTSプロセッサの設定で処理を有効にする にしておく必要があります。
 mirakurun 
プロフィール

nagoublog

記事検索
ギャラリー
  • direwolfでRA-35+xastir
  • direwolfでRA-35+xastir
  • raspberry-piのdirewolfでaprsとxastir
  • raspberry-piのdirewolfでaprsとxastir
  • NANOVNA ST-LINK V2で復旧
  • NANOVNA ST-LINK V2で復旧
「最新トラックバック」は提供を終了しました。
QRコード
QRコード
アクセスカウンター
  • 今日:
  • 昨日:
  • 累計:

HamLife.jp
  • ライブドアブログ