Click or drag to resize

Version 6.6 SP1

Introduction

In line with previous Platform installers, 6.6 SP1 is a cumulative release that contains all enhancements and fixes from previous Platform releases and service packs. The Platform environment pre-requisites are listed here Platform Prerequisites.

Key Changes in 6.6 SP1 - For Everyone
  • Platform installer
    • The installer now runs 32bit and 64bit functional tests after installation to confirm that installation has succeeded.
    • .NET 3.5 support will now be enabled automatically on Windows 10 and 11, if required.
    • Thanks to a generous donation by InstallAware, the Platform and Developer Components installers are now generated with the latest InstallAware version that mitigates the InstallAware Security Issue announced in July 2022.
    • Installers now have the build number as part of the filename.
  • Astrometry - The built-in DeltaT predictions have been updated to run until July 2023.
  • Chooser - An improved message is given if a driver fails when attempting to display its Setup dialogue.
  • Camera Simulator - ImageArray delivery is now faster through use of parallel processing.
  • Diagnostics Connection Tester - Partially typing the name of the device type in the device type field now filters the list. e.g. pressing c shows just Camera and CoverCalibrator.
  • Device Hub
    • Added U/I support for displaying accumulated move amount for relative and absolute focusers.
    • Added direct move amount for relative focusers.
    • Now shows a wait cursor during Connect operations in case it takes a long time to complete.
    • Circle buttons have been enhanced to change color when hovered over or pressed.
    • Device hardware will no longer be disconnected when all connected clients have disconnected, if DeviceHub was started interactively.
    • Device properties can no longer be changed programmatically if a device is connected via the U/I.
    • Interactive disconnects are now prevented when there are connected clients.
    • Disconnection delays due to garbage collection have been reduced.
    • GuideRateDeclination and GuideRateRightAscension have been added to the DeviceHub parameters view.
    • Expanded panels can now be restored at startup.
    • Activity Log will no longer show an icon on the Taskbar.
    • Fast polling is now extended for 3 seconds after completion of a slew for all devices.
    • Added improved support for offset tracking, including viewing current sidereal tracking rate offsets and changing those offsets.
  • OpenWeatherMap Driver
    • The WindGust property is now functional.
    • The data caching interval is now configurable.
    • The installer is now signed.
Issues Fixed in 6.6 SP1 - Platform
  • Transform - Fix logic error in automatic site pressure calculation.
  • NOVAS 3.1 - No longer creates debug logs on the C:\ drive (Fixes bug introduced in Platform 6.6).
  • Dynamic Clients
    • No longer add an empty basic authentication header to requests when authentication is not required.
    • Alpaca device HTTP setup pages, accessible from the Dynamic Client Setup dialogue, now work when the device uses an IPV6 address.
    • Discovery now works correctly with certain VPNs installed.
  • Platform Installer
    • Improved resilience when expected registry settings are absent.
    • The EarthRotationParameters executable now runs as expected if the operating system prevents it from creating a log file.
    • SOFA and NOVAS C components are now compiled using Visual Studio 2022 tooling.
    • The SOFA and NOVAS C components are now compiled using static linking to eliminate the need to distribute and install the Microsoft Visual C++ runtime library. The requirement for a fully functioning version of the library to be installed on the user's PC has recently caused issues for some users.
  • Device Hub
    • Improved DeviceHub user interface error trapping for all 3 devices.
    • Device manager connect/disconnect logic is now improved.
    • Fixed a minor bug in logging of an empty SupportedActions property.
    • The Telescope driver now sets Target RA and Dec through the telescope manager to ensure that they are immediately available to the DomeManager if a SlewToTarget is initiated.
    • Now includes improved exception handling and logging by device manager classes.
    • Fixed issue with dome slewing interruption.
  • Telescope Simulator
    • Corrected East/West button movements.
    • Fixed East/West PulseGuide commands to move in the right direction.
    • Fixed the DriverVersion command to return the version number in the expected format: X.Y.
  • Diagnostics
    • The FilterWheel simulator tests now work when any number of filters are configured for use. Previously, they would fail if the maximum number of filters was 3 or less.
    • Fixed issue when testing in a geography that has a non-integer time offset from UTC.
Retired Components

