SvxLink14.08のインストール
7.ifconfigでIP Addressが5で設定したAddressになっていることを確認する。
8.別のPCから、TeraTermなどを使って、Raspberry PIにSSHでログインしてみる。
9.ログイン出来ることを確認したら、一旦シャットダウンして再起動する。以降の作業は別のPCからSSHでログインして行う方が楽かも。
なお、svxlinkに必要な機材は接続してください。特に、無線機用インターフェース。
raspberry pi モデルBは、全部つなぐためにはUSB HUBが必要となります。
USB HUBは、安定動作させるためにも電源供給型が良いと思います。これですと、raspberry piには、専用電源を接続しなくても良いです。
なお、最終形態は、USBポートー2つだけで運用できますのでHUBは不要となります。最終的には、下記2つをUSBポートに接続するだけ。
私が使ったUSBサウンドブラスターは定番の
sound-blaster-play
無線機との接続には、ワンチップデザインさんの
HAMSTIRを使用。
10.以下のコマンドでOSのupdateを行う。
sudo apt-get update
sudo apt-get upgrade
11.下記のパラメータを/boot/cmdline.txtに追加して、USB1.1モードにする。
(デフォルトではUSB2.0のモードで動いていますが、サウンブラスタは1.1で動作します。
このため音質対策として、USB1.1モードに変更します。これで音が濁る等の問題が解決するようです。)
dwc_otg.speed=1
12.以下のコマンドでsvxlink関連のファイルをダウンロードしてインストールする。
sudo apt-get install subversion libsigc++-2.0-dev g++ make libsigc++-1.2-dev libgsm1-dev libpopt-dev tcl8.5-dev libgcrypt-dev libspeex-dev libopus-dev libasound2-dev alsa-utils
qtelをインストール
sudo apt-get install libqt4-dev
sudo wget https://github.com/sm0svx/svxlink/releases/tag/14.08/svxlink-14.08.tar.gz
sudo tar xvf svxlink-14.08.tar.gz
*私の環境では、オリジナルのファイルがどうしてもraspberry pi上で解凍できませんでした。??
仕方なかったので一度Windowsマシンでダウンロード、解凍、圧縮してraspberry piマシンに送り込みました。
JA4FHVさんも同現象だったとのことです。ファイルサイズが違ったのではと言われています。
確かに、ホームページからダウンロードするとファイルサイズが小さいのです。一度、Windowsで解凍し再圧縮したファイルサイズと比べると格段の差があります。大きいサイズが再圧縮版です。サウンド関係のファイルは、ZIPで圧縮しました。
13.svxlinkのコンパイルオプションを変更するため、svxlink-14.08のディレクトリ内にある
makefile.cfgのファイルをviで修正する。
cd /svxlink-14.08/src
sudo vi makefile.cfg
RELEASE_CFLAGS = -g -O2 -mfloat-abi=softfp -mfpu=vfp -mcpu=native
-mfloat-abi=softfp -mfpu=vfp -mcpu=native この部分を追加する
14.以下のコマンドでsvxlinkをコンパイルとインストールを行う。(時間がかかります)
14.08からインストール方法が変わり、cmakeコマンドが必要になっています。
sudo apt-get install cmake
sudo adduser svxlink
この時、パスワード等を聞かれますのでパスワードは入力ください。あとは、リターン連打で大丈夫です。
makeは、時間がかかります。私の環境では、約2時間。svxlink13-12-1が30分くらいでしたから約4倍。(^^;
sudo mkdir build
cd build
sudo cmake ..
【注意】このコマンドでcmakeすると/usr/local/etc/svxlink/以下にファイルが配置されます。
cmake -DCMAKE_INSTALL_PREFIX=/usr -DSYSCONF_INSTALL_DIR=/etc -DLOCAL_STATE_DIR=/var ..
オプションを使うとそれまでの/etc/svxlink/以下に配置されます。お好みで。
sudo make
sudo make doc
sudo make install
sudo ldconfig
15.以下のコマンドでサウンドパッケージをダウンロードしてインストールする。
cd /home/pi
sudo wget https://github.com/sm0svx/svxlink-sounds-en_US-heather/releases/tag/14.08/svxlink-sounds-en_US-heather-16k-13.12.tar.bz2
cd /usr/local/share/svxlink/sounds
sudo tar xvf /home/pi/svxlink-sounds-en_US-heather-16k-13.12.tar.bz2
sudo ln -s en_US-heather-16k en_US
*私の環境では、オリジナルのファイルがどうしてもraspberry pi上で解凍できませんでした。??
仕方なかったので一度Windowsマシンでダウンロード、解凍、再度圧縮してraspberry piマシンに送り込みました。
16./usr/local/etc/svxlink/の中のsvxlink.confと/usr/local/etc/svxlink/svxlink.dの中のModuleEchoLink.confを修正する。
(1)svxlink.confの修正ポイント
@SimplexLogic
・MODULESをModuleEchoLinkのみとする
・CALLSIGNを修正する
・SHORT_IDENT_INTERVAL=30 30分に一回コールサインをアナウンス。何故か、エリアの数字は読み上げない。(; _ ;)
・LONG_IDENT_INTERVAL=60 60分に一回システム状況をアナウンス。
・ RGR_SOUND_DELAY=-1 (スタンバイピーを止める)
・REPORT_CTCSS=77.0 (お好みのトーン周波数を設定)
ARx1
・AUDIO_DEV=alsa:plughw:1
(デフォルトでは0の内蔵サウンドとなっているが、内蔵サウンドではキャプチャーが
出来ないため、1のUSB-SOUNDにすること)
・SQL_DET=SERIAL
(デフォルトではVOXになっている)
・CTCSS_FQ=77.0 (お好みのトーン周波数を設定 ただし、Rx Txとも同じ)
・SERIAL_PORT=/dev/ttyUSB0
(デフォルトでは/dev/ttyS0となっているが、Raspberry PIにはSerial Portがないので、
USB-Serialを使うため、このように変更すること)
・ SQL_DELAY=100 (スケルチ動作に少し時間差を持たせました)
BTx1
・AUDIO_DEV=alsa:plughw:1
(デフォルトでは0の内蔵サウンドとなっている。キャプチャーと合わせるために
1のUSB-SOUNDにすること)
・PTT_PORT=/dev/ttyUSB0
(デフォルトでは/dev/ttyS0となっているが、Raspberry PIにはSerial Portがないので、
USB-Serialを使うため、このように変更すること)
・ PTT_PIN=DTRRTS #をはずす
・PTT_TYPE=NONEを
PTT_TYPE=SerialPinへ変更
(2)ModuleEchoLink.confの修正ポイント
・TIMEOUT=60を、先頭に#を付けてコメントアウト
・SERVERS=asia.echolink.orgに変更
・CALLSIGN、PASSWORD、SYSOPNAME、LOCATIONを適宜変更*Echolinkに登録したときのパスワード。
・MAX_QSOSとMAX_CONNECTIONSをともに1に変更(マルチコネクト禁止)
・LINK_IDLE_TIMEOUTの先頭に#を付けてコメントアウト
・AUTOCON_ECHOLINK_ID=??????とする(??????は自動接続したいNODEのNODE No)
・AUTOCON_TIME=300(自動接続チェックのインターバルを秒で入力)
17./home/piの中に、svxというファイル名でシェルスクリプト(下記内容)を作成
#!/bin/sh
#Start/stop/restart svxlink server.
#Start svxlink server:
svxlink_start() {
echo "Starting svxlink server"
svxlink --logfile=log --daemon
}
#Stop svxlink server:
svxlink_stop() {
echo "Stopping svxlink server"
killall svxlink
}
#Restart svxlink server:
svxlink_restart() {
svxlink_stop
sleep 3
svxlink_start
}
case """ in
'start')
svxlink_start
;;
'stop')
svxlink_stop
;;
'restart')
svxlink_restart
;;
*)
echo "usage $0 start|stop|restart"
esac
#
svxに実行権を付ける。
$sudo chmod a+x svx
追加情報 2015.3.26 JA4FHVさんからの情報です。
svxlinkがバージョンアップされました。現在、15.11です。
バージョンアップすると、これまでのシェルスプリクトでは、
起動時にエラーが出るようです。
23行目のcase """ inを下記のように修正してみてください。
case "$1" in
18.コンソールから"svxlink"と入力して、svxlinkの動作確認を行う。
単体の動作確認で問題がなければ、17で作成したシェルスクリプトの動作確認を行う。
$sudo sh ./svx startでsvxlinkが起動し、logファイルにログが作成される
$sudo sh ./svx stopでsvxlinkを停止
$sudo sh ./svx restartでsvxlinkを再起動
19./home/piの中に、svxsというファイル名でシェルスクリプトを作成。内容は下記の通り
#!/bin/sh
cd /home/pi
svxlink --logfile=log --daemon
svxsに実行権をつける
$sudo chmod a+x svxs
20./etc/rc.localの中に、下記の行を追加する。(qtelを使う場合は設定しない)
#Starting svxlink-server
su - pi password -c 'sh /home/pi/svxs' passwordは4のAで設定したもの
これをexit0の上に追加する。
起動時にlogが開けないと言うエラーがでました。
/home/pi/logが
-rw-r--r-- 1 root root 52102 Jan 11 21:17 logとなっていました。
$sudo chgrp pi log
$sudo chown pi log
-rw-r--r-- 1 pi pi 52102 Jan 11 21:17 log
無事に自動起動もできました。
21.sudo shutdown -r nowでリブートして、svxlink-serverが起動時に自動起動することを確認。
ハード的な注意点
1.USB-SoundはRaspberry piのUSBポートに直結してください。USB-HUBを経由すると正常に動作しない可能性があります。
なお、B+はUSBが4ポートになり使いやすくなりました。(2015.01.11)