Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
AMPCTL(1)		       Hamlib Utilities			     AMPCTL(1)

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	 back-
       end  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 sepa-
       rated 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	ampli-
	      fier.

	      Often a serial port, but could be	a USB to serial	adapter.  Typ-
	      ically  /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  for-
	      mat  prepended  with  "0x".  You may pass	an empty string	for no
	      termination char.	 The string "-1" tells ampctl to switch	to bi-
	      nary 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 ter-
	      minal  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 READ-
	      LINE below).

	      Note: To read a history file stored in  another  directory,  set
	      the    AMPCTL_HIST_DIR	environment    variable,   e.g.	  "AM-
	      PCTL_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 AM-
	      PCTL_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  op-
       eration 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 argu-
       ment(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 up-
       per  case letter	will often be used for a set method whereas the	corre-
       sponding	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 am-
	      plifier 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 descrip-
       tion.  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 am-
	      pctld (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 com-
	      mands and	responses when developing a backend.

	      For binary protocols enter values	as \0xAA\0xBB.	Expect a  'Re-
	      ply'  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.

       Y, set_ant 'Antenna' 'Option'
	      Set 'Antenna' and	'Option'.

	      Number is	1-based	antenna# (`1', `2', `3', ...).

		  1 = A/1
		  2 = B/2
		  3 = C/3

READLINE
       If Readline library development files are found at configure time,  am-
       pctl  will be conditionally 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  key-
       bindings	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 vali-
       dated 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  cur-
       rent  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 des-
       tination	 directory may be changed by setting the AMPCTL_HIST_DIR envi-
       ronment 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	inter-
       nal 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 his-
       tory, 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 informa-
       tion  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 sim-
       plifies radio, rotator, and amplifier control functions for  developers
       of  software  primarily	of interest to radio amateurs and those	inter-
       ested in	radio communications.

       Copyright (C) 2000-2011 Stephane	Fillod
       Copyright (C) 2000-2018 the Hamlib Group	(various contributors)
       Copyright (C) 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>.

Hamlib				  2020-09-08			     AMPCTL(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ampctl&sektion=1&manpath=FreeBSD+Ports+14.3.quarterly>

home | help