Minutes from the 03/02/05 LCLS SLC IOC meetings: (1) Business: Next meeting - Wed Mar 9, 9:30. Location probably B5 again. After the regular meeting, Kristi will have an informal discussion of the magnet job requirements and people can join in if they wish. The magnet job functional requirements review is tentatively set for Wed Mar 16 at 1:30 (not Mar 10 as we discussed in the meeting - I'm on vacation 3/10 to 3/15). RonC has asked us to use Outlook for scheduling meetings. Assumes everyone keeps their schedules up-to-date in Outlook. (2) Cluster Status/Async Status: Last week, RonM had a design review. He wrote up the minutes too (thank you!): http://www.slac.stanford.edu/grp/lcls/controls/global/sw/slc_ioc/meeting/050223CstrSrvDesign.txt He is currently updating his specs and plans to start coding from them next week: http://www.slac.stanford.edu/grp/lcls/controls/global/sw/slc_ioc/async/cstrAndTestDesign.html http://www.slac.stanford.edu/grp/lcls/controls/global/sw/slc_ioc/async/asyncUtilDesign.html (3) Message Service and General Utilities: Debbie has testing most of the Diane's VMS->native data conversion routines (with a few stumbles due to where casting is done). Just floating point conversion is left. Debbie will test native->VMS conversions when she tests dblput. We think that both 'A' and 'S' data types will not need conversion (byte-swapping) but this needs verification. Diane is finished with the CTL socket code. Testing of the new MSG_SLC_NOTIFY function is done. She discovered a whoops. When a reset is done from the SCP panel, the msg threads exit. When an IPL is then attempted from the SCP, nothing is there to catch the MSG_SLC_NOTIFY message and it doesn't work. So after a reset or "slcStop", the SLC interface must be started from the iocsh or from an EPICS display. We don't think that people will be using reset much from the SCP so currently we don't plan to fix this. To fix it, we'd either change the SCP to use channel access to IPL or Diane can develop some simple thread to catch just the MSG_SLC_NOTIFY message. Diane has split cstrHdlr from msgHdlr. cstrHdlr is ready for the finishing touches by Ron. We need a "cheat sheet" of all the SCP panels that come in handy for testing the SLC IOC. I've started this page: http://www.slac.stanford.edu/grp/lcls/controls/global/sw/slc_ioc/requirements/scpPanels.html Please feel free to correct and add to it. Tasks left for Diane: * test large buffer transfer maybe using TEST_ECHO_MWORD? (next week) * retest proxy up/down (next week) * cleanup - decide on "fatal" errors and add recovery for non-fatal errors. * add any missing diagnostics * correct thread priorities (waiting on requirements) (4) Database Service: Debbie is finding and fixing pesky null-termination problems she found while testing on Linux. She will continue to test on Linux (XL03) for the next week at least. Ron can use her XL02 in the meantime if he needs an IOC. Debbie is creating a simple slcdbedit iocsh routine to help her test dblput. This routine doesn't allow ALL*'s and it only does scalar secondaries (no arrays). She has debugged slcdbdump which also allowed her to debug many of the db utilities. Everything works except primary, unit=ALL*, secondary=ALL*. About debugging - Kristi points out that our macro names (DEBUG_PRINT and DEBUGPRINT) should've been more unique in our debugPrint.h. There may be collisions with debugging macros in other external software packages. We're not changing! If there is a need to use both kinds of debugging macros, then the other macros will have to be changed. Debbie has changed her code to use the new primary.map file with supertype number included. She'll throw away supertype 4 information for now. She'll release the changes tomorrow. BTW, there are group-write protection problems with the primary files secure-copied from VMS. Stephanie to get laci shared account umask changed. If you don't use laci to put files into NFS toaster space (if you use your own account), please remember to make any file you add be group-writeable. Tasks left for Debbie in this order: * finish iocsh routines to test db utilities * dbupdate, hi/lo logic, and dbCtl thread * cleanup * add any missing diagnostics (collision count, for one) (5) PNET Timing Diagnostics: Stephanie to finish requirements and comment on Dayle's PNET receiver design spec. By next Wed. (6) Magnet Job: Kristi is creating the requirements in preparation for the Mar 16 review. Right now, it appears that adding a few new magnet function codes will keep the design simpler and involve fewer changes to the SCP. The functions would include degaussing and turning a power supply on and off. There is also a question of redundant readbacks. She is also discovering unique messages between Paranoia and the micro/IOC. We'll probably need more than one session for this review. Initially, we'll concentrate on the function codes (what each function will do) and the supertype 2 and 3 data. She'll make a pass on what EPICS does and what SLC does. At some point, we'd like to get Bob Dalesio in the review. (7) PV Naming: It's looking highly likely that the "micro" name used for the IOC message service will not necessary be the same "micro" name in the EPICS record names. One sector may have multiple IOCs - for sector 20, we can't call all IOCs "LI20". The PV names will have "LI20" but the IOCs will be something else like "LI2A", "LI2B", etc. So we'll need some sort of micro name environment variable for PV names. Is there anything in the SLC control system that says SLC micro names have to be "XXYY" where XX is 2 characters and YY is a number between 00 and 99? (8) Development: There is now a separate CVS repository for SLC IOC development. Eventually, this repository will go away and the "official" code will go into the EPICS and LCLS repositories. Until then, everyone can commit and update as needed, without worries. The SLC code has now been loaded on solaris, linux, RTEMS, and vxWorks with no undefined symbols. Testing continues on solaris and linux.