もう10年以上aprsのTCP-IPGATE WAYを立ち上げていますが、最初はxastir 次にYAACに変更して現在に至ってます。
raspberry-piも1~4に変わりました。今回zero2wに変更するにあたり、下記の件を変更しました。
x-windowsはzero2はメモリーが512Mしかなくかなり動作がきびしいです。
さらにYAACはjavaベースなのでさらに厳しいです。地図を表示をするのに5分ぐらいかかってしまいます。もともとrapberry-piヘッドレス運用で、メンテナンスはVNCで行っています。あまり地図をみる必要もないので、GUIでないaprsをさがしたところ、aprxというのを見つけました。
結構昔に開発されているみたいで、bookwormでapt インストールでちゃんと入ります。
sudo apt install aprxで簡単に最終版の2.9.1がインストールされます。
起動は sudo /etc/init.d/aprx startで起動します。
自動起動は
で自動起動します。
設定は /etc/aprx.confで行いますが、TH-D72用の9600 KISS ON スクリプトもちゃんと設定できます。
raspberry-piも1~4に変わりました。今回zero2wに変更するにあたり、下記の件を変更しました。
x-windowsはzero2はメモリーが512Mしかなくかなり動作がきびしいです。
さらにYAACはjavaベースなのでさらに厳しいです。地図を表示をするのに5分ぐらいかかってしまいます。もともとrapberry-piヘッドレス運用で、メンテナンスはVNCで行っています。あまり地図をみる必要もないので、GUIでないaprsをさがしたところ、aprxというのを見つけました。
結構昔に開発されているみたいで、bookwormでapt インストールでちゃんと入ります。
sudo apt install aprxで簡単に最終版の2.9.1がインストールされます。
起動は sudo /etc/init.d/aprx startで起動します。
自動起動は
sudo systemctl enable aprx.service
sudo systemctl start aprx.service
で自動起動します。
設定は /etc/aprx.confで行いますが、TH-D72用の9600 KISS ON スクリプトもちゃんと設定できます。
# /etc/aprx.conf
mycall xxxxxx-10
myloc lat xxxx.xxN lon xxxx.xxE
<aprsis>
passcode xxxxxx
server ehime.aprs2.net 14579
</aprsis>
<logging>
pidfile /var/run/aprx.pid
#rflog /var/log/aprx/aprx-rf.log
aprxlog /var/log/aprx/aprx.log
#dprslog /var/log/aprx/dprs.log
</logging>
<interface>
serial-device /dev/ttyUSB0 9600 8n1 KISS
initstring "HBAUD 9600\x0dKISS ON\x0dRESTART\x0d"
alias RELAY,WIDE,TRACE
callsign $mycall # callsign defaults to $mycall
tx-ok true # transmitter enable defaults to false
telem-to-is false # set to 'false' to disable
</interface>
<interface>
serial-device /dev/pts2 1200 8n1 KISS
#initstring "HBAUD 9600\x0dKISS ON\x0dRESTART\x0d"
#alias RELAY,WIDE,TRACE
callsign N0CALL-1
tx-ok false # transmitter enable defaults to false
telem-to-is false # set to 'false' to disable
</interface>
<beacon>
beaconmode both
cycle-size 30m
beacon symbol "I&" $myloc comment "Tx-iGate aprx 96k Takamatsu Kagawa"
</beacon>
<beacon>
beaconmode aprsis
cycle-size 15m
beacon file /tmp/data/wxnow.txt
</beacon>
<digipeater>
transmitter $mycall
<source>
source $mycall
</source>
</digipeater>
beaconファイルは前に書いたなんちゃって BME280のWXステーションにしてます。
WXNOW.TXTは YAACとちょっと形式が変わり下記の形式です。
bmeaprs.pyは下記です。これをcrontabで15分毎に実行します。
_01090850c...s...g...t039r...p...P...h51b10190yPIC device
これがaprs serverにuploadされます。
構成は以前に書いたYAACの記事です。
なお144.96の受信専用の1200ですが、direwolfのUSB ドングルの音声を入れるためのscreenで起動するようにしています。/dev/pts2でattachしています。
direwollに付属しているdw-start.shで起動します。
9600はD72の/dev/ttyUSB0です。
正常に起動すれば、direwolfのscreen-rで144.94の1200がモニターできます。
beaconファイルは前に書いたなんちゃって BME280のWXステーションにしてます。
WXNOW.TXTは YAACとちょっと形式が変わり下記の形式です。
bmeaprs.pyは下記です。これをcrontabで15分毎に実行します。
import bme280_custom
import datetime
import os
dir_path = '/home/master'
now = datetime.datetime.now()
now1 = now.strftime('_%m%d%H%M')
wxnow = bme280_custom.readData()
print (now1)
wxnow2 = (wxnow.replace('.','').replace(',',''))
ondo =(wxnow[8:-9])
celsius = int(ondo)
ondo1 = (celsius * 1.8) + 32
ondo2 = (str(ondo1))
ondo3 = (ondo2[:2])
press = (wxnow[0:6])
press1 = (press.replace('.',""))
hum = str(wxnow2[-4:-2])
hum = str(wxnow2[-4:-2])
wxnow1 = ("c..."+"s..." + "g..."+"t0"+(ondo3)+"r..."+"p..."+"P..." + "h"+(hum) + "b"+(press1) + "yPIC device")
print (wxnow1)
if not os.path.exists('/tmp/data'):
os.makedirs('/tmp/data')
f = open('/tmp/data/wxnow.txt','w')
f.write (str(now1))
f.write (str(wxnow1+'\n'))
f.close()
dirname = '/tmp/data/wxnow.txt'
os.chmod (dirname,0o755):
で出力結果は下記です。_01090850c...s...g...t039r...p...P...h51b10190yPIC device
これがaprs serverにuploadされます。
構成は以前に書いたYAACの記事です。
なお144.96の受信専用の1200ですが、direwolfのUSB ドングルの音声を入れるためのscreenで起動するようにしています。/dev/pts2でattachしています。
direwollに付属しているdw-start.shで起動します。
9600はD72の/dev/ttyUSB0です。
正常に起動すれば、direwolfのscreen-rで144.94の1200がモニターできます。