The following Platform 5 hubs were retired in Platform 6.5 and replaced by the new Device Hub. We strongly recommend that you switch over to using the Device Hub because these components will be removed in a future release.

  • POTH
  • Hub
  • Pipe
  • Dome Control Hub
Key Changes in 6.6 SP1 - For Developers
  • Developer Templates
    • Unnecessary COM registration functions have been removed from the C# driver templates.
    • The local server template has been extensively revised to create a better stating point. The template provides a three level architecture:
      • Driver instance - Clients receive an instance of this class with every COM connection made to the driver. (One instance per client COM connection).
      • Hardware implementation - A singleton class for each driver that is used by all driver instances to handle device specific behaviour. This creates a single source of data truth that is shared by all clients of this particular driver. (One instance per unique driver in served by the local server).
      • Shared Resources - A singleton class containing resources used by all drivers served by the Local Server. This is likely to include the communications mechanic between the PC and the device hardware. (One instance that serves all drivers served by the local server).
    • The Driver Templates have been removed from the Platform Developer components installer and are now delivered as a Visual Studio extension that is available through the Microsoft VisualStudio Marketplace. (Search for ASCOM in the Visual Studio Extensions / Manage Extensions menu dialogue to find and install the new template extension.) This change moves template delivery from a deprecated, legacy, mechanic to the mechanic supported by Visual Studio 2017, 2019 and 2022.
    • The VB and C# in-process driver templates now target x86 rather than MSIL so that they register as 32bit objects when run /debugged in VS2022, which is a 64bit application.
    • All templates now include XML help comments to assist developers in implementing methods.
    • Generated project Setup dialogues now specifically say if they cannot find any COM ports on the PC.
    • Generated project Setup dialogues now use the Platform's extended COM port detection rather than just reporting COM ports detected by .NET.
    • In the local server template, all calls to the device hardware are wrapped in try:catch blocks.
    • In the local server template, every member, except for Connected, DriverInfo, DriverVersion, InterfaceVersion and Name, checks that the device is connected before actioning the call.
  • Documentation Updates
    • All properties now have NotConnectedExceptions and DriverExceptions, as appropriate, with consistent wording.
    • The SupportedActions description has been extended to explain the property's purpose and use.
    • expected exception are now consistent between Interface definitions and DriverAccess definitions.
    • IFocuser.Link description has been improved.
    • The developer help file now has links to extended developer information on the ASCOM Standards web site.
    • Added missing InvalidValueException to ITelescope.DeclinationRate.
Issues Fixed in 6.6 SP1 - For Developers
  • Template Installer - Building a test console application no longer results in a driver wizard null reference exception.
  • Corrected copy/paste error in IntelliSense text for Profile.WriteValue.
  • Fixed exception in generated code when local PC has no COM ports.
Breaking Changes (For Developers) in Platform 6.6 SP1
  • The ASCOM.Utilities.Units “Fahrenheit” member has been deprecated in favour of the correctly spelled “Fahrenheit” member. This will not affect compiled programs but will result in warnings when the code is next compiled.
Note Note

Driver and application developers: In order to maintain a healthy code base, some tidying up is planned for the next major update and details of the changes are given in the Deprecated Features section below. Please will you review this and update your applications and drivers as advised; these changes are not currently scheduled for introduction before Q2 2020 at the earliest. In the meantime service packs will be issued as required to correct bugs.

Known Limitations - Developers
  • The components in the Astrometry.NOVAS namespace are fully usable from .NET languages but are not fully accessible through COM from scripting languages because a number of parameters are passed by reference or use structures that do not pass across the COM interface. Two work rounds are available:
    1. Use the Transform component in the ASCOM.Astrometry.Transform namespace, it is fully COM compatible.
    2. Create your own COM presentation component that encapsulates the SOFA or NOVAS 3.1 functions that you require and presents them in a COM compatible fashion to suit your needs. This component can them be consumed by your scripting application.
Deprecated Capabilities (For Developers)
  • The ASCOM.Astrometry namespace of the Platform has become overcrowded with components that have similar capabilities but that differ in small ways from each other (e.g. NOVAS2, NOVAS2COM, NOVAS3, NOVAS3.1). The recent realisation that some NOVAS routines use iterative algorithms that can fail, when in very close proximity to the poles, led to a search for an alternative and the SOFA Library was found to be an actively maintained and authoritative choice.

    The addition of a SOFA component brings the number of high precision astronomy libraries distributed within the Platform to 8! To reduce the maintenance burden, SOFA will become the primary high precision library for astronomical computing distributed with the ASCOM Platform and dependence of Platform components on NOVAS will be removed. However, the NOVAS routines provide functionality that is not present in SOFA e.g. major and minor planet ephemerides and consequently the NOVAS 3.1 component will continue to be distributed with the Platform.

    The following NOVAS components will be removed from the Platform installation at the next major update:

    • NOVAS2
    • NOVAS2COM
    • NOVAS3

    PLEASE NOTE: The Kepler and NOVASCOM components were flagged as deprecated in previous Platform releases but will now be retained following feedback from developers.

  • The following VB6 based simulators and hubs will be removed from the Platform at the next major update. These drivers were moved to a "bug-fix only" maintenance mode when Platform 6 was released and are becoming increasingly out of step with their .NET counterparts, which are fully integrated into the Platform code base.

    Simulator

    ProgID

    Replacement

    Camera Simulator

    CCDSimulator.Camera

    Replace use of the CCDSimulator.Camera ProgID with ASCOM.Simulator.Camera, which will invoke the "Camera V2 simulator

    Dome Simulator

    DomeSim.Telescope

    Replace use of the DomeSim.Telescope ProgID with ASCOM.Simulator.Dome, which will invoke the "Dome Simulator .NET" driver.

    Filter Wheel Simulator

    FilterWheelSim.FilterWheel

    Replace use of the FilterWheelSim.FilterWheel ProgID with ASCOM.Simulator.FilterWheel, which will invoke the "Filter Wheel Simulator [.NET]" driver.

    Focuser Simulator

    FocuserSim.Focuser

    Replace use of the FocuserSim.Focuser ProgID with ASCOM.Simulator.Focuser, which will invoke the "ASCOM Simulator Focuser Driver" driver.

    Switch Simulator

    SwitchSim.Switch

    Replace use of the SwitchSim.Switch ProgID with ASCOM.Simulator.Switch, which will invoke the "ASCOM SwitchV2 Simulator Driver" driver.

    Telescope Simulator

    ScopeSim.Telescope

    Replace use of the ScopeSim.Telescope ProgID with ASCOM.Simulator.Telescope, which will invoke the "Telescope Simulator for .NET" driver.

    Pipe hub

    Pipe.Telescope, Pipe.Dome, Pipe.Focuser

    Replace with Device Hub - ASCOM.DeviceHub.Telescope, ASCOM.DeviceHub.Dome, ASCOM.DeviceHub.Focuser

    Hub hub

    Hub.Telescope, Hub.Dome, Hub.Focuser

    Replace with Device Hub - ASCOM.DeviceHub.Telescope, ASCOM.DeviceHub.Dome, ASCOM.DeviceHub.Focuser

    POTH hub

    POTH.Telescope, POTH.Dome, POTH.Focuser

    Replace with Device Hub - ASCOM.DeviceHub.Telescope, ASCOM.DeviceHub.Dome, ASCOM.DeviceHub.Focuser

    ASCOM Dome Control hub

    ASCOMDome.Dome, ASCOMDome.Telescope

    Replace with Device Hub - ASCOM.DeviceHub.Telescope, ASCOM.DeviceHub.Dome

Platform Prerequisites

Platform 6.6 SP1 requires the following .NET framework version and library:

  • .NET Framework 4.8
  • For WIndows 8 and Windows 10 the .NET Framework 3.5 option must be enabled in Control Panel / Programs and Features / Turn Windows Features On and Off
  • Visual C++ 16.0 libraries (these are provided by the Platform installer if required)

While previous Platforms required .NET Framework 4.0, Platform 6.6 SP1 requires that .NET Framework 4.8 is installed on your PC. This change is to enable Platform components to take advantage of new features introduced after Framework 4.0 was released and to put the Platform onto what Microsoft has flagged as the last release of .NET Framework.

The installer will advise you if your PC does not have the required support and will request that you install or enable it before continuing with the installation. Microsoft Download Centre

The Platform installer will provide or update the C++ 16 libraries if they are not already present on your PC or are not current.