Software Release Notes for Build "2014A"

Release Date: February 22, 2014
Release Name: 2014A
General Description:

Telescope Operator Overview Information

  • PCS: Default state upon PCS start-up for Preference Offloading is set by a new variable, PreferenceOffloading, in the pcs.conf file which is set to TRUE. Run-time state can still be controlled via the Optics GUI panel.
  • PCS: Audible alarm message (Error or Warning) issued when the PCS receives messages from the PSFL/PSFR with regard to the tip/tilt requests. The messages are: [Error|Warning] Problem with tip/tilt request [left|right] side.
  • PCS: Implemented a bentGregorianArgos focal station for instruments LUCIFER, IRTC, and RETROREF.
  • PCS: Implemented a RETROREF instrument and a bentGregorian4DInt focal station. The RETROREF instrument can be present at BGF, BGC, BGB, BGArgos, and 4DInt.
  • IIF: The RIP ignore control has changed. You can now choose between Notice RIP, GUIDE, ACTIVE, and Pause GCS. Pause GCS is a new state which will prevent guide and WFS updates being sent to the TCS, and when the RIP condition is cleared a pauseGuiding/resumeGuiding sequence will be sent which will restart guiding/WFS and avoid using bad data collected while the mirror was in RIP.
  • IIF: Offset commands make sounds when they finish.
  • IIF: There is a new focal station: bentGregorianArgos. This can be selected instead of bentGregorianFront for LUCIFER, IRTC, and RETROREF. Commands sent from instruments using either focal station will be accepted if either focal station is authorized.

Support Astronomer Overview Information

  • IRC: The IRC supports the new IIF command SetAGWFilter.
  • PSF: Zernike crosstalk parameters can now be specified in psf.conf.
  • PSF: The new focal station bentGregorianArgos has separate collimation files.
  • PCS: Implemented a filtering scheme with respect to the pressure, temperature, and humidity (weather) data collected from the active weather station.
  • GCS: setAGWFilter changed, it is allowed to change filter when guiding is stopped and when guiding is paused.
  • GCS: AGw filter Wavelength is sent to PCS on GCS Start, Instrument Authorization, Filter change and on Preset. IT #4887.

The Details

New Functionality Tests that need to be performed with the Telescope

  • AOS: The main purpose of the test is to verify that AOS functionality has not been spoiled by the reorganization of code and the adding of ARGOS support, thus any unexpected behaviour during the operation should be noted. A double check of AOS generated logs will also be useful.
  • PCS: Implemented an internal method in the PCS subsystem which is invoked when the "End of Observing" button is clicked or upon authorization of a new instrument. The PCS submits a circumpolar target to itself in order to avoid glitches generated by the pointing kernel in the tracking trajectories which can be generated if the last target provided to PCS is within a few degrees of the horizon when a new target is given to PCS. IT#4611 - DONE OK.
  • PCS: Implemented a median/mean filtering scheme for the "weather" data (pressume, temperature, and humidity) used by the PCS for the computations of refraction (dispersion) and differential refraction. IT#4459
  • PCS: Implemented a bentGregorian4DInt focal station which accommodates the RETROREF - IT#4889 and IT#4890 - DONE OK.
  • PCS: Implemented a RETROREF instrument which can be present at BGF, BGC, BGB, and 4DInt - IT#4889 and IT#4890 - DONE OK.
  • PCS: Fixed SYSLOG messages displayed during LBC (only) guiding regarding the scaling of the guide updates. IT#4305 - DONE OK.
  • GCS: MODS_R, Verify a function to skip last motion step before guiding. IT#3958

Patches to the Release

  • PCS Version 6.28a: Implemented a decimation scheme to allow the events associated with warnings/errors (SYSLOG and audio) regarding the limits on the optics only to be generated every N seconds, where N is a configuration variable in pcs.conf. The default value of N is 60.
    • Modified pcs.conf.
  • PCS Version 6.28b: A deficiency was discovered in the implementation for non-sidereal targets. If the observer specifies coordinates on the surface of a target body, there are additional values put into the output ephemeris table by default: (A) target surface location and (B) indicator to denote if the location is illuminated by any portion of the sun's disk. This information is not documented in the JPL Horizons manual, but it is present in the output file! The PCS was modified to parse the ephemeris text line appropriately when this information is present.

