Provided by: svxlink-server_17.12.1-2_amd64 bug

NAME

       svxlink.conf - Configuration file for the SvxLink server

DESCRIPTION

       svxlink  is  a  general  purpose  voice  service  system  for ham radio use. This man-page
       describe the SvxLink server configuration file format.

       SvxLink look for configuration files in a number of places. First it try to  find  a  user
       specific  configuration file. SvxLink will look for a user specific configuration file in:
       $HOME/.svxlink/svxlink.conf.  If no user specific configuration file can be found, SvxLink
       will  look for the system wide configuration file /etc/svxlink/svxlink.conf.  The --config
       command line option may also be used to specify an arbitrary configuration file.

FILE FORMAT

       The configuration file is in the famous INI-file format. A generic example of how  such  a
       file might look like is shown below.

         [SECTION1]
         VALUE1=1
         VALUE2="TWO "
         VAULE3="Multi "
                "line"

         [SECTION2]
         VALUE1=2

       This is a simple format that contain name=value pairs that belong to a section. In written
       text, a specific configuration variable can be  referred  to  as  SECTION1/VALUE2  meaning
       "configuration variable VALUE2 in section SECTION1".

       The  same variable name can exist in two different sections. For example VALUE1 in section
       SECTION1 have the value 1 and  VALUE1  in  section  SECTION2  have  the  value  2.  Values
       containing  spaces  at  the  beginning  or  end of the line must be surrounded by citation
       characters (see SECTION1/VALUE2). Likewise with a multi line value (see SECTION1/VALUE3).

