Provided by: libhamlib-utils_4.3.1-1build2_amd64 bug

NAME

       ampctl - control radio amplifiers

SYNOPSIS

       ampctl [-hiIlLuV] [-m id] [-r device] [-s baud] [-t char] [-C parm=val] [-v[-Z]]
              [command|-]

DESCRIPTION

       Control radio amplifiers.  ampctl accepts commands from the command line  as  well  as  in
       interactive mode if none are provided on the command line.

       Keep  in  mind  that Hamlib is BETA level software.  While a lot of backend libraries lack
       complete amplifier support, the basic functions are usually well supported.

       Please report bugs and provide feedback at the e-mail address given in  the  BUGS  section
       below.  Patches and code enhancements sent to the same address are welcome.

OPTIONS

       This  program  follows  the  usual  GNU  command  line syntax.  Short options that take an
       argument may have the value follow immediately or be separated by a space.   Long  options
       starting with two dashes (‘-’) require an ‘=’ between the option and any argument.

       Here is a summary of the supported options:

       -m, --model=id
              Select amplifier model number.

              See model list (use “ampctl -l”).

              Note:  ampctl  (or third party software using the C API) will use amplifier model 2
              for NET ampctl (communicating with ampctld).

       -r, --amp-file=device
              Use device as the file name of the port connected to the amplifier.

              Often a serial port, but could be a USB to serial adapter.   Typically  /dev/ttyS0,
              /dev/ttyS1,  /dev/ttyUSB0,  etc. on Linux, COM1, COM2, etc. on MS Windows.  The BSD
              flavors and Mac OS/X have their own designations.  See your system's documentation.

       -s, --serial-speed=baud
              Set serial speed to baud rate.

              Uses maximum serial speed from amplifier backend capabilities (set by -m above)  as
              the default.

       -t, --send-cmd-term=char
              Change the termination char for text protocol when using the send_cmd command.

              The default value is ASCII CR (‘0x0D’).  ASCII non-printing characters can be given
              as the ASCII number in hexadecimal format prepended with “0x”.   You  may  pass  an
              empty  string  for  no termination char.  The string “-1” tells ampctl to switch to
              binary protocol.

              For example, to specify a command terminator for Kenwood style text  commands  pass
              “-t ';'” to ampctl.  See EXAMPLE below.

       -L, --show-conf
              List all config parameters for the amplifier defined with -m above.

       -C, --set-conf=parm=val[,parm=val]
              Set amplifier configuration parameter(s), e.g.  stop_bits=2.

              Use  the  -L  option above for a list of configuration parameters for a given model
              number.

       -u, --dump-caps
              Dump capabilities for the amplifier defined with -m above and exit.

       -l, --list
              List all amplifier model numbers defined in Hamlib and exit.

              The list is sorted by model number.

              Note: In Linux the list can be scrolled back using Shift-PageUp/Shift-PageDown,  or
              using  the scrollbars of a virtual terminal in X or the cmd window in Windows.  The
              output can be piped to more(1) or less(1), e.g. “ampctl -l | more”.

       -i, --read-history
              Read  previously  saved  command  and  argument  history  from  a   file   (default
              $HOME/.ampctl_history) for the current session.

              Available when ampctl is built with Readline support (see READLINE below).

              Note:  To  read a history file stored in another directory, set the AMPCTL_HIST_DIR
              environment variable, e.g. “AMPCTL_HIST_DIR=~/tmp ampctl -i”.  When AMPCTL_HIST_DIR
              is not set, the value of HOME is used.

       -I, --save-history
              Write  current session (and previous session(s), if -i option is given) command and
              argument history to a file  (default  $HOME/.ampctl_history)  at  the  end  of  the
              current session.

              Complete commands with arguments are saved as a single line to be recalled and used
              or edited.  Available when ampctl is built  with  Readline  support  (see  READLINE
              below).

              Note:  To  write  a  history  file  in  another  directory, set the AMPCTL_HIST_DIR
              environment   variable,   e.g.   “AMPCTL_HIST_DIR=~/tmp    ampctl    -IRq.     When
              AMPCTL_HIST_DIR is not set, the value of HOME is used.

       -v, --verbose
              Set verbose mode, cumulative (see DIAGNOSTICS below).

       -Z, --debug-time-stamps
              Enable time stamps for the debug messages.

              Use only in combination with the -v option as it generates no output on its own.

       -h, --help
              Show a summary of these options and exit.

       -V, --version
              Show version of ampctl and exit.

       -      Stop option processing and read commands from standard input.

              See Standard Input below.

       Note:  Some  options  may  not be implemented by a given backend and will return an error.
       This is most likely to occur with the --set-conf and --show-conf options.

       Please note that the backend for the amplifier to be controlled, or the  amplifier  itself
       may  not support some commands.  In that case, the operation will fail with a Hamlib error
       code.

COMMANDS

       Commands can be entered either as a single char, or as a long command name.  The  commands
       are not prefixed with a dash as the options are.  They may be typed in when in interactive
       mode or provided as argument(s) in command  line  interface  mode.   In  interactive  mode
       commands and their arguments may be entered on a single line:

           F 14250000

       Since most of the Hamlib operations have a set and a get method, an upper case letter will
       often be used for a set method whereas the corresponding lower case letter refers  to  the
       get  method.   Each  operation  also  has  a  long  name;  in  interactive mode, prepend a
       backslash, ‘\’, to enter a long command name.

       Example: Use “\dump_caps” to see what capabilities this amplifier and backend support.

              Note: The backend for the amplifier to be controlled, or the amplifier  itself  may
              not  support  some  commands.  In  that case, the operation will fail with a Hamlib
              error message.

       A simple example using commands saved to a file (typed text shown in bold):

           $ cat <<.EOF. >cmds.txt
           > # File of commands
           > F 14250000
           > f
           > l PWRINPUT
           > l PWRFORWARD
           > l SWR
           > \dump_caps
           > .EOF.

           $ ampctl -m1 - <cmds.txt

           Amplifier command: # File of commands

           Amplifier command: F 14250000

           Amplifier command: f
           Frequency(Hz): 14250000

           Amplifier command: l PWRINPUT
           Level Value: 0

           Amplifier command: l PWRFORWARD
           Level Value: 1499

           Amplifier command: l SWR
           Level Value: 1.000000

           Amplifier command: \dump_caps
           Caps dump for model:    1
           Model name:             Dummy
           Mfg name:               Hamlib
           Backend version:        0.1
           Backend copyright:      LGPL
           Backend status:         Alpha
           Amp type:               Other
           Port type:              None
           Write delay:            0mS, timeout 0mS, 0 retries
           Post Write delay:       0mS
           Has priv data:          N
           Get level: SWR NH PF PWRINPUT PWRFORWARD PWRREFLECTED PWRPEAK FAULT
           Has Init:               Y
           Has Cleanup:            Y
           Has Open:               Y
           Has Close:              Y
           Can set Conf:           N
           Can get Conf:           N
           Can Reset:              Y
           Can get Info:           Y

           Overall backend warnings: 0

           Amplifier command:

           $

   ampctl Commands
       A summary of commands is included below (In the case of set commands the quoted italicized
       string  is  replaced  by  the  value  in the description.  In the case of get commands the
       quoted italicized string is the key name of the value returned.):

       Q|q, exit ampctl
              Exit ampctl in interactive mode.

              When ampctl is controlling the amplifier directly, will close the amplifier backend
              and  port.   When  ampctl  is  connected to ampctld (amplifier model 2), the TCP/IP
              connection to ampctld is closed and ampctld remains running, available for  another
              TCP/IP network connection.

       F, set_freq 'Frequency'
              Set 'Frequency', in Hz.

              Frequency may be a floating point or integer value.

       f, get_freq
              Get 'Frequency', in Hz.

              Returns an integer value.

       l, get_level 'Level'
              Get 'Level Value'.

              Returns Level Value as a float or integer for the Level token given.

              Note:  Passing  a  ‘?’  (query) as the first argument instead of a Level token will
              return a space separated list of amplifier backend supported get level tokens.  Use
              this to determine the supported levels of a given amplifier backend.

       w, send_cmd 'Cmd'
              Send a raw command string to the amplifier.

              This  is  useful  for  testing and troubleshooting amplifier commands and responses
              when developing a backend.

              For binary protocols enter  values  as  \0xAA\0xBB.   Expect  a  'Reply'  from  the
              amplifier  which  will likely be a binary block or an ASCII string depending on the
              amplifier's protocol (see your amplifier's computer control documentation).

              The command terminator, set by the send-cmd-term option above, will terminate  each
              command  string  sent to the amplifier.  This character should not be a part of the
              input string.

       dump_state
              Return certain state information about the amplifier backend.

       1, dump_caps
              Not a real amplifier remote command, it just  dumps  capabilities,  i.e.  what  the
              backend knows about this model, and what it can do.

              TODO:  Ensure  this  is  in  a  consistent  format  so  it can be read into a hash,
              dictionary, etc.  Bug reports requested.

              Note: This command will produce many lines of output so be very careful if using  a
              fixed  length  array!   For example, running this command against the Dummy backend
              results in a number of lines of text output.

       _, get_info
              Return information from the amplifier backend.

       R, reset 'Reset'
              Perform amplifier 'Reset'.

              Reset is an integer value: ‘0’ = None, ‘1’ = Memory reset, ‘2’ = Fault reset, ‘3’ =
              Amplifier reset.

       set_powerstat 'Power Status'
              Set 'Power Status'.

              Power  Status  is  an  integer  value: ‘0’ = Power Off, ‘1’ = Power On, ‘2’ = Power
              Standby (enter standby), ‘4’ = Power Operate (leave standby).

       get_powerstat
              Get 'Power Status' as in set_powerstat above.

