JR6PUE HOME PAGE

NoraGatewayとなんちゃってモニター


 JR1OFP局が公開してくれているIイメージファイルは、NoraGatewayを簡単に設定できるので十分に満足して
 いたのですが、せっかくJumbospotに小さなモニターが付いているのに何も映らないのはさみしいなと思っていたところ
「なんちゃってモニター」というソフトをご本家のサイトで公開していただきました。

 残念ながらJR1OFP局公開のイメージファイル上では、私が試した限り「なんちゃってモニター」は
動きませんでした。JR1OFP局が簡単に設定できるようにだいぶ変更しておられますし、デフォルトでは
SDカードに書き込み禁止とかも設定されていますので、上手くいかないのでしょうかね。
 そのうちに対応いただけるのを期待して、それまでは頑張って自分で構築したいと思います。

 という事で本家のサイトで公開されているオリジナルのNoraGatewayをダウンロードして構築していきます。

 まず、第一にはまるのがRaspi3およびraspi ZEROは、Bluetoothが使えるようになった事から
初期設定では、ttyAMA0が使えないとうことです。
 まずは、ttyAMA0を使えるようにしないとJumbospotのモデムが使えません。
ラズパイ初心者は、まず間違いなくはまりますよ。当然、だいぶ前でしたが私もはまりました。(^^;
 ここらあたりにも記事があります。
 
1.準備
rasbianの最新版をインストールします
NoraGateway+なんちゃってモニターは、だいぶCPUパワーを使うようです。
初期設定等は、Google先生に訪ねて準備をしてください。
なお、OSでRaspbian Lite を使用するとNoraGatewayを利用するのに、JAVAのインストールが必要になります。

最初に、SSHとi2c(なんちゃってモニター)を使えるようにsudo raspi-configで設定

Wi-Fiも使えるように設定します。
Wi-Fiの設定は、/etc/wpa_supplicant/wpa_supplicant.confに記述

country=JP
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
       ssid="aterm-********"
       psk="**************"
       key_mgmt=WPA-PSK

}

2回線以上のwifiが使えるようにしたい場合は、設定を追加してください。
なお、IPアドレスは、DHCPで割り振られるようにしているので
固定IPの設定はしていません。
のちにNoraGatewayでproxy serverを使用せずにポート解放を行う場合は、
設定してください。

2.ttyAMA0デバイスを使えるようにします。

cd /boot
sudo nano config.txt

# Enable audio (loads snd_bcm2835)
dtparam=audio=on
enable_uart=1
# Enable UART on the GPIO pins
dtoverlay=pi3-miniuart-bt

sudo nano cmdline.txt

console=serial0,115200をカットして下記のようにします。

dwc_otg.lpm_enable=0 console=tty1 root=PARTUUID=d6e98252-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-console

上記をそのままコピペするとはまります。PARTUUID=d6e98252-02は、個別機器番号のようです。
使用されている方の設備状況で変わりますので、まるごとコピペしないでください。

cmdline.txt内のconsole=serial0,115200だけをカットするようにしてください。

Raspberry Pi 3以降では、serial-getty@ttyAMA0.serviceサービスをdisableにします。

$ sudo systemctl stop serial-getty@ttyAMA0.service
$ sudo systemctl disable serial-getty@ttyAMA0.service

3.NoraGatewayをインストール

クラブコールサインでレピータ―設定を行います。
必ず、事前にJARL管理サーバに登録をしておいてください。
フレンド局の設定時に出来ているものと信じていて
下記設定でJARL D-STARレピータ―が使えなくて苦労しました。(2019.0518)

JAVAをインストールを確認してください。
最新のRaspbian Buster 2019-09-26では、
インストールが必要でした。(2019.11.16)

sudo apt install openjdk-8-jdk

詳細は、以下に記載されています。
https://kdk.ddns.net/kdk/index.php/10-noragateway/11-installtutoriallinux

最新版のNoraGatewayのプログラムをダウンロードして解凍します。
WindowsマシンでSCP/SFTP/FTPS対応のFTPクライアントソフトのwinscpを利用してラズパイに転送すると
便利です。
https://forest.watch.impress.co.jp/library/software/winscp/

sudo unzip ./NoraGateway_v0.1.4a-PR16.zip -d /opt

sudo chown -R pi:pi /opt/NoraGateway/
cd /opt/NoraGateway/
cp ./config/NoraGateway.xml.default ./config/NoraGateway.xml

