ESI Software Punch List

Version 1.1
January 31, 2000

Note: items marked ** are highest priority to fix, since they impact observing

A. CCD Subsystem software items: (Kibrick)
1. watch_ccd: compute SYNOPSIS from SYNOPFMT and rewrite SYNOPSIS at end of exposure.         pending
2. watch_ccd: if OBJECT="" at exposure end, then in the FITS header set OBJECT= ($TARGNAME) where $TARGNAME is the current value of the DCS TARGNAME keyword.         pending
3. lickserv: test removing the unlink to see if this solves the problem with trying to overwrite a file that you don't own.         pending
4. Fix lickserv so that it never overwrites existing files?         pending
5. Suspect that a race condition exists if an ABORT occurs too close to the end of an exposure such that it happens in the interval between EXPOSIP going false and WCRATE going true. In that case, the ABORT is seen by watch_ccd but ignored by rccd, so the header gets deleted but the image still reads out and is written with partial header.

29 December 1999 update: May have been fixed with updates to the CCD VME software. This problem is rare enough that we are not closing it out yet.

        monitor
6. The rccd process on the VME crate gets into a confused state if the observer brings up a dashboard and attempts to read out an image without first having started up lickserv. If this happens, the CCD VME crate needs to get rebooted and WCRATE set false to clear the problem.

This problem should be clearly noted in the ESI Engineering Notes, the User Manual, and the ESI Quick Start.

The startup sequence should start everything and in the correct sequence. BobG is working on both a startup and a shutdown script.

        in progress
7. Make XFLIP usage consistent with LRIS. (Kibrick/Allen)         pending
8. Binning produces erroneous error messages at times.         pending
 
B. Motion control sub-system software items: (Tucker/Burrous)
1. Can't get to position "5c" on the middle wheel. The software limits for this stage may be overly restrictive and need to be checked.         pending
2. Reconcile lamp keyword names with hardware reality.         deferred
3. Reconcile temperature keyword names with hardware reality.         deferred
4. Need to set negative gain for AIRPWPSI air pressure sensor added by CARA to compensate for inverted wiring.         fixed
5. Fix the dispatcher so that it doesn't send second-level move completion messages in the case of motions initiated with the KTL NOWAIT option.         pending
6. Bogus TEMPDET values if traffic and/or infoman down. (Kibrick)         pending
 
C. ESI GUI items: (Clarke)
1. Need to reconcile conflicting requests from Goodrich, Bolte, and Miller regarding setting of CCD window. Goodrich has requested separate buttons on CCD panel to select full-frame readout .vs. imaging mode window .vs. low-dispersion window. Bolte has suggested that WINDOW be set to an appropriate value whenever ESIMODE is changed. Miller says to simply do this via setups. Partial fix is to provide the "Quick Frame" button.         partial fix
2. Consider re-enabling MOVE button when exposures are paused, so as to allow interactive focus-move exposures (i.e., exposures where telescope is moved and focus adjusted within the same exposure). Need to consider risk of observer's accidentally initiated a move when not intended.         consider
3. If dashboard is running on the same machine as lickserv, (e.g., kanaha), at start of exposure scan the OUTDIR directory for files whose names begin with the value of the OUTFILE keyword and determine the highest frame number that is currently written in that directory. If FRAMENO is less than or equal to the value, pop up a warning box.         pending
4. Provide a new hook to the alarm mechanism that is triggered when a keyword is about to be written with a new value (but before the write occurs). This would allows us to check changes to TTIME that result from the UPDATE CCD button being hit. In this way, if TTIME were set <= ELAPTIME during an exposure and the UpdateCCD button was then pressed, we could PAUSE the exposure and pop-up a confirm box (as we do for the STOP button).

Alternatively, a simpler compromise solution would be to simply pop-up a warning whenever desired_TTIME was set to less than ELAPTIME and an exposure was currently in progress. The pop-up would warn the user that hitting the UpdateCCD button would result in premature termination of the exposure currently in progress.

4 January 2000: The pop-up warning suggested in the second half of the description above has been implemented.

        pending
