[ACP-734]  Timing hole for scopes reporting pier side
Type Bug
Priority High
Severity Show Stopper
Component Main Program
Fixed In Version [6.0.46.0 Hot Fix 4
Versions Affected [6.0.26.0 Hot Fix 2
Severity Closed
Resolution Complete
Reported By Bob Denny
Resources Bob Denny
Start Date 11/14/2011

Description
The change made in ACP-670 uncovered what appears to be a timing hole in the hardware pier side detection on slew completion. This is a showstopper. There is a lot of traffic between Jim McMillan and Ray Gralak on this, including logs.

Comments
11/23/2011 10:22:11 AM   Bob Denny
Tested by several people, problem corrected. Ready for Hot Fix 4.
11/18/2011 10:11:40 AM   Bob Denny
SVN Comment
Author rbdenny
Repository svn+ssh://rbdenny@a2_svn_dc3/home/rbdenny/svn/astro/acp
SVN Revision 364
Affected files /trunk/ACP.vbp (Modified)
/trunk/CorrectedTelescope.cls (Modified)
Check-in comment Damn it, assert triggered old code that I had disabled. Re-enable it. For HF3a. GEM:734
11/18/2011 8:57:12 AM   Bob Denny
Left this open across the Hot Fix 3 release... premonition? See this comm center thread. This is a showstopper. Appears to be caused by whatever FocusMax AcquireStar does while slewing.

01:36:27 [Source: ACP Telescope Controller]
01:36:27 [Program error in slew logic. Contact Developer]

This is with FMx connected to the ACP Telescope Hub. The trap is in the caIdle state of the CA state machine, and it should not enter idle with the telescope having been slewing on the previous state, at least as far as I can see. Note that this state previously had the same logic as caFinal (which should be end ending state of all slews from what I see now), so I suspect I have missed something in my thinking and did something too aggressive. See the CorrectedTelescope class, Slewing property implementation.
11/14/2011 8:23:18 PM   Bob Denny
SVN Comment
Author rbdenny
Repository svn+ssh://rbdenny@a2_svn_dc3/home/rbdenny/svn/astro/acp
SVN Revision 360
Affected files /trunk/ACP Help/relnotes.htm (Modified)
/trunk/ACP.vbp (Modified)
/trunk/CorrectedTelescope.cls (Modified)
Check-in comment Timing hole for end of slew detection, refactor slewing and pier side handling in CorrectedTelescope.cls GEM:734
11/14/2011 8:13:27 PM   Bob Denny
A review and dynamic trace of the code in the CorrectedTelescope class uncovered some inconsistencies and indeed a case where the cached hardware pier side was not updated. There was also some convoluted code involving WestOfPier (a friend property) and the public SideOfPier property. Also, there was code in Slewing to detect the end of a slew when actually the state caFinal is the end of the slew. Messy.

I refactored a fair bit of this code around  slewing and end of slew handling. It should make more sense now. This will need extensive testing, ugh.