This manual provides installation and operation information for the Comtech EF Data
Outdoor SSPA. This is a technical document intended for earth station engineers,
technicians, and operators responsible for the operation and maintenance of the Outdoor
SSPA.
CONVENTIONS AND REFERENCES
CAUTIONS AND WARNINGS
Indicates information critical for proper equipment function.
IMPORTANT
CAUTION
Indicates a hazardous situation that, if not avoided, may result in minor or moderate
injury. CAUTION may also be used to indicate other unsafe practices or risks of
property damage.
Indicates a potentially hazardous situation that, if not avoided, could result in
WARN ING
death or serious injury.
METRIC CONVERSION
Metric conversion information is located on the inside back cover of this manual. This
information is provided to assist the operator in cross-referencing non-metric to metric
conversions.
TRADEMARKS
All product names mentioned in this manual may be trademarks or registered trademarks
of their respective companies and are hereby acknowledged.
REPORTING COMMENTS OR SUGGESTIONS CONCERNING THIS MANUAL
Comments and suggestions regarding the content and design of this manual will be
appreciated. To submit comments, please contact the Comtech EF Data Technical
Publications Department: tpubs@comtechefdata.com
iv
Page 8
Page 9
Chapter 1. SYSTEM OPERATION
This section contains instructions for operating the XPA-200-OD outdoor SSPA. The
primary customer interface to the XPA is via the Remote Communications port. This
section defines in detail the customer interface.
1.1 CONNECTOR J3: AC POWER, MAINS, 205 TO 240 VAC.
Mating connector: ITT: KPT06J14-19P or MS3116J14-19P connections, see Table 2.
Table 2. Connector J6 Pinout
Pin Outdoor SSPA
A RS485_+RX
B RS485_-RX
C RS485_+TX
D RS485_-TX
E RS232_RD
F Analog_Pwr_Mon
G RS232_TD
H Aux_In
J Aux_Out
K SumFLT_COM
L SumFLT_NO
M SumFLT_NC
N GND
P ONLINE_Status
R +24V
S Mute Control
T Minor_FLT_COM
U Minor_FLT_NO
V Minor_FLT_NC
6
Page 10
XPA-200-OD Revision 1
System Operation MN/XPA200OD.IOM
1.3 TURNING ON THE SSPA
The SSPA does not contain a ‘Power On/Off’ switch. The SSPA is powered ON by
connecting the J3 AC Power connector to the appropriate prime power source.
Never turn the unit ON without proper waveguide termination on the
J2 “RF OUTPUT” port. Individuals can be exposed to dangerously
WARN ING
high electromagnetic levels.
1.4 CONFIGURING THE SSPA
The following paragraphs provide a quick start guide to the most commonly used
commands. Full coverage of all user remote commands is contained in Chapter 2.
1.4.1 ATTENUATION
The SSPA’s attenuation is user configurable. The SSPA’s attenuation can be selected
between 00.00 and 25.00 dB in 0.25 dB increments.
Associated Remote Command(s): ATT=
1.4.2 MUTE
The transmitter output state (the ‘RF OUT’ port, J2) will be ON only if the following
three requirements are met:
(1) The SSPA hardware must be fault free (i.e., No faults).
(2) The SSPA must be unmuted (i.e., MUT=0).
(3) The Amplifier must be ON (i.e., AMP=1).
Associated Remote Command(s): MUT=
1.4.3 TX AMPLIFIER
The amplifier ON/OFF state is user controllable. Turning the TX amplifier OFF removes
the 10Vdc supply to the RF Power FETs. The TX Amplifier must be ON in order for the
SSPA to transmit a RF signal.
Associated Remote Command(s): AMP=
7
Page 11
XPA-200-OD Revision 1
System Operation MN/XPA200OD.IOM
Figure 1. Outdoor Unit
8
Page 12
XPA-200-OD Revision 1
System Operation MN/XPA200OD.IOM
NOTES:
9
Page 13
Chapter 2. CUSTOMER COMMANDS
2.1 INTRODUCTION
This section describes the protocol and message command set for remote monitor and
control of the SSPA product.
The electrical interface is either an RS-485 multi-drop bus (for the control of many
devices) or an RS-232 connection (for the control of a single device), and data is
transmitted in asynchronous serial form, using ASCII characters. Control and status
information is transmitted in packets of variable length in accordance with the structure
and protocol defined in later sections.
2.2 RS-485
For applications where multiple devices are to be monitored and controlled, a full-duplex
(4-wire) RS-485 is preferred. Half-duplex (2-wire) RS-485 is possible, but is not
preferred.
In full-duplex RS-485 communication there are two separate, isolated, independent,
differential-mode twisted pairs, each handling serial data in different directions. It is
assumed that there is a ‘controller’ device (a PC or dumb terminal), which transmits data,
in a broadcast mode, via one of the pairs. Many ‘target’ devices are connected to this pair
which all simultaneously receive data from the controller. The controller is the only
device with a line-driver connected to this pair; the target devices only have linereceivers connected.
In the other direction, on the other pair, each target has a tri-stateable line driver
connected, and the controller has a line-receiver connected. All the line drivers are held in
high-impedance mode until one (and only one) target transmits back to the controller.
Each target has a unique address, and each time the controller transmits, in a framed
‘packet’ of data, the address of the intended recipient target is included. All of the targets
receive the packet, but only one (the intended) will reply. The target enables its output
line driver, and transmits its return data packet back to the controller in the other direction
on the physically separate pair.
Two differential pairs - one pair for controller to target, one pair for target to
controller.
Controller-to-target pair has one line driver (controller), and all targets have line-
receivers.
Target-to-controller pair has one line receiver (controller), and all targets have tri-
state drivers.
2.4 RS-232
This is a much simpler configuration in which the controller device is connected directly
to the target via a two-wire-plus-ground connection. Controller-to-target data is carried,
via RS-232 electrical levels on one conductor, and target-to-controller data is carried in
the other direction on the other conductor.
2.5 BASIC PROTOCOL
Whether in RS-232 or RS-485 mode, all data is transmitted as asynchronous serial
characters, suitable for transmission and reception by a UART. The asynchronous
character format is fixed at 8 data bits, no parity, and 1 stop bit. Only two (2) baud rates
are supported: 9600 baud and 19200 baud.
All data is transmitted in framed packets. The host controller is assumed to be a PC or
ASCII dumb terminal, which is in charge of the process of monitor and control. The
controller is the only device that is permitted to initiate, at will, the transmission of data.
Targets are only permitted to transmit when they have been specifically instructed to do
so by the controller.
All bytes within a packet are printable ASCII characters, less than ASCII code 127. In
this context, the Carriage Return and Line Feed characters are considered printable.
All messages from controller to target require a response (with one exception). This will
be either to return data that has been requested by the controller, or to acknowledge
reception of an instruction to change the configuration of the target. The exception to this
is when the controller broadcasts a message (such as Set time/date) using Address 0,
when the target is set to RS-485 mode.
Each of the components of the packet is now explained.
2.6.1 START OF PACKET
Controller to Target: This is the character ‘<’ (ASCII code 60)
Address
De-limiter
/
ASCII code 47
(1 character)
Address
De-limiter
/
ASCII
code 47
(1 character)
Instruction
Code
(3 characters)
Instruction
Code
(3 characters)
Code
Qualifier
= or ?
ASCII code
61 or 63
(1 character)
Code Qualifier Optional
=, ?, !, or *
ASCII code 61,
63, 33 or 42
(1 character)
Optional
Arguments
(n characters)
Arguments
(From 0 to n
characters)
End of Packet
Carriage
Return
ASCII code 13
(1 character)
End of Packet
Carriage Return,
Line Feed
ASCII code 13,10
(2 characters)
Target to Controller: This is the character ‘>’ (ASCII code 62)
Because this is used to provide a reliable indication of the start of packet, these two
characters may not appear anywhere else within the body of the message.
2.6.2 ADDRESS
Up to 9,999 devices can be uniquely addressed. In both RS-232 and RS-485 applications,
the permissible range of values is 1 to 9999. It is programmed into a target unit using the
remote control port.
IMPORTANT
The controller sends a packet with the address of a target - the destination of
the packet. When the target responds, the address used is the same
address, to indicate to the controller the source of the packet. The controller
does not have its own address.
This is a three-character alphabetic sequence that identifies the subject of the message.
Wherever possible, the instruction codes have been chosen to have some significance.
This aids in the readability of the message, should it be displayed in its raw ASCII form.
Upper case and lower case alphabetic characters may be used (A-Z, and a-z).
2.6.4 INSTRUCTION CODE QUALIFIER
This is a single character that further qualifies the preceding instruction code.
Code Qualifiers obey the following rules:
1. From Controller to Target, the only permitted values are:
= (ASCII code 61)
? (ASCII code 63)
They have these meanings:
The ‘=’ code (controller to target) is used as the assignment operator, and is used to
indicate that the parameter defined by the preceding byte should be set to the value of the
argument(s) which follow it.
For example, in a message from controller to target, MUT=1 would mean ‘enable the
mute function’.
The ‘?’ code (controller to target) is used as the query operator, and is used to indicate
that the target should return the current value of the parameter defined by the preceding
byte.
For example, in a message from controller to target, MUT? would mean ‘return the
current state of the mute function’.
2. From Target to Controller, the only permitted values are:
First, if the controller has sent a query code to a target (for example MUT?, meaning ‘is
mute enabled or disabled?’), the target would respond with MUT=x, where x represents
the state in question, 1 being ‘enable’ and 0 being disable.
Second, if the controller sends an instruction to set a parameter to a particular value, and,
providing the value sent in the argument is valid, then the target will acknowledge the
message by replying with MUT= (with no message arguments).
The ‘?’ code (target to controller) is only used as follows:
If the controller sends an instruction to set a parameter to a particular value, and, if the
value sent in the argument is not valid, then the target will acknowledge the message by
replying (for example) with MUT? (with no message arguments). This indicates that
there was an error in the message sent by the controller.
The ‘*’ code (target to controller) is only used as follows:
If the controller sends an instruction to set a parameter to a particular value, and, if the
value sent in the argument is valid, however the target is in the wrong mode (e.g., standby
mode in redundancy configuration) that it will not permit that particular parameter to be
changed at that time, then the target will acknowledge the message by replying (for
example) with MUT* (with no message arguments).
The ‘!’ code (target to controller) is only used as follows:
If the controller sends an instruction code which the target does not recognize, then the
target will acknowledge the message by echoing the invalid instruction, followed by the !
character with. Example: XYZ!
The ‘#’ code (target to controller) is only used as follows:
If the controller sends an instruction code which the target cannot currently perform
because of hardware resource issues, then the target will acknowledge the message by
echoing the invalid instruction, followed by the # character. This response can only
occur if the operator sends two or more ‘hardware configuration’ type commands without
allowing adequate time between commands for the hardware to be configured. For
example, if the operator issued commands to change both the frequency and the
attenuation with less than 100 milliseconds between commands, and if this response is
returned, then the command has not been excepted and the operator must resend the
command.
Arguments are not required for all messages. Arguments are ASCII codes for the
characters 0 to 9 (ASCII 48 to 57), period (ASCII 46) and comma (ASCII 44).
2.6.6 END OF PACKET
Controller to Target: This is the ‘Carriage Return’ character (ASCII code 13)
Target to Controller: This is the two-character sequence ‘Carriage Return’, ‘Line Feed’.
(ASCII code 13, and code 10.)
Command or Query.
Valid attenuation level, in dB, at 0.25-dB step size
as factory default.
Example: ATT=12.25
Command or Query
Turns ON or OFF the RF power amplifiers.
0 = Off
1 = On
Command or Query.
Mute the unit, where:
0 = Disabled
1 = Enabled
Example: MUT=1
Command or Query.
Online status (applies only to redundancy), where:
0 = Disabled
1 = Enabled
Example: ONL=1
Command or Query
Turns ON or OFF the redundancy state.
0 = OFF, 1 = ON
Command or Query.
Sets Auto or Manual mode for redundancy.
0 = Manual, 1 = Auto
Response to
Command
(target to controller)
ATT= (message ok)
ATT? (received ok, but
invalid arguments
found)
ATT* (message ok, but
not permitted in current
mode)
AMP= (message ok)
AMP? (received ok, but
invalid arguments
found)
AMP* (message ok, but
not permitted in current
mode)
MUT= (message ok)
MUT? (received ok, but
invalid arguments
found)
MUT* (message ok, but
not permitted in current
mode)
ONL= (message ok)
ONL? (received ok, but
invalid arguments
found)
RED= (message ok)
RED? (received ok, but
invalid arguments
found)
RAM= (message ok)
RAM? (received ok, but
invalid arguments
found)
Command or Query
Force one of the online units to be a back-up for
maintenance and test purposes.
0 = Removed force back-up situation
1 = SSPA #1 is forced to be a back-up
2 = SSPA #2 is forced to be a back-up
Command or Query.
Set Physical Address-between 0001 to 9999.
Resolution 0001
Example: SPA=0412
Set remote baud rate as follows:
9600 = 9600 baud
19K2 = 19200 baud
Command or Query.
A command in the form mmddyy, where; dd = day
of the month, between 01 and 31, mm = month of
the year, between 01 and 12 and yy = year,
between 00 and 96 (2000 to 2096)
Example: DAT=042503 would be April 24, 2003
Command or Query.
A command in the form hhmmss, indicating the
time from midnight, where hh = hours, between 00
and 23; mm = minutes, between 00 and 59, and ss
= seconds, between 00 and 59
Example: TIM=231259 would be 23 hours, 12
minutes and 59 seconds from midnight.
Instructs the slave to clear all Stored Events
This command takes no arguments.
Query only.
Used to Query the units 9 digit serial number.
Slave returns its S/N, in the form xxxxxxxxx.
Example: RSN=000000165
Query only.
The unit returns a string indicating the Model
Number and the the value of internal software
revision installed
Example: RET=CPA-300 VER: 1.0.3
Response to
Command
(target to controller)
FBU= (message ok)
FBU? (received ok, but
invalid arguments
found)
SPA= (message ok)
SPA? (received ok, but
invalid arguments
found)
SBR= (message ok)
SBR? (received ok, but
invalid arguments
found)
DAT= (message ok)
DAT? (received ok, but
invalid arguments
found)
DAT* (message ok, but
not permitted in current
mode)
TIM = (message ok)
TIM? (received ok, but
invalid arguments
found)
TIM * (message ok, but
not permitted in current
mode)
CAA= (message ok)
N/A RSN?
N/A RET?
Query
(Instruction
Code and
qualifier)
FBU? FBU=x
SPA?
SBR?
DAT?
TIM?
N/A
Response to
controller)
(same format as
command
arguments)
SPA=x
(same format as
command
arguments)
SBR=xx
(same format as
command
arguments)
DAT=xx
(same format as
command
arguments)
TIM=xx
(same format as
command
arguments)
N/A
RSN=xxxxxxxxx
(see description
for details of
arguments)
RET=x….x
Command or Query.
The SSPA output will automatically be muted in
the event of detected fault. If auto fault recovery is
enabled, it will cause the output to go active
(unmute) if all faults are cleared. If disabled, the
output will remain muted even if all faults are
cleared.
The unit returns the oldest 5 Stored Events which
have not yet been read over the remote control.
Reply format: Sub-body{CR}Sub-body{CR}Sub-
body{CR}Sub-body{CR}Sub-body, where Subbody=
YYYYYYYYYY ZZ mmddyy hhmmss,
YYYYYYYYYY being the fault description.
ZZ being the alarm type.
FT = Fault
OK = Clear
IF = Information
If there are no new events, the unit will reply with
LNA*
Returns the number of Stored Events which
remain unread, in the form xx. Example reply:
TNA=18
Query only.
Used to Query the status of the Summary Fault
Relay.
Example: SFS=0
where: 0 = OK 1 = FT
Query only.
Used to Query the status of the Terminal Status.
Example: TSC=0
Where: 0 = no change in status, 1 = change in
status
Response to
Command
(target to controller)
AFR = (message ok)
AFR? (received ok, but
invalid arguments
found)
AFR* (message ok, but
not permitted in current
mode)
Command or Query
Used to identify or name the unit or station. First
line is limited to 12 characters. Second line is also
limited to 12 characters. No carriage return
between first line and second line.
Example: CID=’cr’
--Earth Station 1—
---SSPA #1----
Gets the Firmware Number of the unit.
Example: <1/FRW=
>0001/FRW/10786’cr’
BULK=FW/10786’cr’
MnC=FW/10787’cr’
FPGA=FW/10788’cr’’lf’
Query only.
Used to Query the maintenance status of the unit
P24VT=024.1’cr’
P15VT=015.2’cr’
P10V1=010.4’cr’
P10V2=010.4’cr’
P7V5T=007.8’cr’
P5VLT=005.8’cr’
N5VLT=-05.7’cr’
FANR1=100.0’cr’
FANR2=100.0’cr’
ATEMP=+40.0’cr’
A10V1=010.2’cr’
A10V2=010.2’cr’
FWPWR=+37.6’cr’
RVPWR=02.0’cr’’If’
*Note: REFV will appear if REF OSC module is
installed.
Response to
Command
(target to controller)
CID= (message ok)
CID? (received ok, but
invalid arguments
found)
Used to Query the Maintenance status of the unit
in concise format. Response is comma delimited.
Example: CMS=aaa.a,bbb.b,ccc.c,ddd.d,eee.e,
fff.f,ggg.g,hhh.h,iii.i,jjj.j,kkk.k,lll.l,mmm.m,nnn.n,
’cr’’lf’
where:
aaa.a = +24V Power Supply
bbb.b = +15V Power Supply
ccc.c = +10V-1 Power Supply
ddd.d = +10V-2 Power Supply
eee.e = +7.5V Power Supply
fff.f = +5V Power Supply
ggg.g = -5V Power Supply
hhh.h = Fan #1 speed (in percent)
iii.i = Fan #2 speed (in percent)
jjj.j = Amplifier temperature in deg. C
kkk.k = Ampifier 10V1
lll.l = Amplifier 10V2
mmm.m=Forward RF output power, in dBm
Note: nnn.n will appear for Ref Voltage if
Reference Osc Module is installed.
Query only.
Used to Query the utility status of the unit
Example: RUS=’cr’
ADR=0001’cr’
BDR=9600’cr’
Query only.
Used to Query the Maintenance status of the unit,
response is comma delimited.
Example: CUS=aaaa,bbbb,ccc,’cr’’lf’
where:
aaaa = Remote Unit Address
bbbb = Remote Baud Rate
Query only.
Used to Query the Alarm status of the unit
Example: RAS=’cr’
P24VT=OK’cr’
P15VT=OK’cr’
P10V1=OK’cr’
P10V2=OK’cr’
P7V5T=OK’cr’
P5VLT=OK’cr’
N5VLT=OK’cr’
FAN#1=OK’cr’
FAN#2=OK’cr’
HSTMP=OK’cr’
SHTDN=OK’cr’
IICST=OK’cr’
FPOUT=OK’cr’’IF’
Query only.
Used to Query the Alarm status of the unit,
response is comma delimited.
Example: CMS=a,b,c,d,e,f,g,h,I,j,k,I,m’cr’’lf’
where: a thru k = 0 or 1, 0 = OK 1 = FT
a = +24V Power Supply
b = +15V Power Supply
c = +10V-A Power Supply
d = +10V-B Power Supply
e = +7.5V Power Supply
f = +5V Power Supply
g = -5V Power Supply
h = Fan#1 State
i = Fan#2 State
j = Heatsink Temp
k = Shutdown
l = llC Status
m=Forward Power Alarm
where:
ATT= attenuation in dB
AMP= RF power amplifier state, 0=OFF, 1=ON
MUT=RF mute state, 0=unmuted, 1=muted
ONL=Online status for redundancy
RED=Redundancy state and mode,
states: 0=OFF, 1=ON,
modes: 0 = auto, 1 = manual
GOF=Gain Offset in dB
AFR= auto fault recovery, 0=manual, 1=auto
Query only.
Used to query the summarized version of RCS.
Example: CCS=aaaaa,b,c,d,e-e,fffff,g,‘cr’
Where:
aaaaa = attenuation in dB
b = RF power amplifier state
c = mute state, 0 = unmuted, 1 = muted
d = online status
e-e = redundancy state and mode
fffff = gain offset in dB
g = AFR