1) The number of instruments that can be controlled is not limited by the software but by the hardware (a software limit of 500 instruments currently exists).
2) Multiple antennas can be controlled by the same software.
3) Electronic entry of satellite ephemeris from readily available two line element sets and IIRV formats is supported. If the PC is connected to the Internet, two line element sets can be downloaded from the net and used by HWCNTRL. HWCNTRL also supports NASA INP and SPICE formats.
4) The user can manually edit satellite ephemeris if desired.
5) An unlimited number of satellite ephemeris sets can be stored in HWCNTRL's database.
6) Satellite passes are generated on user request based on the ephemeris set, including the rise and set time and position (azimuth and elevation) and the peak elevation.
7) The user selects which generated passes are to be added to the schedule. Schedules may also be set via the remote interface or by placing XML files in a specified directory.
8) The schedule may contain an unlimited number of future events.
9) Each scheduled event includes a user specified configuration number that defines which equipment is to be used by the event.
10) Satellite passes automatically default to the first configuration number which has a catalog number which matches the satellite's catalog number in the ephemeris set. The user is not allowed to enter a configuration number that does not exist.
11) Up to 1000 distinct configurations may be defined. A configuration consists of the settings for all equipment that is to be used by the configuration and a flag for each instrument in the system indicating if the individual instrument is to be used by the configuration.
12) The individual equipment settings in a configuration may be set by the user on the instrument's configuration screen.
13) The Schedule may contain four kinds of events, satellite passes, single shot events, daily events, or weekly events. Daily events occur every day until removed from the schedule. They only occur once in the displayed schedule, but are used to determine conflicts in the future. Weekly events are like daily events except that they occur once a week.
14) A modified schedule can not be saved if it contains conflicts. The conflicting events are highlighted on the display of the schedule.
15) Satellite passes and pointing angles are generated by the SGP4 algorithm when using two line elements or IIRV's.
16) For non-satellite pass events that utilize an antenna, pointing angles may be obtained from NASA INP files, a SPICE kernel, a user supplied file, user supplied Chebyshev polynomials, or from a user written subroutine (typically used to get pointing angles from another computer or application).
17) A separate configuration and control/status screen is accessible for each instrument in the system. Some instruments also have a constants screen for specifying installation specific constants.
18) The control/status screens allow the user to view/change the current settings of any instrument in the system. The status information is periodically updated to reflect the current settings (i.e. if someone changes an instrument's settings at the instrument itself, in a short period of time, the change will be reflected on the control/status screen). The frequency of status updates is user controlled.
19) The control/status screens may remain open while other work is being done on the system (modeless dialog boxes).
20) The station information (longitude, latitude, and elevation) are user editable from the screen. With a GPS receiver in the system, the station information can be obtained from the GPS receiver.
21) The schedule, ephemeris and station information is saved to disk, so that the HWCNTRL application can be stopped and restarted without losing information.
22) At a user specified interval prior to an event, the settings specified in the events configuration are sent to all of the instruments that are used by the configuration. A user specified default is used unless explicitly changed in the schedule.
23) HWCNTRL can interact with equipment via IEEE-488, RS232, GPIO, TCP/IP, SSH, HTTPS, and other interfaces.
24) Remote status is available via a user control packet generation routine which periodically generates a packet and sends it to the disignated destination.
25) A remote user can supply ephemeris by ftp'ing a file containing two line element sets or IIRVís to the host PC and then notifying HWCNTRL of the new ephemeris file via a socket interface or by supplying the lines of the ephemeris file directly over the socket.
26) A remote user can update the schedule by ftp'ing a file containing schedule data to the host PC and then notifying HWCNTRL of the new ephemeris file via a socket interface or by providing the schedule file data directly via the socket interface.
27) The remote socket interface requires a user-id and password to allow remote access. User-ids and passwords are controlled using the HWCNTRL software. Access to the remote socket can be limited to a user specified set of internet addresses.
28) In multiple antenna systems, one antenna can be slaved to another.
29) The HWCNTRL application can be changed from online (executing the schedule) to offline (not executing the schedule) and back from the main window.
30) The next events are displayed on the main window. The number displayed is controlled by a user editable text file.
31) The current system status is displayed on the main window.
32) The most recent messages are displayed on the main window with all messages accessible for review.
33) Accuracy of the system time is maintained by using a time card installed in the PC backplane, or installing a network time protocol service.
34) For antennas for which actual position data is available, a track analysis plot is available which displays the difference between the commanded position and the actual position of the antenna during the pass along with the signal strength of the received signal (as measured by the various equipement) and the various lock indicators.
35) Different antenna's may track different satellites simultaneously (assuming that the configurations do not utilize the same instruments).
36) The HWCNTRL main screen and system instruments are defined in a user editable text file.
37) The user can abort individual events without affecting other events that are occurring at the same time.
38) During an event, the user can easily determine which instruments are being used by the event.
39) Menu items that can confuse the user or cause problems can optionally be disabled during events.
40) An event can include a series of tests prior to the start of the event.
41) Equipment settings are saved to a text file at the start of every event. The settings are compared with the event configuration and any discrepancies noted in an alarm and placed in a file. The user can also select to have the settings printed.
42) Optionally, editing of configurations and constants can be restricted to users who have a password.
43) Instrument debug information can be turned on by modifying the control file or from the menus. The debug information includes all data written to and received from the selected instruments.
44) HWCNTRL supports a client/server model where one instance (the server) controls the equipment and one or more clients receive status data from the server and optionally can issue commands to the server to cause the change of settings in the various instruments.
45) The user can create a desired screen layout and save it to a file to allow the quick recreation of the layout when HWCNTRL is restarted.    For more information about the HWCNTRL Satellite Ground Stations Control package, please contact Dr. Henry DeWitt by e-mail (email@example.com) or call us at (302)226-0521 .