John's Vademecum

Try to learn something about everything, and everything about something -Thomas Huxley “Darwin's bulldog” (1824-1895)

User Tools

Site Tools


public:radio:dormant:aprs

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
public:radio:dormant:aprs [31/05/25 08:44 BST] – [Hardware] johnpublic:radio:dormant:aprs [31/05/25 12:12 BST] (current) john
Line 9: Line 9:
  
 |Platform|Raspberry Pi| |Platform|Raspberry Pi|
-|software|aprx|+|Software|aprx 2.9.0|
 |Radio Hardware|FT-1500M| |Radio Hardware|FT-1500M|
 |Frequency|144.800MHz| |Frequency|144.800MHz|
Line 18: Line 18:
 iGate Software : [[https://thelifeofkenneth.com/aprx/|aprx]] or [[https://github.com/ha5di/DIXPRS|Dixprs]]  iGate Software : [[https://thelifeofkenneth.com/aprx/|aprx]] or [[https://github.com/ha5di/DIXPRS|Dixprs]] 
  
-Using Linux AX25 network device +==== Update May 2025 ====
  
-++++ /etc/ax25/axports | +**dixprs** is no longer maintained, and after re-installing a fresh OS on my igate Pi I couldn't find the details for installing it, as the old google site [[https://sites.google.com/site/dixprs/]] that had the details has disappeared from the internet. 
-<code bash> +
-/etc/ax25/axports +
-+
-# The format of this file is: +
-+
-# name callsign speed paclen window description +
-+
-1 GM4SLV-2 19200 236 2 VHF APRS (1200 bps) +
-</code>+
  
-+++++=== Additional info ===
  
-Everything starts by a script, with options commented out as necessary to start whichever software is required. +The Wayback Machine has some copies of the old google site for dixprs - here's one of them:
-I'm currently (--- //John Pumford-Green 24/04/23 15:34//) using [[https://github.com/ha5di/DIXPRS|Dixprs]] instead of ''aprx''+
  
-Dixprs seems to be moribund, the google site where help and information was available is gone but Dixprs works well and has handy features - such as responding to //?APRSxxx// queries.+[[https://web.archive.org/web/20201009100911/https://sites.google.com/site/dixprs/installa]]
  
-++++ ax_start.sh |+This might give enough information - but it looks as though it's more trouble than it's worth, when ''aprx'' works perfectly well. 
 + 
 +++++ Dixprs installation | 
 + 
 +Installation 
 +Preparation 
 +DIXPRS is distributed in form of Python scripts, which can be run on any OS which meets requirements below. There is a precompiled WIN32 executable available also, see WINDOWS section later. 
 + 
 +It requires Python 2.6.x or 2.7.x installed. It is not compatible with older versions nor Python 3.x Python is usually installed on most modern LINUX systems. If not, check availability with distros package manager. 
 + 
 +DIXPRS requires SQLite3. Usually it is part of Python installation by default. If not, install with your package manager. For WINDOWS it is available at http://python.org/ 
 + 
 +DIXPRS also requires pyserial module to handle serial interface. If not installed already and not available in the disribution's repository, download from http://pyserial.sourceforge.net/pyserial.html 
 + 
 +Finally open a terminal window (or DOS window if installing DIXPRS source on WINDOWS), start Python and try to import sqlite3 and serial modules: 
 + 
 + 
 + 
 +As on the picture, no error message displayed. 
 + 
 +LINUX with AX.25 stack 
 +On LINUX DIXPRS can communicate to a KISS TNC directly via a serial interface. However it is adviced to use TNC's and modems via AX.25 stack. It makes other type modems, like USCC card, BAYCOM modem, etc. usable with DIXPRS. It requires an additional Python module installed, developed for DIXPRS, called pyax25. 
 + 
 +Download pyax25.tar.gz and extract to a temporary folder. Then enter 
 + 
 +./compile_ax25.py build 
 +./compile_ax25.py install 
 + 
 +Note: procedure requires libax25, Python development files and basic development toolchain with GCC installed. 
 + 
 +Check installation. Open a terminal, start Python and type 
 + 
 +import _ax25 
 + 
 +If everything is OK, only prompt displayed, no error message.  
 + 
 +DIXPRS installation - LINUX 
 +Download dixprs-xxx.tar.gz and extract to a folder - /usr/local/dixprs is a good choice to make installation of 3rd-party packages like munin plugins easier. Customize configuration file config.txt and start program: 
 + 
 +./dixprs 
 + 
 +It is a good practice to run DIXPRS in a screen terminal. In this case you can see what is going on and can disconnect terminal any time without stopping it. If you are not familiar with the screen utility, read this great article 
 + 
 +http://www.rackaid.com/resources/linux-screen-tutorial-and-how-to/ 
 + 
 +DIXPRS can be run as a daemon using tools like daemonize or daemontools available in repository of most distros. 
 + 
 + 
 +DIXPRS installation - WINDOWS binary 
 +Download dixprs-xxx-win32.zip and extract to a folder - C:\dixprs or C:\Program Files\dixprs is a good choice. Customize configuration file config.txt and start program: 
 + 
 +dixprs.exe 
 + 
 +Configuration 
 +Study supplied sample configuration files and use as a template to make your own. By default DIXPRS is looking for config.txt file. You can specify a different file with a command line argument: 
 + 
 +dixprs -c <configfile> 
 + 
 +or 
 + 
 +dixprs --config=<configfile> 
 + 
 + 
 +++++ 
 + 
 +++++ an ax_start.sh with the dixprs screen command |
  
 <code bash> <code bash>
Line 67: Line 122:
 #sleep 10 #sleep 10
 #screen -S dixprs -x -X screen bash -c 'python /home/gm4slv/selcall.py; exec bash' #screen -S dixprs -x -X screen bash -c 'python /home/gm4slv/selcall.py; exec bash'
 +</code>
 +
 +++++
 +
 +The software is still available on github [[https://github.com/ha5di/DIXPRS]]
 +
 +I've gone over to **aprx** which is still //alive// and easily installed.
 +
 +
 +Using Linux AX25 network device 
 +
 +++++ /etc/ax25/axports |
 +<code bash>
 +# /etc/ax25/axports
 +#
 +# The format of this file is:
 +#
 +# name callsign speed paclen window description
 +#
 +1 GM4SLV-2 19200 236 2 VHF APRS (1200 bps)
 +</code>
 +
 +++++
 +
 +Everything starts by a script, with options commented out as necessary to start whichever software is required. The script (belongs to root) is run at boot time via ++++ root's crontab |
 +
 +<code>
 +# m h  dom mon dow   command
 +@reboot sleep 30 && /root/ax_start.sh > /dev/null 2>&1
 +
 +</code>
 +
 +++++
 +
 +++++ ax_start.sh |
 +
 +<code bash>
 +#!/bin/bash
 +
 +echo "kissattach /dev/ttyAMA0 1 10.0.0.2"
 +
 +/usr/sbin/kissattach /dev/ttyAMA0 1 10.0.0.2
 +
 +echo -e "Kissattach complete\n\r"
 +
 +
 +echo "ifconf ax0 10.0.0.2 netmask 255.255.255.0"
 +
 +/sbin/ifconfig ax0 10.0.0.2 netmask 255.255.255.0
 +
 +echo -e "ifconfig 1 complete\n\r"
 +
 +echo "ifconfig ax0 hw ax25 GM4SLV-2 up"
 +
 +/sbin/ifconfig ax0 hw ax25 GM4SLV-2 up
 +
 +echo -e "ifconfig 2 complete\n\r"
 +
 +
 +# starting mheard daemon
 +if [ -x /usr/sbin/mheardd ]; then
 +  echo "Starting Mheard Daemon"
 +  /usr/sbin/mheardd
 +fi
 +
 +#/usr/sbin/ax25d
 +
 +echo "starting aprx."
 +/usr/sbin/aprx -f /etc/aprx.conf
 +echo -e "aprx start complete \n\r"
 +
 </code> </code>
  
Line 86: Line 212:
  
 <aprsis> <aprsis>
-#passcode 21424 
 passcode 19626 passcode 19626
- +server rotate.aprs.net 14580
-server   euro.aprs2.net +
- +
-#server 192.168.21.101 2023 +
-#filter "b/GM4WMM*" +
-#filter "b/G0RAS*" +
-#filter "b/G8YPK*" +
-#filter "t/*" +
-#filter "-t/t" +
-#filter "-b/KE8TCB-*" +
-#filter "-b/ASHIE*" +
-#filter "r/60.2885/-1.4252/80" +
-#filter "b/GM4SLV-13" +
-#filter "b/OM6ZB-7" +
-#filter "b/KD7LMN" +
-#filter "-b/GW4AMZ*" +
-#filter "b/GM4SLV*" +
 filter "m/150" filter "m/150"
- 
 </aprsis> </aprsis>
 +
  
 <logging> <logging>
Line 115: Line 223:
 aprxlog /var/log/aprx/aprx.log aprxlog /var/log/aprx/aprx.log
 </logging> </logging>
- 
-<interface> 
-ax25-device $mycall 
-tx-ok true  
-</interface> 
  
 #<interface> #<interface>
-#serial-device /dev/ttyAMA0 19200 8n1 KISS+#ax25-device $mycall
 #tx-ok true #tx-ok true
 #</interface> #</interface>
 +
 +<interface>
 +ax25-device GM4SLV-2
 +tx-ok true
 +</interface>
  
 <beacon> <beacon>
 beaconmode radio beaconmode radio
-cycle-size  30m +cycle-size  20m 
-#beacon dstcall BEACON interface $mycall via WIDE1-1 exec /usr/bin/uptime +#beacon interface $mycall dstcall BEACON via WIDE1-1 exec /usr/bin/uptime 
-beacon interface $mycall via WIDE1-1  symbol "/-" $myloc comment "APRX - R.Pi/TNC-Pi+beacon interface $mycall via WIDE1-1,WIDE2-2  symbol "/-" $myloc comment "Shetland I-Gate
-#beacon interface $mycall via WIDE1-1  symbol "/-" $myloc comment "VHF 144.800MHz" +#beacon interface $mycall via WIDE1-1,WIDE2-raw ">APRX"
-#beacon interface $mycall via WIDE1-1 raw ">VHF 144.8MHz"+
 </beacon> </beacon>
- 
- 
-#<beacon> 
-#beaconmode radio 
-#cycle-size 60m 
-#beacon via WIDE1-1 object "GB3LU" symbol "/r" lat "6008.57N" lon "00112.29W" comment "145.675MHz T077 -060 Shetland Isles" 
-#beacon via WIDE1-1 object "GB3LER" symbol "/r" lat "6008.57N" lon "00112.29W" comment "50.064MHz *** Faulty *** OFF AIR *** Shetland Isles" 
-#</beacon> 
  
 <beacon> <beacon>
 beaconmode aprsis beaconmode aprsis
-cycle-size  60m +cycle-size 30m 
-beacon dstcall BEACON exec /usr/bin/uptime +beacon symbol "/-" $myloc comment "Shetland I-Gate"
-beacon  symbol "/-" $myloc comment "APRX R.Pi/TNC-Pi" +
-#beacon raw ">VHF 144.8MHz" +
-#beacon  object "GB3LU" symbol "/r" lat "6008.57N" lon "00112.29W" comment "145.675MHz T077 -060 Shetland Isles" +
-#beacon  object "GB3LER" symbol "/r" lat "6008.57N" lon "00112.29W" comment "50.064MHz ***OFF AIR*** Shetland Isles"+
 </beacon> </beacon>
 +
 +
  
 <digipeater> <digipeater>
     transmitter     $mycall     transmitter     $mycall
-    <source> +        <source> 
-        source         $mycall +                source         $mycall 
- filter "-t/t" +                filter "-t/t" 
- filter "t/*" +                filter "t/*" 
-    </source>+        </source>
  
-<source> +        <source> 
-   source        APRSIS +                source APRSIS 
-   relay-type    third-party +                relay-type third-party 
-   viscous-delay +                via-path WIDE1-1 
-#   ratelimit      10 20 +                msg-path WIDE1-
-   via-path  WIDE2-2 +                filter "-t/t" 
-   msg-path  WIDE2-2+                filter "t/*" 
 +                regex-filter data ISBeacon 
 +        </source> 
 +</digipeater>
  
-   filter "-t/t" 
-   filter "t/*" 
-   regex-filter data ISBeacon 
-#   filter "b/GM4SLV-13" 
-#   filter "b/OM6ZB-7" 
-#   filter "b/GM4WMM*"   
- 
-</source> 
-</digipeater> 
 </code> </code>
  
Line 376: Line 467:
 can't remember the details. can't remember the details.
  
 +**I've found it**
 +
 +  * Edit ''/boot/cmdline.txt'' and remove the phrase ''console=serial0,115200''
 +  * Edit ''/boot/config.txt'' and add the line ''enable_uart=1''
    
  
public/radio/dormant/aprs.1748677449.txt.gz · Last modified: by john