Known Bugs

  • none

Release Overview

  • none

IIF list of Public Data Dictionary Variables

* IIF Public Data Dictionary Variables compatible with this release.

Operating System, System Configuration, TCS and Hardware Computers

TCS Servers / Workstations

  • none

jet computer, DSP, FPGA

  • none


  • none


  • ECS: Four sections (lighting, dampers, vent doors and hydraulic bearing) had logic modified to present the ECS subsystem with data that was formerly read in rack bits to data structures.

TCS Subsystems and GUIs, and significant configuration files

AGw control server

  • 2014A oacserver ver.123_rev.34
    a) does NOT read the oacontrol.conf.default file.
    b) does print all the parameters from oacontrol.conf
    c) does send the parameters to PMAC when oacserver command "rdwrconfig -u 1" is executed
  • Note: AGW7 and AGW8 configuration added for 2013D at agw-control0 only (pending change propagation to agw-control1).

azcamserver and controller computers

  • (AzCam) computer labels match DNS, Commissioning pages updated, unused names removed from DNS.
    • azcamserver Ver.5.1 default server for Use with 2013A.
    • azcamserver-spare Ver.5.1 Win 7 is unused (Logging will be tested on Jan 22, 2014)
    • agw1-cam Ver.5.1 under Win 7 (unchanged)
    • agw2-cam Ver.5.1 under Win 7 (unchanged)
    • mods1-cam Ver.5.1 under Win 7 (IP changed to - it does not affect GCS operation).
    • mods2-cam Ver.5.1 under Win 7 (IP changed to - it does not affect GCS operation).
    • agw7-cam Ver.5.1 under Win 7 (unchanged).
    • agw8-cam Ver.5.1 under Win 7 (unchanged).
    • DNS name change agw7-umac -> agw7-pmac
    • DNS name change agw8-umac -> agw8-pmac

AOS - Adaptive Optics

  • AOS 12.1 is a largely modified version in preparation for the support of ARGOS. It is expected that AOS operates exactly as before when using FLAO, and ARGOS related features are not yet enabled. Here follows a list of main features and modifications.
    • The AOS code has been splitted in two: initialization and the support for the TCS interface (client commands from TCS subsystems) have been left in the original file AOS.cpp. Implementation of commands directed towards the external FLAO system (a.k.a. the AO Supervisor) have been moved in a dedicated source file: FLAOifApp.cpp. Also, a skeleton of the corresponding command support code for ARGOS has been added (file ARGOSifApp.cpp). The latter is essentially a stub which must be filled in with actual code, but is already part of the AOS architecture.
    • The AOS set of commands has been splitted in three groups: 1) FLAO specific commands (commands controlling the FLAO WFS and the Adsec, to switch on/off devices setting the mirror and the like), 2) ARGOS specific commands: (commands to switch on/off and control the ARGOS devices), 3) AO commands. The latter group of commands is directed either to FLAO or to ARGOS depending on the current operating mode.
    • The Data Dictionary has been modified accordingly to support the reorganization of commands and to add the ARGOS related variables. This does not affect other TCS components because only variables for internal AOS use are involved (to be checked).
    • The SetNewInstrument command now also switches between FLAO and ARGOS when needed. This part of code has been tested but is commented out in AOS version 12.1 to avoid to enable ARGOS related functionalities not yet tested.
    • Specific ARGOS related items have been added to the AOS configuration file. Moreover the set of command timeouts which used to be hard coded in the source, are now defined as configuration parameters.
    • The configuration file defining gains for the computation of zernike coefficients used for Mode Offload has been doubled so that different values for FLAO and ARGOS can be defined.
    • The AOS client interface now includes ARGOS related new commands. These commands are not tested and must not be used; anyway there is currently no client (except for the aostest program) actually using them.
    • Test calls for the above client commands have been added to the aostest program.
    • A dummy ARGOS Arbitrator implemementation in python (provided by ARGOS team) has been added to the test section of the AOS source code tree to be used for future tests.

  • AOSGUI 4.1 Is almost identical to previous version (4.0)
    • The experimental "snapshot" button has been removed because the corresponding feature was never used.
    • The "Info" panel now includes ARGOS related information (although no real info is available, yet)
    • The command progress bar has been temporarily disabled because the management must be modified due to ARGOS support. It will be reenabled with enhanced management with the next build.