5. Should we be designing and implementing a GUI set-up editor? If not, need to provide some mechanism for adding non-standard keywords to a set up. Perhaps consider having the dashboard pop-up an editor session (e.g., vi) to allow the user to manually edit a setup selected from within the GUI?         consider
6. In order to properly reflect the order in which incoming photons hit the various elements within ESI, the collimator icon should appear before (i.e., to the left of) the ESI mode icon.         deferred
7. Under conditions of long latency and/or high packet loss between the GUI and the instrument (e.g., when running the GUI locally in California), the dashboard can lose contact with the back end (yet not close its traffic connection). It ends up in a strange state where it can do no KTL I/O operations, yet it is still alive. The visible symptom is that the heartbeats stop and you get error misleading error pop-ups, because the back end is really still running.         pending
8. Certain bogus hatch conditions can leave the hatch pushbutton stranded outside the hatch rectangle. We have not been able to reproduce this, and await a more precise description of the conditions that result in this problem.         pending
9. We need to come up with a better way of handling the default values that are set whenever the observer changes spectrograph. Currently, we have values from namespace (e.g., Clear_I) that are hard-coded into the GUI logic, but those values can be changed whenever inconfig is run to reconfigure the contents of the wheels. If the IS changes these names, then the GUI code breaks. Perhaps this functionality needs to be implemented via some alarms logic that is abstracted into the database. This is really part of a larger problem of abstracting expert knowledge regarding the characteristics of the removable elements currently contained in the wheels.         pending
10. The dial gauges don't have adequate labeling, so the tick marks aren't particularly useful. These are "canned" widgets we got for free. To make them more informative we either need to re-write their C code or adopt a variant improved version from Hobbs.         pending
11. Non-repeatable behavior is observed within the CCD detail grid widget, with the behavior changing from one invocation of the GUI to another. Sometimes this widget erroneously highlights fields when desired == actual (and also propagates this erroneous state to upper level buttons), sometimes it fails to highlight fields when desired != actual, and sometimes it displays unexpected values (e.g., blank text) in the desired field. Suspect that non-repeatability may be a function of the timing of asynchronous events (e.g., X events and/or broadcasts of ESI keywords) that occur during GUI startup. Similar problems have been observed with the User Config detail panel. When the dashboard is run remotely from California, both problems are likely aggravated by the delays and packet loss associated with the trans-Pacific cable. Due to the long time required to start up the GUI when running remotely, this is a difficult and time consuming problem to troubleshoot. Instrumenting the GUI to keep track of nesting depth might shed some light on the problem. The extent to which this problem is apparent when running the GUI from Waimea is not currently known, and needs to be tested.         pending
12. Full KTL notification if commanded to current positionn. (Tucker)         defer
13. Fix motion hangs due to switch in/out of JOG mode. (Tucker)         defer
14. Can't reach ordinal position 0 on shuttle stages. (Burrous)         defer
15. Uncomment AIRALARM test routine in Galil firmware. (Burrous)         defer
16. Label on CCD block is not active; double-clicking does not bring up the detail panel.         fixed
17. Dashboard scripts do not respond to some keywords (e.g. TVFOCRAW). pending
18. "Halt All" should change into "Re-enable" and, on clicking that button, re-enable all motor control. pending
19. When control is being exercised externally (e.g. the MAlign GUI), sometimes Dashboard spontaneously resets someparameters. pending
20. Erroneous "Stage stuck" messages generated for CCD parameters such as gain. pending
21. TV focus menu does not accept new named focus positions, only Near, Far, and Nominal. pending
22. Apparently "safe" mode is not safe. pending
23. Inconfig needs to be replaced with a more user-friendly version. pending
24. No documentation on how to modify Dashboard using "developer mode." pending
25. Initialization sequence triggers erroneous error messages about TV homing and focus. pending
 
D. Electrolog for ESI items: (Deich)
1. Fix spurious error messages about DCS keywords.         pending
2. OBJECT not updating every time.         pending
 
E. Global software items: (Allen)
1. Preserve the existing hand-crafted /vx on koki, then replace with a cleanly built /vx checked out from repository.         pending
2. Clean up codegen error messages. (Clarke)         cosmetic
 