ここのNoraGateway.xmlは、JR1OFP 鈴木OMのホームページにあるNoraGatewayの
イメージファイルをSDカードに焼いてWindows側から見えるNoraconfig.exeを使って
設定したときにできるNoraGateWay.txtの内容を別途コピーしておいて、すべて上書きすると
簡単です。ただ、JR1OFP局公開のイメージをそのまま使うとなんちゃってモニターは
ここに記載の方法では動きません。間違わないように地道に書き換えた方が良いかもしれません。

いずれの方法でも、下記箇所を自分用に設定
$ sudo nano ./config/NoraGateway.xml

@ ゲートウェイコルサイン設定
<Gateway
callsign="JG6YJE G"   45行目
useProxyGateway="true" ( プロキシ 停止 時は、 false ) 47行目
proxyGatewayAddress="proxy.xreflector-jp.org"    48行目
<Reflector enable="true" type="DExtra"> (XRF での接続禁止時は、 false) 88行目

DPlus 接続機能 (v0.1.2a 以降 )
<LoginCallsign>JG6YJE</ LoginCallsign>     110行目

A レピータコルサイン設定
<Repeater enable="true" type="Internal" callsign="JG6YJE B"    216行目

MMDVM 互換デバイス接続機能 (v0.1.1a 以降 )
<Repeater enable="true"type="Internal"callsign="JG6YJE B"     259行目
<Modem type="MMDVM">
<ConfigurationProperties>
<PortName >ttyAMA0</PortName>   265行目
<RxFr equency>438720000</RxFrequency>          (周波数は、自分が使う周波数に設定)  272行目
<RxFrequencyOffset>500</RxFrequencyOffset>      (DVMEGA 0 JUMBO 500 )      273行目
<TxFrequ ency>438720000</TxFrequency>   (周波数は、自分が使う周波数に設定) 274行目
<TxFrequencyOffset>500</TxFrequencyOffset>      (DVMEGA 0 JUMBO 500 )      275行目

B 複数台接続 C PcRepeaterController 関連 D 自動応答関連
E NoraVR(v0.1.5alpha 以降 )
変更 なし 。

chmod 744 ./start.sh
chmod 744 ./update.sh
chmod 744 ./NoraGateway.bootstrap.sh

https://kdk.ddns.net/norahosts/hosts.txt

上記よりhosts.txtをWindowsマシンからダウンロードして、configのhosts.txt上書き
hosts.txt の最新版を WinSCP で /home/piにコピーする

sudo cp /home/pi/hosts.txt /opt/NoraGateway/config/hosts.txt

noraユーザーを設定します。

sudo adduser nora

ユーザ `nora' を追加しています...
新しいグループ `nora' (1001) を追加しています...
新しいユーザ `nora' (1001) をグループ `nora' として追加しています...
ホームディレクトリ `/home/nora' を作成しています...
`/etc/skel' からファイルをコピーしています...
新しい UNIX パスワードを入力してください:
新しい UNIX パスワードを再入力してください:
passwd: パスワードは正しく更新されました
nora のユーザ情報を変更中
新しい値を入力してください。標準設定値を使うならリターンを押してください
       フルネーム []:
       部屋番号 []:
       職場電話番号 []:
       自宅電話番号 []:
       その他 []:
以上で正しいですか? [Y/n] y

sudo gpasswd -a nora sudo
sudo adduser nora dialout
sudo chown -R nora:nora /opt/NoraGateway/
sudo nano /etc/systemd/system/autologin@.service
[Service]の下付近にある、「ExecStart=-/sbin/agetty --autologin pi ...」の「pi」の部分を
「nora」に変更

一度、リブートしてユーザーnoraでログインしてください。
piのままで自動起動設定をしてもユーザーnoraでは、自動ログインしませんでした。

user noraでraspi-config
自動ログイン設定を行う
最初の画面からブートオプションを選んでB1を選択して下記画面となります。


以下のところは、なんちゃってモニターを設定してからの方が良いです。
とりあえず、動作確認だけしてください。
動作確認は、noraで自動ログインしているので、
cd /opt/NoraGateway/ ; ./start.sh
で動作を確認できます。動作が確認できたら、再起動してpiで再度ログインして
なんちゃってモニターを設定して、最後に、noraユーザで.profileに追加してください。

sudo nano /home/nora/.profile
このファイルの最後尾に
cd /opt/NoraGateway/ ; ./start.sh
を記載します。

リブートすればNoraGatewayが起動するはずです。

