diff --git a/ASCOM.MeadeGeneric.Telescope.Validation.txt b/ASCOM.MeadeGeneric.Telescope.Validation.txt index 79c7484..19ba7a7 100644 --- a/ASCOM.MeadeGeneric.Telescope.Validation.txt +++ b/ASCOM.MeadeGeneric.Telescope.Validation.txt @@ -1,4 +1,4 @@ -Conform Report Hash (V1): E0EA1442C34B74A8386CB4D1755D11EA73FC54E7F9DC5CB5084F74C896E4979F909360686B70F44E734318AA35CB91C39347C5F65C93A03D420358D99DFCF5CE +Conform Report Hash (V1): EE943505837FAD1E4F4998D567C304701AB845611D748A5A9517BF10842F951F5DD946834D8E59B5E7B84C7C067D24F52AC1C4F7E4A879A7CDAF4AB7BFEF8BB4 ConformanceCheck ASCOM Device Conformance Checker Version 6.4.63.0, Build time: 18/12/2018 08:58:32 @@ -14,256 +14,256 @@ Error number for "Value Not Set 1" is: 80040402 Error number for "Value Not Set 2" is: 80040403 Error messages will not be interpreted to infer state. -23:59:11.344 Driver Access Checks OK -23:59:11.990 AccessChecks OK Successfully created driver using late binding -23:59:12.222 AccessChecks OK Successfully connected using late binding -23:59:12.226 AccessChecks INFO The driver is a .NET object -23:59:12.231 AccessChecks INFO The AssemblyQualifiedName is: ASCOM.Meade.net.Telescope, ASCOM.Meade.net.Telescope, Version=0.4.0.0, Cultu -23:59:12.235 AccessChecks INFO The driver implements interface: ASCOM.DeviceInterface.ITelescopeV3 -23:59:12.936 AccessChecks INFO Device does not expose interface ITelescopeV2 -23:59:13.747 AccessChecks INFO Device exposes interface ITelescopeV3 -23:59:15.062 AccessChecks OK Successfully created driver using driver access toolkit -23:59:15.233 AccessChecks OK Successfully connected using driver access toolkit +19:18:57.428 Driver Access Checks OK +19:18:58.079 AccessChecks OK Successfully created driver using late binding +19:18:58.893 AccessChecks OK Successfully connected using late binding +19:18:58.898 AccessChecks INFO The driver is a .NET object +19:18:58.903 AccessChecks INFO The AssemblyQualifiedName is: ASCOM.Meade.net.Telescope, ASCOM.Meade.net.Telescope, Version=0.4.0.0, Cultu +19:18:58.907 AccessChecks INFO The driver implements interface: ASCOM.DeviceInterface.ITelescopeV3 +19:18:59.617 AccessChecks INFO Device does not expose interface ITelescopeV2 +19:19:00.617 AccessChecks INFO Device exposes interface ITelescopeV3 +19:19:01.929 AccessChecks OK Successfully created driver using driver access toolkit +19:19:02.635 AccessChecks OK Successfully connected using driver access toolkit Conform is using ASCOM.DriverAccess.Telescope to get a Telescope object -23:59:16.556 ConformanceCheck OK Driver instance created successfully -23:59:16.766 ConformanceCheck OK Connected OK +19:19:03.962 ConformanceCheck OK Driver instance created successfully +19:19:04.542 ConformanceCheck OK Connected OK Common Driver Methods -23:59:16.808 InterfaceVersion OK 3 -23:59:16.837 Connected OK True -23:59:16.865 Description OK Meade Generic -23:59:16.894 DriverInfo OK Information about the driver itself. Version: 0.4 -23:59:16.923 DriverVersion OK 0.4 -23:59:16.952 Name OK Meade Generic -23:59:16.981 CommandString INFO Conform cannot test the CommandString method -23:59:16.987 CommandBlind INFO Conform cannot test the CommandBlind method -23:59:16.994 CommandBool INFO Conform cannot test the CommandBool method -23:59:17.001 Action INFO Conform cannot test the Action method -23:59:17.009 SupportedActions OK Driver returned an empty action list +19:19:04.582 InterfaceVersion OK 3 +19:19:04.611 Connected OK True +19:19:04.640 Description OK Meade Generic +19:19:04.668 DriverInfo OK Information about the driver itself. Version: 0.4 +19:19:04.696 DriverVersion OK 0.4 +19:19:04.724 Name OK Meade Generic +19:19:04.753 CommandString INFO Conform cannot test the CommandString method +19:19:04.758 CommandBlind INFO Conform cannot test the CommandBlind method +19:19:04.765 CommandBool INFO Conform cannot test the CommandBool method +19:19:04.771 Action INFO Conform cannot test the Action method +19:19:04.778 SupportedActions OK Driver returned an empty action list Can Properties -23:59:17.077 CanFindHome OK False -23:59:17.086 CanPark OK True -23:59:17.094 CanPulseGuide OK True -23:59:17.103 CanSetDeclinationRate OK False -23:59:17.111 CanSetGuideRates OK False -23:59:17.119 CanSetPark OK False -23:59:17.128 CanSetPierSide OK False -23:59:17.139 CanSetRightAscensionRate OK False -23:59:17.147 CanSetTracking OK True -23:59:17.156 CanSlew OK True -23:59:17.161 CanSlewltAz OK True -23:59:17.172 CanSlewAltAzAsync OK True -23:59:17.182 CanSlewAsync OK True -23:59:17.191 CanSync OK True -23:59:17.201 CanSyncAltAz OK False -23:59:17.210 CanUnPark OK False +19:19:04.843 CanFindHome OK False +19:19:04.850 CanPark OK True +19:19:04.858 CanPulseGuide OK True +19:19:04.866 CanSetDeclinationRate OK False +19:19:04.874 CanSetGuideRates OK False +19:19:04.881 CanSetPark OK False +19:19:04.889 CanSetPierSide OK False +19:19:04.923 CanSetRightAscensionRate OK False +19:19:04.932 CanSetTracking OK True +19:19:04.939 CanSlew OK True +19:19:04.947 CanSlewltAz OK True +19:19:04.954 CanSlewAltAzAsync OK True +19:19:04.962 CanSlewAsync OK True +19:19:04.971 CanSync OK True +19:19:04.979 CanSyncAltAz OK False +19:19:04.990 CanUnPark OK False Pre-run Checks -23:59:17.257 Mount Safety INFO Scope is not parked, continuing testing -23:59:17.288 Mount Safety INFO Scope tracking has been enabled -23:59:17.319 TimeCheck INFO PC Time Zone: GMT Summer Time, offset -1 hours. -23:59:17.327 TimeCheck INFO PC UTCDate: 17-May-2019 22:59:17.327 -23:59:17.449 TimeCheck INFO Mount UTCDate: 17-May-2019 22:59:16.000 +19:19:05.040 Mount Safety INFO Scope is not parked, continuing testing +19:19:05.070 Mount Safety INFO Scope tracking has been enabled +19:19:05.100 TimeCheck INFO PC Time Zone: GMT Summer Time, offset -1 hours. +19:19:05.108 TimeCheck INFO PC UTCDate: 19-May-2019 18:19:05.108 +19:19:05.604 TimeCheck INFO Mount UTCDate: 19-May-2019 18:18:16.000 Properties -23:59:17.513 AlignmentMode OK algPolar -23:59:17.564 Altitude OK 88.71 -23:59:17.602 ApertureArea OK Optional member threw a PropertyNotImplementedException exception. -23:59:17.635 ApertureDiameter OK Optional member threw a PropertyNotImplementedException exception. -23:59:17.667 AtHome OK False -23:59:17.699 AtPark OK False -23:59:17.746 Azimuth OK 0.00 -23:59:17.802 Declination OK 88:42:41.00 -23:59:17.834 DeclinationRate Read OK 0.00 -23:59:17.867 DeclinationRate Write OK CanSetDeclinationRate is False and a PropertyNotImplementedException exception was generated as expected -23:59:17.902 DoesRefraction Read OK Optional member threw a PropertyNotImplementedException exception. -23:59:17.935 DoesRefraction Write OK Optional member threw a PropertyNotImplementedException exception. -23:59:17.968 EquatorialSystem OK equLocalTopocentric -23:59:18.002 FocalLength OK Optional member threw a PropertyNotImplementedException exception. -23:59:18.043 GuideRateDeclination Read OK Optional member threw a PropertyNotImplementedException exception. -23:59:18.054 GuideRateDeclination Write OK CanSetGuideRates is False and a PropertyNotImplementedException exception was generated as expected -23:59:18.087 GuideRateRightAscension Read OK Optional member threw a PropertyNotImplementedException exception. -23:59:18.099 GuideRateRightAscension Write OK CanSetGuideRates is False and a PropertyNotImplementedException exception was generated as expected -23:59:18.132 IsPulseGuiding OK False -23:59:18.179 RightAscension OK 14:41:52.00 -23:59:18.213 RightAscensionRate Read OK 0.00 -23:59:18.247 RightAscensionRate Write OK CanSetRightAscensionRate is False and a PropertyNotImplementedException exception was generated as expected -23:59:18.281 SiteElevation Read OK Optional member threw a PropertyNotImplementedException exception. -23:59:18.316 SiteElevation Write OK Optional member threw a PropertyNotImplementedException exception. -23:59:18.327 SiteElevation Write OK Optional member threw a PropertyNotImplementedException exception. -23:59:18.338 SiteElevation Write OK Optional member threw a PropertyNotImplementedException exception. -23:59:18.394 SiteLatitude Read OK 53:48:00.00 -23:59:18.432 SiteLatitude Write OK Invalid Value exception generated as expected on set site latitude < -90 degrees -23:59:18.444 SiteLatitude Write OK Invalid Value exception generated as expected on set site latitude > 90 degrees -23:59:18.477 SiteLatitude Write OK Legal value 53:48:00.00 degrees written successfully -23:59:18.535 SiteLongitude Read OK -01:47:00.00 -23:59:18.570 SiteLongitude Write OK Invalid Value exception generated as expected on set site longitude < -180 degrees -23:59:18.583 SiteLongitude Write OK Invalid Value exception generated as expected on set site longitude > 180 degrees -23:59:18.621 SiteLongitude Write OK Legal value -01:47:00.00 degrees written successfully -23:59:18.667 Slewing OK False -23:59:18.704 SlewSettleTime Read OK Optional member threw a PropertyNotImplementedException exception. -23:59:18.739 SlewSettleTime Write OK Optional member threw a PropertyNotImplementedException exception. -23:59:18.752 SlewSettleTime Write OK Optional member threw a PropertyNotImplementedException exception. -23:59:18.786 SideOfPier Read OK Optional member threw a PropertyNotImplementedException exception. -23:59:18.834 SiderealTime OK 14:33:34.37 -23:59:18.847 SiderealTime OK Scope and ASCOM sidereal times agree to better than 2 seconds, Scope: 14:33:34.37, ASCOM: 14:33:35.47 -23:59:18.882 TargetDeclination Read OK .NET Not InvalidOperationException generated on read before write -23:59:18.917 TargetDeclination Write INFO Tests moved after the SlewToCoordinates tests so that Conform can check they properly set target coordinates. -23:59:18.929 TargetRightAscension Read OK .NET Not InvalidOperationException generated on read before write -23:59:18.964 TargetRightAscension Write INFO Tests moved after the SlewToCoordinates tests so that Conform can check they properly set target coordinates. -23:59:18.976 Tracking Read OK True -23:59:20.035 Tracking Write OK False -23:59:21.100 TrackingRates Found drive rate: driveSidereal -23:59:21.112 TrackingRates Found drive rate: driveLunar -23:59:21.124 TrackingRates OK Drive rates read OK -23:59:21.139 TrackingRates OK Disposed tracking rates OK -23:59:21.174 TrackingRates OK Successfully obtained a TrackingRates object after the previous TrackingRates object was disposed -23:59:21.184 TrackingRate Read OK driveSidereal -23:59:21.223 TrackingRate Write OK Successfully set drive rate: driveSidereal -23:59:21.258 TrackingRate Write OK Successfully set drive rate: driveLunar -23:59:21.338 UTCDate Read OK 17-May-2019 22:59:20.000 -23:59:21.554 UTCDate Write OK New UTCDate written successfully: 17/05/2019 23:59:20 +19:19:05.689 AlignmentMode OK algPolar +19:19:06.820 Altitude OK 50.09 +19:19:06.854 ApertureArea OK Optional member threw a PropertyNotImplementedException exception. +19:19:06.886 ApertureDiameter OK Optional member threw a PropertyNotImplementedException exception. +19:19:06.920 AtHome OK False +19:19:06.952 AtPark OK False +19:19:07.636 Azimuth OK 150.49 +19:19:07.938 Declination OK 16:49:00.00 +19:19:07.971 DeclinationRate Read OK 0.00 +19:19:08.003 DeclinationRate Write OK CanSetDeclinationRate is False and a PropertyNotImplementedException exception was generated as expected +19:19:08.037 DoesRefraction Read OK Optional member threw a PropertyNotImplementedException exception. +19:19:08.071 DoesRefraction Write OK Optional member threw a PropertyNotImplementedException exception. +19:19:08.104 EquatorialSystem OK equLocalTopocentric +19:19:08.136 FocalLength OK Optional member threw a PropertyNotImplementedException exception. +19:19:08.169 GuideRateDeclination Read OK Optional member threw a PropertyNotImplementedException exception. +19:19:08.179 GuideRateDeclination Write OK CanSetGuideRates is False and a PropertyNotImplementedException exception was generated as expected +19:19:08.212 GuideRateRightAscension Read OK Optional member threw a PropertyNotImplementedException exception. +19:19:08.223 GuideRateRightAscension Write OK CanSetGuideRates is False and a PropertyNotImplementedException exception was generated as expected +19:19:08.257 IsPulseGuiding OK False +19:19:08.539 RightAscension OK 11:16:48.00 +19:19:08.572 RightAscensionRate Read OK 0.00 +19:19:08.605 RightAscensionRate Write OK CanSetRightAscensionRate is False and a PropertyNotImplementedException exception was generated as expected +19:19:08.639 SiteElevation Read OK Optional member threw a PropertyNotImplementedException exception. +19:19:08.675 SiteElevation Write OK Optional member threw a PropertyNotImplementedException exception. +19:19:08.687 SiteElevation Write OK Optional member threw a PropertyNotImplementedException exception. +19:19:08.698 SiteElevation Write OK Optional member threw a PropertyNotImplementedException exception. +19:19:08.758 SiteLatitude Read OK 53:48:00.00 +19:19:08.793 SiteLatitude Write OK Invalid Value exception generated as expected on set site latitude < -90 degrees +19:19:08.808 SiteLatitude Write OK Invalid Value exception generated as expected on set site latitude > 90 degrees +19:19:08.973 SiteLatitude Write OK Legal value 53:48:00.00 degrees written successfully +19:19:09.052 SiteLongitude Read OK -01:47:00.00 +19:19:09.088 SiteLongitude Write OK Invalid Value exception generated as expected on set site longitude < -180 degrees +19:19:09.100 SiteLongitude Write OK Invalid Value exception generated as expected on set site longitude > 180 degrees +19:19:09.267 SiteLongitude Write OK Legal value -01:47:00.00 degrees written successfully +19:19:09.326 Slewing OK False +19:19:09.361 SlewSettleTime Read OK Optional member threw a PropertyNotImplementedException exception. +19:19:09.400 SlewSettleTime Write OK Optional member threw a PropertyNotImplementedException exception. +19:19:09.413 SlewSettleTime Write OK Optional member threw a PropertyNotImplementedException exception. +19:19:09.447 SideOfPier Read OK Optional member threw a PropertyNotImplementedException exception. +19:19:09.493 SiderealTime OK 10:00:32.13 +19:19:09.505 SiderealTime OK Scope and ASCOM sidereal times agree to better than 2 seconds, Scope: 10:00:32.13, ASCOM: 10:00:33.22 +19:19:09.540 TargetDeclination Read OK .NET Not InvalidOperationException generated on read before write +19:19:09.575 TargetDeclination Write INFO Tests moved after the SlewToCoordinates tests so that Conform can check they properly set target coordinates. +19:19:09.588 TargetRightAscension Read OK .NET Not InvalidOperationException generated on read before write +19:19:09.623 TargetRightAscension Write INFO Tests moved after the SlewToCoordinates tests so that Conform can check they properly set target coordinates. +19:19:09.635 Tracking Read OK True +19:19:10.697 Tracking Write OK False +19:19:11.759 TrackingRates Found drive rate: driveSidereal +19:19:11.772 TrackingRates Found drive rate: driveLunar +19:19:11.784 TrackingRates OK Drive rates read OK +19:19:11.797 TrackingRates OK Disposed tracking rates OK +19:19:11.832 TrackingRates OK Successfully obtained a TrackingRates object after the previous TrackingRates object was disposed +19:19:11.858 TrackingRate Read OK driveSidereal +19:19:11.893 TrackingRate Write OK Successfully set drive rate: driveSidereal +19:19:11.928 TrackingRate Write OK Successfully set drive rate: driveLunar +19:19:12.073 UTCDate Read OK 19-May-2019 18:18:23.000 +19:19:13.628 UTCDate Write OK New UTCDate written successfully: 19/05/2019 19:18:23 Methods -23:59:21.831 CanMoveAxis:Primary OK CanMoveAxis:Primary True -23:59:21.868 CanMoveAxis:Secondary OK CanMoveAxis:Secondary True -23:59:21.904 CanMoveAxis:Tertiary OK CanMoveAxis:Tertiary False -23:59:21.940 Park/Unpark INFO Tests skipped -23:59:21.958 AbortSlew OK AbortSlew OK when not slewing -23:59:22.020 AxisRate:Primary OK Axis rate minimum: 1 Axis rate maximum: 1 -23:59:22.037 AxisRate:Primary OK Axis rate minimum: 2 Axis rate maximum: 2 -23:59:22.050 AxisRate:Primary OK Axis rate minimum: 3 Axis rate maximum: 3 -23:59:22.062 AxisRate:Primary OK Axis rate minimum: 4 Axis rate maximum: 4 -23:59:22.075 AxisRate:Primary OK No overlapping axis rates found -23:59:22.091 AxisRate:Primary OK No duplicate axis rates found -23:59:22.109 AxisRate:Primary OK Successfully disposed of rate 1 - 1 -23:59:22.122 AxisRate:Primary OK Successfully disposed of rate 2 - 2 -23:59:22.135 AxisRate:Primary OK Successfully disposed of rate 3 - 3 -23:59:22.147 AxisRate:Primary OK Successfully disposed of rate 4 - 4 -23:59:22.160 AxisRate:Primary OK Disposed axis rates OK -23:59:22.173 AxisRate:Secondary OK Axis rate minimum: 1 Axis rate maximum: 1 -23:59:22.185 AxisRate:Secondary OK Axis rate minimum: 2 Axis rate maximum: 2 -23:59:22.197 AxisRate:Secondary OK Axis rate minimum: 3 Axis rate maximum: 3 -23:59:22.209 AxisRate:Secondary OK Axis rate minimum: 4 Axis rate maximum: 4 -23:59:22.222 AxisRate:Secondary OK No overlapping axis rates found -23:59:22.234 AxisRate:Secondary OK No duplicate axis rates found -23:59:22.246 AxisRate:Secondary OK Successfully disposed of rate 1 - 1 -23:59:22.258 AxisRate:Secondary OK Successfully disposed of rate 2 - 2 -23:59:22.271 AxisRate:Secondary OK Successfully disposed of rate 3 - 3 -23:59:22.283 AxisRate:Secondary OK Successfully disposed of rate 4 - 4 -23:59:22.297 AxisRate:Secondary OK Disposed axis rates OK -23:59:22.311 AxisRate:Tertiary OK Empty axis rate returned -23:59:22.325 AxisRate:Tertiary OK Disposed axis rates OK -23:59:22.341 FindHome OK CanFindHome is False and a MethodNotImplementedException exception was generated as expected -23:59:22.386 MoveAxis Primary OK Can successfully set a movement rate of zero -23:59:22.405 MoveAxis Primary OK Exception correctly generated when move axis is set below lowest rate (0.5) -23:59:22.442 MoveAxis Primary OK Exception correctly generated when move axis is set above highest rate (5) -23:59:26.654 MoveAxis Primary OK Successfully moved axis at minimum rate: 1 -23:59:30.860 MoveAxis Primary OK Successfully moved axis at maximum rate: 4 -23:59:35.034 MoveAxis Primary OK Tracking state correctly retained for both tracking states -23:59:35.050 MoveAxis Primary OK AxisRates object successfully disposed -23:59:35.110 MoveAxis Secondary OK Can successfully set a movement rate of zero -23:59:35.125 MoveAxis Secondary OK Exception correctly generated when move axis is set below lowest rate (0.5) -23:59:35.164 MoveAxis Secondary OK Exception correctly generated when move axis is set above highest rate (5) -23:59:39.333 MoveAxis Secondary OK Successfully moved axis at minimum rate: 1 -23:59:43.535 MoveAxis Secondary OK Successfully moved axis at maximum rate: 4 -23:59:47.752 MoveAxis Secondary OK Tracking state correctly retained for both tracking states -23:59:47.770 MoveAxis Secondary OK AxisRates object successfully disposed -23:59:47.828 MoveAxis Tertiary OK CanMoveAxis Tertiary is False and a MethodNotImplementedException exception was generated as expected -23:59:49.867 PulseGuide OK Synchronous pulse guide found OK -00:00:19.740 SlewToCoordinates INFO Slewed within 23.9 arc seconds of expected RA: 13:34:05.59, actual RA: 13:34:04.00 -00:00:19.753 SlewToCoordinates OK Slewed OK. DEC: 01:00:00.00 -00:00:19.766 SlewToCoordinates OK The TargetRightAscension property 13:34:05.59 matches the expected RA OK. -00:00:19.782 SlewToCoordinates OK The TargetDeclination property 01:00:00.00 matches the expected Declination OK. -00:00:19.829 SlewToCoordinates (Bad L) OK Correctly rejected bad RA coordinate: -01:00:00.00 -00:00:19.944 SlewToCoordinates (Bad L) OK Correctly rejected bad Dec coordinate: -100:00:00.00 -00:00:20.006 SlewToCoordinates (Bad H) OK Correctly rejected bad RA coordinate: 25:00:00.00 -00:00:20.074 SlewToCoordinates (Bad H) OK Correctly rejected bad Dec coordinate: 100:00:00.00 -00:00:38.898 SlewToCoordinatesAsync INFO Slewed within 58.1 arc seconds of expected RA: 12:34:35.88, actual RA: 12:34:32.00 -00:00:38.914 SlewToCoordinatesAsync OK Slewed OK. DEC: 02:00:00.00 -00:00:38.927 SlewToCoordinatesAsync OK The TargetRightAscension property 12:34:35.88 matches the expected RA OK. -00:00:38.940 SlewToCoordinatesAsync OK The TargetDeclination property 02:00:00.00 matches the expected Declination OK. -00:00:38.979 SlewToCoordinatesAsync (Bad L) OK Correctly rejected bad RA coordinate: -01:00:00.00 -00:00:39.077 SlewToCoordinatesAsync (Bad L) OK Correctly rejected bad Dec coordinate: -100:00:00.00 -00:00:39.137 SlewToCoordinatesAsync (Bad H) OK Correctly rejected bad RA coordinate: 25:00:00.00 -00:00:39.205 SlewToCoordinatesAsync (Bad H) OK Correctly rejected bad Dec coordinate: 100:00:00.00 -00:01:00.519 SyncToCoordinates INFO Slewed to start position within 46.8 arc seconds of expected RA: 11:34:55.12, actual RA: 11:34:52.00 -00:01:00.532 SyncToCoordinates OK Slewed to start position OK. DEC: 26:54:00.00 -00:01:01.420 SyncToCoordinates INFO Synced to sync position within 3553.2 arc seconds of expected RA: 11:30:55.12, actual RA: 11:34:52.00 -00:01:01.434 SyncToCoordinates INFO Synced to sync position within 3597.0 arc seconds of expected DEC: 25:54:00.00, actual DEC: 26:53:57.00 -00:01:01.447 SyncToCoordinates OK The TargetRightAscension property 11:30:55.12 matches the expected RA OK. -00:01:01.461 SyncToCoordinates OK The TargetDeclination property 25:54:00.00 matches the expected Declination OK. -00:01:17.464 SyncToCoordinates INFO Slewed back to start position within 46.8 arc seconds of expected RA: 11:34:55.12, actual RA: 11:34:52.00 -00:01:17.481 SyncToCoordinates OK Slewed back to start position OK. DEC: 26:54:00.00 -00:01:18.320 SyncToCoordinates INFO Synced to reversed sync position within 3646.8 arc seconds of expected RA: 11:38:55.12, actual RA: 11:34:52.00 -00:01:18.334 SyncToCoordinates INFO Synced to reversed sync position within 3603.0 arc seconds of expected DEC: 27:54:00.00, actual DEC: 26:53:57.00 -00:01:34.081 SyncToCoordinates INFO Slewed back to start position within 46.8 arc seconds of expected RA: 11:34:55.12, actual RA: 11:34:52.00 -00:01:34.095 SyncToCoordinates OK Slewed back to start position OK. DEC: 26:54:00.00 -00:01:34.134 SyncToCoordinates (Bad L) OK Correctly rejected bad RA coordinate: -01:00:00.00 -00:01:34.238 SyncToCoordinates (Bad L) OK Correctly rejected bad Dec coordinate: -100:00:00.00 -00:01:34.299 SyncToCoordinates (Bad H) OK Correctly rejected bad RA coordinate: 25:00:00.00 -00:01:34.373 SyncToCoordinates (Bad H) OK Correctly rejected bad Dec coordinate: 100:00:00.00 -00:01:34.431 TargetRightAscension Write OK Invalid Value exception generated as expected on set TargetRightAscension < 0 hours -00:01:34.450 TargetRightAscension Write OK Invalid Value exception generated as expected on set TargetRightAscension > 24 hours -00:01:34.557 TargetRightAscension Write OK Legal value 10:35:50.41 HH:MM:SS written successfully -00:01:34.593 TargetDeclination Write OK Invalid Value exception generated as expected on set TargetDeclination < -90 degrees -00:01:34.607 TargetDeclination Write OK Invalid Value exception generated as expected on set TargetDeclination < -90 degrees -00:01:34.659 TargetDeclination Write OK Legal value 01:00:00.00 DD:MM:SS written successfully -00:01:53.415 SlewToTarget INFO Slewed within 39.7 arc seconds of expected RA: 11:35:50.64, actual RA: 11:35:48.00 -00:01:53.430 SlewToTarget OK Slewed OK. DEC: 03:00:00.00 -00:01:53.444 SlewToTarget OK The TargetRightAscension property 11:35:50.64 matches the expected RA OK. -00:01:53.458 SlewToTarget OK The TargetDeclination property 03:00:00.00 matches the expected Declination OK. -00:01:53.499 SlewToTarget (Bad L) OK Telescope.TargetRA correctly rejected bad RA coordinate: -01:00:00.00 -00:01:53.590 SlewToTarget (Bad L) OK Telescope.TargetDeclination correctly rejected bad Dec coordinate: -100:00:00.00 -00:01:53.651 SlewToTarget (Bad H) OK Telescope.TargetRA correctly rejected bad RA coordinate: 25:00:00.00 -00:01:53.698 SlewToTarget (Bad H) OK Telescope.TargetDeclination correctly rejected bad Dec coordinate: 100:00:00.00 -00:02:12.772 SlewToTargetAsync INFO Slewed within 26.4 arc seconds of expected RA: 10:36:09.76, actual RA: 10:36:08.00 -00:02:12.789 SlewToTargetAsync OK Slewed OK. DEC: 04:00:00.00 -00:02:12.804 SlewToTargetAsync OK The TargetRightAscension property 10:36:09.76 matches the expected RA OK. -00:02:12.819 SlewToTargetAsync OK The TargetDeclination property 04:00:00.00 matches the expected Declination OK. -00:02:12.859 SlewToTargetAsync (Bad L) OK Telescope.TargetRA correctly rejected bad RA coordinate: -01:00:00.00 -00:02:12.896 SlewToTargetAsync (Bad L) OK Telescope.TargetDeclination correctly rejected bad Dec coordinate: -100:00:00.00 -00:02:12.972 SlewToTargetAsync (Bad H) OK Telescope.TargetRA correctly rejected bad RA coordinate: 25:00:00.00 -00:02:13.070 SlewToTargetAsync (Bad H) OK Telescope.TargetDeclination correctly rejected bad Dec coordinate: 100:00:00.00 -00:02:13.133 DestinationSideOfPier Test skipped as AligmentMode is not German Polar -00:02:13.371 SlewToAltAz INFO Slewed to within 87:49:32.00 DD:MM:SS of expected Azimuth: 150:00:00.00 -00:02:13.387 SlewToAltAz INFO Slewed to within 46:00:03.00 DD:MM:SS of expected Altitude: 50:00:00.00 -00:02:13.430 SlewToAltAz (Bad L) OK Correctly rejected bad Altitude coordinate: -100:00:00.00 -00:02:13.473 SlewToAltAz (Bad L) OK Correctly rejected bad Azimuth coordinate: -10:00:00.00 -00:02:13.538 SlewToAltAz (Bad H) OK Correctly rejected bad Altitude coordinate: 100:00:00.00 -00:02:13.575 SlewToAltAz (Bad H) OK Correctly rejected bad Azimuth coordinate: 370:00:00.00 -00:02:18.862 SlewToAltAzAsync INFO Slewed to within 92:48:04.00 DD:MM:SS of expected Azimuth: 155:00:00.00 -00:02:18.876 SlewToAltAzAsync INFO Slewed to within 51:00:02.00 DD:MM:SS of expected Altitude: 55:00:00.00 -00:02:18.917 SlewToAltAzAsync (Bad L) OK Correctly rejected bad Altitude coordinate: -100:00:00.00 -00:02:18.960 SlewToAltAzAsync (Bad L) OK Correctly rejected bad Azimuth coordinate: -10:00:00.00 -00:02:19.024 SlewToAltAzAsync (Bad H) OK Correctly rejected bad Altitude coordinate: 100:00:00.00 -00:02:19.064 SlewToAltAzAsync (Bad H) OK Correctly rejected bad Azimuth coordinate: 370:00:00.00 -00:02:40.297 SyncToTarget INFO Slewed to start position within 48.6 arc seconds of expected RA: 11:36:35.24, actual RA: 11:36:32.00 -00:02:40.311 SyncToTarget OK Slewed to start position OK. DEC: 26:54:00.00 -00:02:41.176 SyncToTarget INFO Synced to sync position within 3551.4 arc seconds of expected RA: 11:32:35.24, actual RA: 11:36:32.00 -00:02:41.192 SyncToTarget INFO Synced to sync position within 3598.0 arc seconds of expected DEC: 25:54:00.00, actual DEC: 26:53:58.00 -00:02:57.142 SyncToTarget INFO Slewed back to start position within 48.6 arc seconds of expected RA: 11:36:35.24, actual RA: 11:36:32.00 -00:02:57.156 SyncToTarget OK Slewed back to start position OK. DEC: 26:54:00.00 -00:02:57.998 SyncToTarget INFO Synced to reversed sync position within 3648.6 arc seconds of expected RA: 11:40:35.24, actual RA: 11:36:32.00 -00:02:58.012 SyncToTarget INFO Synced to reversed sync position within 3603.0 arc seconds of expected DEC: 27:54:00.00, actual DEC: 26:53:57.00 -00:03:14.149 SyncToTarget INFO Slewed back to start position within 48.6 arc seconds of expected RA: 11:36:35.24, actual RA: 11:36:32.00 -00:03:14.164 SyncToTarget OK Slewed back to start position OK. DEC: 26:54:00.00 -00:03:14.203 SyncToTarget (Bad L) OK Telescope.TargetRA correctly rejected bad RA coordinate: -01:00:00.00 -00:03:14.256 SyncToTarget (Bad L) OK Telescope.TargetDeclination correctly rejected bad Dec coordinate: -100:00:00.00 -00:03:14.330 SyncToTarget (Bad H) OK Telescope.TargetRA correctly rejected bad RA coordinate: 25:00:00.00 -00:03:14.370 SyncToTarget (Bad H) OK Telescope.TargetDeclination correctly rejected bad Dec coordinate: 100:00:00.00 -00:03:14.574 SyncToAltAz OK CanSyncAltAz is False and a MethodNotImplementedException exception was generated as expected +19:19:15.180 CanMoveAxis:Primary OK CanMoveAxis:Primary True +19:19:15.218 CanMoveAxis:Secondary OK CanMoveAxis:Secondary True +19:19:15.255 CanMoveAxis:Tertiary OK CanMoveAxis:Tertiary False +19:19:15.292 Park/Unpark INFO Tests skipped +19:19:15.311 AbortSlew OK AbortSlew OK when not slewing +19:19:15.376 AxisRate:Primary OK Axis rate minimum: 1 Axis rate maximum: 1 +19:19:15.390 AxisRate:Primary OK Axis rate minimum: 2 Axis rate maximum: 2 +19:19:15.404 AxisRate:Primary OK Axis rate minimum: 3 Axis rate maximum: 3 +19:19:15.417 AxisRate:Primary OK Axis rate minimum: 4 Axis rate maximum: 4 +19:19:15.430 AxisRate:Primary OK No overlapping axis rates found +19:19:15.442 AxisRate:Primary OK No duplicate axis rates found +19:19:15.454 AxisRate:Primary OK Successfully disposed of rate 1 - 1 +19:19:15.468 AxisRate:Primary OK Successfully disposed of rate 2 - 2 +19:19:15.480 AxisRate:Primary OK Successfully disposed of rate 3 - 3 +19:19:15.492 AxisRate:Primary OK Successfully disposed of rate 4 - 4 +19:19:15.505 AxisRate:Primary OK Disposed axis rates OK +19:19:15.518 AxisRate:Secondary OK Axis rate minimum: 1 Axis rate maximum: 1 +19:19:15.533 AxisRate:Secondary OK Axis rate minimum: 2 Axis rate maximum: 2 +19:19:15.546 AxisRate:Secondary OK Axis rate minimum: 3 Axis rate maximum: 3 +19:19:15.559 AxisRate:Secondary OK Axis rate minimum: 4 Axis rate maximum: 4 +19:19:15.571 AxisRate:Secondary OK No overlapping axis rates found +19:19:15.585 AxisRate:Secondary OK No duplicate axis rates found +19:19:15.599 AxisRate:Secondary OK Successfully disposed of rate 1 - 1 +19:19:15.612 AxisRate:Secondary OK Successfully disposed of rate 2 - 2 +19:19:15.625 AxisRate:Secondary OK Successfully disposed of rate 3 - 3 +19:19:15.638 AxisRate:Secondary OK Successfully disposed of rate 4 - 4 +19:19:15.652 AxisRate:Secondary OK Disposed axis rates OK +19:19:15.667 AxisRate:Tertiary OK Empty axis rate returned +19:19:15.680 AxisRate:Tertiary OK Disposed axis rates OK +19:19:15.697 FindHome OK CanFindHome is False and a MethodNotImplementedException exception was generated as expected +19:19:15.745 MoveAxis Primary OK Can successfully set a movement rate of zero +19:19:15.761 MoveAxis Primary OK Exception correctly generated when move axis is set below lowest rate (0.5) +19:19:15.800 MoveAxis Primary OK Exception correctly generated when move axis is set above highest rate (5) +19:19:19.972 MoveAxis Primary OK Successfully moved axis at minimum rate: 1 +19:19:24.750 MoveAxis Primary OK Successfully moved axis at maximum rate: 4 +19:19:28.925 MoveAxis Primary OK Tracking state correctly retained for both tracking states +19:19:28.941 MoveAxis Primary OK AxisRates object successfully disposed +19:19:29.002 MoveAxis Secondary OK Can successfully set a movement rate of zero +19:19:29.018 MoveAxis Secondary OK Exception correctly generated when move axis is set below lowest rate (0.5) +19:19:29.055 MoveAxis Secondary OK Exception correctly generated when move axis is set above highest rate (5) +19:19:33.266 MoveAxis Secondary OK Successfully moved axis at minimum rate: 1 +19:19:38.191 MoveAxis Secondary OK Successfully moved axis at maximum rate: 4 +19:19:42.366 MoveAxis Secondary OK Tracking state correctly retained for both tracking states +19:19:42.384 MoveAxis Secondary OK AxisRates object successfully disposed +19:19:42.447 MoveAxis Tertiary OK CanMoveAxis Tertiary is False and a MethodNotImplementedException exception was generated as expected +19:19:44.487 PulseGuide OK Synchronous pulse guide found OK +19:20:06.507 SlewToCoordinates INFO Slewed within 175.3 arc seconds of expected RA: 09:01:07.31, actual RA: 09:01:19.00 +19:20:06.522 SlewToCoordinates INFO Slewed within 82.0 arc seconds of expected DEC: 01:00:00.00, actual DEC: 01:01:22.00 +19:20:06.537 SlewToCoordinates OK The TargetRightAscension property 09:01:07.31 matches the expected RA OK. +19:20:06.550 SlewToCoordinates OK The TargetDeclination property 01:00:00.00 matches the expected Declination OK. +19:20:06.591 SlewToCoordinates (Bad L) OK Correctly rejected bad RA coordinate: -01:00:00.00 +19:20:06.856 SlewToCoordinates (Bad L) OK Correctly rejected bad Dec coordinate: -100:00:00.00 +19:20:06.920 SlewToCoordinates (Bad H) OK Correctly rejected bad RA coordinate: 25:00:00.00 +19:20:07.224 SlewToCoordinates (Bad H) OK Correctly rejected bad Dec coordinate: 100:00:00.00 +19:20:25.860 SlewToCoordinatesAsync INFO Slewed within 178.3 arc seconds of expected RA: 08:01:30.11, actual RA: 08:01:42.00 +19:20:25.876 SlewToCoordinatesAsync INFO Slewed within 64.0 arc seconds of expected DEC: 02:00:00.00, actual DEC: 01:58:56.00 +19:20:25.890 SlewToCoordinatesAsync OK The TargetRightAscension property 08:01:30.11 matches the expected RA OK. +19:20:25.904 SlewToCoordinatesAsync OK The TargetDeclination property 02:00:00.00 matches the expected Declination OK. +19:20:25.945 SlewToCoordinatesAsync (Bad L) OK Correctly rejected bad RA coordinate: -01:00:00.00 +19:20:26.201 SlewToCoordinatesAsync (Bad L) OK Correctly rejected bad Dec coordinate: -100:00:00.00 +19:20:26.263 SlewToCoordinatesAsync (Bad H) OK Correctly rejected bad RA coordinate: 25:00:00.00 +19:20:26.567 SlewToCoordinatesAsync (Bad H) OK Correctly rejected bad Dec coordinate: 100:00:00.00 +19:20:47.987 SyncToCoordinates INFO Slewed to start position within 25.3 arc seconds of expected RA: 07:01:49.69, actual RA: 07:01:48.00 +19:20:48.003 SyncToCoordinates OK Slewed to start position OK. DEC: 26:54:00.00 +19:20:49.265 SyncToCoordinates INFO Synced to sync position within 25.3 arc seconds of expected RA: 06:57:49.69, actual RA: 06:57:48.00 +19:20:49.282 SyncToCoordinates OK Synced to sync position OK. DEC: 25:54:00.00 +19:20:49.301 SyncToCoordinates OK The TargetRightAscension property 06:57:49.69 matches the expected RA OK. +19:20:49.316 SyncToCoordinates OK The TargetDeclination property 25:54:00.00 matches the expected Declination OK. +19:21:05.202 SyncToCoordinates INFO Slewed back to start position within 25.3 arc seconds of expected RA: 07:01:49.69, actual RA: 07:01:48.00 +19:21:05.217 SyncToCoordinates OK Slewed back to start position OK. DEC: 26:54:00.00 +19:21:06.337 SyncToCoordinates INFO Synced to reversed sync position within 40.3 arc seconds of expected RA: 07:05:49.69, actual RA: 07:05:47.00 +19:21:06.353 SyncToCoordinates OK Synced to reversed sync position OK. DEC: 27:54:00.00 +19:21:22.444 SyncToCoordinates INFO Slewed back to start position within 25.3 arc seconds of expected RA: 07:01:49.69, actual RA: 07:01:48.00 +19:21:22.459 SyncToCoordinates OK Slewed back to start position OK. DEC: 26:54:00.00 +19:21:22.502 SyncToCoordinates (Bad L) OK Correctly rejected bad RA coordinate: -01:00:00.00 +19:21:22.620 SyncToCoordinates (Bad L) OK Correctly rejected bad Dec coordinate: -100:00:00.00 +19:21:22.682 SyncToCoordinates (Bad H) OK Correctly rejected bad RA coordinate: 25:00:00.00 +19:21:23.379 SyncToCoordinates (Bad H) OK Correctly rejected bad Dec coordinate: 100:00:00.00 +19:21:23.439 TargetRightAscension Write OK Invalid Value exception generated as expected on set TargetRightAscension < 0 hours +19:21:23.454 TargetRightAscension Write OK Invalid Value exception generated as expected on set TargetRightAscension > 24 hours +19:21:23.670 TargetRightAscension Write OK Legal value 06:02:46.50 HH:MM:SS written successfully +19:21:23.709 TargetDeclination Write OK Invalid Value exception generated as expected on set TargetDeclination < -90 degrees +19:21:23.724 TargetDeclination Write OK Invalid Value exception generated as expected on set TargetDeclination < -90 degrees +19:21:23.918 TargetDeclination Write OK Legal value 01:00:00.00 DD:MM:SS written successfully +19:21:44.377 SlewToTarget INFO Slewed within 44.9 arc seconds of expected RA: 07:02:46.99, actual RA: 07:02:44.00 +19:21:44.392 SlewToTarget OK Slewed OK. DEC: 03:00:00.00 +19:21:44.421 SlewToTarget OK The TargetRightAscension property 07:02:46.99 matches the expected RA OK. +19:21:44.435 SlewToTarget OK The TargetDeclination property 03:00:00.00 matches the expected Declination OK. +19:21:44.476 SlewToTarget (Bad L) OK Telescope.TargetRA correctly rejected bad RA coordinate: -01:00:00.00 +19:21:44.565 SlewToTarget (Bad L) OK Telescope.TargetDeclination correctly rejected bad Dec coordinate: -100:00:00.00 +19:21:44.627 SlewToTarget (Bad H) OK Telescope.TargetRA correctly rejected bad RA coordinate: 25:00:00.00 +19:21:44.713 SlewToTarget (Bad H) OK Telescope.TargetDeclination correctly rejected bad Dec coordinate: 100:00:00.00 +19:22:05.987 SlewToTargetAsync INFO Slewed within 58.0 arc seconds of expected RA: 06:03:07.87, actual RA: 06:03:04.00 +19:22:06.002 SlewToTargetAsync OK Slewed OK. DEC: 04:00:00.00 +19:22:06.016 SlewToTargetAsync OK The TargetRightAscension property 06:03:07.87 matches the expected RA OK. +19:22:06.030 SlewToTargetAsync OK The TargetDeclination property 04:00:00.00 matches the expected Declination OK. +19:22:06.071 SlewToTargetAsync (Bad L) OK Telescope.TargetRA correctly rejected bad RA coordinate: -01:00:00.00 +19:22:06.134 SlewToTargetAsync (Bad L) OK Telescope.TargetDeclination correctly rejected bad Dec coordinate: -100:00:00.00 +19:22:06.200 SlewToTargetAsync (Bad H) OK Telescope.TargetRA correctly rejected bad RA coordinate: 25:00:00.00 +19:22:06.281 SlewToTargetAsync (Bad H) OK Telescope.TargetDeclination correctly rejected bad Dec coordinate: 100:00:00.00 +19:22:06.341 DestinationSideOfPier Test skipped as AligmentMode is not German Polar +19:22:36.522 SlewToAltAz INFO Slewed to within 00:11:23.03 DD:MM:SS of expected Azimuth: 150:00:00.00 +19:22:36.539 SlewToAltAz INFO Slewed to within 00:02:05.06 DD:MM:SS of expected Altitude: 50:00:00.00 +19:22:36.581 SlewToAltAz (Bad L) OK Correctly rejected bad Altitude coordinate: -100:00:00.00 +19:22:36.599 SlewToAltAz (Bad L) OK Correctly rejected bad Azimuth coordinate: -10:00:00.00 +19:22:36.662 SlewToAltAz (Bad H) OK Correctly rejected bad Altitude coordinate: 100:00:00.00 +19:22:36.681 SlewToAltAz (Bad H) OK Correctly rejected bad Azimuth coordinate: 370:00:00.00 +19:22:57.713 SlewToAltAzAsync INFO Slewed to within 00:09:16.99 DD:MM:SS of expected Azimuth: 155:00:00.00 +19:22:57.728 SlewToAltAzAsync INFO Slewed to within 00:00:28.11 DD:MM:SS of expected Altitude: 55:00:00.00 +19:22:57.770 SlewToAltAzAsync (Bad L) OK Correctly rejected bad Altitude coordinate: -100:00:00.00 +19:22:57.789 SlewToAltAzAsync (Bad L) OK Correctly rejected bad Azimuth coordinate: -10:00:00.00 +19:22:57.851 SlewToAltAzAsync (Bad H) OK Correctly rejected bad Altitude coordinate: 100:00:00.00 +19:22:57.870 SlewToAltAzAsync (Bad H) OK Correctly rejected bad Azimuth coordinate: 370:00:00.00 +19:23:22.572 SyncToTarget OK Slewed to start position OK. RA: 07:04:21.38 +19:23:22.588 SyncToTarget OK Slewed to start position OK. DEC: 26:54:00.00 +19:23:24.332 SyncToTarget INFO Synced to sync position within 20.7 arc seconds of expected RA: 07:00:21.38, actual RA: 07:00:20.00 +19:23:24.347 SyncToTarget OK Synced to sync position OK. DEC: 25:54:00.00 +19:23:42.234 SyncToTarget INFO Slewed back to start position within 20.7 arc seconds of expected RA: 07:04:21.38, actual RA: 07:04:20.00 +19:23:42.250 SyncToTarget OK Slewed back to start position OK. DEC: 26:54:00.00 +19:23:43.530 SyncToTarget INFO Synced to reversed sync position within 35.7 arc seconds of expected RA: 07:08:21.38, actual RA: 07:08:19.00 +19:23:43.546 SyncToTarget OK Synced to reversed sync position OK. DEC: 27:54:00.00 +19:23:59.445 SyncToTarget INFO Slewed back to start position within 20.7 arc seconds of expected RA: 07:04:21.38, actual RA: 07:04:20.00 +19:23:59.460 SyncToTarget OK Slewed back to start position OK. DEC: 26:54:00.00 +19:23:59.500 SyncToTarget (Bad L) OK Telescope.TargetRA correctly rejected bad RA coordinate: -01:00:00.00 +19:23:59.656 SyncToTarget (Bad L) OK Telescope.TargetDeclination correctly rejected bad Dec coordinate: -100:00:00.00 +19:23:59.716 SyncToTarget (Bad H) OK Telescope.TargetRA correctly rejected bad RA coordinate: 25:00:00.00 +19:23:59.997 SyncToTarget (Bad H) OK Telescope.TargetDeclination correctly rejected bad Dec coordinate: 100:00:00.00 +19:24:02.242 SyncToAltAz OK CanSyncAltAz is False and a MethodNotImplementedException exception was generated as expected SideOfPier Model Tests -00:03:14.635 SideOfPier Model Tests INFO Tests skipped because this driver does Not support SideOfPier Read +19:24:02.320 SideOfPier Model Tests INFO Tests skipped because this driver does Not support SideOfPier Read Post-run Checks -00:03:14.732 Mount Safety OK Tracking stopped to protect your mount. +19:24:02.417 Mount Safety OK Tracking stopped to protect your mount. Conformance test complete No errors, warnings or issues found: your driver passes ASCOM validation!! -Driver Hash Value: 88EE4EE52A4E10A920380EE086D799AFBE0C2BB4807C2DF0FB2287C6FD57128D1D7C20ABB38632BA09DE6E55E6194CB75C087939AAFF5A38ED0235858618BFE3 +Driver Hash Value: D41F95CA4DB76F4C2F9742455087821EB82915774F9D97EDF4DAB66B4D74932295DC665B8B90C3FC94AB1B5FA5BAC8009D715FF21C0620CB5F40D8DACFAE67D6 diff --git a/ASCOM.MeadeGeneric.focuser.Validation.txt b/ASCOM.MeadeGeneric.focuser.Validation.txt index 94a4712..8942c01 100644 --- a/ASCOM.MeadeGeneric.focuser.Validation.txt +++ b/ASCOM.MeadeGeneric.focuser.Validation.txt @@ -1,4 +1,4 @@ -Conform Report Hash (V1): BCDD202E20EC71628DFE60620D4E1F9A119F72953DCC4F8107039D0C9872C4A2B2EC2A759AF57819C2A53FA56A4643B552778C53924B743D9C049027AC09FD20 +Conform Report Hash (V1): B869A2DCAA7DACEB47895197B4418080943EDDCC3D1A49E9DDE97B9B22DF8F7B83DC95D595972C4345F53236103CE33045056F1A6BB068B32F72C080377A2FC1 ConformanceCheck ASCOM Device Conformance Checker Version 6.4.63.0, Build time: 18/12/2018 08:58:32 @@ -14,57 +14,55 @@ Error number for "Value Not Set 1" is: 80040402 Error number for "Value Not Set 2" is: 80040403 Error messages will not be interpreted to infer state. -00:05:33.087 Driver Access Checks OK -00:05:33.758 AccessChecks OK Successfully created driver using late binding -00:05:33.983 AccessChecks OK Successfully connected using late binding -00:05:33.987 AccessChecks INFO The driver is a .NET object -00:05:33.991 AccessChecks INFO The AssemblyQualifiedName is: ASCOM.Meade.net.Focuser, ASCOM.Meade.net.Focuser, Version=0.4.0.0, Culture=n -00:05:33.996 AccessChecks INFO The driver implements interface: ASCOM.DeviceInterface.IFocuserV3 -00:05:34.640 AccessChecks INFO Device does not expose IFocuser interface -00:05:34.700 AccessChecks INFO Device does not expose IFocuserV2 interface -00:05:34.951 AccessChecks INFO Device exposes IFocuserV3 interface -00:05:35.069 AccessChecks OK Successfully created driver using driver access toolkit -00:05:35.263 AccessChecks OK Successfully connected using driver access toolkit -00:05:35.324 AccessChecks OK Successfully disconnected using driver access toolkit +19:18:30.690 Driver Access Checks OK +19:18:31.351 AccessChecks OK Successfully created driver using late binding +19:18:31.676 AccessChecks OK Successfully connected using late binding +19:18:31.682 AccessChecks INFO The driver is a .NET object +19:18:31.687 AccessChecks INFO The AssemblyQualifiedName is: ASCOM.Meade.net.Focuser, ASCOM.Meade.net.Focuser, Version=0.4.0.0, Culture=n +19:18:31.692 AccessChecks INFO The driver implements interface: ASCOM.DeviceInterface.IFocuserV3 +19:18:32.341 AccessChecks INFO Device does not expose IFocuser interface +19:18:32.405 AccessChecks INFO Device does not expose IFocuserV2 interface +19:18:32.675 AccessChecks INFO Device exposes IFocuserV3 interface +19:18:32.793 AccessChecks OK Successfully created driver using driver access toolkit +19:18:32.967 AccessChecks OK Successfully connected using driver access toolkit +19:18:33.031 AccessChecks OK Successfully disconnected using driver access toolkit Conform is using ASCOM.DriverAccess.Focuser to get a Focuser object -00:05:35.394 ConformanceCheck OK Driver instance created successfully -00:05:35.608 ConformanceCheck OK Connected OK +19:18:33.103 ConformanceCheck OK Driver instance created successfully +19:18:33.621 ConformanceCheck OK Connected OK Common Driver Methods -00:05:35.647 InterfaceVersion OK 3 -00:05:35.676 Connected OK True -00:05:35.704 Description OK Meade Generic -00:05:35.736 DriverInfo OK Information about the driver itself. Version: 0.4 -00:05:35.765 DriverVersion OK 0.4 -00:05:35.794 Name OK Meade Generic -00:05:35.823 CommandString INFO Conform cannot test the CommandString method -00:05:35.829 CommandBlind INFO Conform cannot test the CommandBlind method -00:05:35.836 CommandBool INFO Conform cannot test the CommandBool method -00:05:35.842 Action INFO Conform cannot test the Action method -00:05:35.850 SupportedActions OK Driver returned an empty action list +19:18:33.661 InterfaceVersion OK 3 +19:18:33.691 Connected OK True +19:18:33.719 Description OK Meade Generic +19:18:33.749 DriverInfo OK Information about the driver itself. Version: 0.4 +19:18:33.778 DriverVersion OK 0.4 +19:18:33.807 Name OK Meade Generic +19:18:33.836 CommandXXX INFO Tests skipped +19:18:33.842 Action INFO Conform cannot test the Action method +19:18:33.850 SupportedActions OK Driver returned an empty action list Properties -00:05:35.961 Absolute OK False -00:05:35.968 IsMoving OK False -00:05:35.976 MaxStep OK 7000 -00:05:35.983 MaxIncrement OK 7000 -00:05:35.992 Position OK Position must not be implemented for a relative focuser and a PropertyNotImplementedException exception was generated as expected -00:05:36.000 StepSize OK Optional member threw a PropertyNotImplementedException exception. -00:05:36.008 TempCompAvailable OK False -00:05:36.016 TempComp Read OK False -00:05:36.024 TempComp Write OK Temperature compensation is not available and a PropertyNotImplementedException exception was generated as expected -00:05:36.032 Temperature OK Optional member threw a PropertyNotImplementedException exception. +19:18:33.962 Absolute OK False +19:18:33.970 IsMoving OK False +19:18:33.977 MaxStep OK 7000 +19:18:33.985 MaxIncrement OK 7000 +19:18:33.994 Position OK Position must not be implemented for a relative focuser and a PropertyNotImplementedException exception was generated as expected +19:18:34.003 StepSize OK Optional member threw a PropertyNotImplementedException exception. +19:18:34.011 TempCompAvailable OK False +19:18:34.019 TempComp Read OK False +19:18:34.027 TempComp Write OK Temperature compensation is not available and a PropertyNotImplementedException exception was generated as expected +19:18:34.036 Temperature OK Optional member threw a PropertyNotImplementedException exception. Methods -00:05:36.080 Halt OK Focuser halted OK -00:05:36.092 Move - TempComp False Moving by: 700 -00:05:36.804 Move - TempComp False Asynchronous move found -00:05:36.812 Move - TempComp False OK Relative move OK -00:05:36.822 Move - TempComp False INFO Returning to original position: 0 +19:18:34.085 Halt OK Focuser halted OK +19:18:34.096 Move - TempComp False Moving by: 700 +19:18:34.808 Move - TempComp False Asynchronous move found +19:18:34.818 Move - TempComp False OK Relative move OK +19:18:34.830 Move - TempComp False INFO Returning to original position: 0 Conformance test complete No errors, warnings or issues found: your driver passes ASCOM validation!! -Driver Hash Value: A3C2D8D9708D2B157CF8BFC2F83BFE3666DA07AA75C592BD3969D42E0566A2F69E06BBE7C33BA78914D292EF3529B65AA22052AC34D13F6B521127072ACF366F +Driver Hash Value: 1816E24C06CF16B84021B2B07D4629C3E46DCC5E738D9BACBD524BE5A969BCB07AB3704AB754BC5AA54F5A76F77721D6F7D756AC16DC0AC7DACDC9EA900FA3C8 diff --git a/AstroMath.UnitTests/AstroMathsUnitTests.cs b/AstroMath.UnitTests/AstroMathsUnitTests.cs index 392dd71..cdbe4ad 100644 --- a/AstroMath.UnitTests/AstroMathsUnitTests.cs +++ b/AstroMath.UnitTests/AstroMathsUnitTests.cs @@ -142,5 +142,31 @@ namespace AstroMath.UnitTests Assert.That(altaz.Azimuth, Is.EqualTo(333.2819484462679)); } + //[Test] + //public void ConvertHozToEq_book() + //{ + // HorizonCoordinates hc = new HorizonCoordinates(); + // hc.Altitude = 19.33434444; + // hc.Azimuth = 283.271028; + // var lat = 52; + // var raDec = _astroMath.ConvertHozToEq(lat, hc); + + // Assert.That(raDec.RightAscension, Is.EqualTo(5.8622222973512992)); + // Assert.That(raDec.Declination, Is.EqualTo(23.219444300552407)); + //} + + + //[Test] + //public void ConvertHozToEq() + //{ + // HorizonCoordinates hc = new HorizonCoordinates(); + // hc.Altitude = 50; + // hc.Azimuth = 150; + // var lat = 53.5; + // var raDec = _astroMath.ConvertHozToEq(lat, hc); + + // Assert.That(raDec.RightAscension, Is.EqualTo(22.69408899548845)); + // Assert.That(raDec.Declination, Is.EqualTo(16.539114529888948)); + //} } } diff --git a/Meade.net.Telescope/AstroMaths.cs b/Meade.net.Telescope/AstroMaths.cs index d9d224e..7123eaa 100644 --- a/Meade.net.Telescope/AstroMaths.cs +++ b/Meade.net.Telescope/AstroMaths.cs @@ -43,6 +43,53 @@ namespace ASCOM.Meade.net return h; } + public double HourAngleToRightAscension(DateTime utcDateTime, double longitude, double hourAngle ) + { + var gst = UTtoGST(utcDateTime); + var lst = GSTtoLST( gst, longitude); + var raHours = hourAngle; + var h1 = lst - raHours; + var h = h1; + if (h1 < 0) + { + h += 24; + } + + return h; + } + + public EquatorialCoordinates ConvertHozToEq( DateTime utcDateTime, double latitude, double longitude, HorizonCoordinates altAz) + { + var az = DegreesToRadians(altAz.Azimuth); + var alt = DegreesToRadians(altAz.Altitude); + var lat = DegreesToRadians(latitude); + + var sinDec = Math.Sin(alt) * Math.Sin(lat) + Math.Cos(alt) * Math.Cos(lat) * Math.Cos(az); + var dec = RadiansToDegrees(Math.Asin(sinDec)); + + var y = -Math.Cos(alt) * Math.Cos(lat) * Math.Sin(az); + var x = Math.Sin(alt) - Math.Sin(lat) * sinDec; + var upperA = Math.Atan2(y,x); + var upperB = RadiansToDegrees(upperA); + + var ha = upperB; + + if (upperB < 0) + { + ha += 360; + } + + ha = ha / 15; + + EquatorialCoordinates equatorialCoordinates = new EquatorialCoordinates + { + RightAscension = HourAngleToRightAscension( utcDateTime, longitude, ha ), + Declination = dec + }; + + return equatorialCoordinates; + } + public HorizonCoordinates ConvertEqToHoz(double hourAngle, double latitude, EquatorialCoordinates raDec) { var h = hourAngle * 15; @@ -51,7 +98,7 @@ namespace ASCOM.Meade.net var lat = DegreesToRadians(latitude); var sinA = Math.Sin(d) * Math.Sin(lat) + Math.Cos(d) * Math.Cos(lat) * Math.Cos(h1); - var y = -Math.Cos(d) * Math.Cos(lat) * Math.Sin(h1); + var y = -Math.Cos(d) * Math.Cos(lat) * Math.Sin(h1); var x = Math.Sin(d) - Math.Sin(lat) * sinA; var upperA = Math.Atan2(y, x); var upperB = RadiansToDegrees(upperA); diff --git a/Meade.net.Telescope/Telescope.cs b/Meade.net.Telescope/Telescope.cs index d2e1ade..de61521 100644 --- a/Meade.net.Telescope/Telescope.cs +++ b/Meade.net.Telescope/Telescope.cs @@ -1243,14 +1243,41 @@ namespace ASCOM.Meade.net public void SlewToAltAzAsync(double azimuth, double altitude) { - tl.LogMessage("SlewToAltAzAsync", $"Az=~{azimuth} Alt={altitude}"); + if (altitude > 90) + throw new ASCOM.InvalidValueException("Altitude cannot be greater than 90."); + + if (altitude < 0) + throw new ASCOM.InvalidValueException("Altitide cannot be less than 0."); + + if (azimuth >= 360) + throw new ASCOM.InvalidValueException("Azimuth cannot be 360 or higher."); + + if (azimuth < 0) + throw new ASCOM.InvalidValueException("Azimuth cannot be less than 0."); + + tl.LogMessage("SlewToAltAzAsync", $"Az={azimuth} Alt={altitude}"); + + HorizonCoordinates altAz = new HorizonCoordinates(); + altAz.Azimuth = azimuth; + altAz.Altitude = altitude; + + var utcDateTime = UTCDate; + var latitude = SiteLatitude; + var longitude = SiteLongitude; SharedResources.Lock(() => { - TargetAltitude = altitude; - TargetAzimuth = azimuth; + var raDec = astroMaths.ConvertHozToEq(utcDateTime, latitude, longitude, altAz); - DoSlewAsync(false); + TargetRightAscension = raDec.RightAscension; + TargetDeclination = raDec.Declination; + + DoSlewAsync(true); + + //TargetAltitude = altitude; + //TargetAzimuth = azimuth; + + //DoSlewAsync(false); }); } diff --git a/TelescopeTestConsole/Program.cs b/TelescopeTestConsole/Program.cs index 5c626fa..420046a 100644 --- a/TelescopeTestConsole/Program.cs +++ b/TelescopeTestConsole/Program.cs @@ -43,9 +43,12 @@ namespace ASCOM // TODO add more code to test the driver. device.Connected = true; - device.CommandBlind(":Sa+30*00'00#", true); - device.CommandBlind(":Sz150*00#", true); - device.CommandBlind(":MS#", true); + + device.SlewToAltAz(150, 50); + + //device.CommandBlind(":Sa+30*00'00#", true); + //device.CommandBlind(":Sz50*00#", true); + //device.CommandBlind(":MA#", true); //Console.WriteLine($"Ra {device.RightAscension}"); //Console.WriteLine($"Dec {device.Declination}");