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)

Lcd Display on a PI

After a busy period, I finally have a bit  “Me Time” again.

David KI6ZHD (drache), has written a fantastic article about setting up and configuring a RaspBerry PI. This article also contains a piece about setting up an LCD display at the GPIO port of the Raspberry PI.

This can be read here.
http://www.trinityos.com/HAM/CentosDigitalModes/RPi/rpi2-setup.html#60a.appendix-i2c-lcd

I have ordered a 20×4 LCD display and an I2C LCD interface on the internet.The price was $ 14.96 including shipping costs. Nice.

Take the time to read this good article.

http://www.trinityos.com/HAM/CentosDigitalModes/RPi/rpi2-setup.html

Xfbb interface with Linbpq

In bpq32.cfg add

TNCPORT
COMPORT=/home/pi/fbbded
TYPE=DED
STREAMS=1
APPLMASK=4
ENDPORT

This creates a DED Host mode TNC on device /home/pi/fbbded, accessible from the LinBPQ Node as Application 3. Change APPLMASK and APPLICATION line if you already use APPL 3

APPLICATION 3,FBB,,PI1LAP,LINBBS,255

This allows uses to connect to FBB. You can add the usual Call, Alias and Quality if you want to be able to access FBB directly instead of via the Node.

Change APPLMASK and APPLICATION line if you already use APPL 3

In /usr/local/etc/ax25/fbb/port.sys#

# FBB7.0.8-beta8
#
#Ports TNCs
1 1
#
#Com Interface Adress (Hex) Baud
1 9 /home/pi/fbbded 9600
#
#TNC NbCh Com MultCh Pacln Maxfr NbFwd MxBloc M/P-Fwd Mode Freq 0 0 0 0 0 0 0 0 00/01 —- File-fwd.
1 6 1 1 250 2 1 10 00/15 DUWYL 145
#
# End of file.
#

This tells fbb to use /home/pi/fbbded as a DED Mode TNC.

Kantronics Kam xl stops transmitting

I came across some interesting in the BPQ32 news group about a Kantronics TNC`s.
On 10 May 2018 I also posted about this on my website.

https://packet-radio.net/kantronics-kpc3-kiss-considered-harmful/

Ray N3HYM runs into the following problems.

  1. Replace an mfj tnc with a new kam xl dual port
  2. Dual port kam xl seems to stop transmitting after 2 days or less of use. Have to cycle the power button to get it back to transmitting . I do see bpq32 sending to the kam when the sta  light flashes.
  3. All cables have troids on them , power, serial, radio interface cable.
  4. Kam xl has been set to 19200 abaud rate to computer.
  5. Turned off all other transmitting equipment to try an eliminate rf getting into kam xl.
  6. Kam is exactly where mfj tnc was on the bench. Mfj tnc did not have any issues.
  7. Running Windows 7 with bpq32 and tnc’s in kiss mode.


Also Don N7HPX is running into this issue with the KPC3+

The issue you describe is nearly identical to the one I had for a while when using a Kantronics KPC3+ in KISS mode.
The fault problem I observed was consistent and repeatable.
While the TNC was in KISS mode and attached to a real serial port it would hang-up and not transmit.
This would seemly happen randomly, however, the observed external factor that most often caused it was receiving a faint packet burst that was just below the decode threshold.

You could hear the packet tones and the low signal level static. After the freeze-up and from the BPQ32 Terminal console, I could send a specific connect command to the KPC3+ and note that the STA light would flicker but it would never actually transmit as it normally would.
At that point I knew I was stuck, yet again, and needed to power cycle the TNC.

I would assume that the KAM XL and the KPC3+ probably have the same KISS software routines.

Matt Ackerman said…

I was working with Kantronics support on this issue and I seem to have solved it by shorting the RTS and CTS pins together within my serial cable. (PINS 4/5 on DB25 and PINS 7/8 on DB9)
I simply ran a jumper between the two. This appears to be an issue with how the APRS software and/or the AX.25 stack controls the RTS pin and shorting the RTS and CTS together prevents the software from holding the RTS pin low.
If the RTS pin is at low voltage the KPC3+ will start buffering and does not get caught back up.
I have been running mine for several weeks without showing this behavior again.
Before I made the change it would happen after about 12 hours.

Jean-Jacques ON7EQ has try the mod.

After applying the mod with RTS/CTS, both on TNC and PC side, now running systems one week completely in-sync !

So sure this is a mod to be considered!

By default, the KPC3+ is configured for software flow control. In particular, when operating as digipeater, it is very likely that in the datastream sent to the TNC, soon or later there are frames containing ‘flow control characters’ sent – what will start the buffering!

It is therefore essential to completely disable the software flow control, this can be done by giving following commands:

  • XFLOW OFF
  • START $00
  • STOP $00
  • TRF OFF
  • TXF OFF
  • CONO OFF
  • FLOW OFF
  • XON $00
  • XOFF $00



Winlink Gateway HB9AK

As Winlink Gateway i`m using HB9AK from Switzerland on dail 7.050Mhz. HB9AUR (Martin) is the Operator (SysOp) of HB9AK.
I have test the system of Martin with Winmor, Ardop, Robust 300/600. I have a old AEA DSP2232 modem that can make Pactor 1, but i have some issues to get things going.