DDS - Data Dictionary Server

  • DDS Version 1.1
    • Error event collection has been added to the DDS. The DDS now keeps a queue of error events from all subsystems, and when the GetEvents() ICE call is made the events are formatted and returned. The queue is limited to 1000 events. Note there is only one queue, so only one client should be calling GetEvents(). ddsclient has been extended to support testing.

    • none

ECS - Enclosure Control

  • ECS Version 3.0
    • Convert from using getBit(), getInt(), getInt32(), getUint32() and getFloat() to direct structure access for reading data from the PLC status structures. The status structures have bit fields defined for all bits used for read access.
    • Convert writeHC from using byte and bit positions to direct structure access.
    • Convert writeHS from using string names to direct structure access.
    • Clean up events and add 'started' events for all commands.
    • Clean up error returns from all commands.
    • Remove ShutterDoor::cancel() command because it did nothing.
    • Cleaned up units for many reflective memory variables.
    • Added 'severity' reflective memory variables for all elements. These should be used by the GUI to set the color coded 'bread crumbs'.
    • Added space in reflective memory and telemetry for ten more telescope temperature measurements. When the hardware is installed and the thermal computer modified we can patch the ECS to finish the job.
    • HBS telemetry added for setpoint, deadband, CV0423 command and feedback, and TT0423 temperature.
    • IT #4952 fix now pauses telemetry when encountering dropped samples; done for all telemetry streams.
    • Migrated rack bits for I/O for lighting, vent doors, dampers and hydraulic bearing.
    • Removed old and unused reflective memory variables in BkrStat
    • Events added for level 4 exhaust fan temp high, high-high and damper fail to close.

  • ECSGUI Version 3.0
    • Clean up CSQHandles so the subsystem does not consume excessive memory.
    • Clean up main support dialogs by moving SVI access to data dictionary items in component class to mitigate the number of values needed to instantiate a component class. Added error checking to ensure the proper names have been constructed in the component class. Fix a few bugs in trying to read non-existent data dictionary items.
    • IT #2671 corrected air compressor split in ECS GUI setpoints page.
    • AO general instrument alarm now indicates "120V power is lost; close dome now" in the ECS GUI, per Adsec group's request.

ENV - Environmental Sensors

  • ENV Version 1.18
    • Use severity codes from new core/Severity module.

    • none

FACSUM - Facility Summary

  • none

IIF - Instrument Interface

  • IIF Version 8.24
    • Send rotator angles to LBC in passive pseudo-monocular presets and offsets. This is available as a patch in 2013D (V 8.23a).
    • Only forbid guiding in parallactic rotator mode for TCS controlled off-axis guiders. This is available as a patch in 2013D (V 8.23b).
    • Add scheme to allow another subsystem to use the IIF DDNames map. This allows ARGOS to send 'external' DD names to AOS.
    • Change error message for Offset in ACQUIRE mode (IssueTrak 4946).
    • Put ICE parameter error checking in IIFServerI.cpp instead of IIFGlobals.cpp and force error checking to false for LUCIFER (IssueTrak 4963 in part). This means all instruments except LUCIFER can have ICE parameter error checking enabled.
    • Add bentGregorianArgos focal station for LUCIFER.
    • Add sounds for Offsets (IssueTrak 5002).
    • Put focus scale factors in StepFocus (IssueTrak 4999) so moving just M1 or M2 will work as expected. MoveFocus cannot be properly implemented with scale factors, so it has not been changed.
    • Add AO fallback option Pause GCS (IssueTrak 3026). This allows the operator to have the GCS not send corrections while the shell is RIP and then do a GCS pause/resume when the shell comes out of RIP.
    • Clear pseudo-monocular mode during Authorization (IssueTrak 5046).
    • Add command SetAGWFilter.
    • Add AO state 'paused' to AO status.
    • Clean up side name in events so log file will not have two side name fields.
    • Allow commands from focal station "bentGregorianArgos" to work when the authorized focal station is "bentGregorianFront".

  • IIFGUI Version 4.6
    • Add bentGregorianArgos focal station for LUCIFER.
    • Support new AO fallback option Pause GCS (IssueTrak 3026).
    • Support status fro new command SetAGWFilter.
    • Support AO state 'paused'.

GCS - Guiding Control Subsystem

  • GCS Version 2.15
    • Merged Patches from Ver-2.14.*
    • Changed tcs.conf to use default sextractor 2.8.6
    • AIP: Added guiding window data to FITS header.
    • MODS: Changed preset Track to use mods_home() method. IT #4926.
    • MODS: Enabled SFP2CCD with updated mods_library transforms. IT #4542.
    • PFU: Set default focus for preset Track,Active,Acquire,Guide. IT #4925.
    • PFU: Modified rotAngleOffset for Acquisition.
    • PFU: Added config value to control rotAngleOffset for Acquisition.
    • PFU: Added 3 config values in PEPSUPFU_L/R.cfg files.
    • PFU: Rearranged DD updates and logging to limit sextractor crash.
    • PFU: Fixed the parkActiveProbe() for Track. IT #4925.
    • PFU: Deactivated subImage cutout for Guiding.
    • PFU: Corrected hotspot logic and location for Guiding.
    • PFU: Corrected WFS logic.
    • Modified messages to adress IT #4781.
    • Corrected configs for Guiding hotspot and camera names.
    • Unified logging for PFU and AIP.
    • Added isolation for sextractor and centroiding.
    • Removed duplicated logging.
    • Merged Patched GUI v0.1.31 from Ver-2.14.*
    • (New for Ver-2.15.0)
    • Modified collimating flag to be ignored in simulation.
    • Added filter WL notification from GCS to PCS on GCS Start, Instrument Authorization, Filter change. IT #4887.
    • Modified Agw DD state, when unit is not accessible.
    • Updated PFU config files per JH request on 01/09/2014.
    • Added ARGOS focal station to GCS configurations.
    • MODS: Added to skip last motion step before guiding for MODS_R only.
    • setAGWFilter changed, it is allowed to set filter when guiding is stopped and when guiding is paused.
    • Added filter WL notification from GCS to PCS on Preset. IT #4887.
    • Added DD's to follow "ProbeMotion", WFS and Guide Image Acquisition, etc.
    • PFU: Added DD's for Acquisition before Guiding step, and Guiding after Acquisition.
    • MODS: Removed duplicated transform logging.

  • GCSGUI Version 0.1.32
    • Modified GCSGUI to match GCS_Version-2.15.0.
    • Fixes for AGW Eng.GUI to match changeAGWFilter behaviour in GCS 2.15.0.
    • Extended GuideControl Eng.GUI.
    • Added time since Preset.
    • Added WFS acquisition and "ProbeMotion" status activity.
    • Fixed Guide exposure selection.
    • Added "HotSpot" selection.
    • Added Binning selection. Part of IT #3269.
    • Added Pause/Resume Guiding.

LSS - Logging and Events

  • LSS Version 3.12
    • Add priority filter so clients will only receive events with priority greater than or equal.

  • LSSGUI Version 2.5
    • Add side name field if the event specifies it (except for GCS events). This maintains the appearance of PMC, PSF, and IIF events (which now do not have a side string in the event description) and adds a side string for some other events (ECS for example). The GCS should eventually be modified to remove the side name from its event descriptions, and this GUI changed accordingly. This is part of the cleanup of the event log file to avoid duplicate side fields.

MCS / mcstemp - Mount Control

  • MCS
    • Add bentGregorianArgos focal station. It uses the same rotator as bentGregorianFront.

    • none

OSS - Optical Support

  • OSS Version 3.4
    • Wait for dynamic balance to finish in reconcileY and reconcileZ commands. This means when a reconfigure with reconcile is done, the 'done' sound will not be played until the dynamic balance has finished.
    • Populate dynamic balance Y and Z state, status, and severity values.
    • Add bentGregorianArgos focal station to positions.conf. The public copy on the mountain must be modified when the build is installed.
    • Change secondary hexapod move timeout from 60 to 110 seconds to allow long moves.
    • Improve debug messages in secondary and tertiary sendString() methods.
    • Add check for Umac errors in secondary and tertiary getStatusMsg() methods.
    • Always send fixed point numbers to the Umacs since they will not accept scientific format.
    • Add configuration variables for Umac verbose flags. This is to help find the cause of the tertiary "Invalid response" errors we get every so often.

  • OSSGUI Version 3.3
    • Convert severity codes to the ones provided by the new core/Severity class.
    • Add calls to CSQHandle::clear() in Reconfigure to free subsystem resources.
    • Properly display the command result on failed commands.

  • positions.conf
    • Added entries for the new focal station bentGregorianArgos.

PCS - Pointing Control

  • PCS Version 6.28
    • The default state upon PCS start-up for Preference Offloading is set by a new variable, PreferenceOffloading, in the pcs.conf file. It is set to "true" by default. The run-time state can still be controlled via the Optics GUI panel.
    • Implemented a median/mean filtering scheme for the "weather" data (pressume, temperature, and humidity) used by the PCS for the computations of refraction (dispersion) and differential refraction. This upgrade supports IT#4459.
    • Added an audible alarm message (Error or Warning) as part of the existing event when the PCS receives messages from the PSFL/PSFR with regard to the tip/tilt requests. The messages are: [Error|Warning] Problem with tip/tilt request [left|right] side. A majority of the time this message actually means a collimation limit has been reached on a mirror. The message will be issued for every problematic tip/tilt request. The error or warning severity is set by the PSF. The sounds can be silenced on the LSSGUI.
    • Implemented a bentGregorianArgos focal station for instruments LUCIFER, IRTC, and RETROREF.
    • Implemented a RETROREF instrument and a bentGregorian4DInt focal station. The RETROREF instrument can be present at BGF, BGC, BGB, BGArgos, and 4DInt, so it has been implemented in a manner similar to the IRTC which can be present at multiple focal stations. This upgrade supports IT#4889 and 4890.
    • Ensured the rotator zeropoint and scale factor are accommodated by the functions which generate rotator trajectories on-demand by the instruments (currently, LBC and PATHFINDER). Reads rotator zeropoint and scale factor data on PCS start-up, and resets the values upon instrument authorization. The remapping is: c[0] = (c[0] - zeropoint) * scale.
    • Added the focal length to the data dictionary for the instruments authorized on each side of the telescope. Reads data on PCS start-up, and resets the values upon instrument authorization.pcs.side[0|1].focalLength in millimeters. Requested corresponding public data dictionary items: S_FocalLength.
    • Added the PCS data dictionary DETXY offset values in units of arcseconds. The current entries are in millimeters, but the instruments need it in arcseconds so they do not have to know the focal length being used for the computation. The private data dictionary variable is pcs.side[telSide_].pointingStatus.pointingOrigin.offsetArcs_[x|y]. Requested corresponding public data dictionary items: S_PO[X|Y]OffsetArcs.
    • Implemented an internal method, setNominalTarget(), which is invoked only by the PCS setToIdle() command. When the IIF "End of Observing" button is clicked at the end of a night's observing, the PCS setToIdle() command is one of the functions invoked. This command performs a variety of PCS "clean up" tasks, and it will now also self-submit to the PCS subsystem only a new circumpolar target. The MCS has already been told to stop tracking, so this new target will NOT cause the telescope to move. However, the internals in PCS will now be generating tracking polynomials for this new target. This change has been implemented to address IT#4611.
    • Ensured all commands which generate a new target create a baseTarget as well. The baseTarget is used when an offset is performed in order to force the same rotator orientation as the original Preset. Also, explicitly set the rotator reference.
      • Updated the offsetTelescopeDETXY() to set the rotator reference to the baseTarget after the offset has been performed. This fix had previously been implemented for the offsetTelescopeEquatorial() command. (Put in as a patch 2013D - PCS_Version-6.27c)
    • Fixed the SYSLOG messages in the LBC guide routine, setCentroid, to incorporate the scaling factor. Only the messages were in error; LBC guiding works properly. IT#4305

  • PCSGUI Version 1.6
    • Fixed the display of MJDTAI as it seemed to be updating on the order of minutes. When the value finally did update, it would update incorrectl (slightly in the future). The value being downcast to a float caused the problem.

    • pcs.conf contains a new variable, PreferenceOffloading. This variable controls the default (start-up) state which enables/disables the preference offloading.

