Menu

Windows - Cannot connect via Platform 6.6 dynamic driver

Bob Denny
2022-04-06
2022-04-10
  • Bob Denny

    Bob Denny - 2022-04-06

    I am using MaxIm DL and the dynamic drivers feature to connect to Sky Simulator on Windows with the camera in Alpaca mode. It is failing to connect. I took a WireShark trace and I think there are a coupl eof ASCOM/ALpaca endpoints 'fullwellcapacity' and 'hasshutter' that are not yet implemented in SkySim. Apparently MaxIm wants this info.

     
  • han.k

    han.k - 2022-04-07

    No problem to implement these. Will do that. :)

    Strange that MaximDL is so critical.

    Han

     
  • Bob Denny

    Bob Denny - 2022-04-07

    Thanks! It’s a very useful tool. I’m developing a Python library for all Alpaca/ASCOM interfaces. The Camera class is a challenge because of the ‘imagebytes’ image data stream. Doing the unit tests is made easier by my using SkySimulator.

    Actually all members of the interface(s) need to be present and most must be implemented. Some are optional and may raise a NotImplementedException. But FullWidthHalfMax and HasShutter are not marked optional.

    — Bob

     
  • han.k

    han.k - 2022-04-07

    Hello Bob,

    I have implemented them in beta version 18:
    https://sourceforge.net/projects/sky-simulator/files/program/windows_installer/Sky%20Simulator%20v2.0.0beta18.exe/download

    Tell me if this works and any other problem.

    Cheers, Han

     
    • Bob Denny

      Bob Denny - 2022-04-07



      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">


      Hi Han --

      There are other problems... trying to set binning doesn't work, etc. I decided to run a Conform test and it found some problems some of which prevent me from using it. I'm doing a Python client library for Alpaca, and I am doing exhaustive unit tests as part of the project.

      I've attached the report from the new Universal Conformance checker. It  is available via a link on the right hand side of the Alpaca Developers page. Once you get to the GitHub page go down to see "Assets" and expand the tree:

      Pick the one you want. The distributions create a folder with a "million files" . Each has an executable Conform or Conform.exe. This is the older Windows Conformance checker ported to .NET 6 and thus cross platform. No need to install anything else on your system, so you can run it on Mac or Linux with yor simulator obviously on any of those as well. Select the device type Camera, discover, and you'll find the camera_sky_simulator. Go back to Home and run the test. It will find problems that need correcting :-) I attached the report I got (copied and pasted from the browser window, it's not logging correctly???)

      I don't want to seem judgemental, so if you're OK with it being a partial implementation test tool that's fine. If others (like me) want to use it, though, then it probably should be 100% implemented :-) :-)

        -- Bob

      On 4/7/2022 7:06 AM, han.k wrote:
      Hello Bob,
      
      I have implemented them in beta version 18:
      https://sourceforge.net/projects/sky-simulator/files/program/windows_installer/Sky%20Simulator%20v2.0.0beta18.exe/download
      
      Tell me if this works and any other problem.
      
      Cheers,  Han
      
      
      ---
      
      [Windows - Cannot connect via Platform 6.6 dynamic driver](https://sourceforge.net/p/sky-simulator/discussion/general/thread/9471e7f1f7/?limit=25#6bf8)
      
      
      ---
      
      Sent from sourceforge.net because you indicated interest in <https://sourceforge.net/p/sky-simulator/discussion/general/>
      
      
      
      To unsubscribe from further messages, please visit <https://sourceforge.net/auth/subscriptions/>
      

       
  • han.k

    han.k - 2022-04-08

    Hello Bob,

    I will try to fix some of the issues the next days. The simulator objective was proper sky and mount simulation but it doesn't do harm to fix the detected issues.

    MaxbinX, Y is reported by the driver as 1. I can be set with put to 1. I will further investigate what is going wrong. The bin max is limited because (especially artificial star) simulation is CPU intensive. To create proper Gaussian shaped and positioned stars on subpixel level, the simulator calculates for each pixel a 10x10 matrix so 100 times more calculations then pixels.

    Han

     
  • han.k

    han.k - 2022-04-10

    Hello Bob,

    I try to fix for the alpaca camera the supportedactions. What is the correct format of a reply. This doesn't work. Or in other words how is a Array of string values formatted? I also tried [startexposure] instead of startexposure.

    Han

    GET /api/v1/camera/0/supportedactions?ClientTransactionID=131&ClientID=999
    {"Value":"startexposure","ClientTransactionID":131,"ServerTransactionID":131,"ErrorNumber":0,"ErrorMessage":""}

    15:24:54.339 SupportedActions ISSUE Unexpected System.Text.Json.JsonException exception, : The JSON value could not be converted to System.Collections.Generic.IList1[System.String]. Path: $.Value | LineNumber: 0 | BytePositionInLine: 24. 15:24:54.340 SupportedActions ISSUE The JSON value could not be converted to System.Collections.Generic.IList1[System.String]. Path: $.Value | LineNumber: 0 | BytePositionInLine: 24.

     
  • han.k

    han.k - 2022-04-10

    I found the correct format. No problem anymore. This works

    GET /api/v1/camera/0/supportedactions?ClientTransactionID=546&ClientID=999
    {"Value":["startexposure","and much more!"],"ClientTransactionID":546,"ServerTransactionID":421,"ErrorNumber":0,"ErrorMessage":""}

    I have fixed several things for the Alpaca methods. See attached log. One thing I don't understand:

    15:34:39.023 BinY Write ISSUE Unexpected DriverException(0x80131500), when setting BinY to 1: Error calling method: BinY, HTTP Completion Status: Completed, Error Message:
    PUT - Unknown device method: biny

    Some issues are solved differently like setting a temperature -280 C. Any setpoint is capped at -40.

    For the moment most should be okay.

    Uploaded now version 2.0.beta19

    Han

     
    • Bob Denny

      Bob Denny - 2022-04-10



      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">


      Progress! I don't know why your program is raising a DriverException on  Conform trying to set BinY. Look for upper/lower case mixups or misspellings. If you can trap into the debugger when the request arrives from Conform maybe you can step it and find the problem?

      I'll run your latest build ASAP. I'm pretty busy right now with the unit tests for the new Python Alpaca client library. It's really close!

        -- Bob

      On 4/10/2022 8:41 AM, han.k wrote:
      I found the correct format. No problem anymore. This works
      
      GET /api/v1/camera/0/supportedactions?ClientTransactionID=546&ClientID=999
      {"Value":["startexposure","and much more!"],"ClientTransactionID":546,"ServerTransactionID":421,"ErrorNumber":0,"ErrorMessage":""}
      
      I have fixed several things for the Alpaca methods. See attached log. One thing I don't understand:
      
      15:34:39.023 BinY Write                          ISSUE    Unexpected DriverException(0x80131500), when setting BinY to 1: Error calling method: BinY, HTTP Completion Status: Completed, Error Message:
      PUT - Unknown device method: biny
      
      Some issues are solved differently  like setting a temperature -280 C. Any setpoint is capped at -40. 
      
      For the moment most should be okay.
      
      Uploaded now version 2.0.beta19
      
      
      Han
      
      
      
      Attachments:
      
      - [sky_simulator 2beta19.txt](https://sourceforge.net/p/sky-simulator/discussion/general/thread/9471e7f1f7/89a8/attachment/sky_simulator%202beta19.txt) (20.4 kB; text/plain)
      
      
      ---
      
      [Windows - Cannot connect via Platform 6.6 dynamic driver](https://sourceforge.net/p/sky-simulator/discussion/general/thread/9471e7f1f7/?limit=25#89a8)
      
      
      ---
      
      Sent from sourceforge.net because you indicated interest in <https://sourceforge.net/p/sky-simulator/discussion/general/>
      
      
      
      To unsubscribe from further messages, please visit <https://sourceforge.net/auth/subscriptions/>
      

       
  • han.k

    han.k - 2022-04-10

    Hello Bob,

    I found the typo and fixed some more things in version 2.0.0beta 20. That is enough for now.

    Basic question, does the Sky simulator work with MaximDL in Alpaca mode?

    I have some remarks about the conformity checker:

    20:32:19.293 SensorType Read OK Monochrome
    20:32:19.309 BayerOffsetX Read ISSUE Unexpected DriverException(0x80131500), Sensor type is Monochrome: Error calling method: BayerOffsetX, HTTP Completion Status: Completed, Error Message:
    GET - Unknown device method: bayeroffsetx

    This is not logical to test if the sensor is mono.

    20:32:11.798 CanFastReadout OK False
    20:32:19.385 FastReadout Read ISSUE Unexpected DriverException(0x80131500), : Error calling method: FastReadout, HTTP Completion Status: Completed, Error Message:
    GET - Unknown device method: fastreadout

    This is not logical to test if CanFastReadout =false

    20:32:27.387 AbortExposure ISSUE CanAbortExposure is false but no exception is generated when AbortExposure is called

    Same

    20:32:27.374 Gain Write ISSUE Successfully set an gain below the minimum value (99), this should have resulted in an InvalidValueException.
    20:32:27.375 Gain Write ISSUE Successfully set an gain above the maximum value(1001), this should have resulted in an InvalidValueException.

    The question is: Does the camera driver needs to "police" the acquisition program? The values are capped in the sky_simulator so setting gain to 1001 results in 1000.

    Attached the latest conformity log

    Regards, Han

     
  • han.k

    han.k - 2022-04-10

    I can start producing error if a value is set outside range:

    ErrorNumber integer($int32)
    minimum: -2147483648
    maximum: 2147483647

    Zero for a successful transaction, or a non-zero integer (-2147483648 to 2147483647) if the device encountered an issue. Devices must use ASCOM reserved error numbers whenever appropriate so that clients can take informed actions. E.g. returning 0x401 (1025) to indicate that an invalid value was received (see Alpaca API definition and developer documentation for further information).
    ErrorMessage string

    Empty string for a successful transaction, or a message describing the issue that was encountered. If an error message is returned, a non zero error number must also be returned.

    But is feels like the slave (camera driver) has to educate the master. :) The other question is what will the master do? Put it in the log or abort? Abort would not be nice in a sequence.

    Han

     

Log in to post a comment.