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:svx_mobile

This is an old revision of the document!


03 : Radio

Svx Mobile

Plan...

To make a mobile hotspot that will provide access to SVXReflector and Echolink as well as a handy single-frequency parrot repeater.

Hardware

Remains the same as the previous portable hotspot

  • Raspberry Pi
  • CM108 soundcard
  • IC-2E or FT-60
  • MiFi router

It will be installed in my vehicle, which also has a TM-D710 for APRS and voice comms. The hotspot/gateway will use a handheld radio, either an old IC-2E for 2m (only) or I might experiment with the FT-60 as the radio, to allow either 2m or 70cm to be used, as required.

  • Add 5V regulator to power R.Pi from 12VDC
  • Put everything in a //grab-box// for portability

No big changes….

  • Echolink Module enabled (switchable via DTMF commands)
  • Echolink using a Private Proxy running on my VPS machine to enable incoming connections.

Logic.tcl additions for switching EL on/off

Added to <…>/events.d/local/Logic.tcl

# This function can be used to implement your own custom commands or to disable
# DTMF commands that you do not want users to execute.
proc dtmf_cmd_received {cmd} {
  #global active_module

  # Example: Ignore all commands starting with 3 in the EchoLink module.
  #          Allow commands that have four or more digits.
  #if {$active_module == "EchoLink"} {
  #  if {[string length $cmd] < 4 && [string index $cmd 0] == "3"} {
  #    puts "Ignoring random connect command for module EchoLink: $cmd"
  #    return 1
  #  }
  #}

  # Handle the "force core command" mode where a command is forced to be
  # executed by the core command processor instead of by an active module.
  # The "force core command" mode is entered by prefixing a command by a star.
  #if {$active_module != "" && [string index $cmd 0] != "*"} {
  #  return 0
  #}
  #if {[string index $cmd 0] == "*"} {
  #  set cmd [string range $cmd 1 end]
  #}

  # Example: Custom command executed when DTMF 99 is received
  if {$cmd == "99"} {
    puts "Executing external command"
    playMsg "Core" "online"
    exec /home/gm4slv/svx_ref_noel.sh &
    return 1
  }
  # Example: Custom command executed when DTMF 98 is received
  if {$cmd == "98"} {
    puts "Executing external command"
    playMsg "Core" "online"
    exec /home/gm4slv/svx_ref.sh &
    return 1
  }
 
  return 0
}
  • DTMF command 99# will cause svxlink to restart with a different config, that does not have ModuleEchoLink enabled.
  • DTMF command 98# will cause svxlink to restart with the standard config, the does have ModuleEchoLink enabled.
#!/bin/bash
 
CFG=/usr/local/etc/svxlink/svxlink.conf
LOG=/home/gm4slv/svxlink.log
 
sudo killall svxlink
sudo killall svxlink
sudo killall svxlink
 
echo "25" > /sys/class/gpio/export
 
sleep 2
 
echo "out" > /sys/class/gpio/gpio25/direction
 
sudo svxlink --daemon --logfile=$LOG --config=$CFG
exit 0
#!/bin/bash
 
CFG=/usr/local/etc/svxlink/svxlink_ref_noel.conf
LOG=/home/gm4slv/svxlink.log
 
sudo killall svxlink
sudo killall svxlink
sudo killall svxlink
 
echo "25" > /sys/class/gpio/export
 
sleep 2
 
echo "out" > /sys/class/gpio/gpio25/direction
 
sudo svxlink --daemon --logfile=$LOG --config=$CFG
exit 0

It's probable that I'll configure the initial start @reboot to be without Echolink

crontab@reboot sleep 30 && sudo -u gm4slv /home/gm4slv/svx_ref_noel.sh >/dev/null 2>&1

and then only enable the Echolink module (with 98#) when I want to be available on Echolink, or to use it myself.

Using a PROXY server for connecting to Echolink is necessary because it's not possible to control external firewall/port forwarding when using the MiFi 4G router for internet access. Connecting direct to Echolink, without the proxy still allows outgoing Echolink connections.

Rather than relying on other PUBLIC Echolink proxies I though it would be wise to install and run a proxy server myself, on the VPS machine. It turned out to be easier than I thought and the basic steps are here

Parrot

I imagine being able to use the Parrot feature as a temporary single-frequency repeater perhaps for emergency use?

I'll experiment….

Page Info

John Pumford-Green 03/06/22 17:59

Page last updated: 06/03/25 06:49 GMT

public/radio/svx_mobile.1654327833.txt.gz · Last modified: 06/03/25 06:49 GMT (external edit)