Pointing Kernel / Pointing Kernel tools

  • none

PMC - Primary Mirror Cell

  • PMC Version 5.29
    • Get cell type before starting threads.
    • Rework thermal initialization so set point starts at glass temperature plus offset (IssueTrak 4923).
    • Rework simulated thermal data so it more closely matches real data.
    • Remove side name from event's log string to eliminate duplicate side names in the event log.

  • PMCGUI Version 6.5
    • Display dashes for invalid thermal control values.
    • Support removal of side name from event log string.

PSF - Point Spread Function

  • PSF Version 6.5
    • Put Zernike crosstalk coefficient parameters in psf.conf (IssueTrak 4891). There are three sets (per side): M1 LBC, M1 Gregorian, and M2. The available coefficients are the ones described in IssueTrak 4891, and the current values are the same as the existing hard coded ones, with zero for new parameters.
    • Remove side name from event descriptions. This is to avoid duplicate side fields in the event log.
    • Support the new bentGregorianArgos focal station for LUCIFER, IRTC, and RETROREF.

  • PSFGUI Version 6.4
    • Make primary mirror force plots update whenever a new force set is calculated (IssueTrak 5023).
    • Support removed side name from event descriptions.
    • Add CSQHandle::clear() calls to free subsystem resources. Clean up CSQHandle use.


  • TCSGUI Version 2.4
    • Add controls for subsystem DDS.

WEATHERSTATION - Weather Station

  • none

TCS Common Software

commandreturn - client command status returns

  • none

commandsequencer - client/subsystem command handling

  • Add method 'clear()' to CSQHandle class. Appropriate use will eliminate some of our memory consumption problems.

core - foundation routines

  • Add Severity module to define severity codes.

datadictionary - reflective memory and event support

  • none

eventhandler - event handling

  • Add priority filter value to eventhandler. This allows a client to request a minimum priority as well as a name for which to receive events.
  • Add method EventInfo::getSide() to return the event effective side string.

networkconfig - subsystem management

  • none

reflectivememory - global shared memory

  • none

rpc - communication protocol

  • none

setvalue - reflective memory access

  • none

tcs_config - tcs configuration

  • none

TCS Tools

DDEditor - Data Dictionary Editor

  • none

ddeditor - Data Dictionary Editor

  • none

DDBrowser - Data Dictionary Browser

  • none

DDViewer - Data Dictionary Viewer

  • none

EventEditor - Event Editor

  • none

eventeditor - Event Editor

  • none



  • Telemetry r19
    • Change the Start time and End time packet table attributes to fixed length strings (from variable length) so overwriting them will reuse space in the file instead of allocating new space.
    • Change the Units and Description packet table attributes to fixed length strings (from variable length). These are not rewritten, but the storage requirements are a little less for fixed length strings.

Instruments and Environmental Sensors

DIMM - Differential Image Motion Monitor

  • DIMM version 2.9
    • log the Dparallel and Dperpendicular standard deviation values
    • if the mount is not connected when a mountConnect call is made to disconnect, don't complain
    • clean up the seeing info struct of the DimmServiceI object - was only populating problem count and seeing value, changed to populate everything

IRTC - Infrared Test Camera

  • IRTC Version 4.1
    • IRC
      • Add new IIF command SetAGWFilter.



  • none

LBTO Weather Station

  • none

MAT - Mount Auxiliary Telescope

  • none

OVMS - OPD Vibration Monitoring System

  • OVMS version 0.7.4 built with Telemetry r19 from LBTO SVN trunk.

All Sky Monitor

  • none

-- MicheleDeLaPena - 05 Feb 2014
Topic revision: r22 - 15 Apr 2014, MicheleDeLaPena
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback