BPQ32 Example Soundmodem port

Example for a UZ7HO soundmodem port

PORT
 ID=UZ7HO
 DRIVER=UZ7HO
 
 CHANNEL=A
 QUALITY=0
 MAXFRAME=4
 FULLDUP=0
 FRACK=8000
 RESPTIME=3000
 RETRIES=10
 PACLEN=128
 TXDELAY=200
 SLOTTIME=100
 PERSIST=64
 KISSOPTIONS=ACKMODE
 
CONFIG
 ADDR 127.0.0.1 8100 PATH C:\RMS Express\soundmodem.exe
 MAXSESSIONS=4
ENDPORT

 

BPQ32 Example ARDOP port

Example for a Ardop port

PORT
 PORTNUM=1
 ID=ARDOP
 DRIVER=ARDOP
 INTERLOCK=4
CONFIG
 ADDR 127.0.0.1 8400 PTT CI-V PATH C:\RMS Express\ARDOP_Win.exe
 CAPTURE IC-7300 (USB Audio Codec)
 PLAYBACK IC-7300 (USB Audio Codec)
 LISTEN TRUE
 CWID True
 CMDTRACE True
 DEBUGLOG True
 DRIVELEVEL 100
 GRIDSQUARE JO11VN
 MAXCONREQ 12
 PROTOCOLMODE ARQ
 TUNERANGE 200
 ARQBW 2000MAX
 ARQTIMEOUT 60
 MONITOR TRUE
 Squelch 1
 SENDID 5
 FECREPEATS 3
ENDPORT

 

BPQ32 Example Winmor port

Example for a Winmor port

PORT
 PORTNUM=5
 ID=WINMOR
 DRIVER=WINMOR
 INTERLOCK=4
CONFIG
 ADDR 127.0.0.1 8500 PTT CI-V PATH C:\RMS Express\WINMOR TNC.exe
 CAPTURE IC-7300 (USB Audio Codec)
 PLAYBACK IC-7300 (USB Audio Codec)
 LISTEN TRUE
 CWID True
 DEBUGLOG True
 BW 1600
 DRIVELEVEL 100
 MODE Auto
 ROBUST False
 SHOW False
 BUSYLOCK False
ENDPORT

 

BPQ32 Example AXIP port

Example for a AXIP port

PORT
 PORTNUM=1
 ID=AX/IP/UDP 
 DRIVER=BPQAXIP        ; Uses BPQAXIP.DLL
 QUALITY=200           ; Quality factor applied to node broadcasts heard on
                       ; this port, unless overridden by a locked route
                       ; entry. Setting to 0 stops node broadcasts
 MINQUAL=0             ; Entries in the nodes table with qualities greater or
                       ; equal to MINQUAL will be sent on this port. A value
                       ; of 0 sends everything.
 MAXFRAME=7            ; Max outstanding frames (1 thru 7)
 FRACK=7000            ; Level 2 timout in milliseconds
 RESPTIME=1000         ; Level 2 delayed ack timer in milliseconds
 RETRIES=10            ; Level 2 maximum retry value
 UNPROTO=ID            ; BTEXT broadcast addrs format: DEST[,digi1[,digi2]]
 BCALL=NOCALL          ; BTEXT call. unstated defaults to APPL1CALL
CONFIG
 UDP 10093             ;Listens for UDP packets on this UDP port number
 UDP 10092
 MHEARD ON
; AUTOADDMAP
 BROADCAST NODES
 BROADCAST ID
 
 MAP CALL IP-ADDRESS UDP 10093 B
   
ENDPORT

 

BPQ32 Example Telnet port

Example for a Telnet port

PORT
 PORTNUM=2
 ID=Telnet
 DRIVER=Telnet
 QUALITY=0
CONFIG
 CMS=1
 CMSCALL=NOCALL
 CMSPASS=****************
 RELAYAPPL=BBS
 LOGGING=1
 DisconnectOnClose=1
 TCPPORT=8010
 FBBPORT=8011
 HTTPPORT=8012
 LOGINPROMPT=user:
 PASSWORDPROMPT=password:
 MAXSESSIONS=15
 CTEXT=Welcome to NOCALL's Telnet Server\nEnter ? for list of commands\n\n
 
 USER=user,passwd,CALL,"",sysop
ENDPORT

 

BPQ32 Example Direwolf port

Example for a Direwolf port

PORT
 PORTNUM=1                ; Optional but sets port number if stated
 ID=BPQ 144.850MHZ        ; Displayed by PORTS command
 TYPE=ASYNC               ; Port is RS232 Com
 PROTOCOL=KISS            ; TNC is used in KISS,or BPQKISS mode
 IPADDR=127.0.0.1
 TCPPORT=8001	
 CHANNEL=A                ; A single channel TNC, A or B for multichannel
 NOKEEPALIVES=0
 PERSIST=160              ; PERSIST=256/(# of transmitters-1)
 SLOTTIME=180             ; CMSA interval timer in milliseconds
 TXDELAY=270              ; Transmit keyup delay in milliseconds
 TXTAIL=23                ; TX key down, in milliseconds, at packet end
 QUALITY=203              ; Quality factor applied to node broadcasts
 MINQUAL=201              ; Entries in the nodes table with qualities
                          ; greater or equal to MINQUAL will be sent on
                          ; this port. A value of 0 sends everything.
 MAXFRAME=6               ; Max outstanding frames (1 thru 7)
 FRACK=5000               ; Level 2 timout in milliseconds
 RESPTIME=1000            ; Level 2 delayed ack timer in milliseconds
 RETRIES=100              ; Level 2 maximum retry value
 PACLEN=236               ; Default max packet length for this port
 UNPROTO=NOCALL           ; BTEXT broadcast addrs format:
                          ; DEST[,digi1[,digi2]]
 BCALL=NOCALL             ; BTEXT call. unstated defaults to APPL1CALL
 L3ONLY=0                 ; 1=No user downlink connects on this port
 DIGIFLAG=1               ; Digipeat: 0=OFF, 1=ALL, 255=UI Only
 DIGIPORT=0               ; Port on which to send digi'd frames
 USERS=0                  ; Maximum number of L2 sessions, 0 = no limit
ENDPORT

 

BPQ32 Example Kiss Port

Example for a Kiss port

PORT
 PORTNUM=1                ; Optional but sets port number if stated
 ID=BPQ 144.850MHZ        ; Displayed by PORTS command
 TYPE=ASYNC               ; Port is RS232 Com
 PROTOCOL=KISS            ; TNC is used in KISS,or BPQKISS mode
 COMPORT=/dev/ttyUSB0     ; Comport
 SPEED=9600               ; RS232 COM PORT SPEED
 CHANNEL=A                ; A single channel TNC, A or B for multichannel
 NOKEEPALIVES=0
 PERSIST=160              ; PERSIST=256/(# of transmitters-1)
 SLOTTIME=180             ; CMSA interval timer in milliseconds
 TXDELAY=270              ; Transmit keyup delay in milliseconds
 TXTAIL=23                ; TX key down, in milliseconds, at packet end
 QUALITY=203              ; Quality factor applied to node broadcasts
 MINQUAL=201              ; Entries in the nodes table with qualities
                          ; greater or equal to MINQUAL will be sent on
                          ; this port. A value of 0 sends everything.
 MAXFRAME=6               ; Max outstanding frames (1 thru 7)
 FRACK=5000               ; Level 2 timout in milliseconds
 RESPTIME=1000            ; Level 2 delayed ack timer in milliseconds
 RETRIES=100              ; Level 2 maximum retry value
 PACLEN=236               ; Default max packet length for this port
 UNPROTO=NOCALL           ; BTEXT broadcast addrs format:
                          ; DEST[,digi1[,digi2]]
 BCALL=NOCALL             ; BTEXT call. unstated defaults to APPL1CALL
 L3ONLY=0                 ; 1=No user downlink connects on this port
 DIGIFLAG=1               ; Digipeat: 0=OFF, 1=ALL, 255=UI Only
 DIGIPORT=0               ; Port on which to send digi'd frames
 USERS=0                  ; Maximum number of L2 sessions, 0 = no limit
ENDPORT

 

Watchdog

I use watchdog to monitor my RPI. Do services go offline or the RPI is not responding, watchdog kicks in and restart the system. Now I also want watchdog to watch my Linbpq. This is possible with watchdog, watchdog looks at a PID file. As far as I know, no PID file is created when starting Linbpq.

Now there is a possibility that when starting Linbpq with systemd a command can be given so that a PID file is created.

This is my linbpq.service file from systemd

pd9q@packet:~ $ sudo cat /etc/systemd/system/linbpq.service
[Unit]
Description=Linbpq Daemon
After=network.target
After=direwolf.target
StartLimitInterval=0

[Service]
Type=simple
Restart=always
RestartSec=5
ExecStartPost=/bin/sh -c "echo $MAINPID > /home/pd9q/linbpq/run/linbpq.pid"
ExecStart=/bin/bash /home/pd9q/linbpq/linbpq.start
WorkingDirectory=/home/pd9q/linbpq

[Install]
WantedBy=multi-user.target
Alias=linbpq.service

This command creates a linbpq.pid file, now it is possible that watchdog monitors linbpq.

ExecStartPost=/bin/sh -c "echo $MAINPID > /home/pd9q/linbpq/run/linbpq.pid"
pd9q@packet:~ $ sudo ls -l /home/pd9q/linbpq/run
-rw-r--r-- 1 root root 4 Oct 14 18:36 linbpq.pid
pd9q@packet:~ $

At the end of my watchdog configuration file (/etc/watchdog.conf) I have added the following line.

# Check if Linbpq is running
pidfile         = /home/pd9q/linbpq/run/linbpq.pid

Take a look at what happens when you stop Linbpq.

sudo systemctl stop linbpq.service

Yes the system is ReBoOtInG (I hoop)