Modifying the ESI Dashboard GUI
This page explains some rudimentary details about how to go about modifying the Dashboard user interface that runs ESI. Dashboard is a very versatile tool with many visible and hidden functions, so this is far from an extensive tutorial. Rather it is more a repository for information gained by making small changes to Dashboard over the course of the years. A true Dashboard manual was never supplied by Lick Observatory.

General

  • You should be able to make modifications in your local directory as any esi user (e.g., from ~esieng/work).  However, the 'official' /kroot files are owned by the kics account.
  • cd ~esieng/work
    cp /kroot/Versions/kss/esi/ktui/1.0/esi.dbd ./esi45.dbd

  • (or some other unique name; to copy the working version).
  • obsr -sd esi.kwd ./esi45.dbd

  • to bring up the copy. In the "-sd" keys, "s" indicates "safe" mode where actual control of the motors is supposed to be inhibited. IT IS NOT!! The "d" stands for "developer" mode, in which you can edit the GUI.
    (Note that the esi.kwd file should be found in the /kroot path if nonexistent in the current directory.)
  • Make changes and save.  See the "Features" section below for details.  To save the layout, click the "Save..." button on the top menu bar (towards the right). "Layout as..." and provide a new name for the revised layout. Apparently you cannot write over your original layout file. Let's assume that you saved the new layout as "esi46.dbd".
  • Start up the new GUI as a user would:

  • obsr esi.kwd ./esi46.dbd
    Make sure your changes are there and working properly.
  • Once satisfied, make another copy of the original esi.dbd and then copy the new one on top of it.
  • To officially release the esi.dbd file into the /kroot tree, do the following.  Note that problems occur when trying to "commit" these changes from Keck into the CVS repository (which resides at Lick); they have not yet been resolved, hence this workaround.
    • login to kanaha as kics
    • cd /kroot/Versions/kss/esi/ktui/1.0
    • ... rename the old copy of esi.dbd to something like esi.dbd.12may2003
    • ... copy your working copy to this directory
    • cp -p ~esieng/work/esi46.dbd ./esi.dbd
    • retry your fix from the workspace pulldown menu to verify that it works from the default /kroot tree 
      (e.g., from  "ESI Control Menu -> Subcomponents ... -> Dashboard")
    • document your changes on this webpage in the section, "Gory Details" (until CVS is accessible!)

Features

  • Selecting properties of a widget

  • Shift-click on the gray border of the widget to bring up the properties window. This contains the widget name (automatically assigned, so don't change it!), foreground and background colors, (x,y) position, text, and the linked command(s).

    When finished, click the "COMMIT" button at the bottom of the Properties window.

  • Changing text

  • One way to do this is shift-click the widget border to bring up the Properties Edit window, and change the property "text".
     
  • Deleting an object

  • Shift-click the widget border to bring up the Properties Edit window, then select the 'DELETE OBJECT' button.

Possible Problems, Gotcha's

  • In most cases, this will not be applicable, but if necessary, trying to save the esi.kwd file is not easy!
    The dashboard gui tool does not let you save the esi.kwd file as some other name (e.g., as esitest.kwd) via the "Save As..." option.   It will give you a tcl error similar to 
            "Error: can not find channel named "/u/esieng/work/esitest.kwd"

    You will have to manually edit this file and 'release' it like the esi.dbd file.

Gory details (A history of mods to esi.dbd)

Removal of ESI IONPUMP references (14May2003)
Because of the new ion pump work that will be released in June 2003 (WDahl, etal), references to the ESI
IONPUMP keyword were removed from the observer's and the OA's dashboard guis.  Removed relevant IONPUMP buttons from the 'Tricorder' display and the 'environmental' Alarms category.   The esi.kwd file was untouched.

STOP or PANIC button
This button (named "G260 Anonymous", and graphic 99) was changed from "STOP" to "PANIC" on 25 September 2002. The command it calls is "panicStop esi".

INIT
The command this executes is "resetESI," which lives on kanaha in

~kics/cvs/kroot/kss/esi/ktest/Hardwired/ESIinit.tst

This was changed to "resetESI ; acceptCurr esi ; set WANTMODE \$ESIMODE" in an attempt to do the equivalent of a "Clear Desired" after initialization was completed. 

Popular Links


Send questions or comments to: