David KI6ZHD has written a create tutorial. Take a look and enjoy.
http://www.trinityos.com/HAM/CentosDigitalModes/RPi/rpi2-setup.html
Packet-radio A Way Of Life
David KI6ZHD has written a create tutorial. Take a look and enjoy.
http://www.trinityos.com/HAM/CentosDigitalModes/RPi/rpi2-setup.html
New project.
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:~ $
It can be easy to link an ax25 interface to Direwolf. This makes it possible to use RMSGateway, Uronode etc with Direwolf.
In this script Direwolf is started with the -p option. With the -p option a virtual tnc is created. /tmp/kisstnc.
With mkiss a kiss connection is made on the /tmp/kisstnc. With kissattach the PTY is connected to the ax25 interface.
Fist edit the file axports in /etc/ax25
pd9q@pd9q:/etc/ax25 $ cat axports # /etc/ax25/axports # name callsign speed paclen window description # ax0 PI1LAP-9 19200 255 7 RMSGateway pi1lap-10
Config the direwolf.conf file to set the right audio device and ptt port. Save file to /etc/ax25/direwolf.conf
ADEVICE plughw:1,0 ACHANNELS 1 CHANNEL 0 MODEM 300 2130:2230 D PTT GPIO 21 DWAIT 0 SLOTTIME 12 PERSIST 63 TXDELAY 40 TXTAIL 10 FIX_BITS 1 AX25 LOGDIR /var/log/direwolf
Run the script
#!/bin/bash PATH=/usr/local/sbin:/usr/local/bin:/bin:/usr/bin:/etc/ax25:/usr/local/ax25 echo "Starting direwolf" direwolf -t 0 -c /etc/ax25/direwolf.conf -p & #Check if Direwolf is running sleep 5 if [ -z "`ps ax | grep -v grep | grep direwolf`" ]; then echo -e "\nERROR: Direwolf did not start properly and is not running, please review direwolf.conf" exit 1 fi echo "Installing one KISS connection on PTY port /tmp/kisstnc" mkiss -s 19200 -x 1 /tmp/kisstnc > /tmp/unix98 #This creates a PTS interface like "/dev/pts/3" export PTS0=`more /tmp/unix98 | grep -w /dev | cut -b -11` echo "PTS0 device: $PTS0" kissattach $PTS0 ax0 > /tmp/ax25-config.tmp awk '/device/ { print $7 }' /tmp/ax25-config.tmp > /tmp/ax25-config1-tmp read Device < /tmp/ax25-config1-tmp
Let’s check if everything went well.
pd9q@pd9q:~ $ ps ax 1015 ? Ss 0:00 mkiss -s 19200 -x 1 /tmp/kisstnc 1025 ? Ss 0:00 kissattach /dev/pts/2 ax0
Try it out…
pd9q@pd9q:~ $ call ax0 pd9q-2 GW4PTS AX.25 Connect 2.0.0 Trying... *** Connected to pd9q-2 *** Cleared
Now it’s possible to setup RMSGateway or Uronode of whatever you want.
BPQ32
https://groups.yahoo.com/neo/groups/BPQ32/info
LinuxRMS RMSGateway
https://groups.yahoo.com/neo/groups/LinuxRMS/info
Direwolf Packet
https://groups.yahoo.com/neo/groups/direwolf_packet/info
Winmor
https://groups.yahoo.com/neo/groups/WINMOR/info
Ardop
https://groups.yahoo.com/neo/groups/ardop/info
Ardop
https://ardop.groups.io/g/main
Scs Tracker Modes
https://groups.io/g/SCS-Tracker-Modem
Digital Amateur Radio
https://groups.io/g/digital-amateur-radio
Digital Radio
https://digitalradio.groups.io/g/main
Vara Modem
https://groups.io/g/VARA-MODEM
RaspberryPi 4 Hamradio
https://groups.io/g/raspberrypi-4-hamradio
Network 105
https://groups.io/g/network105
T.A.R.P.N
https://groups.io/g/tarpn
Pactor and Packet Group
https://groups.io/g/pactor
Here is an ax25 script that I use to control the Dual port KPC-9612 with mkiss and kissattach.
# Dual port TNC KPC-9612 mkiss -s 9600 -x 2 /dev/ttyUSB1 > /tmp/unix98 export PTS0=`more /tmp/unix98 | grep -w /dev | cut -b -11` export PTS1=`more /tmp/unix98 | grep -w /dev | cut -b 12-` sleep 1 # Port 1k2 144.850Mhz echo "Starting ax0 " if grep ax0 /etc/ax25/axports ; then kissattach $PTS0 ax0 || return=$rc_failed ifconfig ax0 44.137.31.73 netmask 255.255.255.224 sleep 2 else echo "Error ax0 not found in the file axports" return="Failed" fi echo "$1 $return" # Port 9k6 430.950Mhz echo "Starting ax1 " if grep ax1 /etc/ax25/axports ; then kissattach $PTS1 ax1 || return=$rc_failed ifconfig ax1 44.137.31.73 netmask 255.255.255.224 sleep 2 else echo "Error ax1 not found in the file axports" return="Failed" fi echo "$1 $return"
========================================================================
Foward example to my Partner BBS PI8CDR.#DRE.NLD.EU
Forward to PI8CDR via telnet ip-address:3602
Sysop: Han – PI8CDR
A – forwarding all if any msg available to send
P – forwarding all with polling even if no msg availabe to send/rcv
. – no fwd operation
Hours 0000 – 2359
0 1 2
BBS 012345678901234567890123 Path
=========================================================================
PI8CDR APAPAPAPAPAPAPAPAPAPAPAP TELNET:ip-address:3602
=========================================================================
The first line of a forward section defines the partner mailbox name (callsign
without SSID), the forward timing (when do forward which mails) and the
connection path to the forward partner. After that, you can add as many lines as
you want to define the usermail and bulletin behaviour. All these additional
lines must have one space as first character in a line.
• “A” (All): All mails (usermail and bulletins) are forwarded.
• “U” (User): Only usermail are forwarded.
• “.”: Nothing is forwarded.
• “P” (Poll): All mails are forwarded (like “A”), and additionally at the
time defined in crontab.bcm (normally each 30 minutes) a forward connect
is being made to the forward partner, also if no mails are in the
forward queue to send. This makes sense, if the partner mailbox has
misconfigured the connect path and therefore can’t send its mails to
your BBS. It makes sense to do such a pool one time a day.
==========================================================================
-S -T
==========================================================================
-b<bytes> maximum size of forward mails (e.g. > 10k)
-d (delayed) forward only at set times of crontab.bcm
-e send E/M files with 4 lines in 1 frame (e.g. DB0SAO)
-f send empty line before start forward (e.g. TCPIP/xNOS)
-i BoxBin mails are forwarded regardless of the capabilities of the receiving system (not useful in most cases)
-k no forward of autobin bulletins
-l no forward of autobin user mails
-m no forward of 7plus bulletins
-n no forward of 7plus user mails
-o entries are sorted by size (smallest at first)
-p suppress prompt after login (e.g. needed for DB0SAO)
-r send ONLY boards from fwd.bcm to forward partner
-s SID is send immediately of connected BBS
-t tracing active (if “fwdtrace 2” is set)
-u connection is closed immediately, without this parameter, forward is waiting for some time if new mails can be forwarded
============================================================================
PI8CDR PI1CDR
============================================================================
Mailbox callsigns
============================================================================
;--- Regions from .NLD (not set #ZL is my own) --- #FRL #GLD #NH #ZH #DRE
;--- Coutries - Europe --- .BEL .BGR .BIH .CHE .DEU .DNK .ESP .EST .FIN .FRA .GBR .GIB .GRC .HRV .IRL .ITA .LTU .LUX .LVA .MKD .MLT .NLD .NOR .PRT .ROM .RUS .SVK .SVN .SWE .TUR .UKR .YUG
;--- Continents (only .EU) --- .EU
;--- bulletins --- NLD LOCAL ALL F SYSOP NL EU WW
;E/M Mails / exchange White-Page information $WP
;--- Banned buletins from S&F -------------------------------------- *METEO *WXSAT *SATDIG
Here a fwd.bcm example
;======================================================================== ; Foward example to my Partner BBS PI8CDR.#DRE.NLD.EU ; Forward to PI8CDR via telnet ip-address:3602 ; Sysop: Han - PI8CDR ; A - forwarding all if any msg available to send ; P - forwarding all with polling even if no msg availabe to send/rcv ; . - no fwd operation ; Hours 0000 - 2359 ; 0 1 2 ; BBS 012345678901234567890123 Path PI8CDR APAPAPAPAPAPAPAPAPAPAPAP TELNET:ip-address:3602 ;========================================================================= -S -T ;============================================================================ PI8CDR PI1CDR ;============================================================================ ; Mailbox callsigns ;============================================================================ ;--- Regions from .NLD (not set #ZL is my own) --- #FRL #GLD #NH #ZH #DRE ;--- Coutries - Europe --- .BEL .BGR .BIH .CHE .DEU .DNK .ESP .EST .FIN .FRA .GBR .GIB .GRC .HRV .IRL .ITA .LTU .LUX .LVA .MKD .MLT .NLD .NOR .PRT .ROM .RUS .SVK .SVN .SWE .TUR .UKR .YUG ;--- Continents (only .EU) --- .EU ;--- bulletins --- NLD LOCAL ALL F SYSOP NL EU WW ; ;E/M Mails / exchange White-Page information $WP ;--- Banned buletins from S&F -------------------------------------- *METEO *WXSAT *SATDIG ;====================================================================
In the beginning when I was configuring OpenBCM I already ran into an error message.
16.11.18 10:40:17z SYSTEM: #S cron: no valid H-boxaddress PI8LAP.#ZL.NLD.EURO
Now I was reading in the doc of OpenBCM and came across the following.
Following is an example of a hierarchical address: PI8LAP.#ZL.NLD.EU ^ Continent EU (stands for Europe) ^ Country (NLD means the Netherlands) ^ Possibly further definition of a region (#ZL means Zeeland) ^ Callsign of a mailbox The designator for continents is two or four letters long. In Europe you should only use "EU". • .AF, .AFRC: Africa • .AS, .ASIA: Asia • .AU, .AUST: Australia • .EU, .EURO: Europe • .NA, .NOAM: North America • .OC, .OCEA: Oceania • .SA, .SOAM: South America • .CEAM : Middle America • .MDLE : MiddleEast (e.g. Israel)
So the H-Boxaddress PI8LAP.#ZL.NLD.EURO is wrong. I have to use .EU
The designator of the different countries is specified by ISO 3166. The designator is three letters long. For Europe the following designators exists.
• .AUT Austria • .BEL Belgium • .BGR Bulgaria • .BIH Bosnia-Herzegowina • .CHE Swiss • .CZE Czechia • .DEU Germany • .DNK Denmark • .ESP Spain • .EST Estonia • .FIN Finland • .FRA France • .GBR Great Britain • .GIB Gibraltar • .GRC Greece • .HRV Croatia • .HUN Hungary • .IRL Irland • .ITA Italy • .LTU Lithuania • .LUX Luxemburg • .LVA Latvia • .MKD Mazedonia • .MLT Malta • .NLD Netherlands • .NOR Norway • .POL Polonia • .PRT Portugal • .ROM Romania • .RUS Russia • .SVK Slovakia • .SVN Slovenia • .SWE Sweden • .TUR Turkey • .UKR Ukraine • .YUG Yugoslavia
Short form (can be used for copy & paste to your fwd.bcm): .AUT .BEL .BGR .BIH .CHE .CZE .DEU .DNK .ESP .EST .FIN .FRA .GBR .GIB .GRC .HRV .HUN .IRL .ITA .LTU .LUX .LVA .MKD .MLT .NLD .NOR .POL .PRT .ROM .RUS .SVK .SVN .SWE .TUR .UKR .YUG
Sorry my USA friends, USA is a bit big. And I really do not know how the h-addresses are built up there. Maybe someone can tell me that.
UserMails.
In the whole forward file following definitions must always exist: • all continents must be defined, but without your own continent (e.g. all, but not .EU). • all countries of own continent must be defined, but without your own country (e.g. all european countries but not .NLD). • all regions in your own country must be defined, but without your own region (e.g. all regions but not .#ZL). • all mailboxes in the own region must be defined, but without the own mailbox (e.g. all mailboxes in region Zeeland, but not the own one).
Take your time to get your shit together (Just Kidding)
Bulletin Mail.
There exist different directors for bulletin mails (a director is that, what is used after the "@" in the SEND command). Most used are: • WW: worldwide • EU: spread only in europe • DL: only to the german speaking area (includes not only Germany!) • OE: only to austria • CZ: only to Czechia • THEBOX: Used for THEBOX mailbox systems • AMSAT: Satellit data • BAYCOM: all OpenBCM mailboxes (used for OpenBCM software distribution) • $WP: Used for White-Page/WPROT information (Mybbs etc.) Some mailboxes use also further directors (e.g. @ALL, @TOUS etc.). But in praxis this often means the same like @WW. So, why not using always @WW if everybody should use the mail? It's hard to understand why such a nonsens is made. When you use OpenBCM you can clear up with these masses of directors: simply add lines to your convat.bcm file like ALL WW ALLE WW TOUS WW TODOS WW ...and so on. When now a mail with a director like @ALL reaches your mailbox it will be forwarded like it has @WW. When forwarding such a mail, of course the original address is send. So you have to define only WW in your forward sections where you need it.
That was a lot of cutting and pasting. But I did that to get clear what is important.
FYI, In the top menu you can choose OpenBCM. This page contains all references to items about openBCM.
I have found a file to start OpenBCM. We will inplant this script and start using it.
We are going to create a user who does not have shell and no home directory. This makes it impossible to log in as this user. This gives a bit of security.
sudo useradd -r -s /bin/false bcm
The above command creates a user “bcm” as a system user.
Copy the directory of bcm to /usr/local
sudo cp -r bcm /usr/local/
Now we have to make the user “bcm” owner of the directory and files /usr/local/bcm
sudo chown -R bcm:bcm /usr/local/bcm
See if everything is in okay.
pd9q@pd9q:/usr/local/bcm $ ls -l total 1620 -rwxr-xr-x 1 bcm bcm 890996 Nov 15 15:16 bcm -rwxr-xr-x 1 bcm bcm 15673 Nov 16 06:57 bct.rpi -rw-r--r-- 1 bcm bcm 262144 Nov 15 16:12 bidh2.bcm -rw-r--r-- 1 bcm bcm 36 Nov 15 21:08 bids3.bcm -rw-r--r-- 1 bcm bcm 178 Nov 17 08:34 boardinf.bcm -rw-r--r-- 1 bcm bcm 48 Nov 17 06:51 bulletin.bak -rw-r--r-- 1 bcm bcm 182 Nov 17 08:34 bulletin.bcm -rw-r--r-- 1 bcm bcm 0 Nov 15 21:02 check.bcm -rw-r--r-- 1 bcm bcm 0 Nov 15 21:02 checknum.bcm -rw-r--r-- 1 bcm bcm 612 Nov 15 16:12 crontab.bcm drwxr-xr-x 6 bcm bcm 4096 Nov 15 16:12 fwd -rw-r--r-- 1 bcm bcm 66 Nov 15 16:12 fwd.bcm -rw-r--r-- 1 bcm bcm 2048 Nov 17 13:36 hadr4.bcm -rw-r--r-- 1 bcm bcm 131072 Nov 15 20:20 hadrhash.bcm drwxr-xr-x 2 bcm bcm 4096 Nov 17 10:34 http drwxr-xr-x 2 bcm bcm 4096 Nov 15 20:20 info -rw-r--r-- 1 bcm bcm 1519 Nov 17 13:36 init.bak -rw-r--r-- 1 bcm bcm 1517 Nov 17 13:42 init.bcm -rw-r--r-- 1 bcm bcm 382 Nov 15 16:12 init.l2 drwxr-xr-x 2 bcm bcm 4096 Nov 17 10:47 log drwxr-xr-x 2 bcm bcm 4096 Nov 16 10:04 msg -rw-r--r-- 1 bcm bcm 66 Nov 15 20:28 rhosts.bcm -rw-r--r-- 1 bcm bcm 403 Nov 15 16:12 speech.bcm drwxr-xr-x 2 bcm bcm 4096 Nov 17 10:37 srv drwxr-xr-x 2 bcm bcm 4096 Nov 15 16:12 temp drwxr-xr-x 2 bcm bcm 4096 Nov 17 10:47 trace drwxr-xr-x 2 bcm bcm 4096 Nov 15 20:20 user -rw-r--r-- 1 bcm bcm 262144 Nov 15 20:47 userh2.bcm -rw-r--r-- 1 bcm bcm 0 Nov 15 16:12 users4.bak -rw-r--r-- 1 bcm bcm 1920 Nov 17 12:22 users4.bcm pd9q@pd9q:/usr/local/bcm $
Now create the startfile.
sudo touch startbcm
Edit the startbcm file
sudo nano startbcm
Here is the start file.
#!/bin/sh # # Startup script for BayCom-Mailbox # sleep 1 BCMHOME=/usr/local/bcm export BCMHOME export TZ=GMT+1GMT cd $BCMHOME PATH=/bin:/usr/bin:/usr/local/bin:/usr/local/bcm:/usr/local/bcm/runutils export PATH # # remove comment if necessary! # source .bash_profile # # check if somebody wants to install a new version if [ -f bcm_new ] then mv -f bcm bcm_old mv -f bcm_new bcm chmod 777 bcm fi # # start bcm as user "bcm" # redirect tracer outputs to system console # if [ -f nobcm ] then echo "BCM execution stopped. Remove nobcm for continue." sleep 5 else su bcm -s $BCMHOME/bcm >/dev/tty3 fi # # wait some time to release network bindings before respawning # sleep 4
Save the file, become owner, and set execute rights
sudo chown bcm:bcm startbcm sudo chmod 755 startbcm
Now it`s time for Systemd.
Go to the directory /etc/systemd/system and “sudo nano bcm.service”
sudo nano bcm.service
Copy past
[Unit] Description=OpenBCM Daemon After=network.target StartLimitInterval=0 [Service] Type=simple Restart=always RestartSec=5 ExecStart=/bin/bash /usr/local/bcm/startbcm WorkingDirectory=/usr/local/bcm [Install] WantedBy=multi-user.target Alias=bcm.service
Save the file
sudo systemctl enable bcm.service
sudo systemctl daemon-reload
sudo systemctl start bcm.service
Let ‘s check if the service is running.
sudo systemctl status bcm.service
pd9q@pd9q:/etc/systemd/system $ sudo systemctl status bcm.service ● bcm.service - OpenBCM Daemon Loaded: loaded (/etc/systemd/system/bcm.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2018-11-18 07:58:49 UTC; 45min ago Main PID: 25944 (bash) CGroup: /system.slice/bcm.service └─25944 /bin/bash /usr/local/bcm/startbcm Nov 18 07:58:49 pd9q.packet-radio.net systemd[1]: Started OpenBCM Daemon. Nov 18 07:58:50 pd9q.packet-radio.net su[25949]: Successful su for bcm by root Nov 18 07:58:50 pd9q.packet-radio.net su[25949]: + ??? root:bcm Nov 18 07:58:50 pd9q.packet-radio.net su[25949]: pam_unix(su:session): session opened for user bcm by (uid=0) pd9q@pd9q:/etc/systemd/system $
pd9q@pd9q:/etc/systemd/system $ ps ax <snip> 25944 ? Ss 0:00 /bin/bash /usr/local/bcm/startbcm 25949 ? S 0:00 su bcm -s /usr/local/bcm/bcm 25953 ? Ss 0:00 /lib/systemd/systemd --user 25956 ? S 0:00 (sd-pam) 25971 ? S 0:09 bcm <snip>
pd9q@pd9q:/etc/systemd/system $ telnet localhost 4719 Trying ::1... Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. OpenBCM-Mailbox V1.08-3-g9b42 (Linux) PI8LAP login:
I think we’re ready to rumble.
One last note.
In the start file you see the line.
su bcm -s $BCMHOME/bcm >/dev/tty3
Here, reference is made to /dev/tty3. I use the program “conspy” to watch on /dev/tty3 how the program runs.
sudo apt-get install conspy
sudo conspy 3
OpenBCM V1.08-3-g9b42 (Linux)(c) GNU GPL 1992-2013 F. Radlherr, DL8MBT et al. OpenBCM is maintained by Markus Baumann, DH8YMB 18.11.18 07:58:50z SYSTEM: #R working dir: '/usr/local/bcm' 18.11.18 07:58:50z SYSTEM: #R l1axip: 127.0.0.1 rxport=4866 txport=4867 18.11.18 07:58:50z SYSTEM: #R l1axip: initialised to channel 0 18.11.18 07:58:50z SYSTEM: #L Start: V1.08-3-g9b42 Linux mem 880768kB hd 11912MB 18.11.18 07:58:50z SYSTEM: #R init_tnc: 200 ports 18.11.18 07:58:50z SYSTEM: #R ax25k_init: Kernel AX25 disabled 18.11.18 07:58:50z SYSTEM: #R initfwdlist: 0 partners, 0 destinations 18.11.18 07:58:50z SYSTEM: #R readtree: 12 bulletins 18.11.18 07:58:50z SYSTEM: #R telnetd: initialised to port 4719 18.11.18 07:58:50z SYSTEM: #R httpd: initialised to port 8080 18.11.18 07:58:50z SYSTEM: #R ftpd: initialised to port 8021 18.11.18 07:58:50z SYSTEM: #R sendmail: initialised to port 8025 18.11.18 07:58:50z SYSTEM: #R popper: initialised to port 8110 18.11.18 07:58:50z SYSTEM: #R nntpd: initialised to port 8119 18.11.18 07:58:50z SYSTEM: #R radiod: radio connectivity disabled 18.11.18 07:58:50z SYSTEM: #R serv: initialised to port 8123 18.11.18 07:58:51z SYSTEM: #R mbcron: started
To escape conspy hit “esc” a couple of times.
This version supports the TNC-Pi9K6 TNC on Raspberry Pi hosts. ARIM v2.4b1 works with both ARDOP and ARDOP2 TNCs (like gARIM), so it’s the only version of ARIM needed now.
ARIM is the text version of the program, based on ncurses. It can be run in an ssh or tmux session on a headless RPi, making remote operation easy.
The binary distribution for installation on RPi hosts is here:
https://www.whitemesa.net/arim/pkg/beta/arim-2.4b1-bin-linux-gnueabihf-armv7l.tar.gz
and the source code distribution (to be compiled on the RPi) is here:
https://www.whitemesa.net/arim/src/beta/arim-2.4b1.tar.gz
Instructions for installing and running ARIM are here:
https://www.whitemesa.net/arim/arim.html
Details about configuring ARIM for use with the TNC-Pi9K6 are included in the change log below.
An example of a TNC-Pi9K6 port definition can be seen in the sample ‘arim.ini’ file supplied with the ARIM distribution ([tnc] #2).
This version was developed on an RPi 3 with a TNC-Pi9K6 TNC running ARDOP_Teensy
and ARDOP2_Teensy. It was tested with another ARIM instance running on Linux,
using the ardopc and ardop2 TNCs.
Be sure to use the latest TeensyProjects source code when installing ARDOP_Teensy or ARDOP2_Teensy into the TNC-Pi9K6.
Good luck and please let me know if you find a bug or have questions.
73,
Bob NW8L
ARIM Messaging Program Change Log
———————————
v2.4b1 16Nov2018
—————-
1. Add support for TNC-Pi9K6 hardware ARDOP TNC. This requires that
ARIM be installed on the Raspberry Pi unit hosting the TNC-Pi9K6
and interface with the TNC over the /dev/serial0 serial port.
These new parameters are used in a [tnc] section of the
configuration file to define the TNC-Pi9K6 port:
— ‘interface’ may be ‘serial’ or ‘tcp’. Set to ‘serial’ for a
port using the TNC-Pi9K6. Example:
interface = serial
The default is ‘tcp’.
— ‘serial-port’ is assigned the device name for the RPi serial
port used by ARIM to attach to the TNC-Pi9K6. Example:
serial-port = /dev/serial0
The default is ‘/dev/serial0’, which is typical for the
TNC-Pi9K6 on an RPi host running the Raspbian OS.
— ‘serial-baudrate’ is assigned the baud rate for the serial port
device. Example:
serial-baudrate = 115200
The default is ‘115200’, which is typical for the TNC-Pi9K6
running ARDOP or ARDOP 2.
Another new parameter is used in the [log] section of the
configuration file:
— ‘tncpi9k6-log’ is used to enable or disable the TNC-Pi9K6 debug
log on the RPi. Example:
tncpi9k6-log = TRUE
The log is written to a file in the ARIM ‘log’ directory with
a name like ‘tncpi9k6-20181110.log’ which includes a datestamp.
Although the log is rotated daily, it can become very large
with the default verbosity setting of 7. To reduce log size,
the ‘LOGLEVEL’ command can be sent to the TNC when the port is
initialized to change the level. Do this with a ‘tnc-init-cmd’
parameter in the [tnc] section for the port. Example:
tnc-init-cmd = LOGLEVEL 6
—————————————————————
NOTE: Support for TNCPi9K6 debug logging must be compiled in to
the ARDOP or ARDOP 2 Teensy program. To do this, change line 79
in “TeensyProjects/libraries/TeensyConfig/TeensyConfigARDOP.h”
from this:
#define MONPORT Serial
to:
//#define MONPORT Serial
in other words, comment out line 79.
—————————————————————
As an example, [tnc] #2 in the sample ‘arim.ini’ file supplied
with the ARIM distribution is configured as a TNC-Pi9K6 port.
——————————————————————
NOTE: In testing, I’ve noticed a problem with FEC data transfers
in the ARDOP and ARDOP 2 software for the TNC-Pi9K6. The symptom
is intermittent failure of FEC transmissions such as messages or
beacons, with a re-start of the TNC required to recover. Perhaps
this is a peculiarity of my RPi-3/TNC-Pi9K6 system, so I’m very
interested in hearing reports from others. If you experience the
same problem, there’s an effective work-around. It consists of
making a simple source code change in the ARDOP_Teensy or
ARDOP2_Teensy project and re-compiling. For example, if using
ARDOP 2, change line 53 in file “TeensyProjects/ARDOP2/FEC.c”
from:
FECRepeats = intRepeats;
to:
FECRepeats = intRepeats = 0;
The process is the same for the ARDOP_Teensy project. This,
unfortunately, prevents the use of FECREPEATS > 0 in ARIM. Be
sure to use the latest TeensyProjects source code available here:
<http://www.cantab.net/users/john.wiseman/Downloads/Beta/>
Download the “TeensyProjects.zip” file.
——————————————————————
2. Add support for ARDOP version 1 as well as version 2. ARIM detects
the TNC version when attaching and adapts to the FECMODE and
ARQBANDWIDTH options available for that version.
3. Fix bug where upload progress meter not showing when sending the
response to an ARIM query in FEC mode.
4. Update arim(5) man page and Help document.
Bulletin boards (bulletin.bcm and boardinf.bcm)
You must have the option CREATEBOARD 1 in the init.bcm for creating bulletin.bcm. If you do not have this you can always use the command “MKBOARD / TMP” to create the file bulletin.bcm.
Help Dir Read Erase Check REPly Send Alter Quit (PD9Q)-->mkboard / tmp Board created. Help Dir Read Erase Check REPly Send Alter Quit (PD9Q)-->
Now the bulletin.bcm is created. Look at the file.
; OpenBCM Bulletin Listfile ; tmp 999 1
The name tmp is the board name, the 999 is the Max_Lifetime and 1 is the Min_Lifetime.
Bulletin.bcm is build op in mainboard en subboards.
Now let’s see what that looks like.
; OpenBCM Bulletin Listfile ; Board / Max_Lifetime / Min_Lifetime tmp 999 1 modes 360 90 amtor 360 360 sstv 360 0 packet 360 0 clover 360 0 cw 180 0 fax 360 0 gtor 360 0 pactor 360 0 rtty 360 0 sattv 90 90
So “modes” is the mainboard and the rest is subboard. Now you have everything together nicely.
What not fits into the mainboards or subboards is placed in the “tmp” board. So it is advisable to occasionally look in the “tmp” board if new mainboards or subboards have to be made.
The boardinf.bcm shows board discriptions to the users. Is the boardinf.bcm empty there is nothing to show. Let’s fill it up.
Use capital letters for the mainboard names and lower case for the subboards.
TMP Temporary board for mail with no board. Create one MODES Used modes on the Amateur frequencies amtor Amtor digital mode sstv Slow Scan Telvision packet Packet radio modes