F. Software test suite / telemetry items : (Clarke)
1. Need to resolve ktl_watch restart strategy.         pending
2. Possible changes to collimator backlash tests to better pending characterize the anomalous behavior of collimator 1.         pending
3. Ktest suite needs to be revised so that it adjusts its tests of ordinal positions in response to the dynamic configurations in .../dyna/mapRON.cfg         pending
4. Make ktlwatch logging less verbose so it doesn't eat so much disk space on kanaha.         pending
5. Fix tolerance for "near" test within LDFLT limits check test (see e-mail from Kibrick dated: Tue, 25 May 1999 15:13:46).         pending
6. CARA has no documentation on the database, how to access it, and whether or not there are any tools to access it.         pending
 
G. Software items requiring collaboration/joint solution between Lick & CARA
1. Fix the hostnames on the ESI private network. currently, on the private net, kanaha is still esinstb.ucolick.org, koki is still esupvb.ucolick.org, and the VME crate is still esi5cb.ucolick.org. Although there is no great harm in this (since the private net is not advertised via DNS), it is likely to confuse everyone in the future. Requires changing VME crate EEROM to fix this. (Kibrick / CARA)         pending
2. koki and kanaha can send e-mail but they can't receive it (CARA)         defer
4. Need to find a way to make the boot-disk-mirroring script sufficiently robust so that it can be run as a cron job (Kibrick / CARA)

10 Dec. 2001 We have not had any problems with the mirroring, so consider this a low priority.
        pending
5. Get Lupton's official version of tkrose installed on kanaha. Tkrose currently installed on kanaha has been slightly hacked by De to get it to work.

Fixed: We now run tkrose from the "k2ruts" account.
        done
6. Installation and configuration of tklogger on kanaha to monitor conditions such as disk full, etc. done
8. Debug MALIGN scripts. (Goodrich)
30 Jan. 2000: Scripts tested from HQ. Debugging output added. Will also create some extra debugging tools, like a window running a cshow of the relevant keywords, and an xshow displaying them.
done
9. Need to get a better mechanism for eliminating processes left over from previous users. Need clarification from CARA re: the goals and purposes of the esiN accounts so we know how these accounts are intended to interact. This was an action item to CARA at the 12/8/1999 SCC meeting. (Allen / CARA)

Possible partial solution is to have two types of "shutdown" on the menu: one that only closes the active windows, and one that also kills lickserv.

        in progress
10. Fix DCS terminal server (tserver4) configuration so that it doesn't inhibit ESI CCD VME crate from rebooting. (E. Chock)         pending
11. ktl_close fails to tag address as stale (Allen/Chock/Lupton)         pending
12. Memory leaks in ktl_dispatch (Allen/Chock/Lupton)         pending
13. Write a startup script that starts all of the relevant software (including things like tklogger, disk.space, etc.).         in progress
 
H. Flexure compensation software: (Kibrick)
**1. User interface for steering spectra via collimator tilts.         done
2. Echellette spectrum re-centering via image centroids.         done
 
I. Figdisp wishlist items: (Allen)
1. Via a command line argument and/or X resource, select an alternate method for defining the "stats box". If enabled, instead of using left mouse click to mark upper-left and right-mouse click to mark lower-right, hold down the left mouse button and do a rubber-banded drag to define the box. If the new command line argument and/or X resource is not specified, the existing mouse button behavior would be preserved.         consider
2. Provide a method for setting the CCD readout window by marking a box on the figdisp bit map graphics window. Possibly combine this option with item 3 so that the right mouse button is used to request setting the readout window (to be confirmed via a pop-up?).         pending
3. Provide a method for displaying the current readout window within the full CCD. (Currently, we do not have any graphic window which always displays the full CCD, so this might require yet another window. Alternatively, perhaps the LOC window could be changed so that it always shows the full CCD, and then uses two different colored outlines (e.g., red and green) to indicate the current readout window versus the current pan/zoom window.         pending
4. Provide a function for mapping figdisp cursor position into an echelle order (if appropriate) and wavelength.         pending
5. Review key mappings for figdisp and reassign then from L?, R?, and other Sun-specific keywboard function keys to the universally-available and currently unused alphabet keys.         pending
6. Enable FIGDISP on 24-bit hanauma screens.         in progress

Popular Links


Send questions or comments to: