Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
plu:example_config_files:systemd [2018/11/23 12:45]
gunn
plu:example_config_files:systemd [2018/11/23 15:55] (current)
gunn
Line 3: Line 3:
  
 ===== systemd files in /​etc/​systemd/​system ===== ===== systemd files in /​etc/​systemd/​system =====
 +  * Up-to-date files can be found in nwdigitalradio/​n7nix repo [[https://​github.com/​nwdigitalradio/​n7nix/​tree/​master/​systemd/​sysd | here]]
 === ax25dev.service === === ax25dev.service ===
 <​file>​ <​file>​
Line 85: Line 86:
 </​file>​ </​file>​
 ===== Files in /etc ===== ===== Files in /etc =====
 +  * Up-to-date files can be found in nwdigitalradio/​n7nix repo [[https://​github.com/​nwdigitalradio/​n7nix/​tree/​master/​systemd/​sysd | here]]
 === direwolf.conf === === direwolf.conf ===
 <​file>​ <​file>​
Line 127: Line 129:
  
 CHANNEL 1 CHANNEL 1
-PTT GPIO 12+PTT GPIO 23
 MODEM 1200 MODEM 1200
 MYCALL N7NIX-2 MYCALL N7NIX-2
Line 141: Line 143:
 </​file>​ </​file>​
 ===== Files in /etc/ax25 ===== ===== Files in /etc/ax25 =====
 +  * Up-to-date files can be found in nwdigitalradio/​n7nix repo [[https://​github.com/​nwdigitalradio/​n7nix/​tree/​master/​systemd/​ax25 | here]]
 +
 === ax25dev-parms === === ax25dev-parms ===
 <​file>​ <​file>​
Line 200: Line 204:
  
 # portname set in /​etc/​ax25/​axports # portname set in /​etc/​ax25/​axports
-PORTNAME="​udr0"​+PORTNAME_1="udr0
 +PORTNAME_2="​udr1"
 SERIALPORT_DIREWOLF="/​tmp/​kisstnc"​ SERIALPORT_DIREWOLF="/​tmp/​kisstnc"​
  
Line 207: Line 212:
 firmware_vendorfile="/​sys/​firmware/​devicetree/​base/​hat/​vendor"​ firmware_vendorfile="/​sys/​firmware/​devicetree/​base/​hat/​vendor"​
  
-PROD_ID_NAMES=("​INVALID"​ "​INVALID"​ "​UDRC"​ "UDRC II" "​1WSpot"​)+PROD_ID_NAMES=("​INVALID"​ "​INVALID"​ "​UDRC"​ "UDRC II" "DRAWS" "​1WSpot"​)
 NWDIG_VENDOR_NAME="​NW Digital Radio" NWDIG_VENDOR_NAME="​NW Digital Radio"
  
Line 213: Line 218:
  
 # ===== function EEPROM id_check # ===== function EEPROM id_check
 +
 # Return code: # Return code:
 # 0 = no EEPROM or no device tree found # 0 = no EEPROM or no device tree found
Line 218: Line 224:
 # 2 = UDRC # 2 = UDRC
 # 3 = UDRC II # 3 = UDRC II
-# 4 = 1WSpot+# 4 = DRAWS 
 +# 5 = 1WSpot
  
 function id_check() { function id_check() {
 # Initialize to EEPROM not found # Initialize to EEPROM not found
 udrc_prod_id=0 udrc_prod_id=0
 +
 # Does firmware file exist # Does firmware file exist
 if [ -f $firmware_prodfile ] ; then if [ -f $firmware_prodfile ] ; then
    # Read product file    # Read product file
-   ​UDRC_PROD="​$(cat $firmware_prodfile)"​+   ​UDRC_PROD="​$(tr -d '​\0'​ < $firmware_prodfile)"​
    # Read vendor file    # Read vendor file
-   ​FIRM_VENDOR="​$(cat $firmware_vendorfile)"​+   ​FIRM_VENDOR="​$(tr -d '​\0'​ < $firmware_vendorfile)"​
    # Read product id file    # Read product id file
-   ​UDRC_ID="​$(cat $firmware_prod_idfile)"​+   ​UDRC_ID="​$(tr -d '​\0'​ < $firmware_prod_idfile)"​
    #get last character in product id file    #get last character in product id file
    ​UDRC_ID=${UDRC_ID:​ -1}    ​UDRC_ID=${UDRC_ID:​ -1}
Line 244: Line 252:
             udrc_prod_id=3             udrc_prod_id=3
          ;;          ;;
-         "​1WSpot")+         "​Digital Radio Amateur Work Station")
             udrc_prod_id=4             udrc_prod_id=4
 +         ;;
 +         "​1WSpot"​)
 +            udrc_prod_id=5
          ;;          ;;
          *)          *)
Line 278: Line 289:
 # ===== main ===== # ===== main =====
  
-echo "​ax25-upd:​ Start Port ${PORTNAME} with device ${SERIALPORT_DIREWOLF}"​+echo "​ax25-upd:​ Start Port ${PORTNAME_1} with device ${SERIALPORT_DIREWOLF}"​
  
 if [ -L $SERIALPORT_DIREWOLF ] ; then if [ -L $SERIALPORT_DIREWOLF ] ; then
Line 284: Line 295:
 else else
     echo "​Direwolf serial port NOT FOUND"     echo "​Direwolf serial port NOT FOUND"
-    ​exit 1+d    ​exit 1
 fi fi
  
Line 304: Line 315:
    ​pseudoterm=$($SBINDIR/​mkiss $SERIALPORT_DIREWOLF /dev/ptmx none | tail -1)    ​pseudoterm=$($SBINDIR/​mkiss $SERIALPORT_DIREWOLF /dev/ptmx none | tail -1)
    echo "using mkiss with UDRC and pseudo term=$pseudoterm on port 1"    echo "using mkiss with UDRC and pseudo term=$pseudoterm on port 1"
-   ​$SBINDIR/​kissattach ​ ${pseudoterm} ${PORTNAME} 44.24.197.66 >/​tmp/​ax25-config.tmp+   ​$SBINDIR/​kissattach ​ ${pseudoterm} ${PORTNAME_1} 44.24.197.66 >/​tmp/​ax25-config.tmp
    ​kissattach_ret=$?​    ​kissattach_ret=$?​
 +   ​dbgecho "​kissattach return: $?"
 +   /​etc/​ax25/​ax25dev-parms ax0
 ;; ;;
-3) +3|4
-   echo "UDRC II installed"​+   echo "UDRC II or DRAWS installed"​
 # use port 2 with mkiss # use port 2 with mkiss
-   ​pseudoterm=$($SBINDIR/​mkiss $SERIALPORT_DIREWOLF ​none /dev/ptmx | tail -1) +   ​pseudoterm=$($SBINDIR/​mkiss $SERIALPORT_DIREWOLF ​/​dev/​ptmx ​/dev/ptmx | tail -1
-   echo "using mkiss with UDRC II and pseudo ​term=$pseudoterm on port 2+   echo "​$pseudoterm"​ > /​tmp/​ax25-config.tmp 
-   ​$SBINDIR/​kissattach ​ ${pseudoterm} ${PORTNAME} 44.24.197.66 >/​tmp/​ax25-config.tmp+   ​pseudoterm_1=$(echo $pseudoterm | cut -d ' ' -f1) 
 +   ​pseudoterm_2=$(echo $pseudoterm | cut -d ' ' -f2
 +   echo "using mkiss with UDRC II and pseudo ​term_1: ​$pseudoterm_1 pseudo term_2: $pseudoterm_2
 +   ​$SBINDIR/​kissattach ​ ${pseudoterm_1} ${PORTNAME_1} 44.24.197.66 >/​tmp/​ax25-config_1.tmp 
 +   ​$SBINDIR/​kissattach ​ ${pseudoterm_2} ${PORTNAME_2} 44.24.197.67 >/​tmp/​ax25-config_2.tmp
    ​kissattach_ret=$?​    ​kissattach_ret=$?​
 +   ​dbgecho "​kissattach return: $?"
 +   /​etc/​ax25/​ax25dev-parms ax0
 +   /​etc/​ax25/​ax25dev-parms ax1
 +   echo " Port ${PORTNAME_1} attached to ax0"
 +   echo " Port ${PORTNAME_2} attached to ax1"
 ;; ;;
-4)+5)
    echo "One Watt Spot installed"​    echo "One Watt Spot installed"​
 # use port 1 with mkiss # use port 1 with mkiss
    ​pseudoterm=$($SBINDIR/​mkiss $SERIALPORT_DIREWOLF /dev/ptmx none | tail -1)    ​pseudoterm=$($SBINDIR/​mkiss $SERIALPORT_DIREWOLF /dev/ptmx none | tail -1)
    echo "using mkiss with UDRC and pseudo term=$pseudoterm on port 1"    echo "using mkiss with UDRC and pseudo term=$pseudoterm on port 1"
-   ​$SBINDIR/​kissattach ​ ${pseudoterm} ${PORTNAME} 44.24.197.66 >/​tmp/​ax25-config.tmp+   ​$SBINDIR/​kissattach ​ ${pseudoterm} ${PORTNAME_1} 44.24.197.66 >/​tmp/​ax25-config.tmp
    ​kissattach_ret=$?​    ​kissattach_ret=$?​
 +   ​dbgecho "​kissattach return: $?"
 +   /​etc/​ax25/​ax25dev-parms ax0
 ;; ;;
 *) *)
Line 328: Line 352:
 ;; ;;
 esac esac
- 
-dbgecho "​kissattach return: $?" 
- 
-/​etc/​ax25/​ax25dev-parms 
  
 # configure netrom # configure netrom
Line 341: Line 361:
 echo "​ax25-upd script finished"​ echo "​ax25-upd script finished"​
 exit 0 exit 0
 +</​file>​
 +=== ax25-downd ===
 +<​file>​
 +#!/bin/bash
 +#
 +SBINPATH="/​usr/​local/​sbin"​
 +
 +echo "​ax25-downd start"
 +# Stop FPAC
 +#    /​usr/​local/​sbin/​myfpac.sh stop
 +
 +# Stop Ax25 support
 +#  for PROC_NAME in beacon ax25d ax25ipd ax25rtd mheardd listen saxIgate
 +  for PROC_NAME in beacon ax25d ax25ipd ax25rtd mheardd saxIgate
 +    do
 +      PID=`/​bin/​pidof -x $PROC_NAME`
 +      if [ -n "​$PID"​ ]; then
 +         kill -TERM $PID > /dev/null
 +         echo "​$PROC_NAME - $PID "
 +         sleep 1
 +      fi
 +    done
 +
 +# If netromd is running
 +  pidof netromd > /dev/null
 +  if [ $? -eq 0 ]; then
 +
 +# Save NetRom routes
 +   ​$SBINPATH/​nodesave -p $SBINPATH /​var/​ax25/​nrsave && echo "N/R routes saved"
 +
 +# Stop NetRom
 +    killall netromd > /dev/null
 +    echo "​Netrom Stopped"​
 +  else
 +    echo "​Netrom daemon not running"​
 +  fi
 +
 +# Close sockets
 +echo "​Detach Ax/Nr/Sp Devices"​
 +
 +ifconfig|grep AMPR > /​tmp/​ax25-config.tmp
 +
 +i=0
 +iface=$(awk ' NR == '​1'​ { print $1 }' /​tmp/​ax25-config.tmp)
 +
 +while [ "​$iface"​ != ""​ ] ; do
 +   let i=i+1
 +   ​iface=$(awk ' NR == '​$i'​ { print $1 }' /​tmp/​ax25-config.tmp)
 +   if [ "​$iface"​ != ""​ ] && [ "​${iface:​0:​2}"​ == "​nr"​ ] ; then
 +#      echo "​select:​ $iface, iface: ${iface:​0:​2}"​
 +      ifconfig "​$iface"​ down
 +      echo " $iface down"
 +  fi
 +done
 +
 +# Stop Kissattach
 +killall -KILL kissattach > /dev/null
 +# Empty Heard List
 +#cat /dev/null > /​var/​ax25/​mheard/​mheard.dat
 +
 +# End of ax25-down
 +echo "​ax25-downd finished"​
 +exit 0
 +</​file>​
 +=== axports ===
 +<​file>​
 +# /​usr/​local/​etc/​ax25/​axports
 +#
 +# Use simple descriptive names for the ports, to make debugging ​
 +# other associated software easier.
 +
 +#
 +# The format of this file is:
 +#​portname callsign speed paclen window description
 +udr0            N7NIX-10 ​       9600    255     ​2 ​      ​Winlink
 +</​file>​
 +=== ax25d.conf ===
 +<​file>​
 +# /​usr/​local/​etc/​ax25/​ax25d.conf
 +#
 +# ax25d Configuration File.
 +#
 +#
 +[N7NIX-10 VIA udr0]
 +NOCALL ​  * * * * * *  L
 +NOCALL ​  * * * * * *  L
 +default ​ * * * * * *  - rmsgw /​usr/​local/​bin/​rmsgw rmsgw -l debug -P %d %U
 +#
 +[N7NIX VIA udr0]
 +NOCALL ​  * * * * * *  L
 +default ​ * * * * * *  0  gunn  /​usr/​local/​bin/​wl2kax25d wl2kax25d -c %U -a %d
 +#
 </​file>​ </​file>​
plu/example_config_files/systemd.1543005947.txt.gz · Last modified: 2018/11/23 12:45 by gunn
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0