HB9AK is a big boy with many possibilities. Here a small list.

Technical details of HB9AK (JN36PV, 650 m asl):

QRGs (dial frequency): 3’613.0, 7’050.0, 10’144.4(NB), 14’108.9, 18’114.4, 21’113.5 (NB: narrow band only). Use USB for all QRGs. Center frequency is 1.5 kHz higher than dial frequency.

TRX1 (40m): KENWOOD TS-590S, dipole(N/S); Modes WINMOR, PACTOR(1-4), Robust Packet Radio, ARDOP, VARA

TRX2 (30m): KENWOOD TS-590SG, dipole(N/S); Modes WINMOR(500), PACTOR(1-2), ARDOP

TRX3 (20m): KENWOOD TS-590SG, dipole(N/S) or LogPer; Modes WINMOR, PACTOR(1-4), Robust Packet Radio, ARDOP, VARA

TRX4 (80m/17m/15m): KENWOOD TS-590S, 80m dipole, 17/15m fan dipole; Modes WINMOR, PACTOR(1-4), Robust Packet Radio, ARDOP, VARA

Technical details of HB9AK-1 (JN47LI, 1130 m asl):

TRX5 (10m): ICOM IC-706, vertical dipole; Modes WINMOR, PACTOR(1-4), Robust Packet, ARDOP, VARA

TRX6 (2m): MOTOROLA GM340, X-50; Mode Packet Radio AFSK 1200 Bd, BPSK 1200 Bd, BPSK 2400 Bd, QPSK 2400 bps, QPSK 3600 bps

Technical details of HB9AK-14 (JN46FS, 3020 m asl):

TRX7 (10m): KENWOOD TS-480SAT, Inv-V; Modes PACTOR(1-4), Robust Packet, WINMOR, ARDOP, VARA

I have contacted Martin, and we have been talking for a while about anything and everything. I asked him about his configuration, he found it no problem to share it.

/* This begins a multi-line comment

CONFIGURATION FILE FOR BPQ32: G8BPQ SWITCH SOFTWARE

Includes 1 AX/IP/UDP Port, 1 Telnet Port, 1 PACTOR, 1 WINMOR, 1 ARDOP, 1 VARA, 1 RPR

*/ This ends a multi-line comment
SIMPLE			; Sets lots of rarely changed setting to default values
NODE=0                  ; only RMS application

PASSWORD=ABCDEFG
LOCATOR=JN47LI

NODECALL=HB9AK-13	; Node callsign
NODEALIAS=WLHLI	; Node alias (6 characters max)

IDMSG:			; UI broadcast text from NODECALL to fixed dest ID
HB9AK BPQ WINLINK Gateway
***			; Denotes end of IDMSG text

BTEXT:			; UI broadcast text from BCALL to destination UNPROTO=
HB9AK BPQ WINLINK Gateway
***			; Denotes end of BTEXT text

INFOMSG:		; The INFO command text follows:
Welcome to the HB9AK BPQ WINLINK Gateway
Located at HOERNLI ZH, Switzerland
Operating 10m ports for PACTOR 1-4, Robust Packet, WINMOR, ARDOP, VARA

Thanks for visiting.

***			; Denotes end of INFOMSG text

CTEXT:			; The CTEXT text follows:
HB9AK WINLINK RMS HOERNLI
BERN:HB9AK-13 BBS RMS CONNECT BYE INFO NODES PORTS ROUTES USERS MHEARD
***			; Denotes end of CTEXT text

HFCTEXT= *** WINLINK HOERNLI (JN47LI, 1130 m asl) ***

FULL_CTEXT=0		; 0=send CTEXT to L2 connects to NODEALIAS only
			; 1=send CTEXT to all connectees


;----------------------------------------------------
; Network System Parameters:

NODESINTERVAL=45	; Nodes broadcast interval in minutes
IDINTERVAL=10		; 'IDMSG' UI broadcast interval in minutes, 0=OFF
BTINTERVAL=60		; The BTEXT broadcast interval in minutes, 0=OFF
MINQUAL=85		; Minimum quality to add to nodes table


;----------------------------------------------------
; Port Definitions:
; AX/IP/UDP Port

PORT
 PORTNUM=1		; Optional but sets port number if stated
 ID=AX/IP/UDP		; Displayed by PORTS command
 DRIVER=BPQAXIP                   ; Uses BPQAXIP driver
 QUALITY=90		; Quality factor applied to node broadcasts heard on
			; this port, unless overridden by a locked route
			; entry. Setting to 0 stops node broadcasts
 MINQUAL=85		; 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=3000		; Level 2 timout in milliseconds
 RESPTIME=1000		; Level 2 delayed ack timer in milliseconds
 RETRIES=5		; Level 2 maximum retry value

CONFIG
 MHEARD ON
 UDP 10093
 BROADCAST NODES

; MAP XX6JJJ-1 XX6JJJ.NO-IP.ORG UDP 10093 B

ENDPORT 


;----------------------------------------------------
; BPQTelnetServer Port

PORT
 PORTNUM=2
 ID=Telnet Server
 DRIVER=TELNET		; Uses TELNET driver
 PORTCALL=HB9AK

CONFIG
 RELAYHOST=127.0.0.1 8772
 CMS=1
 CMSCALL=HB9AK
 CMSPASS=******
 LOGGING=1
 DisconnectOnClose=1
 TCPPORT=17020
 FBBPORT=17021
 HTTPPORT=8080
 MAXSESSIONS=3
 FALLBACKTORELAY=1

 CTEXT=Welcome to HB9AK's Telnet Server\nEnter ? for list of commands\n\n

 USER=HB9AUR,****,HB9AUR,"",sysop

ENDPORT

;
; WINMOR Port
;
PORT
 ID=WINMOR_10m
 DRIVER=WINMOR
 INTERLOCK=4
 CONFIG
 ADDR 127.0.0.1 8500 PTT CAT PATH C:\RMS\RMS Trimode\WINMOR TNC.exe
 CWID True
 BW 1600
 DRIVELEVEL 78
 BUSYLOCK False
 WL2KREPORT PUBLIC, server.winlink.org, 8085, HB9AK-1, JN47LI, 00-23, 28312500, WINMOR1600, 50
ENDPORT

;------------------------------------------------
; ARDOP PORT
;
PORT
 ID=ARDOP_10m
 DRIVER=ARDOP
 INTERLOCK=4
 CONFIG
  ADDR 127.0.0.1 8515 PTT CAT PATH C:\RMS\ARDOP\ARDOP_Win.exe

  DEBUGLOG TRUE
  CMDTRACE True
  CWID TRUE
  DRIVELEVEL 78
  BUSYWAIT 20
  GRIDSQUARE JN47LI
  FECREPEATS 0
  WL2KREPORT PUBLIC, server.winlink.org, 8085, HB9AK-1, JN47LI, 00-23, 28312500, ARDOP2000, 100
ENDPORT

;-------------------------------------------------
; PACTOR PORT
;
PORT
 ID=PACTOR_10m
 DRIVER=SCSPACTOR
 INTERLOCK=4
 COMPORT=5
 SPEED=57600
 PORTCALL=HB9AK-1
 
 CONFIG                 ; Driver-Specific Configuration
  PAC BAUD R600
  PAC MCON 6
  PAC MON 6
  PAC TXL 380

  DRAGON SINGLE
  MAXLEVEL 4
 
  APPL RMS            ; Autoconnect to CMS
  RIGCONTROL
  COM11 57600 KENWOOD TS480 DATAPTT  
  6,28.31105,USB,P1234,W2,R2
  ;6,28.3145,USB,P1234,W2,R2
  ****

  PSKA 360               ; PSK TX Output level.
  FSKA 360               ; TX Level for FSK modes.
  WL2KREPORT PUBLIC, server.winlink.org, 8085, HB9AK-1, JN47LI, 00-23, 28312500, P1234, 100
  WL2KREPORT PUBLIC, server.winlink.org, 8085, HB9AK-1, JN47LI, 00-23, 28312500, ROBUST, 100
ENDPORT

;----------------------------------------------------
; VARA port 10 m
;
PORT
 ID=VARA_10m
 DRIVER=VARA
 INTERLOCK=4
 CONFIG
  ADDR 127.0.0.1 8300 PTT CAT PATH C:\RMS\VARA\VARA.exe
  ;GATEWAY HB9AK-1 JN47LI 28311.0 Hoernli (1130m asl)
  WL2KREPORT PUBLIC, server.winlink.org, 8085, HB9AK-1, JN47LI, 00-23, 28312500, VARA, 100
ENDPORT

;----------------------------------------------------
; VARA port 2m 9600
;
PORT
 ID=VARA_2m
 DRIVER=VARA
 INTERLOCK=3
 CONFIG
  ADDR 127.0.0.1 8320 PTT RTS PATH C:\VARA FM123\VARAFM.exe
  RIGCONTROL COM14 57600 PTTONLY
  ;GATEWAY HB9AK-1 JN47LI 144875.0 Hoernli (1130m asl)
  WL2KREPORT PUBLIC, server.winlink.org, 8085, HB9AK-1, JN47LI, 00-23, 144875000, VARA, 100
ENDPORT

;----------------------------------------------------
; VARA port 2m 1200
;
PORT
 ID=VARA_2m_1200
 DRIVER=VARA
 INTERLOCK=3
 CONFIG
  ADDR 127.0.0.1 8340 PTT RTS PATH C:\VARA FM123 12\VARAFM.exe
  RIGCONTROL COM14 57600 PTTONLY
  ;GATEWAY HB9AK-1 JN47LI 144875.0 Hoernli (1130m asl)
  WL2KREPORT PUBLIC, server.winlink.org, 8085, HB9AK-1, JN47LI, 00-23, 144875000, VARA, 100
ENDPORT

;----------------------------------------------------
; AX.25 port AFSK 1200
;
PORT
ID=UZ7HO A1
DRIVER=UZ7HO

;INTERLOCK=3
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
  ;GATEWAY HB9AK-1 JN47LI 28311.0 Hoernli (1130m asl)
  WL2KREPORT PUBLIC, server.winlink.org, 8085, HB9AK-1, JN47LI, 00-23, 28312500, VARA, 100
ENDPORT

;----------------------------------------------------
; AX.25 port QPSK 3600
;
PORT
ID=UZ7HO A2
DRIVER=UZ7HO

;INTERLOCK=3
CHANNEL=B
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
  ;GATEWAY HB9AK-1 JN47LI 28311.0 Hoernli (1130m asl)
  WL2KREPORT PUBLIC, server.winlink.org, 8085, HB9AK-1, JN47LI, 00-23, 28312500, VARA, 100
ENDPORT

;----------------------------------------------------
; AX.25 port BPSK 2400
;
PORT
ID=UZ7HO B1
DRIVER=UZ7HO

;INTERLOCK=3
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 8120 PATH C:\RMS\RMS Packet B\soundmodem.exe
  MAXSESSIONS=4
  ;GATEWAY HB9AK-1 JN47LI 28311.0 Hoernli (1130m asl)
  WL2KREPORT PUBLIC, server.winlink.org, 8085, HB9AK-1, JN47LI, 00-23, 28312500, VARA, 100
ENDPORT

;----------------------------------------------------
; AX.25 port QPSK 2400
;
PORT
ID=UZ7HO B2
DRIVER=UZ7HO

;INTERLOCK=3
CHANNEL=B
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 8120 PATH C:\RMS\RMS Packet B\soundmodem.exe
  MAXSESSIONS=4
  ;GATEWAY HB9AK-1 JN47LI 28311.0 Hoernli (1130m asl)
  WL2KREPORT PUBLIC, server.winlink.org, 8085, HB9AK-1, JN47LI, 00-23, 28312500, VARA, 100
ENDPORT

;----------------------------------------------------
; AX.25 port BPSK 1200
;
PORT
ID=UZ7HO C1
DRIVER=UZ7HO

;INTERLOCK=3
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 8140 PATH C:\RMS\RMS Packet C\soundmodem.exe
  MAXSESSIONS=4
  ;GATEWAY HB9AK-1 JN47LI 28311.0 Hoernli (1130m asl)
  WL2KREPORT PUBLIC, server.winlink.org, 8085, HB9AK-1, JN47LI, 00-23, 28312500, VARA, 100
ENDPORT

;----------------------------------------------------
; Applications

APPLICATION 1,RMS,C 2 CMS,HB9AK-1,WL2K,255
;APPLICATION 3,RMS,C 2 CMS,HB9AK,WL2K,255
;APPLICATION 2,*BYE,BYE,HB9AK

;APPLICATION 32,SYSOP

 Very nice system. 

ClusterHat….

New project.

https://clusterhat.com/

pi@controller:~ $ for I in 1 2 3 4; do echo -n "p$I:";ssh pi@p$I.local uptime;done
p1: 16:19:13 up  5:34,  0 users,  load average: 0.17, 0.32, 0.34
p2: 16:19:15 up  5:36,  0 users,  load average: 0.37, 0.32, 0.32
p3: 16:19:16 up  5:34,  0 users,  load average: 0.37, 0.32, 0.28
p4: 16:19:18 up  5:35,  0 users,  load average: 0.36, 0.35, 0.36
pi@controller:~ $