4.なんちゃってモニターを設定
 (user piで作業する前提で記載しています。)

楽ちんなんちゃってモニターの最新版です。
20190914日版です。
以前の物に比べるとほんと楽ちんになりました。
以下は、楽ちんなんちゃってモニターの設定です。
詳細は、ご本家を確認してください。
インストールの詳細や起動オプションのコマンド解説などが記載されています。

以下の記事では、自動起動の設定が参考になると思います。だいぶ試行錯誤しました。(^^;

NoraNanMon_Ver190914.zipをダウンロード
あとは、WinSCP等を使ってRaspiに転送してください。

sudo unzip ./NoraNanMon_Ver190316.zip -d /opt/NoraGateway/
20190914版より解凍されるディレクトリが変更されました。
以前 opt/NoraGateway
20190914版 opt/NoraGateway/NoraNanMon/

sudo chmod 755 /opt/NoraGateway/NoraNanMon/NoraNanMon*

ライブラリーのインストール
sudo apt install fonts-ipafont

NoraGateway.xml内MMDVMの設定に対してのTransparent5項目の設定を追加する
  ※NextionディスプレイをUSB接続する場合には、5項目は不要です
sudo nano /opt/NoraGateway/config/NoraGateway.xml

<TransparentEnable>true</TransparentEnable>
<TransparentRemoteAddress>127.0.0.1</TransparentRemoteAddress>
<TransparentRemotePort>63201</TransparentRemotePort>
<TransparentLocalPort>63200</TransparentLocalPort>
<TransparentSendFrameType>1</TransparentSendFrameType>

StatusInformationFileOutputServiceを有効にし、outputPathを/tmp/に設定する
<StatusInformationFileOutputService enable="true" outputPath="/tmp/" />    497行目

cd /opt/NoraGateway

5.自動起動の設定
コマンドを自動で動かす方法はいろいろありますが、スプリクトファイルで行う事にしました。
mon.shファイルを作成
sudo nano mon.sh

#!/bin/bash
sudo /opt/NoraGateway/NoraNanMon/NoraNanMonOLED r0 cpu t2.0 s4

保存

sudo chmod 0755 /opt/NoraGateway/mon.sh
sudo chown -R nora:nora /opt/NoraGateway/
sudo nano /etc/systemd/system/mon.service

[Unit]
Description = mon daemon

[Service]
ExecStart = /opt/NoraGateway/mon.sh
Restart = always
Type = simple

[Install]
WantedBy = multi-user.target

Service セクションの ExecStart に実行したいコマンドを記述して保存

# 自動起動on

sudo systemctl enable mon

リブートしてモニター表示を確認します。


やはりモニターに文字が出ていると分かりやすいですね。

ただ、CPU負荷がかかるようでケロリが発生する事があります。
送信時にCPU負荷が95%以上くらいになるとだめですね。

Raspberry ZEROでなんちゃってモニターを使うのは、私の環境では
実用的には厳しい感じがします。Pi3とかに差して使うといいでしょうね。
OSもCUI専用のLiteを使って試してみましたがあまり変わりませんでした。
違うOSのMATEなどでもチャレンジしてみたいと思います。
と言って、何も考えずにPi3でMATEを設定してZERO WHに差し替えたらカーネルパニック。

(^^; MATEは、ZERO WHではもともと動かないのでした。
時間の無駄になりましたが、MATEでの自動ログイン方法とかはRaspbianとだいぶ違うので勉強になりました。

探すと、Diet piという軽量OSがありました。今度、これを使ってやってみます。
Diet Piは、組み込み用に近いOSなのでだいぶ苦労しました。(2019.03.21)
苦労して動くようになりましたが、やはり、ケロリはなくなりませんでした。
OS上でいらないプロセスが動いているかと思っていましたが、NoraGatewayが動作するJAVA自体が重たいようです。

pi-starでは、付属のOLEDモニターを利用してもケロリなど発生しないので、jumbospot+Raspberry pi ZEROでも
NoraGateway+なんちゃってモニタープログラムが軽くなるのを根本的改善策としては期待したいと思います。(^^; (2019.03.16)

基本的には、NoraGateway+なんちゃってモニターは、Raspberry pi ZeroではCPU負荷が高くなって
厳しいことが分かりました。
しかし、何も表示させないままで使うのは面白くないのでIPアドレスと自分のコールサインを表示するように
しました。設定にあたっては、JG3EBB局にご教授をいただきました。心から感謝申し上げます。
(2019.03.23)