READLINE

       If Readline library development  files  are  found  at  configure  time,  ampctl  will  be
       conditonally built with Readline support for command and argument entry.  Readline command
       key  bindings  are   at   their   defaults   as   described   in   the   Readline   manual
       ⟨https://tiswww.cwru.edu/php/chet/readline/rluserman.html⟩.  ampctl sets the name “ampctl”
       which can be used in Conditional Init Constructs in the Readline Init File ($HOME/.inputrc
       by default) for custom keybindings unique to ampctl.

       Command  history  is  available with Readline support as described in the Readline History
       manual   ⟨https://tiswww.case.edu/php/chet/readline/history.html#SEC1⟩.     Command    and
       argument  strings  are  stored  as single lines even when arguments are prompted for input
       individually.  Commands and arguments are not validated  and  are  stored  as  typed  with
       values separated by a single space.

       Normally  session history is not saved, however, use of either of the -i/--read-history or
       -I/--save-history options when starting ampctl will cause any previously saved history  to
       be  read  in  and/or  the current and any previous session history (assuming the -i and -I
       options are given together) will be written out when ampctl is  closed.   Each  option  is
       mutually exclusive, i.e. either may be given separately or in combination.  This is useful
       to save a set of commands and then read them later but not write the modified history  for
       a consistent set of test commands in interactive mode, for example.

       History  is  stored in $HOME/.ampctl_history by default although the destination directory
       may be changed by setting the AMPCTL_HIST_DIR environment variable.  When  AMPCTL_HIST_DIR
       is  unset,  the  value  of  the  HOME  environment  variable  is  used  instead.  Only the
       destination directory may be changed at this time.

       If Readline support is not found at configure time the original internal  command  handler
       is  used.  Readline is not used for ampctl commands entered on the command line regardless
       if Readline support is built in or not.

       Note: Readline support is not included in the MS  Windows  32  or  64  bit  binary  builds
       supplied  by  the  Hamlib Project.  Running ampctl on the MS Windows platform in the ‘cmd’
       shell does give session command line history, however, it is not  saved  to  disk  between
       sessions.

DIAGNOSTICS

       The -v, --verbose option allows different levels of diagnostics to be output to stderr and
       correspond to -v for BUG, -vv for ERR, -vvv for WARN, -vvvv for  VERBOSE,  or  -vvvvv  for
       TRACE.

       A  given  verbose  level is useful for providing needed debugging information to the email
       address below.  For example, TRACE output shows all of the values  sent  to  and  received
       from  the amplifier which is very useful for amplifier backend library development and may
       be requested by the developers.

EXIT STATUS

       ampctl exits with:

       0      if all operations completed normally;

       1      if there was an invalid command line option or argument;

       2      if an error was returned by Hamlib.

EXAMPLES

       Start ampctl for am  Elecraft  KPA-1500  using  a  USB  to  serial  adapter  on  Linux  in
       interactive mode:

           $ ampctl -m 201 -r /dev/ttyUSB1

       Start  ampctl  for  an  Elecraft  KPA-1500 using COM1 on MS Windows while generating TRACE
       output to stderr:

           > ampctl -m 201 -r COM1 -vvvvv

       Connect to a running ampctld with amplifier model 2 (“NET ampctl”) on the local  host  and
       specifying the TCP port, setting frequency and mode:

           $ ampctl -m 2 -r localhost:4531 F 7253500

BUGS

       This almost empty section...

       Report bugs to:

              Hamlib Developer mailing list
              ⟨hamlib-developer@lists.sourceforge.net

COPYING

       This  file  is  part  of  Hamlib,  a  project  to develop a library that simplifies radio,
       rotator, and amplifier control functions for developers of software primarily of  interest
       to radio amateurs and those interested in radio communications.

       Copyright © 2000-2011 Stephane Fillod
       Copyright © 2000-2018 the Hamlib Group (various contributors)
       Copyright © 2010-2020 Nate Bargmann

       This is free software; see the file COPYING for copying conditions.  There is NO warranty;
       not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

SEE ALSO

       less(1), more(1), ampctld(1), hamlib(7)

COLOPHON

       Links to the Hamlib Wiki, Git repository, release archives, and  daily  snapshot  archives
       are available via hamlib.org ⟨http://www.hamlib.org⟩.