CONFIGURATION VARIABLES

       Here is the description of all  configuration  variables  that  SvxLink  understands.  The
       configuration variables are described section for section.

   GLOBAL
       The GLOBAL section contains application global configuration data.

       MODULE_PATH
              Specify  where  the  SvxLink modules can be found. If MODULE_PATH is not specified,
              the standard search paths for library files will be used.  If  that  also  fails  a
              hardcoded default will be used. What that default is depend on the architecture but
              typically on a x86_64 system it is /usr/lib64/svxlink.  Leaving this variable unset
              should work in most cases.

       LOGICS Specify  a  comma  separated  list of logic cores that should be created. The logic
              core is the thing that ties  the  transceiver  and  the  voice  services  (modules)
              together.  It contains the rules for how the radio interface should be handled. The
              specified name of a logic core must have a corresponding section specified  in  the
              config file. This is where the behaviour of the logic core is specified.

       CFG_DIR
              Specify  the path to a directory that contain additional configuration files.  If a
              relative path is specified, the path will be relative to the  directory  where  the
              main configuration file is at. All files in the specified directory will be read as
              additional configuration. Filenames starting with  a  dot  (hidden  files)  or  not
              ending in .conf are ignored.

       TIMESTAMP_FORMAT
              This  variable  specifies  the  format of the timestamp that is written in front of
              each row in the log file. The format string is in the same format as  specified  in
              the  strftime(3)  manual  page.  The  default  is  "%c" which is described as: "the
              preferred date and time representation for the  current  locale".  The  environment
              variables  LC_TIME, LC_ALL and LANG will affect how this time format will look. For
              example,   setting   LC_TIME="sv_SE.UTF8"   will   give   you   swedish   timestamp
              representation. Other examples of format specifiers are:

              ·   %d - The day of the month as a decimal number (range 01 to 31)

              ·   %b - The abbreviated month name according to the current locale

              ·   %Y - The year as a decimal number including the century

              ·   %H - The hour as a decimal number using a 24-hour clock (range 00 to 23)

              ·   %M - The minute as a decimal number (range 00 to 59)

              ·   %S - The second as a decimal number (range 00 to 61)

              ·   %f - Fractional seconds in millisecond resolution (000-999)

              The last one (%f) is a SvxLink specific formatting specifier.

              Example:  TIMESTAMP_FORMAT="%d  %b  %Y  %H:%M:%S.%f" would give a timestamp looking
              something like: "29 Nov 2005 22:31:59.875".

       CARD_SAMPLE_RATE
              This  configuration  variable  determines  the  sampling  rate   used   for   audio
              input/output.  SvxLink  always  work  with  a sampling rate of 16kHz internally but
              there still are som benefits from using a higher sampling rate. On some sound cards
              the filters look pretty bad at 16kHz and the amplitude response will not be uniform
              which among other things can cause problems for the software DTMF decoder.

              Some sound cards also sound very  bad  at  16kHz  due  to  insufficient  anti-alias
              filtering  or  resampling  effects.  These,  often cheeper, sound cards sound OK at
              48kHz.

              The downside of choosing a higher sampling rate is that it puts a little  bit  more
              load on the CPU so if you have a very slow machine (<300MHz), it might not have the
              computational power to handle it.

              Supported sampling rates are: 16000 and 48000.

       CARD_CHANNELS
              Use this configuration variable to specify how many channels to use when opening  a
              sound  card. For normal sound cards the only practical values to use are 1 for mono
              and 2 for stereo. The latter is the default.

              When using the sound card in stereo mode it is possible to use the left  and  right
              channels  independenly to drive two transceivers. When using the sound card in mono
              mode, both left and right channels transmit/receive the same audio.

       LOCATION_INFO
              Enter  the  section  name  that  contains  information  required  for  transferring
              positioning data to location servers. Setting this item makes the system visible on
              the EchoLink link status page and the APRS network.

       LINKS  Enter here a comma separated list of section names that contains the  configuration
              information for linking logics together (see Logic Linking).

   Common Logic configuration variables
       A  logic  core  is  what  define  how SvxLink should behave on the RF channel. The SvxLink
       server can handle more than one logic core and so  can  be  connected  to  more  than  one
       transceiver.   The   configuration   variables  below  are  common  to  all  logic  types.
       Configuration variables that are specific to a certain logic core type are described below
       in a section of its own.

       TYPE   The  type of logic core this is. The documentation for the specific logic core type
              you want to use describe what to write here.

       RX     Specify the configuration section name of the receiver to  use.  All  configuration
              for the receiver is done in the specified configuration section.

       TX     Specify the configuration section name of the transmitter to use. All configuration
              for the transmitter is done in the specified configuration section.

       MODULES
              Specify a comma separated list of configuration sections for the modules  to  load.
              This tells SvxLink which modules to actually load on startup.

       CALLSIGN
              Specify the callsign that should be announced on the radio interface.

       SHORT_IDENT_INTERVAL
              The  number  of  minutes  between  short  identifications. The purpose of the short
              identification is to just announce that the station is on the air.  Typically  just
              the  callsign  is transmitted. For a repeater a good value is ten minutes and for a
              simplex node one time every 60 minutes is probably enough. The  LONG_IDENT_INTERVAL
              must  be  an even multiple of the SHORT_IDENT_INTERVAL so if LONG_IDENT_INTERVAL is
              60 then the legal values for SHORT_IDENT_INTERVAL are: 1, 2, 3, 4, 5,  6,  10,  12,
              15, 20, 30, 60.  If unset or set to 0, disable short identifications.

       LONG_IDENT_INTERVAL
              The  number  of  minutes  between  long  identifications.  The  purpose of the long
              identification is to transmit some more information about the station  status  (new
              voice  mails  etc).  The  time  of day is also transmitted. A good value here is 60
              minutes.  If unset or set to 0, disable long identifications.

       IDENT_ONLY_AFTER_TX
              This feature controls when identification is done.  By default,  identification  is
              done  every  time  the  SHORT_IDENT_INTERVAL  expires.  If this feature is enabled,
              identification will be done only if there has  been  a  recent  transmission.  This
              feature  is  good  for  nodes  using  an RF link to provide echolink to a repeater.
              Often, in this situation, it is not desirable  for  the  link  to  identify  unless
              legally  necessary.  Note  that  SHORT_IDENT_INTERVAL still have to be set for this
              feature to work. That config variable will  then  be  interpreted  as  the  minimum
              number  of  seconds  between  identifications.  The LONG_IDENT_INTERVAL will not be
              affected by this parameter.

       EXEC_CMD_ON_SQL_CLOSE
              Specify a time, in milliseconds, after  squelch  close  after  which  entered  DTMF
              digits  will be executed as a command without the need to send the # character.  To
              disable this feature, either comment out the configuration row or set it to a value
              less or equal to zero.

       EVENT_HANDLER
              Point  out  the  TCL  event  handler script to use. The TCL event handler script is
              responsible for playing the correct audio clips when an event occurr.  The  default
              location is /usr/share/svxlink/events.tcl.

       DEFAULT_LANG
              Set  the default language to use for announcements. It should be set to an ISO code
              (e.g. sv_SE for Swedish). If not set, it defaults to en_US which is US English.

       RGR_SOUND_DELAY
              The number of milliseconds to wait after the squelch has been closed before a roger
              beep  is played. The beep can be disabled by specifying a value of -1 or commenting
              out this line. Often it is best to  use  the  SQL_HANGTIME  receiver  configuration
              variable  to specify a delay instead of specifying a delay here. This configuration
              variable should then be set to 0.

       REPORT_CTCSS
              If set, will report the specified CTCSS frequency  upon  manual  identification  (*
              pressed).   It is possible to specify fractions using "." as decimal comma. Disable
              this feature by commenting out (#) this configuration variable.

       TX_CTCSS
              This configuration variable controls if a CTCSS tone should be transmitted.  Use  a
              comma  separated  list (no spaces!) to specify when to transmit a CTCSS tone. These
              are  the  possible  values:  SQL_OPEN,  LOGIC,  MODULE,  ANNOUNCEMENT  or   ALWAYS.
              Commenting  out  this configuration variable will disable CTCSS transmit.  The tone
              frequency and level is configured in the transmitter configuration section.

              ·   SQL_OPEN will transmit CTCSS tone when the squelch is open. This is only useful
                  on a repeater. On a simplex node it doesn't make much sense.

              ·   LOGIC  will  transmit  CTCSS  tone  when there is incoming traffic from another
                  logic core.

              ·   MODULE will transmit CTCSS tone when there is incoming traffic from a module.

              ·   ANNOUNCEMENT will transmit CTCSS tone when an  announcement  is  being  played.
                  Repeater idle sounds and roger beeps will not have tone sent with them though.

              ·   ALWAYS  will  always transmit a CTCSS tone as soon as the transmitter is turned
                  on.

       MACROS Point out a section that contains the macros that should  be  used  by  this  logic
              core. See the section description for macros below for more information.

       FX_GAIN_NORMAL
              The  gain  (dB)  to  use for audio effects and announcements when there is no other
              traffic.  This gain is normally set to 0dB which means no gain or attenuation.

       FX_GAIN_LOW
              The gain (dB) to use for audio  effects  and  announcements  when  there  is  other
              traffic.   This  gain is normally set to something like -12dB so that announcements
              and audio effects are attenuated when there is other traffic present.

       QSO_RECORDER
              The QSO recorder is used to write all received audio to files on disk.  The  format
              for  this  configuration  variable  is  <command>:<config  section>.  The specified
              command is used to activate or deactivate the QSO  recorder.  If  the  command  for
              example  is set to 8, 81 will activate the recorder and 80 will deactivate it.  The
              command may also be left out. It will then not  be  possible  to  control  the  QSO
              recorder using DTMF commands. Even if the command is left out the colon must always
              be specified.  The config section point out a section  in  the  configuration  file
              that  holds  configuration  for  the QSO recorder.  Have a look at the QSO Recorder
              Section documentation for more information.

              Example: QSO_RECORDER=8:QsoRecorder

       SEL5_MACRO_RANGE
              Define two comma separated values here to map the Sel5  tone  call  to  your  macro
              area. E.g. if you have defined: SEL5_MACRO_RANGE=03400,03499 then all incoming Sel5
              tone sequences from 03400 to 03499 are mapped  to  the  macros  section  (refer  to
              Macros   Section,  next  chapter).  Other  sequences  but  the  one  defined  under
              OPEN_ON_SEL5 are ignored so it can be used to call other stations via the  repeater
              without a repeater reaction.

       ONLINE_CMD
              Define  a  DTMF  command that is used to switch the node between online and offline
              mode. When in the off-state, the transmitter will not be turned on by any event. If
              a  module is active when the node is brought offline, it will be deactivated and no
              module activation will be allowed in offline  mode.  No  other  commands  than  the
              online command will be accepted in the offline state.

              If  the  command for example is set to 998877 then 9988771 will set the node online
              and  9988770  will  set  it  offline.  If  a   module   is   active   or   if   the
              ACTIVATE_MODULE_ON_LONG_CMD  is  used,  the command must be prefixed with a star to
              work as expected. The star means "force core command".

       STATE_PTY
              Using this configuration variable it is possible to specify a path to a UNIX 98 PTY
              that SvxLink state events is published to. The published events is in a simple text
              format using a space separated list of values. SvxLink will create  a  softlink  to
              the  actual  slave PTY. For that reason, SvxLink must have write permissions in the
              directory where the softlink should be created. Monitoring the  PTY  output  is  as
              simple as doing a cat /path/to/pty after starting SvxLink. See STATE PTY FORMAT for
              more information on the format of the state messages.

              Example: STATE_PTY=/tmp/state_pty

       DTMF_CTRL_PTY
              Using this configuration variable it is possible to specify a path to a UNIX 98 PTY
              that  allows  a  dtmf  control  of each single SvxLink logic. SvxLink will create a
              softlink to the actual  slave  PTY.  For  that  reason,  SvxLink  must  have  write
              permissions in the directory where the softlink should be created. Sending commands
              to the PTY is as simple as  doing  a  echo  '*1#'  >  /path/to/pty  after  starting
              SvxLink.  The  device  works  bidirectional, received dtmf characters (from Rf) are
              output via this interface.

              Example: DTMF_CTRL_PTY=/dev/shm/dtmf_ctrl

   Simplex Logic Section
       The Simplex Logic section contains configuration data for a simplex logic core.  The  name
       of  the  section,  which  in  the  example configuration file is SimplexLogic, must have a
       corresponding list item in the GLOBAL/LOGICS config variable for this  logic  core  to  be
       activated. The name "SimplexLogic" is not magic. It could be called what ever you like but
       it must match the  namespace  name  in  the  SimplexLogic.tcl  script.  The  configuration
       variables below are those that are specific for a simplex logic core.

       TYPE   The type for a simplex logic core is always Simplex.

       MUTE_RX_ON_TX
              Set to 1 to mute the receiver when the transmitter is transmitting (default) or set
              it to 0 to make the RX active during transmissions.  One might want to set this  to
              0 if the link is operating on a split frequency.  Then the link can accept commands
              even when it's transmitting.  The  normal  setting  is  1,  to  mute  the  RX  when
              transmitting.

       MUTE_TX_ON_RX
              Set  to 1 to mute the transmitter when the squelch is open (default) or set it to 0
              to make the TX active during squelch open.  One might want to set this to 0 if  the
              link  is  operating  on  a split frequency or if it's connected to some full duplex
              device.  The normal setting is 1, to mute the TX when the squelch is open.

   Repeater Logic Section
       A Repeater Logic section contains configuration data for a repeater logic core.  The  name
       of  the  section,  which  in  the example configuration file is RepeaterLogic, must have a
       corresponding list item in the GLOBAL/LOGICS config variable for this  logic  core  to  be
       activated.  The  name "RepeaterLogic" is not magic.  It could be called what ever you like
       but it must match the namespace name in the RepeaterLogic.tcl  script.  The  configuration
       variables below are those that are specific for a repeater logic core.

       TYPE   The type for a repeater logic core is always Repeater.

       NO_REPEAT
              Set  this to 1 if you do NOT want SvxLink to play back the incoming audio. This can
              be used when the received audio is directly  coupled  by  hardware  wiring  to  the
              transmitter. What you win by doing this is that there is zero delay on the repeated
              audio. When the audio is routed through SvxLink there is always an amount of delay.
              What  you  loose  by  doing  this  is  the  audio  processing done by SvxLink (e.g.
              filtering, DTMF muting, squelch tail elimination) and the  ability  to  use  remote
              receivers.

       IDLE_TIMEOUT
              The  number  of  seconds  the  repeater  should  have  been idle before turning the
              transmitter off.

       OPEN_ON_1750
              Use this configuration variable if it should be possible to open the repeater  with
              a  1750Hz  tone burst. Specify the number of milliseconds the tone must be asserted
              before the repeater is opened. Make sure that the time specified is long enough for
              the  squelch  to have time to open. Otherwise the repeater will open "too soon" and
              you will hear an ugly 1750Hz beep as the first thing.  A value of  0  will  disable
              1750 Hz repeater opening.

       OPEN_ON_CTCSS
              Use  this configuration variable if it should be possible to open the repeater with
              a CTCSS tone (PL).  The  syntax  of  the  value  is  tone_fq:min_length.  The  tone
              frequency  is  specified  in  whole  Hz and the minimum tone length is specified in
              milliseconds. For examples if a 136.5 Hz tone must be asserted for two seconds  for
              the repeater to open, the value 136:2000 should be specified.

       OPEN_ON_DTMF
              Use  this configuration variable if it should be possible to open the repeater with
              a DTMF digit. Only one digit  can  be  specified.  DTMF  digits  pressed  when  the
              repeater is down will be ignored.

       OPEN_ON_SEL5
              Use  this  configuration  variable  if  you  want  to open your repeater by using a
              selective tone call that is often used  in  commercial  radio  networks.   Example:
              OPEN_ON_SEL5=03345 opens your repeater only if that sequence has been received. You
              can use sequence lengths from 4 to 25.

       CLOSE_ON_SEL5
              Use this configuration variable if you want to  close  your  repeater  by  using  a
              selective  tone  call  that  is  often used in commercial radio networks.  Example:
              CLOSE_ON_SEL5=03345 closes your repeater if that sequence has  been  received.  You
              can use sequence lengths from 4 to 25.

       OPEN_ON_SQL
              Use  this configuration variable if it should be possible to open the repeater just
              by keeping the squelch open for a while. The value to set is the minimum number  of
              milliseconds the squelch must be open for the repeater to open.

       OPEN_ON_SQL_AFTER_RPT_CLOSE
              Activate the repeater on just a squelch opening if there have been no more than the
              specified number of seconds since the repeater closed.

       OPEN_SQL_FLANK
              Determines if OPEN_ON_SQL and OPEN_ON_CTCSS should activate the repeater  when  the
              squelch  open  or  close.  If  set  to  OPEN,  the repeater will activate and start
              retransmitting audio immediately. No identification will be sent. If set to  CLOSE,
              the  repeater  will not activate until the squelch close. An identification will be
              sent in this case.

       IDLE_SOUND_INTERVAL
              When the repeater is idle, a sound is played. Specify the interval in  milliseconds
              between playing the idle sound. An interval of 0 disables the idle sound.

       SQL_FLAP_SUP_MIN_TIME
              Flapping  squelch  suppression  is  used  to  close  the  repeater down if there is
              interference on the  frequency  that  open  the  squelch  by  short  bursts.   This
              configuration variable is used to specify the minimum time, in milliseconds, that a
              transmission must last to be classified as a real transmission. A good value is  in
              between 500-2000ms.

       SQL_FLAP_SUP_MAX_COUNT
              Flapping  squelch  suppression  is  used  to  close  the  repeater down if there is
              interference on the  frequency  that  open  the  squelch  by  short  bursts.   This
              configuration  variable  is used to specify the maximum number of consecutive short
              squelch openings allowed before shutting the repeater down.  A  good  value  is  in
              between 5-10.

       ACTIVATE_MODULE_ON_LONG_CMD
              This  configuration  variable activate a feature that might help users not aware of
              the SvxLink command structure. The idea is to activate the specified module when  a
              long enough command has been received. The typical example is an EchoLink user that
              is used to just typing in the node ID and then the connection should be established
              right  away.  Using  this  configuration  variable,  specify a minimum length and a
              module name. If no module is active and at least the specified number of digits has
              been  entered,  the  given module is activated and the command is sent to it. To be
              really   useful   this   feature   should   be    used    in    cooperation    with
              EXEC_CMD_ON_SQL_CLOSE.

              For  example,  if  this  configuration variable is set to "4:EchoLink" and the user
              types in 9999, the EchoLink module is first activated and then the command 9999  is
              sent to it, which will connect to the ECHOTEST server.

       IDENT_NAG_TIMEOUT
              Tell  repeater users that are not identifying to identify themselvs.  The number of
              seconds to wait for an identification, after the repeater has  been  activated,  is
              set  using this configuration variable.  A valid identification is considered to be
              a transmission longer than the time set  by  the  IDENT_NAG_MIN_TIME  configuration
              variable.  We  don't know if it's really an identification but it's the best we can
              do.  Setting it to 0 or commenting it out disables the feature.

       IDENT_NAG_MIN_TIME
              This is the minimum time, in milliseconds, that a  transmission  must  last  to  be
              considered as an identification. This is used as described in the IDENT_NAG_TIMEOUT
              configuration variable.

   ReflectorLogic
       The ReflectorLogic is used to connect to an SvxReflector  server.  The  SvxReflector  will
       distribute  all audio to all connected nodes. To actually send audio to the reflector from
       a logic core, set up a link between the two logics using LogicLinking. More than one logic
       core can be connected.

       TYPE   The type for a reflector logic core is always Reflector.

       HOST   The hostname or IP address of the reflector server.

       PORT   The  TCP/UDP  port  number  used  by the server. The client do not need to open any
              ports in the firewall. Default: 5300.

       CALLSIGN
              The callsign  of  this  node.  The  callsign  also  serves  as  the  username  when
              authenticating to the SvxReflector server.

       AUTH_KEY
              The  authentication  key, or password, used when authenticating to the SvxReflector
              server.

       JITTER_BUFFER_DELAY
              A jitter buffer is used to prevent gaps in the audio when the network connection do
              not provide a steady flow of data. Set this configuration variable to the number of
              milliseconds to buffer before starting to process the audio. Default: 0.

   QSO Recorder Section
       The QSO recorder is used to record all received audio to files on  disk.  All  audio  from
       receivers, modules and logic links are recorded. Announcements are not recorded.

       REC_DIR
              Use  this  configuration  variable to specify in which directory to write the audio
              files. A good place is /var/spool/svxlink/qso_recorder.

       MIN_TIME
              If the duration  of  the  recorded  content  for  a  file  is  less  then  MIN_TIME
              milliseconds,  the  file will be deleted when the file is closed. Default: 0 (empty
              files will be deleted).

       MAX_TIME
              Setting this configuration variable will set an upper limit for the file size of  a
              recording.  No  more  than MAX_TIME seconds of content will be recorded to a single
              file. When the maximum time have been reached, the file is closed and another  file
              is created. Note that it is not the maximum time that the recording has been active
              that we are setting a limit for but rather how much content that have been recorded
              to  the file. If nothing is recorded, the file can stay open indefinitely. Default:
              0 (no limit)

       SOFT_TIME
              To not get abrupt breaks in recordings it is possible to set  a  soft  break  time.
              Let's  say  that MAX_TIME is set to 3600 seconds (one hour). If we set SOFT_TIME to
              300 seconds (five minutes) the QSO recorder try to close  the  file  on  a  squelch
              close  somewhere  between  55  and  60  minutes.  In  this way we may avoid getting
              transmissions split up between files. Default: 0 (no limit)

       MAX_DIRSIZE
              Specify the maximum  total  size  in  megabytes  of  the  files  in  the  recording
              directory.  If  the  limit is exceeded, the oldest files are deleted. The directory
              size is checked upon file close so the size may grow  temporarily  past  the  limit
              with  at  most  the  size  of  one  recorded file. Only files which have a filename
              starting with "qsorec_" will be considered for deletion. If using an  ENCODING_CMD,
              make  sure that the "qsorec_" prefix is not removed from the target filename unless
              you really want the MAX_DIRSIZE feature to skip them.  Default: 0 (no limit)

       DEFAULT_ACTIVE
              If this configuration variable is set to 1, the QSO recorder will be  activated  by
              default when SvxLink start. Default: 0 (default inactive)

       TIMEOUT
              If  a timeout is specified, the activation state of the QSO recorder will return to
              the value specified in the DEFAULT_ACTIVE configuration variable when the node  has
              been  idle  for the specified number of seconds. When DEFAULT_ACTIVE is unset or 0,
              if the QSO recorder is manually activated  it  will  be  automatically  deactivated
              after the specified amount of time of inactivity.  When DEFAULT_ACTIVE is set to 1,
              if the QSO recorder is manually deactivated  it  will  be  automatically  activated
              after the specified amount of time of inactivity.  Default: 0 (no timeout)

       QSO_TIMEOUT
              Set  this configuration variable if you want to close the currently opened file and
              open a new one after each QSO. The number of seconds the node should be idle before
              closing the file should be specified. Default: 0 (no QSO timeout)

       ENCODER_CMD
              Specify  a  command  to be executed after a new wav file have been written to disk.
              This makes it possible to use an external encoder utility to encode the wav file to
              another  format.  Even  though  this  configuration  variable  was  added to run an
              external encoder it could do more complicated things with the  file  if  needed.  A
              couple  of  examples would be to transfer the file to another computer or to send a
              notification e-mail. If the command line get too complicated it may be a good  idea
              to write a script instead.

              The  encoder  command  will  be  run  under  a shell so normal shell operators like
              redirects and pipes may be used. The  shell  specified  in  the  SHELL  environment
              variable  will  be used and if not set, /bin/sh will be used. The "-c" command line
              option will be added so the complete command will look something  like:  $SHELL  -c
              "$ENCODER_CMD".  A number of %-codes can be included in the command.  They have the
              following meaning:

              ·   %f - The full filename with full path

              ·   %d - The directory part (what REC_DIR is set to)

              ·   %b - The basename, that is, the filename without path and extension

              ·   %n - The filename without path but with extension

              The encoder will be started in the background and it will not be  stopped  even  if
              SvxLink exits. It will run in the background until it's done. As long as SvxLink is
              running it is monitoring the encoding processes. If a process run for  longer  than
              one hour it will be killed.

              Note  that SvxLink will never remove the original recording so that have to be done
              in the encoder command. Here are a couple of examples:

               ENCODER_CMD=/usr/bin/oggenc -Q \"%f\" && rm \"%f\"
               ENCODER_CMD=/usr/bin/lame --quiet \"%f\" \"%d/%b.mp3\" && rm \"%f\"
               ENCODER_CMD=/usr/bin/speexenc \"%f\" \"%d/%b.spx\" 2>/dev/null && rm \"%f\"
               ENCODER_CMD=/usr/bin/opusenc \"%f\" \"%d/%b.opus\" 2>/dev/null && rm \"%f\"

   Macros Section
       A macros section is used to declare macros that can be used by a  logic  core.  The  logic
       core  points out the macros section to use by using the MACROS configuration variable. The
       name of the MACROS section can be chosen arbitrarily  as  long  as  it  match  the  MACROS
       configuration  variable  in  the logic core configuration section. There could for example
       exist both a [RepeaterLogicMacros] and a [SimplexLogicMacros] section.

       A macro is a kind of shortcut that can be used to decrease the amount of key presses  that
       have  to  be  done to connect to common EchoLink stations for example.  On the radio side,
       macros are activated by pressing "D"  "macro  number"  "#".  A  macros  section  can  look
       something like the example below. Note that the module name is case sensitive.

         [Macros]
         1=EchoLink:9999#
         2=EchoLink:1234567#
         9=Parrot:0123456789#

       For example, pressing DTMF sequence "D1#" will activate the EchoLink module and connect to
       the EchoTest conference node.

   Logic Linking
       A logic linking configuration section is used to specify information for  a  link  between
       two  or  more  SvxLink logic cores. Such a link can for example be used to connect a local
       repeater  to  a  remote  repeater  using  a  separate  link  transceiver.   The  link   is
       activated/deactivated   using   DTMF  commands  and/or  automatically  depending  on  your
       configuration.  When the link  is  active,  all  audio  received  by  one  logic  will  be
       transmitted by the other logic(s).

       The  name  of the logic linking section can be chosen freely. In the example configuration
       file, there is a section [LinkToR4]. To use a logic linking section in  a  logic  core  it
       must  be  pointed out by the LINKS configuration variable in the GLOBAL section.  Example:
       GLOBAL/LINKS=LinkToR4

       CONNECT_LOGICS
              A comma separated list of logic specifications  for  the  logic  cores  to  connect
              together.  Each  logic  specification  has  three parts separated by colons: <logic
              name>:<command>:<announcement name>. The "logic name" is the name of the  logic  to
              include  in  the  link.  To  manually activate or deactivate the link from the just
              specified logic, "command" is used. The "announcement name" is used when announcing
              link  related  activities  like  activation  or  deactivation.   Both "command" and
              "announcement name" may be left empty if no manual control is wanted.   An  example
              config line may look like this:

              RepeaterLogic_2m:99:SK3GW,RepeaterLogic_70cm:94:SK3GK

              It  will  include  two logics in the link, RepeaterLogic_2m and RepeaterLogic_70cm.
              From the 2m side, the link will be activated when the user  send  command  991  and
              deactivated  when  the user send command 990. Upon activation, an announcement like
              "activating link to SK3GW" will be played back. From the 70cm side the command will
              be  941  and  940  respectively. The announcement when activating the link from the
              70cm side will be something like "activating link to SK3GK".

       DEFAULT_ACTIVE
              The link will  be  connected  automatically  during  startup  of  SvxLink  if  this
              configuration  variable  is set to 1. Also, if a link is manually disconnected by a
              user it will be automatically reconnected after some time of inactivity.  The  time
              is specified by setting the TIMEOUT configuration variable. If the TIMEOUT variable
              is not set, no automatic reactivation will be done.

       TIMEOUT
              The number of seconds after which the link will  be  automatically  deactivated  if
              there  have  been  no  activity.  If 1 have been specified for DEFAULT_ACTIVE, this
              configuration variable will specify  after  how  many  seconds  the  link  will  be
              reactivated after being manually deactivated.

       AUTOACTIVATE_ON_SQL
              Enter  a  comma  separated  list of logics, which should automatically activate the
              link if there is activity (e.g. squelch open) in it. One possible  application  for
              this  is  for  example  to  make the connection of a microphone/speaker combination
              (without DTMF encoder) for brief announcements but  without  having  to  constantly
              listen in.  Example: AUTOACTIVATE_ON_SQL=MicSpkrLogic

   Local Receiver Section
       A  local receiver section is used to specify the configuration for a receiver connected to
       the sound card. In the default configuration file there is a Local  configuration  section
       called  Rx1.   The  section  name  could be anything. It should match the RX configuration
       variable in the logic core where the receiver is to be used. The  available  configuration
       variables are described below.

       TYPE   Always "Local" for a local receiver.

       AUDIO_DEV
              Specify  the  audio device to use. Normally alsa:plughw:0. Have a look at the AUDIO
              DEVICE SPECIFICATIONS chapter for more information.

       AUDIO_CHANNEL
              Specify the audio channel to use. SvxLink can use the left/right stereo channels as
              two mono channels. Legal values are 0 or 1.

       SQL_DET
              Specify  the  type  of  squelch  detector  to use. Possible values are: VOX, CTCSS,
              SERIAL, EVDEV, SIGLEV, PTY, GPIO or HIDRAW.

              The VOX squelch detector determines if there is a signal present by  calculating  a
              mean  value  of  the  sound samples. The VOX squelch detector behaviour is adjusted
              with VOX_FILTER_DEPTH and VOX_THRESH. VOX is actually a bit  of  a  misnomer  since
              it's   a   "Voice   Operated  Squelch"  and  VOX  actually  means  "Voice  Operated
              Transmitter". However, the term VOX is widely understood by hams all over the world
              so we'll stick with it.

              The  CTCSS  squelch  detector  checks for the presence of a tone with the specified
              frequency. The tone frequency is specified using the CTCSS_FQ config variable.  The
              thresholds  are specified using the CTCSS_OPEN_THRESH and CTCSS_CLOSE_THRESH config
              variables. Other config variables that effect the  CTCSS  squelch  is:  CTCSS_MODE,
              CTCSS_SNR_OFFSET, CTCSS_BPF_LOW, CTCSS_BPF_HIGH.

              The  SERIAL squelch detector use a pin in a serial port to detect if the squelch is
              open. This squelch detector can be used if the receiver have an  external  hardware
              indicator  of  when  the squelch is open. Specify which serial port/pin to use with
              SERIAL_PORT and SERIAL_PIN.

              The EVDEV squelch detector read squelch events from a /dev/input/eventX device.  An
              example  where  this  could  be  useful is if you have a USB audio device with some
              buttons on it. Some of these  devices  generate  key  press  events,  much  like  a
              keyboard.  Specify  which  /dev/input  device  node  to use using the EVDEV_DEVNAME
              config variable. Set which events that should open and close the squelch using  the
              EVDEV_OPEN and EVDEV_CLOSE config variables.

              The  GPIO  squelch  detector read a pin on the GPIO Port. Depending on the level of
              the pin, the squelch is switched. A HIGH (3.3V) at the pin set the squelch to  open
              and a LOW (GND) level will set the squelch to closed.  Specify which squelch pin to
              use with the GPIO_SQL_PIN configuration variable.  On some devices, like the Orange
              Pi, you also need to set the GPIO_PATH configuration variable.

              The  SIGLEV  squelch  detector  use  signal  level measurements to determine if the
              squelch is open or not. Which signal level detector to use  is  determined  by  the
              setting of the SIGLEV_DET configuration variable. The open and close thresholds are
              set using the SIGLEV_OPEN_THRESH and SIGLEV_CLOSE_THRESH  configuration  variables.
              If  using  the  NOISE signal level detector note the following. The detector is not
              perfect (it's affected by speech) so you will also want to  setup  SQL_HANGTIME  to
              prevent  it from closing in the middle of a transmission. A value between 100-300ms
              is probably what you need. If using this squelch type in cooperation with a  voter,
              you'll  also  probably  need  to  setup  SQL_DELAY  to  get  correct  signal  level
              measurements. A value of about 40ms seem to be OK.   Also,  when  using  the  NOISE
              signal  level  detector  the  input audio must be unsquelched since silence will be
              interpreted as a high signal strength.

              The PTY squelch expects a very easy protocol over a pseudo-tty device,  created  by
              SvxLink on runtime.  An 'O' over this pty device indicate an open squelch, a 'Z' is
              a closed squelch.  Define the slave pty in PTY_PATH  (e.g.  PTY_PATH=/tmp/sql)  and
              SvxLink  will  create a link to the specified path from it's pseudotty slave device
              (/dev/pts/X). This can be used by a script to interface custom devices,  modems  or
              other hardware to SvxLink. Look for nhrcx.pl to see an example.

              The  HIDRAW  squelch supports human interface devices (HID), USB devices like CM108
              soundcard e.g. used in the URI Echolink adapter made by DMK.

       SQL_START_DELAY
              The squelch start delay is of most use when using VOX squelch. For example, if  the
              transceiver  makes  a  noise when the transmitter is turned off, that might trigger
              the VOX and cause an  infinite  loop  of  squelch  open/close  transmitter  on/off.
              Specify  the  number  of  milliseconds  that the squelch should be "deaf" after the
              transmitter has been turned off.

       SQL_DELAY
              Specify a delay in milliseconds that a squelch open  indication  will  be  delayed.
              This  odd  feature  can be of use when using a fast squelch detector in combination
              with the signal level detector.  A  squelch  delay  will  allow  the  signal  level
              detector  to  do its work before an indication of squelch open is sent to the logic
              core. A delay might be needed  when  using  the  voter  to  choose  among  multiple
              receivers. A normal value could be somewhere in between 20-100ms.

       SQL_HANGTIME
              How  long,  in  milliseconds,  the  squelch  will  stay open after the detector has
              indicated that it is closed. This configuration variable will  affect  all  squelch
              detector types.

       SQL_EXTENDED_HANGTIME
              At  low  signal  strengths it can be beneficial to use a longer squelch hangtime so
              that it is less likely for the squelch to close.  This  configuration  variable  is
              unset  by  default.  A  value of 1000 milliseconds may be a good value to start out
              with.  To  enable   the   extended   squelch   hangtime   feature,   set   up   the
              SQL_EXTENDED_HANGTIME_THRESH variable.

       SQL_EXTENDED_HANGTIME_THRESH
              At  low  signal  strengths it can be beneficial to use a longer squelch hangtime so
              that it is less likely for the squelch to close.  This  configuration  variable  is
              unset  by default. When set to a signal level it will activate the extended squelch
              hangtime feature. When the signal strength during a transmission fall below the set
              threshold, the extended hangtime will be used. Start out with a value between 10 to
              15. The SQL_EXTENDED_HANGTIME variable is used to set how long the extended squelch
              hangtime  should  be.  Make sure that you have calibrated the signal level detector
              before turning this feature on. Otherwise it will not work as expected.

       SQL_TIMEOUT
              Use this configuration variable to set an upper limiti, in seconds,  for  how  long
              the  squelch is allowed to be open. If the timeout value is exceeded the squelch is
              forced to closed. If the squelch close for real, everything is back to normal. When
              it  opens  the  next  time a squelch open will be signalled.  For example, use this
              feature to make sure that a faulty receiver cannot block the system indefinitly.

       VOX_FILTER_DEPTH
              The number of milliseconds to create the mean value over. A small value  will  make
              the  vox  react  quicker  (<200)  and  larger values will make it a little bit more
              sluggish. A small value is often better.

       VOX_THRESH
              The threshold that the mean value of the samples must exceed for the squlech to  be
              considered  open.  It's  hard to say what is a good value. Something around 1000 is
              probably a good value. Set it as low as possible without getting the vox  to  false
              trigger.

       CTCSS_MODE
              This configuration variable set the CTCSS detection method used. These are the ones
              to choose from:

              ·   0 (Default) Will choose the detection mode that is the default in the software.
                  At the moment this is the "Estimated SNR" mode.

              ·   1  (Neighbour  bins)  This detection mode will use three narrow frequency bands
                  (~8Hz) to do the detection. One band is centered around the tone to be detected
                  and  then there are one band above and one below the tone. These bands are used
                  to estimate the noise floor. This is  the  detector  that  have  been  used  in
                  SvxLink  for  a long time. It is however rather slow with its detection time of
                  about 450ms.  There is no good reason to use this detector anymore  but  it  is
                  kept in case the new detector does not work for some hardware setup.

              ·   2  (Estimated  SNR)  This  is  a  newer detector implementation which have some
                  improvements. The most notable difference  is  that  it  is  faster.  The  mean
                  detection  time will be around 200ms. This is the default detection mode if not
                  specified.  This detector will use a larger  passband  to  estimate  the  noise
                  floor  which  make  it  more  stable.  The  default  config use the whole CTCSS
                  passband but this can be customized using the CTCSS_BPF_LOW and  CTCSS_BPF_HIGH
                  config variables.

              ·   3  (Estimated SNR+Phase) This detector is a bit experimental. It is even faster
                  and more narrow than the other detection modes. The mean detection time will be
                  something like 150ms.  The detection bandwidth is very narrow and very sharp so
                  that no adjacent tones will trigger the detector. The price to  pay  for  these
                  improvements is that is it a bit less sensitive.

       CTCSS_FQ
              If  CTCSS  (PL,subtone)  squelch  is  used  (SQL_DET  is set to CTCSS), this config
              variable sets the frequency of the tone to use. The tone frequency ranges from 67.0
              to  254.1  Hz.  There  actually  is  nothing  that  will  stop you from setting the
              frequency to something outside this range but there is no guarantee  that  it  will
              work.

       CTCSS_OPEN_THRESH
              If  CTCSS  (PL,  subtone)  squelch  is  used (SQL_DET is set to CTCSS), this config
              variable sets the required tone level to indicate squelch open. The value  is  some
              kind  of  estimated  signal  to  noise  dB  value. If using CTCSS mode 2 or 3 it is
              helpful to set up the CTCSS_SNR_OFFSET config variable.  This  will  make  the  SNR
              estimation pretty good. Default threshold is 15dB.

       CTCSS_CLOSE_THRESH
              If  CTCSS  (PL,  subtone)  squelch  is  used (SQL_DET is set to CTCSS), this config
              variable sets the required tone level to indicate squelch close. The value is  some
              kind  of  estimated  signal  to  noise  dB  value. If using CTCSS mode 2 or 3 it is
              helpful to set up the CTCSS_SNR_OFFSET config variable.  This  will  make  the  SNR
              estimation pretty good. Default threshold is 9dB.

       CTCSS_SNR_OFFSET
              This  config  variable  is used when CTCSS_MODE is set to 0, 2 or 3. It will adjust
              the estimated SNR value so that it becomes very close to a  real  SNR  value.  This
              value   will  have  to  be  adjusted  if  CTCSS_FQ,  CTCSS_MODE,  CTCSS_BPF_LOW  or
              CTCSS_BPF_HIGH changes.  Use the siglevdetcal utility to find out what to set  this
              config  variable  to.   There is no requirement to set this config variable up. The
              downside is that you will then need to experiment more with  the  CTCSS_OPEN_THRESH
              and CTCSS_CLOSE_THRESH config variables to find the correct squelch level.

       CTCSS_BPF_LOW
              When  CTCSS_MODE  is set to 0, 2 or 3, this config variable will set the low cutoff
              frequency for the passband filter. It normally should not have to be  adjusted  but
              could  improve  the  detector  if some interference falls within the passband (e.g.
              mains hum). Note however that the more narrow  you  make  the  passband,  the  less
              stable  the  detector  will  be.  You  may  need  to  compensate  by increasing the
              open/close thresholds or by setting up SQL_DELAY and SQL_HANGTIME. Default is 60Hz.

       CTCSS_BPF_HIGH
              When CTCSS_MODE is set to 0, 2 or 3, this config variable will set the high  cutoff
              frequency  for  the passband filter. It normally should not have to be adjusted but
              could improve the detector if some interference falls  within  the  passband.  Note
              however  that  the  more narrow you make the passband, the less stable the detector
              will be. You may need to compensate by increasing the open/close thresholds  or  by
              setting up SQL_DELAY and SQL_HANGTIME. Default is 270Hz.

       SERIAL_PORT
              If  SQL_DET  is  set  to  SERIAL, this config variable determines which serial port
              should be used for hardware squelch input (COS - Carrier Operated Squelch).   Note:
              If the same serial port is used for the PTT, make sure you specify exactly the same
              device name. Otherwise the RX and TX will not be able to share the port.   Example:
              SQL_PORT=/dev/ttyS0

       SERIAL_PIN
              If  SQL_DET  is  set  to  SERIAL,  this config variable determines which pin in the
              serial port that should be used for hardware squelch input (COS - Carrier  Operated
              Squelch).  It is possible to use the DCD, CTS, DSR or RI pin. If inverted operation
              is desired, prefix the pin name with an exclamation mark (!).

              Example: SQL_PIN=!CTS

       SERIAL_SET_PINS
              Set the specified serial port pins to a static state. This can be good if  using  a
              pin  for  reference  voltage  or  if  a  pin  have  to be in a certain state to not
              interfere with the operation of  some  equipment.  There  are  two  pins  that  are
              possible  to  use,  RTS  and DTR. If prefixed with an exclamation mark (!), the pin
              will be cleared and if not it will be set.

              Example: SERIAL_SET_PINS=RTS!DTR will set RTS and clear DTR.

       EVDEV_DEVNAME
              Specify which /dev/input device node to use for the  EVDEV  squelch  detector.   To
              find out which device node and event codes to use, install the evtest utility. Find
              a candidate device node under /dev/input/ or /dev/input/by-id/ and try  the  evtest
              utility  on  it.  Press  some  keys  on the device you want to read events from. If
              you're in luck, events will be printed on the screen.

       EVDEV_OPEN
              Use the evtest utility, as described above, to find out type, code  and  value  for
              the  event  you  want to use to open the squelch. For example if type is 1, code is
              163 and value is 1, set this config variable to 1,163,1.

       EVDEV_CLOSE
              Use the evtest utility, as described above, to find out type, code  and  value  for
              the  event  you want to use to close the squelch. For example if type is 1, code is
              163 and value is 0, set this config variable  to  1,163,0.  If  you  set  the  same
              type,code,value  combination  for  both EVDEV_OPEN and EVDEV_CLOSE, that event will
              toggle the squelch.

       GPIO_PATH
              Use this configuration variable to set the path to  the  sys  control  devices  for
              GPIO.   This  normally is /sys/class/gpio but on some hardware, like the Orange Pi,
              the path is /sys/class/gpio_sw.

       GPIO_SQL_PIN
              If SQL_DET is set to GPIO this configuration variable is used to choose which  GPIO
              pin  to  use  for  squelch input. The most common name is gpio<number>, like gpio4.
              Some GPIO drivers use more complex names, like gpio33_pe11. If  inverted  operation
              is desired, prefix the pin name with an exclamation mark (!).

              Example: GPIO_SQL_PIN=!gpio4

       SIGLEV_DET
              Choose  which  type  of  signal  level  detector to use. The available choices are:
              "NONE", "NOISE", "TONE" or "SIM". Depending on other  configuration  there  may  be
              more choices available. For example, if a Ddr receiver is used there will also be a
              DDR signal level detector available.  The  signal level  detector  is  only  needed
              when  using  multiple  receivers  in a voter configuration or when using the SIGLEV
              squelch type.

              Type NONE disable the signal level detector. This may be used if  no  signal  level
              detector is needed.

              Type  NOISE  use  a bandpass filter in the range of 5 - 5.5kHz (CARD_SAMPLE_RATE >=
              16000) or a highpass filter at 3.5kHz (CARD_SAMPLE_RATE =  8000)  to  estimate  the
              amount  of  noise  present on the signal. If the passband contain a small amount of
              energy, a strong signal is assumed. If the passband contain more energy,  a  weaker
              signal  is  assumed.   The  noise  detector must be calibrated for the receiver and
              audio levels you use.  This  is  done  using  the  SIGLEV_SLOPE  and  SIGLEV_OFFSET
              configuration  variables.  See  chapter CALIBRATING THE SIGNAL LEVEL DETECTOR below
              for more information.

              Type TONE is not really a signal level detector but rather  a  transport  mechanism
              for  getting  signal  level measurements from a remote receiver site, linked in via
              RF, to the main SvxLink site.  It is using ten tones, one  for  each  signal  level
              step,  in  the high audio frequency spektrum (5.5 - 6.4kHz, 100Hz step) to indicate
              one of ten signal levels.  Only the receiving part have been implemented in SvxLink
              at  the moment. On the remote receiver side an Atmel AVR ATmega8 is used to map the
              signal level voltage to tone frequencies.  Use  the  TONE_SIGLEV_MAP  configuration
              variable to map each tone to a corresponding signal level value in between 0 - 100.

              Type SIM is a simulated signal level detector that can be used to debug problems in
              the   SvxLink   software.   Use   the   SIGLEV_MIN,   SIGLEV_MAX,   SIGLEV_DEFAULT,
              SIGLEV_TOGGLE_INTERVAL   and   SIGLEV_RAND_INTERVAL   configuration   variables  to
              configure the simulator.

       HID_DEVICE
              This parameter defines the device your hidraw adapter is connected to. This port is
              created by the linux/hidraw driver.  e.g. HID_DEVICE=/dev/hidraw3

       HID_SQL_PIN
              Define  the  pin  your hardware squelch (from RX) is connected to. Valid values are
              VOL_UP, VOL_DN, MUTE_PLAY or MUTE_REC.

              Example: HID_SQL_PIN=VOL_UP

       SIGLEV_SLOPE
              The slope (or gain) of the signal  level  detector.  See  chapter  CALIBRATING  THE
              SIGNAL LEVEL DETECTOR below for more information.

       SIGLEV_OFFSET
              The  offset  of the signal level detector. See chapter CALIBRATING THE SIGNAL LEVEL
              DETECTOR below for more information.

       SIGLEV_BOGUS_THRESH
              This configuration variable set an upper threshold for the estimated  signal  level
              when  using the noise signal level detector.  If the estimation goes over the given
              threshold, a signal level of 0 will be reported. This can be used as  a  workaround
              when  using a receiver with squelched audio output. When the squelch is closed, the
              receiver audio is silent. The signal level estimator will interpret this as a  very
              strong  signal.  Setting  up  the bogus signal level threshold will counteract this
              behavior but a better solution is to use unsquelched audio if possible.

              By default this feature is disabled. If enabling it, start with a  value  somewhere
              around 120.

       TONE_SIGLEV_MAP
              This  configuration  variable  is  used  to  map  tones to signal level values when
              SIGLEV_DET=TONE. It is a comma separated list of ten values in the 0 -  100  range.
              The  first  value  map to the 5500Hz tone, the second to the 5600Hz tone and so on.
              The last value map to the 6400Hz tone.  What levels the tones should be  mapped  to
              depends on the tone sender implementation. The default tone map is 10,20,30...,100.

              The Atmel AVR processor used by the author have a reverse mapping so that the first
              tone (5500Hz) indicate the highest signal  strength  and  the  last  tone  (6400Hz)
              indicate  the  lowest  signal  strength.  It  is  also  not  linear since it's more
              important to have fine measurement granularity in the lower signal strength  range.
              This is how the mapping look for the AVR: 100,84,60,50,37,32,28,23,19,8.

       SIGLEV_OPEN_THRESH
              This  is  the squelch open threshold for the SIGLEV squelch detector.  If using the
              NOISE signal level detector, make sure to first calibrate the signal level detector
              using  the SIGLEV_SLOPE and SIGLEV_OFFSET configuration variables. The signal level
              detector should normally be calibrated so that full signal strength is 100  and  no
              signal  is  0.  Depending  on  your  background  noise  level a good value for this
              configuration variable is between 5 and 20.

       SIGLEV_CLOSE_THRESH
              This is the squelch close threshold for the SIGLEV squelch detector.  If using  the
              NOISE signal level detector, make sure to first calibrate the signal level detector
              using the SIGLEV_SLOPE and SIGLEV_OFFSET configuration variables. The signal  level
              detector  should  normally be calibrated so that full signal strength is 100 and no
              signal is 0. Depending on your  background  noise  level  a  good  value  for  this
              configuration variable is between 1 and 10.

       SIGLEV_MIN
              The minimum signal level used by SIM signal level detector.

       SIGLEV_MAX
              The maximum signal level used by SIM signal level detector.

       SIGLEV_DEFAULT
              The default signal level set on startup by the SIM signal level detector.

       SIGLEV_TOGGLE_INTERVAL
              The interval, in millisecods, that the SIM signal level detector will use to toggle
              between the maximum and the minimum signal levels.

       SIGLEV_RAND_INTERVAL
              The interval, in milliseconds, that the SIM signal level detector will use  between
              randomizing a new signal level value. At each interval, the simulator will randomly
              either increase or decrease the signal level with one step.

       DEEMPHASIS
              Apply a deemphasis filter on received audio. The deemphasis  filter  is  used  when
              taking  audio  directly  from  the  detector in the receiver, like when using a 9k6
              packet radio connector. If not using a deemphasis filter the high frequencies  will
              be amplified resulting in a very bright (tinny) sound.

       SQL_TAIL_ELIM
              Squelch  tail  elimination  is  used  to  remove  noise  from the end of a received
              transmission. This is  of  most  use  when  using  CTCSS  or  SIGLEV  squelch  with
              unsquelched  input audio. A normal value is a couple of hundred milliseconds.  Note
              that the audio will be delayed by the same amount of milliseconds.  This  does  not
              matter much for a simplex link but for a repeater the delay might be annoying since
              you risk hearing the end of your own transmission.

       PREAMP The incoming signal will be amplified by the specified number of dB.  This  can  be
              used  as  a  last  measure if the input audio level can't be set high enough on the
              analogue side. A value of 6dB will double the signal level. Note  that  this  is  a
              digital  amplification.  Hence  it  will  reduce the dynamic range of the signal so
              usage should be avoided if possible. It's always better to correct the audio  level
              before sampling it.

       PEAK_METER
              This  is  a  help  to  adjust the incoming audio level. If enabled it will output a
              message when distorsion occurs. To adjust the audio level, first open the  squelch.
              Then  increase  the  audio  level until warning messages are printed.  Decrease the
              audio level until no warning messages are printed. After the  adjustment  has  been
              done, the peak meter can be disabled. 0=disabled, 1=enabled.

       DTMF_DEC_TYPE
              Specify the DTMF decoder type. Set it to INTERNAL to use the internal software DTMF
              decoder. To use the S54S interface featuring a hardware DTMF  decoder,  set  it  to
              S54S.   To  control  it  over a pseudo tty device set it to PTY.  Setting it to PTY
              will install the PTY dtmf decoder. SvxLink creates a symlink linked to a slave  pty
              device on runtime. The name has to be defined with DTMF_PTY.  NONE or commenting it
              out will disable DTMF detection.

       DTMF_MUTING
              Mute the audio during the time when a DTMF digit is being received. Note  that  the
              audio  will  be  delayed  75ms to give the DTMF detector time to do its work.  This
              does not matter much on a simplex link but on a repeater it could be annoying since
              you will hear the last 75 milliseconds of your own transmission.  To counteract the
              added delay one can set up the SQL_TAIL_ELIM configuration variable to at least  75
              milliseconds.  Legal values for DTMF_MUTING are 0=disabled, 1=enabled.

       DTMF_HANGTIME
              This  configuration  variable  can  be  used  if  the  DTMF decoder is too quick to
              indicate digit idle. That does not matter at high signal strengths but  for  weaker
              signals  and  mobile flutter it's not good at all. Each DTMF digit will be detected
              multiple times.  Using this configuration variable, the time (ms) a  tone  must  be
              missing  to  be  indicated as off can be extended. Setting this value too high will
              cause the decoder to be a bit sluggish and it might consider  two  digits  as  one.
              The  hang  time  only affect consecutive digits of the same value (e.g. 1 1).  If a
              detected digit differs from the previously detected digit (e.g 1 2), the hang  time
              is  immediately  canceled and the detected digit is considered as a new one. A good
              default value is 50-100ms.

       DTMF_SERIAL
              When using an external hardware DTMF  decoder  this  config  variable  is  used  to
              specify a serial port (e.g. /dev/ttyS0).

       DTMF_PTY
              When  using the PTY DTMF "decoder" this configuration variable will set the path to
              the PTY slave softlink that the external interface script  use  to  communicate  to
              SvxLink.  Over  this  symlink  a  very  easy communication protocol is used to tell
              SvxLink received DTMF digits: 0-9, A-F, *, #. "E" is the same as "*" and "F" is the
              same  as "#". Sending a digit tell SvxLink when it starts. To tell SvxLink that the
              digit has ended, send a space character.

              The PTY DTMF "decoder" can be used  by  an  external  script  to  interface  custom
              devices, modems or other hardware to SvxLink. Look for nhrcx.pl to see an example.

              Example: /tmp/rx1_dtmf.

       DTMF_MAX_FWD_TWIST
              DTMF  use two tones to encode digits 0-9, A-F. These two tones should normally have
              the sample amplitude. The difference in amplitude is called twist. Forward twist is
              when the higher frequency tone is lower in amplitude than the lower frequency tone.
              According to the standards, 8dB forward twist should be allowed.  Some transmitters
              do  not  correctly  modulate  the  DTMF  tones  to get zero twist.  The most common
              situation is that the forward twist is too  large.  Increasing  this  configuration
              variable  above  8dB  might allow DTMF from these transmitters to be detected. When
              doing this, the DTMF detector will be more sensitive to noise and might cause  more
              false triggers.

       DTMF_MAX_REV_TWIST
              DTMF  use two tones to encode digits 0-9, A-F. These two tones should normally have
              the sample amplitude. The difference in amplitude is called twist. Reverse twist is
              when the lower frequency tone is lower in amplitude than the higher frequency tone.
              According to the standards, 4dB reverse twist should be allowed  but  SvxLink  will
              allow  6dB  by  default.  The most common reason for getting reverse twist is a bad
              de-emphasis filter or that none at all is used, like  when  taking  audio  directly
              from  the  FM  discriminator.  Have a look at the DEEMPHASIS configuration variable
              before starting to modify this configuration variable.

       DTMF_DEBUG
              Set to 1 to continuously print software  DTMF  decoder  decision  parameters.  This
              should  only  be used for a short while to pinpoint problems with the DTMF decoding
              since it will print one row of  analysis  parameters  100  times  per  second.  The
              following parameters are printed.

              ·   pwr - The power in the audio signal. Must be over about -50dB.

              ·   q  -  Quality.  Should be close to 1.00 for a good detection.  If the signal is
                  strong but the value is low anyway, the signal probably is distorted  for  some
                  reason. The input audio level may be too high for example.

              ·   twist  - The amplitude difference between the two tones.  Should be around 0dB,
                  which means the tones should ideally be  of  the  same  strength.  By  default,
                  values  between  -6dB  to +8dB are accepted but the thresholds can be set using
                  the DTMF_MAX_FWD_TWIST and DTMF_MAX_REV_TWIST configuration variables.

              ·   rowq - Quality of the row (low group) tone. Should be close to one.

              ·   colq - Quality of the column (high group) tone. Should be close to one.

              ·   digit - The digit mapped to the two detected tones.

              ·   row3rd - The row tone relation to its third overtone.  Should be close to zero.
                  If it's not, the signal is probably distorted.

              ·   col3rd  -  The  column tone relation to its third overtone.  Should be close to
                  zero. If it's not, the signal is probably distorted.

              ·   im - The relation of the two tones to their intermodulation product.  Should be
                  close to zero. If it's not, the signal is probably distorted.

       1750_MUTING
              Mute  the  audio during a call tone of 1750Hz is received. Note that the audio will
              be delayed 75ms to give the tone detector time to  do  its  work.   This  does  not
              matter much on a simplex link but on a repeater it could be annoying since you will
              hear the last 75 milliseconds of your own transmission.  To  counteract  the  added
              delay  one  can  set  up  the  SQL_TAIL_ELIM  configuration variable to at least 75
              milliseconds.  Legal values for 1750_MUTING are 0=disabled, 1=enabled.

       SEL5_TYPE
              Define here your selective tone call system. You have the choice of  the  following
              types:  ZVEI1, ZVEI2, ZVEI3, PZVEI, PDZVEI, DZVEI, CCITT, EEA, CCIR1, CCIR2, NATEL,
              EURO, VDEW, AUTO-A, MODAT, PCCIR and EIA. Only one system can be used at  the  same
              time. Please take into consideration that some Sel5 standards are using the same or
              similar tones so it may have some unwanted effects if you define ZVEI1 for  SvxLink
              and a (e.g.) ZVEI3 sequence is received.

       SEL5_DEC_TYPE
              At  the moment only SEL5_DEC_TYPE=INTERNAL is valid. Maybe we have support for some
              external tone detectors later. To disable SEL5 tone decoding, specify NONE or  just
              comment the configuration variable out.

       RAW_AUDIO_UDP_DEST
              Setting  this configuration variable makes it possible to stream the raw audio from
              the sound device to an UDP socket. The sample format is the one used internally  in
              SvxLink,  that is each sample is represented by a 32 bit float.  The sample rate is
              the same as the one chosen for the audio device.  The destination is  specified  as
              ip-address:port.

              Example: RAW_AUDIO_UDP_DEST=127.0.0.1:10000

   Ddr Receiver Section
       A  special  kind  of local receiver is the Digital Drop Receiver (DDR). It will use either
       the rtl_tcp utility or a direct USB connection to interface to a RTL2832U based DVB-T  USB
       dongle  and  use that as a wideband receiver. These USB dongles can be bought cheeply from
       an Internet shop (~$10). The radio performance may not be great but better than one  might
       think. Usage as a cheap local coverage receiver or as a link receiver may work very well.

       One big advantage of using a wideband receiver is that it is possible to monitor more than
       one narrow band channel at a time. The only limit is the CPU power and  the  bandwidth  of
       the wideband tuner. You probably need a Pentium4 or better to fulfill the CPU demands.

       Getting the DVB-T dongle running is out of scope for this document but what you absolutely
       need to do is to find out the frequency error on  your  specific  dongle.  When  you  have
       figured  out what the frequency error is, set up the FQ_CORR configuration variable in the
       wideband receiver configuration section.

       The rtl_tcp utility is in a package named similar to something  like  rtl-sdr.   When  you
       have  the  rtl-sdr  stuff  installed,  just  start  rtl_tcp. No command line arguments are
       needed. Then configure a Ddr receiver in SvxLink. All  configuration  variables  that  are
       available  for an ordinary local receiver is also available for a Ddr receiver, except the
       audio device related ones which are just ignored. The  following  configuration  variables
       are available in addition to the ordinary ones.

       FQ     The narrowband channel frequency to tune to.

       MODULATION
              The modulation used on the channel. Legal values are: "FM" (two-way radio frequency
              modulation), "NBFM" (two-way radio narrow frequency modulation), "WBFM"  (broadcast
              wideband  frequency  modulation), "AM" (two-way radio amplitude modulation), "NBAM"
              (two-way radio narrow band amplitude modulation),  "USB"  (Upper  Sideband),  "LSB"
              (Lower Sideband), "CW" (Continuous Wave, e.g. Morse), "WBCW" (CW wide).

       WBRX   The  configuration  section  for the wideband receiver to connect this DDR to.  See
              "Wideband Receiver Section" below.

       SIGLEV_DET
              For a Ddr there also is a special signal level detector available, DDR,  that  will
              measure  the  RF  power  before  demodulation.  This  is  much  more  reliable than
              estimating the signal power through the audio which is normally  done  in  SvxLink.
              The  drawback  is  that  the  Ddr  signal level is not completely comparable to the
              ordinary SvxLink signal level measurements since it have a  larger  dynamic  range.
              Set SIGLEV_DET=DDR to activate the Ddr signal level detector.

   Wideband Receiver Section
       A  wideband  receiver section is used to configure access to a wideband receiver which can
       be used by a Digital Drop Receiver (DDR), described above, to handle  multiple  narrowband
       channels  using  the  same hardware. The only hardware supported at the moment is RTL2832U
       based DVB-T USB dongles. SvxLink access the dongle directly via USB or through the rtl_tcp
       utility,   which  make  the  dongle  available  on  a  TCP  network  port.  The  following
       configuration variables are available:

       TYPE   The type of wideband receiver  used.  The  only  supported  values  right  now  are
              "RtlTcp" and "RtlUsb".

       DEV_MATCH
              When  using RtlUsb, this configuration variable is used to select the dongle to use
              if there are multiple dongles connected to the computer. When looking for  dongles,
              SvxLink  will  try  to  match  the  string  given in this configuration variable in
              different ways. First, if it's a digit, a match against the device index is  tried.
              The device index is just a number, zero and up, that is given to a dongle when it's
              inserted.

              If the device index does not match, a match against the beginning, end or the whole
              serial number will be tried.

              Default: 0 (first device found)

       HOST   The name of the host that the rtl_tcp utility is running on (Default: localhost).

       PORT   The TCP port that rtl_tcp is listening on (Default: 1234).

       SAMPLE_RATE
              The  sample  rate used by the dongle. Legal values are 960000 and 2400000 (Default:
              960000).

       FQ_CORR
              This is probably the most important configuration variable. Most  dongles  are  far
              off  in frequency so they need to be calibrated. Calibrating the dongle can be done
              in multiple ways. The recommended  way  is  to  use  the  devcal  utility  that  is
              distributed  along  with  SvxLink.  The  calibration  procedure is described in the
              devcal (1) manual page.

              The end result should be a correction value for  how  far  off  the  dongle  is  in
              frequency  counted  in parts per million (PPM). That is, how many Hz per MHz is the
              tuner off by. Typical values are in the range -100 to 100.

       CENTER_FQ
              The  frequency,  in  Hz,  that  the  wideband  tuner  should  be  placed  at.  This
              configuration  variable  should  normally  be  left unset since SvxLink will try to
              place the wideband tuner to cover all set up Ddr frequencies. SvxLink will also try
              to avoid placing a Ddr on the center frequency of the wideband spectrum since there
              is usually some noise there. Only use this configuration variable if  you  need  to
              override the automatic placement for some reason.

       XVRTR_OFFSET
              If  a  transverter is used, this configuration variable can be set to the frequency
              offset that the transverter introduce. The frequency set here will be added to  the
              center frequency of the wideband receiver.

       GAIN   If  unset,  automatic  gain is used. Do not use automatic gain control if using the
              DDR signal level detector. That may mess up the measurements. Finding a  good  gain
              setting may be hard. Too little and you will not hear the signals you want to hear.
              Too much and the tuner will be driven  into  distorsion.  One  way  to  decide  the
              maximum  usable  gain  is to use the PEAK_METER explained below.  When there are no
              distorsion warning messages printed or just a single one  now  and  then  you  have
              found  the  max  gain.  You  should  probably back at least one step down from this
              value. If the signals you want to receive are very strong, set the gain as  low  as
              possible.

              What  gain  values  that  are  available is tuner dependent. SvxLink will print the
              available gain values when it establishes the  connection  to  the  tuner.  Typical
              values are in the range -10 to 50dB.

       PEAK_METER
              If PEAK_METER is set to 1, a warning will be printed every time the tuner is driven
              into distorsion. If it happens too often the gain should be lowered.  At most,  one
              warning per second will be printed.

   LocalSim Receiver Section
       A simulated local receiver can be used to debug problems in the SvxLink software. The only
       thing that this very simple simulator does is to play a tone. The generated  tone  can  be
       controlled using some configuration variables.

       SIM_WAVEFORM
              Set the waveform to use; SIN=sine wave, SQUARE=square wave.

       SIM_TONE_FQ
              Set the frequency of the tone in Hz.

       SIM_TONE_PWR
              Set the tone power in dB. 0dB corresponds to the power in a full-scale sine wave.

   Voter Section
       Receiver  type "Voter" is a "receiver" that combines multiple receivers and selects one of
       them to take audio from when the squelch opens. Which receiver to use is selected directly
       after squelch open. It is possible to set up a voting delay which will make the voter wait
       a while before choosing which RX to use.  This will give all receivers some time to report
       their  signal strengths.  After the initial choice have been made a periodic check is done
       to see if any  of  the  other  receivers  receive  a  stronger  signal.   In  the  default
       configuration file there is a voter section called Voter.

       TYPE   Always "Voter" for a voter.

       RECEIVERS
              Specify  a  comma  separated  list of receivers that the voter should use. Example:
              RECEIVERS=Rx1,Rx2,Rx3

       VOTING_DELAY
              Specify the delay in milliseconds that the voter will wait after the first  sqeulch
              open  detection until the decision of which receiver to use is made. This time must
              be set sufficiently high to allow all receivers to calculate and report the  signal
              level. Incoming audio and DTMF digits will be buffered for all receivers during the
              delay time so nothing will be lost, but of course the audio  will  be  delayed  the
              specified  amount  of time. This is most noticeble when using a repeater logic. Use
              the BUFFER_LENGTH configuration variable to adjust the buffer length.  The  default
              voting delay is 0.

       BUFFER_LENGTH
              Use  this  configuration  variable to adjust the length of the voting delay buffer.
              If not specified, the buffer length will be the same  as  the  voting  delay.  When
              using the voter with a repeater logic, try to keep this variable at 0 to reduce the
              latency. Only  increase  it  if  you  feel  audio  is  lost  in  the  beginning  of
              transmissions.

       REVOTE_INTERVAL
              This  is  the  interval  time  in  milliseconds  with which the voter will check if
              another receiver is receiving a stronger signal. If that is the  case,  a  receiver
              switch will be initiated.  Default is 1000 milliseconds.

       HYSTERESIS
              The hysteresis setting will prevent the voter from switching back and forth between
              two receivers that are equal in signal strength. For a switch to occur,  the  other
              receivers  signal strength must exceed the current receivers signal strength by the
              percent specified in this configuration variable. So if the hysteresis  is  set  to
              50%  and  the  received  signal  strength  on  the current receiver is 40, a signal
              strength of 40*1.5=60 is required on another receiver  to  initiate  a  switch.  At
              squelch  open,  if the received signal strength plus hysteresis is larger than 100,
              the voting delay will be skipped.  The default hysteresis is 50 percent.

       RX_SWITCH_DELAY
              When a receiver switch is initiated by the  voter,  it  will  wait  the  number  of
              milliseconds  specified  in  this configuration variable before actually performing
              the switch. The switch will only occur if the other receivers  signal  strength  is
              still higher.  Default is 500 milliseconds.

       SQL_CLOSE_REVOTE_DELAY
              The  voter  will  wait the number of milliseconds specified in this config variable
              after a squelch close before voting in another receiver. There are two reasons  for
              using  this  delay.  The  first  is to prevent the voter from going into idle state
              immediately when the squelch close for a fluttery signal. If it goes to  idle,  the
              procedure  with  voting delay may cause longer dropouts than necessary.  The second
              reason to use this config variable is if different receivers  have  different  hang
              times (explicitly or implicitly). If both a slow and fast receiver is receiving the
              same signal and the faster is currently chosen, when the PTT is released the slower
              receiver  will  be voted before closing.  This will cause a double squelch tail and
              double roger beep.  Default is 500 milliseconds.

       COMMAND_PTY
              Specify the path to a PTY that can be used to control the voter from the  operating
              system. Available commands:

              ·   ENABLE rx_name - Enable the given receiver

              ·   DISABLE rx_name - Disable the given receiver

              Commands  can  be  issued using a simple echo command from the shell. Example: echo
              "DISABLE Rx1" >/dev/shm/voter_ctrl

   Networked Receiver Section
       A networked receiver section is used to specify the configuration for a receiver connected
       through  a TCP/IP network. In the default configuration file there is a networked receiver
       configuration section called NetRx.  The section name could be anything. It  should  match
       the  RX  configuration  variable  in  the logic core where the receiver is to be used. The
       available configuration variables are described below. How to use a networked receiver  is
       further described in the remotetrx(1) manual page.

       TYPE   Always "Net" for a networked receiver.

       HOST   The hostname or IP address of the remote receiver host.

       TCP_PORT
              The TCP port that RemoteTrx listen on. The default is 5210.

       LOG_DISCONNECTS_ONCE
              Set  this  configuration  variable  to 1 to suppress logging of multiple disconnect
              messages in a row, like when there is no  RemoteTrx  running  on  the  other  side.
              Thus,  failed reconnect attempts will not be logged at all. This may be of use if a
              RemoteTrx is missing for a long time or if it's only used from time  to  time.  The
              default is 0 which means that all reconnect attempts will be logged.

       AUTH_KEY
              This  is  the  authentication  key  (password)  to  use to connect to the RemoteTrx
              server. The same key have to be specified in the RemoteTrx  configuration.   If  no
              key is specified in the RemoteTrx config, the login will be unauthenticated. A good
              authentication key should be 20 characters long.  If the same RemoteTrx is used for
              both  RX  and  TX,  the  same  key must be specified in the RX as well as in the TX
              configuration section.  The key will never be transmitted over the network. A HMAC-
              SHA1 challenge-response procedure will be used for authentication.

       CODEC  The  audio  codec  to  use  when  transferring  audio  from  this  remote receiver.
              Available  codecs  are:  RAW  (512kbps),  S16  (256kbps),  GSM  (13.2kbps),   SPEEX
              (8-25kbps),  OPUS  (8-64kbps).  These  are  raw  bitrate values. There will be some
              overhead added to this so the real bitrates on the wire are a  little  bit  higher.
              The OPUS codec is the most modern one and it also have the best quality for a given
              bitrate.

       SPEEX_ENC_FRAMES_PER_PACKET
              Speex encoder setting. Each Speex frame contains 20ms audio. If using a low bitrate
              configuration,  the network overhead will be quite noticeable if sending each frame
              in its own packet. One way to lower the overhead is to send multiple frames in each
              network packet. The drawback with doing this is that you get more delay. If setting
              this option to something like 4 (default), the delay will be about 4x20=80ms.

       SPEEX_ENC_QUALITY
              Speex encoder setting. Specify the encoder quality using  a  number  between  0-10.
              Lower values give poorer quality and lower bitrates.

       SPEEX_ENC_BITRATE
              Speex  encoder  setting. Specify the bitrate to use. Speex will snap to the nearest
              lower possible bitrate. Possible values range from 2150 to 24600 bps.   You  should
              probably not specify quality at the same time as bitrate. Not sure though...

       SPEEX_ENC_COMPLEXITY
              Speex encoder setting. The complexity setting (0-10) tells the encoder how much CPU
              time it should spend on doing a good job. The difference in SNR between the  lowest
              and  highest value is about 2dB. Set it as high as possible without overloading the
              CPU on the encoding computer (check CPU usage using command "top").

       SPEEX_ENC_VBR
              Speex encoder setting. Enable (1) or disable  (0)  variable  bitrate  encoding.  If
              enabled,  the encoder will try to keep a constant quality by increasing the bitrate
              when needed.

       SPEEX_ENC_VBR_QUALITY
              Speex encoder setting. The quality (0-10) to use in variable bitrate mode.

       SPEEX_ENC_ABR
              Speex encoder setting. The average bitrate encoding  will  try  to  keep  a  target
              bitrate  by continuously adjusting the quality. This configuration variable specify
              the target bitrate and enable ABR. It also need to have VBR enabled so don't  force
              it to off.

       SPEEX_DEC_ENHANCER
              Speex  decoder  setting.  Enable  (1) or disable (0) the perceptual enhancer in the
              decoder.  Perceptual enhancement is a part of the decoder which,  when  turned  on,
              attempts  to  reduce  the  perception  of  the  noise/distortion  produced  by  the
              encoding/decoding process. In most cases, perceptual enhancement brings  the  sound
              further  from  the original objectively (e.g. considering only SNR), but in the end
              it still sounds better (subjective improvement).

       OPUS_ENC_FRAME_SIZE
              Opus encoder setting. Specify how large, in milliseconds, each audio packet  should
              be. Default: 20ms.

       OPUS_ENC_COMPLEXITY
              Opus  encoder setting. The complexity setting (0-10) tells the encoder how much CPU
              time it should spend on doing a good job.  Set  it  as  high  as  possible  without
              overloading the CPU on the encoding computer (check CPU usage using command "top").
              Default: 10.

       OPUS_ENC_BITRATE
              Opus encoder setting. This is the bitrate that the encoder will encode for.   Rates
              from  about  8000  to 64000 bits per second are meaningful but the codec can handle
              from like 2500 to 512000 bps. Default: 20000bps.

       OPUS_ENC_VBR
              Opus encoder setting. Enable (1) or  disable  (0)  variable  bitrate  encoding.  If
              enabled,  the encoder will try to keep a constant quality by increasing the bitrate
              when needed and decrease it when the quality can be assured with a  lower  bitrate.
              The target average bitrate is the one set by OPUS_ENC_BITRATE.  Default: 1.

   Local Transmitter Section
       A  local transmitter section is used to specify the configuration for a local transmitter.
       In the default configuration file there  is  a  configuration  section  called  Tx1.   The
       section name could be anything. It should match the TX configuration variable in the logic
       core where the transmitter is to  be  used.  The  available  configuration  variables  are
       described below.

       TYPE   Always "Local" for a local transmitter.

       AUDIO_DEV
              Specify  the  audio device to use. Normally alsa:plughw:0. Have a look at the AUDIO
              DEVICE SPECIFICATIONS chapter for more information.

       AUDIO_CHANNEL
              Specify the audio channel to use. SvxLink can use the left/right stereo channels as
              two mono channels. Legal values are 0 or 1.

       PTT_TYPE
              Use this configuration variable to specify which type of hardware to use to control
              the PTT.  Specify "SerialPin" for using a pin in the serial port, "GPIO" to  use  a
              pin  in  a  GPIO  port, "PTY" if you want to use an external interface script via a
              pseudo tty port or "Hidraw" to  use  the  linux/hidraw  driver  to  support  hidraw
              devices like CM108 sound card, e.g. URI device from DMK.

              Set  PTT_TYPE  to  "Dummy"  or  "NONE" to not use any PTT hardware at all. It is an
              error to not specify PTT_TYPE.

              Use PTT_PIN to specify the pin to use for "SerialPin" or "GPIO".

       PTT_PORT
              Specify the serial port that the PTT is connected to. E.g. /dev/ttyS0 for COM1.

       PTT_PIN
              If PTT_TYPE is set to "SerialPin", specify the pin(s) in the serial port  that  the
              PTT  is  connected to. It is possible to specify one or two serial port pins.  Some
              interface boards require that you specify two pins since one pin does  not  provide
              enough  drive  power  to  the  circuit.  A  "!"  in front of the pin name indicates
              inverted operation. Some of the possible values are RTS, DTRRTS, !DTR!RTS  or  even
              DTR!RTS.

              If  GPIO was specified in PTT_TYPE, set the PTT_PIN config variable to the pin name
              of the GPIO-pin to use. The most common name is  gpio<number>,  like  gpio3.   Some
              GPIO drivers use more complex pin names like gpio33_pe11.  Have a look at the USING
              GPIO section for information on how to set up the operating system.  Normally,  the
              pin will be active high but if the pin name is prefixed with an exclamation mark it
              will be active low instead. For some hardware platforms you may need  to  also  set
              the GPIO_PATH configuration variable.

       GPIO_PATH
              Use  this  configuration  variable  to  set the path to the sys control devices for
              GPIO.  This normally is /sys/class/gpio but on some hardware, like the  Orange  Pi,
              the path is /sys/class/gpio_sw.

       PTT_PTY
              If  PTT_TYPE  is set to "PTY" this configuration variable will set the path for the
              PTY slave softlink that is used by the external script to communicate to SvxLink.

              SvxLink sends a 'T' to start transmitting and a 'R' to turn  the  transmitter  off.
              This can be used by an external script to interface custom devices, modems or other
              hardware to SvxLink.  Look for nhrcx.pl to see an example.

       HID_DEVICE
              Define the device node where your hidraw device is accessible at.

              Example: HID_DEVICE=/dev/hidraw3

       HID_PTT_PIN
              Define the pin  your  ptt  control  is  connected  to.  Valid  parameters  are  are
              GPIO1,GPIO2,GPIO3,GPIO4.  Note  that  some sound cards like SSS1621 may not support
              GPIO3 and GPIO4! You can invert the behaviour with a "!" in front of the name. Only
              one value is supported.

       SERIAL_SET_PINS
              Set  the  specified serial port pins to a static state. This can be good if using a
              pin for reference voltage or if a pin  have  to  be  in  a  certain  state  to  not
              interfere  with  the  operation  of  some  equipment.  There  are two pins that are
              possible to use, RTS and DTR. If prefixed with an exclamation  mark  (!),  the  pin
              will  be cleared and if not it will be set. This configuration variable can only be
              used when PTT_TYPE is set to "SerialPin".

              Example: SERIAL_SET_PINS=RTS!DTR will set RTS and clear DTR.

       PTT_HANGTIME
              Use this configuration variable to set a PTT hangtime. This can be good to have  on
              a  transmitter  in  combination  with using a tone squelch. When the transmitter is
              ordered to stop transmitting, the tone  is  immediately  turned  off,  causing  the
              squelch  to close on the other side. Since the transmitter keeps transmitting for a
              while, no squelch tail will be heard.

              Another use is on a remote receiver link  transmitter  where  you  don't  want  the
              transmitter  to  turn  on and off between transmissions or if the squelch close and
              open quickly due to for example mobile flutter.

       TIMEOUT
              This  is  a  feature  that  will  prevent  the  transmitter  from   getting   stuck
              transmitting.   Specify the number of seconds before the transmitter is turned off.
              Note that this is a low level security mechanism that is meant to only kick  in  if
              there  is a software bug in SvxLink. Just so that the transmitter will not transmit
              indefinately. It is not meant to be used to keep people from talking too long.

       TX_DELAY
              The number of milliseconds (0-1000) to wait after the transmitter has  been  turned
              on  until  audio  is starting to be transmitted. This can be used to compensate for
              slow TX reaction or remote stations with slow reacting squelches.

       CTCSS_FQ
              The frequency in Hz of the CTCSS tone  to  transmit.  It  is  possible  to  specify
              fractions  using  "." as decimal comma (e.g. 136.5). For the tone to be transmitted
              the CTCSS_LEVEL variable must also be setup and also the TX_CTCSS variable  in  the
              logic core configuration section.

       CTCSS_LEVEL
              The  level  in  percent (0-100) of the CTCSS tone to transmit. What level to set is
              hard to say. The FM modulation swing of the tone should be in between  500-800  Hz.
              That  is  a  bit hard to measure if you don't have the right equipment. A normal FM
              station have a maximum swing of 5kHz so if you manage to  calibrate  everything  so
              that  you  get  maximum  swing when the sound card audio is at peak level, the tone
              level should be in between 10-16%. However,  most  often  the  audio  settings  are
              configured a bit higher than max since the audio seldom reaches maximum level. Then
              the level of the CTCSS tone should be reduced. The  default  in  the  configuration
              file is 9%. For the tone to be transmitted the CTCSS_FQ variable must also be setup
              and also the TX_CTCSS variable in the logic core configuration section.

       PREEMPHASIS
              [EXPERIMENTAL] Enable this feature if you are modulating the FM modulator directly,
              like  through  a 9k6 packet radio input. If no preemphasis filter is applied to the
              audio, it will sound very dark when  received.  If  you  modulate  the  transmitter
              through  the  microphone  input  the  radio will apply a preemphasis filter so this
              feature should be disabled. 0=disabled, 1=enabled.

       DTMF_TONE_LENGTH
              The duration, in milliseconds, of DTMF  digits  transmitted  on  this  transmitter.
              100ms is the default.

       DTMF_TONE_SPACING
              The  spacing, in milliseconds, between DTMF digits transmitted on this transmitter.
              50ms is the default.

       DTMF_DIGIT_PWR
              The power, in dB, of DTMF digits transmitted on this transmitter. Zero dB will give
              the  same  power  in  the generated signal as there is in a maximum amplitude (full
              scale) sine wave. -15dB is the default.

       TONE_SIGLEV_MAP
              It is possible to transmit one of ten tones along with the normal  transmission  to
              indicate  a signal strength value to the receiver. This is of most use when using a
              local transmitter as a link transmitter in a RemoteTrx. It is not implemented,  and
              probably  not  useful,  in  SvxLink Server. Another requirement is that SvxLink has
              been compiled in 16kHz mode. Otherwise this feature is disabled.

              The TONE_SIGLEV_MAP configuration variable is used to map  tones  to  signal  level
              values.  It  is  a comma separated list of exactly ten values in the 0 - 100 range.
              The first value map to the 5500Hz tone, the second to the 5600Hz tone  and  so  on.
              The  last  value map to the 6400Hz tone.  What levels the tones should be mapped to
              depends on  the  tone  receiver  implementation.  Typically,  if  using  a  SvxLink
              application  as  a  receiver,  the  TONE_SIGLEV_MAP  should  be  the same in the RX
              configuration for that node.

       TONE_SIGLEV_LEVEL
              It is possible to transmit one of ten tones along with the normal  transmission  to
              indicate  a signal strength value to the receiver. This is of most use when using a
              local transmitter as a link transmitter in a RemoteTrx. It is not implemented,  and
              probably  not  useful,  in  SvxLink Server. Another requirement is that SvxLink has
              been compiled in 16kHz mode. Otherwise this feature is disabled.

              The TONE_SIGLEV_LEVEL configuration variable is used to set the tone level.  It  is
              a  value  in  the  1-100  range  which  indicate the output level in percent of the
              maximum possible level. The default is 10.

       MASTER_GAIN
              This configuration variable can be used to fine tune or increase the audio gain for
              all  transmitted  sound  if  it's  not  possible  to do using the normal sound card
              hardware gain controls. The gain should be given in dB and can be both positive and
              negative.

   Networked Transmitter Section
       A  networked  transmitter  section  is used to specify the configuration for a transmitter
       connected through a TCP/IP network. In the default configuration file there is a networked
       transceiver  configuration  section  called NetTx.  The section name could be anything. It
       should match the TX configuration variable in the logic core where the transmitter  is  to
       be used. The available configuration variables are described below. How to use a networked
       transmitter is further described in the remotetrx(1) manual page.

       TYPE   Always "Net" for a networked transmitter.

       HOST   The hostname or IP address of the remote transmitter host.

       TCP_PORT
              The TCP port that RemoteTrx listen on. The default is 5210.

       LOG_DISCONNECTS_ONCE
              Set this configuration variable to 1 to suppress  logging  of  multiple  disconnect
              messages  in  a  row,  like  when  there is no RemoteTrx running on the other side.
              Thus, failed reconnect attempts will not be logged at all. This may be of use if  a
              RemoteTrx  is  missing  for a long time or if it's only used from time to time. The
              default is 0 which means that all reconnect attempts will be logged.

       AUTH_KEY
              This is the authentication key (password)  to  use  to  connect  to  the  RemoteTrx
              server.  The  same  key have to be specified in the RemoteTrx configuration.  If no
              key is specified in the RemoteTrx config, the login will be unauthenticated. A good
              authentication key should be 20 characters long.  If the same RemoteTrx is used for
              both RX and TX, the same key must be specified in the RX  as  well  as  in  the  TX
              configuration section.  The key will never be transmitted over the network. A HMAC-
              SHA1 challenge-response procedure will be used for authentication.

       CODEC  The audio codec  to  use  when  transferring  audio  to  this  remote  transmitter.
              Available   codecs  are:  RAW  (512kbps),  S16  (256kbps),  GSM  (13.2kbps),  SPEEX
              (8-25kbps), OPUS (8-64kbps). These are raw  bitrate  values.  There  will  be  some
              overhead  added  to  this so the real bitrates on the wire are a little bit higher.
              The OPUS codec is the most modern one and it also have the best quality for a given
              bitrate.  There also is a NULL codec that will just throw away samples which can be
              used in special situations when the audio is sent through another audio path.

       SPEEX_ENC_FRAMES_PER_PACKET
              Speex encoder setting. Each Speex frame contains 20ms audio. If using a low bitrate
              configuration,  the network overhead will be quite noticeable if sending each frame
              in its own packet. One way to lower the overhead is to send multiple frames in each
              network packet. The drawback with doing this is that you get more delay. If setting
              this option to something like 4 (default), the delay will be about 4x20=80ms.

       SPEEX_ENC_QUALITY
              Speex encoder setting. Specify the encoder quality using  a  number  between  0-10.
              Lower values give poorer quality and lower bitrates.

       SPEEX_ENC_BITRATE
              Speex  encoder  setting. Specify the bitrate to use. Speex will snap to the nearest
              lower possible bitrate. Possible values range from 2150 to 24600 bps.   You  should
              probably not specify quality at the same time as bitrate. Not sure though...

       SPEEX_ENC_COMPLEXITY
              Speex encoder setting. The complexity setting (0-10) tells the encoder how much CPU
              time it should spend on doing a good job. The difference in SNR between the  lowest
              and  highest value is about 2dB. Set it as high as possible without overloading the
              CPU on the encoding computer (check CPU usage using command "top").

       SPEEX_ENC_VBR
              Speex encoder setting. Enable (1) or disable  (0)  variable  bitrate  encoding.  If
              enabled,  the encoder will try to keep a constant quality by increasing the bitrate
              when needed.

       SPEEX_ENC_VBR_QUALITY
              Speex encoder setting. The quality (0-10) to use in variable bitrate mode.

       SPEEX_ENC_ABR
              Speex encoder setting. The average bitrate encoding  will  try  to  keep  a  target
              bitrate  by continuously adjusting the quality. This configuration variable specify
              the target bitrate and enable ABR. It also need to have VBR enabled so don't  force
              it to off.

       SPEEX_DEC_ENHANCER
              Speex  decoder  setting.  Enable  (1) or disable (0) the perceptual enhancer in the
              decoder.  Perceptual enhancement is a part of the decoder which,  when  turned  on,
              attempts  to  reduce  the  perception  of  the  noise/distortion  produced  by  the
              encoding/decoding process. In most cases, perceptual enhancement brings  the  sound
              further  from  the original objectively (e.g. considering only SNR), but in the end
              it still sounds better (subjective improvement).

       OPUS_ENC_FRAME_SIZE
              Opus encoder setting. Specify how large, in milliseconds, each audio packet  should
              be. Default: 20ms.

       OPUS_ENC_COMPLEXITY
              Opus  encoder setting. The complexity setting (0-10) tells the encoder how much CPU
              time it should spend on doing a good job.  Set  it  as  high  as  possible  without
              overloading the CPU on the encoding computer (check CPU usage using command "top").
              Default: 10.

       OPUS_ENC_BITRATE
              Opus encoder setting. This is the bitrate that the encoder will encode for.   Rates
              from  about  8000  to 64000 bits per second are meaningful but the codec can handle
              from like 2500 to 512000 bps. Default: 20000bps.

       OPUS_ENC_VBR
              Opus encoder setting. Enable (1) or  disable  (0)  variable  bitrate  encoding.  If
              enabled,  the encoder will try to keep a constant quality by increasing the bitrate
              when needed and decrease it when the quality can be assured with a  lower  bitrate.
              The target average bitrate is the one set by OPUS_ENC_BITRATE.  Default: 1.

   Multi Transmitter Section
       A  multi  transmitter  section  is  used if one wants to transmit on multiple transmitters
       simulaneously. The name of the section can be anything. Just point  it  out  from  another
       transmitter specification like the TX variable in a Logic core configuration.

       TYPE   Always "Multi" for a multi transmitter section.

       TRANSMITTERS
              A comma separated list of transmitters.

   Module Section
       A  module  section  contain  the configuration for a specific module. It have some general
       configuration variables and some module  specific  configuration  variables.  The  general
       configuration variables are listed below.

       NAME   The  name  of  the module. This name must match the namespace used in the TCL event
              handling script. If not set, NAME will be set to the section name.

       PLUGIN_NAME
              The base name of the plugin. For example if this configuration variable is  set  to
              Foo,  the  core will look for a plugin called ModuleFoo.so. If not set, PLUGIN_NAME
              will be set to the same value as NAME.

       ID     Specify the module identification number. This is the number  used  to  access  the
              module from the radio interface.

       TIMEOUT
              Specify  the  timeout  time, in seconds, after which a module will be automatically
              deactivated if there has been no activity.

       Module specific configuration variables are described in the man page for that module. The
       documentation  for  the Parrot module can for example be found in the ModuleParrot.conf(5)
       manual page.

   LocationInfo
       STATUS_SERVER_LIST
              Enter a space separated list of EchoLink status servers that should be used to send
              node    status    beacons.    Your    node    information    can    be   found   on
              http://www.echolink.org/links.jsp.  The format is host:port. Host - hostname or  IP
              address,  port  -  UDP port.  Don't change the default unless you know what you are
              doing. If you don't want to update the EchoLink status  server,  comment  out  this
              configuration variable.

              Example:
              STATUS_SERVER_LIST=aprs.echolink.org:5199

       APRS_SERVER_LIST
              This  configuration  variable  specifies connection parameters for connecting to an
              APRS server  network  using  the  TCP  protocol.  In  this  case,  the  positioning
              information   is   forwarded  to  the  worldwide  APRS  network.  Have  a  look  at
              http://aprs.fi/.

              To choose a suitable APRS server from the so called tier 2 network, have a look  at
              http://www.aprs2.net/.  Either  choose  a  specific  server  or one of the regional
              addresses. The regional addresses bundle all APRS servers within a region so that a
              random  tier  2 server is chosen within the region. There are five regions defined:
              noam.aprs2.net - North America, euro.aprs2.net -  Europe,  asia.aprs2.net  -  Asia,
              soam.aprs2.net  -  South  America  and  Africa, aunz.aprs2.net - Austrailia and New
              Zeeland.  The format is a  space  separated  list  of  host:port  entries.  Host  -
              hostname or IP address, port - TCP port.

              Example:
              APRS_SERVER_LIST=euro.aprs2.net:14580

       LON_POSITION
              The longitude of the station position, entered as "degrees.arcminutes.arcseconds"

              Example:
              LON_POSITION=09.02.20E

       LAT_POSITION
              The latitude of the station position, entered as "degrees.arcminutes.arcseconds"

              Example:
              LAT_POSITION=51.02.22N

       CALLSIGN
              Enter  your  callsign for the APRS network with a prefix that indicates the type of
              station, (ER- for repeaters, EL- for links).

              Examples:
              CALLSIGN=EL-DL1ABC    # callsign for a link
              CALLSIGN=ER-DB0ABC    # callsign for a repeater

       FREQUENCY
              The tx-frequency of the link/repeater in MHz. For repeaters, information about  the
              RX/TX shift in the COMMENT configuration variable may be useful.

              Example:
              FREQUENCY=430.050     # tx-frequency is 430.050 MHz

       TX_POWER
              The power of your transmitter in watts.

              Example:
              TX_POWER=10           # tx output is 10 watts

       ANTENNA_GAIN
              The gain of your antenna in dBd.

              Example:
              ANTENNA_GAIN=5        # antenna gain is 5 dBd

       ANTENNA_HEIGHT
              The  height  of the link-/repeater antenna in meters or feet above the terrain, not
              sealevel.

              Example:
              ANTENNA_HEIGHT=10m    # 10 meters above the ground
              ANTENNA_HEIGHT=90     # 90 feet

       ANTENNA_DIR
              Main beam direction of the antenna in degrees. If  an  omni  direction  antenna  is
              used, specify -1 as the direction.

              Example:
              ANTENNA_DIR=-1        # an omni directional antenna is used
              ANTENNA_DIR=128       # main beam direction is 128 degrees

       PATH   The  PATH  variable  controls  the  way  of  forwarding your beacon inside the APRS
              network if it is gated by a local APRS digipeater. In  some  cases  it  has  to  be
              changed  according  to local requirements. Please contact your local APRS sysop for
              further information. Changes should be made only according to the NEWn-N  paradigm.
              Leave  this  variable  untouched  if  you  are unsure of its setting.  No spaces or
              control characters are allowed. PATH has no influence on the propagation on  non-RF
              networks.

              Examples:
              PATH=WIDE1-1
              PATH=WIDE1-1,WIDE2-2

       BEACON_INTERVAL
              The  interval,  in minutes, with which beacons will be sent to the APRS network.  A
              good value is 10 minutes. If your beacon is  gated  via  RF,  please  increase  the
              interval  a  bit to keep the APRS traffic on RF produced by the APRS RF gate as low
              as possible. Intervals shorter than 10 minutes will be changed to 10.

              Example:
              BEACON_INTERVAL=30    # APRS-beacons will be sent every 30 minutes.

       TONE   The CTCSS subaudible tone that is to be  used  for  operation  over  your  link  or
              repeater. If you don't use tone control set it to 0.

              Examples:
              TONE=136      # we are using a CTCSS-tone of 136.5 Hz
              TONE=0        # we don't use CTCSS subaudible or call tones
              TONE=1750     # the link/repeater use a tone burst of 1750 Hz

       STATISTICS_INTERVAL
              Defines  the  interval  in  minutes  in that a aprs statistic is sent into the aprs
              network. Range: 5-60, default is 10 minutes

       COMMENT
              Specify a short comment here, maybe a link to  your  website  or  information  that
              could  be  interesting  for others. The length should not exceed 255 characters and
              may not have control characters like "Carriage Return" (\r)  or  "Line  Feed"  (\n)
              inside.  Make  your  comment as short as you can to give users with a small display
              (TH-D7) the chance to display the full comment text.

              Example:
              COMMENT=[svx] Running SvxLink by SM0SVX

       PTY_PATH
              Specify a path to a communications PTY that can be used by external applications to
              inject APRS packets into the APRS-IS network.

AUDIO DEVICE SPECIFICATIONS

       The  AUDIO_DEV configuration variables specify which audio device to use for a receiver or
       transmitter. SvxLink support a number of different audio input  and  output  devices.  The
       format  of  the configuration variable is "type:dev_spec". There are three different types
       of audio devices supported, "alsa", "oss" and "udp".

       The "alsa" type will use the specified Alsa device. Example:  "alsa:plughw:0".  Describing
       the format of Alsa device names is outside the scope for this document.

       The  "oss"  type  will use the specified OSS audio device. Example "oss:/dev/dsp".  OSS is
       the old sound system used by Linux. Alsa should be used when possible.

       The "udp" type is not really an audio device but instead will read and write audio from/to
       a  UDP  socket.  This can be used to interface SvxLink to all sorts of audio sources/sinks
       capable of streaming raw audio through UDP. One example usage is to interface SvxLink with
       GNU Radio.  Example: "udp:127.0.0.1:10000". Note however that the only supported format is
       raw 16 bit signed samples, two interleved channels. Sampling frequency can be chosen using
       the CARD_SAMPLE_RATE config variable as usual.

USING GPIO

       GPIO  (General  Purpose  IO)  is  used to access hardware pins that are made available for
       example on an embedded system. Before starting to use a pin in SvxLink some setup need  to
       be done in the operating system. With the standard distribution of SvxLink there is a pair
       of scripts that help with setting up and taking down the GPIO pins. The scripts are  named
       svxlink_gpio_up  and  svxlink_gpio_down.  The configuration file, which can be found among
       the other SvxLink configuration files (typically in /etc/svxlink), is called gpio.conf.

CALIBRATING THE SIGNAL LEVEL DETECTOR

       The signal level detector is used when using multiple receivers or when using  the  SIGLEV
       squelch.  The  signal  level  is  used  by a voter to choose the receiver with the highest
       signal strength. The choice is made directly after squelch open. For the voter to  make  a
       correct choice, the signal level detector must be calibrated on each receiver.

       To  use  the  noise  signal  level  detector,  first  set SIGLEV_DET=NOISE.  There are two
       configuration variables that is used to calibrate the detector.  They are SIGLEV_SLOPE and
       SIGLEV_OFFSET  in  a local receiver section. The slope is the gain of the detector and the
       offset is used to adjust the detector so that when there is no input signal, the  detector
       will  return  0.  The goal is to adjust the detector so that when no signal is received, a
       value of 0 is produced and when full signal strength  is  received,  a  value  of  100  is
       produced. It will never be exakt but that does not matter.

       The  calibration  is normally done by using the siglevdetcal(1) application. To be able to
       do a correct calibration, it must be possible to open the squelch so that  only  noise  is
       received.  The  antenna  cable  should  be  disconnected  or  a dummy load should be used.
       WARNING: Before starting the siglevdetcal application, pull the PTT cable  since  the  PTT
       might get triggered during the calibration procedure.

       The  siglevdetcal  utility  will  also  measure  the  CTCSS  tone  SNR  offset so that the
       CTCSS_SNR_OFFSET config variable can be set up to a proper value.

       If the siglevdetcal application cannot be used for some reason, the manual procedure below
       might be used. This procedure will only work for a receiver with unsquelched audio.  Note:
       To calibrate a remote receiver it must be connected to the SvxLink server.  Otherwise  the
       squelch will not open.

              1   Connect  a  dummy  load  or disconnect the antenna from the transceiver. If you
                  disconnect the antenna, make sure to also disconnect the PTT.

              2   Set SIGLEV_SLOPE=1 and SIGLEV_OFFSET=0 and restart SvxLink.

              3   Open the squelch so that there is only noise coming into SvxLink.

              4   Use a second transceiver to make a short, unmodulated transmission. Release the
                  PTT  when  the  "Squech  OPEN"  message  is printed. Repeat this for about five
                  times.

              5   Calculate the mean diff (open level - close level) and the mean lower  (squelch
                  close)  value.  Make  sure  to  use  at  least  four significant digits in your
                  calculations.

              6   SIGLEV_SLOPE = 100 / (mean diff)

              7   SIGLEV_OFFSET = - (mean lower) * SIGLEV_SLOPE

              8   After changing SIGLEV_SLOPE and SIGLEV_OFFSET, restart SvxLink and check to see
                  that  the  squelch  open value is now around 100 and the squelch close value is
                  around 0.

STATE PTY FORMAT

       The format of the output from the state PTY is:

           <timestamp> <context>:<event name> <event data>

       where the different parts mean:

           timestamp = <seconds since 1 jan 1970>.<milliseconds>
           context = Name of context
           event_name = Name of event
           event data = Event specific data

       The following specific events exist.

       Voter:sql_state
              Report the state of all squelches for  all  receivers.  The  format  of  the  event
              specific data is:

                  <rx name><state><siglev> [<rx_name><state><siglev> ...]

              where the different parts mean:

                  rx_name = Configuration file section name for receiver
                  state = _ (sql closed), : (sql open), * (sql open and rx selected)
                  siglev = The measured signal level

FILES

       /etc/svxlink/svxlink.conf (or deprecated /etc/svxlink.conf)
              The system wide configuration file.

       ~/.svxlink/svxlink.conf
              Per user configuration file.

       /etc/svxlink/svxlink.d/*
              Additional configuration files. Typically one configuration file per module.

AUTHOR

       Tobias Blomberg (SM0SVX) <sm0svx at users dot sourceforge dot net>

SEE ALSO

       svxlink(1), remotetrx(1), siglevdetcal(1), devcal(1)