ASCOM Switch

I am trying to control a Digital Loggers Web switch with v4.0.0.617. I have installed the ASCOM driver and configured it with the correct IP address and login info. In control panel, I try to click the “connect” icon and nothing happens. I click the setup “gear” icon and I am told the switch is already connected:

image

The “State” column shows all outlets off but they are all on. The outlets all have names applied (via Digital Logger’s web interface) but none show up.

Not sure what is going on. It kind of looks like the ASCOM interface doesn’t work. Has anyone connected to a Digital Loggers switch with any ASCOM application?

Charlie

There are two version of the ASCOM driver for that switch. The earlier one has that false connection status. The later version (2019) reports an accurate status.

Mike

Some follow-up info. There are two ASCOM drivers on the ASCOM web site. An initial version that was developed for “older” Digital Logger switches and the 2019 version that was compatible with “newer” versions. It appears the 2019 version was for switches running firmware v1.7.x. However, the new DLI switches have firmware v1.9.x and that version of firmware appears to break the 2019 version of the driver.

I wrote a small ASCOM utility to test the 2019 ASCOM driver with my brand new DLI switch and I was able to confirm that the 2019 ASCOM driver is broken for firmware v1.9.x. So, if you have a DLI switch that has the v1.7.x firmware, the 2019 driver will probably work. If your firmware is even older, then the original ASCOM driver would be the one to try.

This is unfortunate since so many observatories use the DLI web switches. Here at the Stellar Skies dark sky site, there are probably 40+ of these switches in use.

Charlie

My switch is at 1.8.8.0 and the 2019 works fine. I usually update the DLI FW when released but based on your experience I’ll hold off.

Mike

@MSiniscalchi

Good to hear that 1.8.8.0 is working. I may try to revert my v1.9.0 firmware to 1.8.8.0 and test. Sometimes, however, reverting to older firmware can break the device.

When you say “it works” are you talking about working in SGP v4.x?

Charlie

Yes, it works using SGP 4.0.0.617. I can set the switch state using the control panel. The status doesn’t show ‘not connected’ and the switch status shows if it is 1.0 or 0.0 and the icon reflects the switches current state.
Attached is a screen shot.

MikeDL-Switch

@MSiniscalchi

I downgraded my Digital Loggers’ web switch from 1.9.7.0 to 1.8.23.0 (the only older version of the firmware available on the web site) and tested. That version did not work. However, it’s possible that it was the downgrade that caused issues.

The DL web switch in my observatory turned out to be v1.8.1.0 so I tested that version and it worked correctly.

So, it is confirmed that 1.8.1 to 1.8.8 works. 1.8.23 may or may not work. It is likely that version 1.7.x will also work with the 2019 version of the ASCOM driver but it would be nice if someone could confirm that with SGP v4.x.

Charlie

I have version 1.8.8.0. PM me your address if you want me to send it in an email.

Mike

@MSiniscalchi

I appreciate the offer but I am not confident that I can successfully downgrade the new switch from 1.9.7.0 to 1.8.8.0. I tried using 1.8.23.0 and it failed. Based on some reading, DLI made significant changes in the firmware going from 1.8.x to 1.9.x and that might even include hardware changes in the new switches. I don’t have a critical need, so I’ll just wait to use switch control until the ASCOM driver is updated to work with the newest DLI firmware - or better, with all DLI firmware.

Charlie

Has anyone tested the switches interface with older DL’s?
Mine is a Version 1.7.2, it’s not even the wireless version. Have it connected via a wireless bridge.

Why is it showing the item names twice on the left I wonder ? ? ?

@pscammp

The ASCOM switch interface allows the switch to provide a switch name in two different ways and does not provided a way to tell which method is being used. So I assume SGP is just showing both names to be safe. Technically, you could compare both names and, if the same, just display one.

Charlie

@Eric_Day

Firmware v1.7.2 should work with the 2019 version of the ASCOM driver but you will just need to try it to be sure.

Charlie

Not sure if this question should be for the Dev’s but it’s related to using something like an Eagle where power and USB’s can be powered on individually:

I have a QHY8L at the moment as my main imaging camera, this camera requires a specific hook up sequence as follows:

Connect USB first -> turn on Power for the camera

When I connect the USB cable it usually takes a few seconds for the camera to properly connect (on the USB hub the light will go on, a second later it goes out a second later again it lights up again and then it shows as connected), only then can I power up.

So, with this in mind, could there be a way of linking switches together like ‘parents and children’ (Parent here would be the camera’s USB switch and the child would be the camera’s power switch) and have the ability to set a time delay between the parent power up before the child power is switched.

I know this is a hell of a situation but I was just wondering what the possibilities were of remotely dealing with a situation like I have ? ? ?

Regards Paul

I can confirm Digital Loggers firmware v1.7.2 works with the older ASCOM driver

I’ve been testing SGP with the Digital Loggers switch via ASCOM drivers and even though it can connect to it, the outlets shut down premature after an imaging sequence is completed and SGP executes the end of sequence tasks. I have found the mounts power is shutdown while the mount was slewing to park, the dome power shut down before the shutter closed and the camera powered down while it was still in the 'warming mode. With the devices powered down while still connected to SGP, it caused SGP to have moments of hanging and the interface would turn white for several seconds then re-appear. This would continue until I was able to change the device connection state by clicking on the icons associated with each device. Looks like the switch interface with SGP isn’t ready for prime time yet.

Mike

I have the Digital Loggers switch with firmware v1.7.2
It does not work with the “2019” version of the ASCOM driver but does work with the older driver.
Works fine. Identifies the outlet labels and I can turn things on and off. Haven’t tried the sequence start and stop behavior yet. Also, the SGP interface does not work if I log into the switch via its web interface.
The computer that SGP runs on is connected to the switch, so I log into the web interface first to power on the PC. I now have to remember to log out of the web interface.

I recently upgraded to the SGP subscription service and installed version 4.0.0.617. I am happy to see that SGP now support Switches. However, I keep getting an error message “Lost connection to powerbox” from SGP when ever I try to start the software without the Pegasus Astro UPBV2 connected. The error keeps popping up about once every 5 mins as long as SGP is running.

I don’t always use the Pegasus Astro UPBV2 when I am taking Bias or Dark frames when the camera off the OTA. Is there someway besides uninstalling the UPBV2 Ascom Driver to get this message to stop popping up? Can this be something that is added to bug list for a future release of SGP v4?

Thanks for your support.

Andrew

image

Sorry, one more issue. As mentioned in a previous post, it does not appear that SGP v4 is waiting for the for the Camera Warm up period to expire before switching off the power. I am using a Digital Logger with firmware version 1.9.7.0 and a Pegasus Astro UPBV2. The switch functionality is working for both devices. I ran a sequence the other night to take a bunch of Darks frames and in the morning the switches on the DLI and the UPBV2 were switched off. However, if I am interpreting the following lines from the log correctly, SGP v4 switched off the power to everything as soon as the sequence ended, rather than waiting for the Camera to warm up. Not good.

[10/25/20 06:29:07.771][DEBUG][Sequence Thread][SQ;] Sequence complete.
[10/25/20 06:29:07.771][DEBUG][Sequence Thread][SQ;] No valid targets remain, aborting…
[10/25/20 06:29:07.771][DEBUG][Sequence Thread][SQ;] ********* Run post sequence *********
[10/25/20 06:29:07.771][DEBUG][Sequence Thread][SQ;] SGPro capture cal frame mode is OFF…
[10/25/20 06:29:07.771][DEBUG][Sequence Thread][SQ;] Clearing timed monitoring events…
[10/25/20 06:29:07.771][DEBUG][Sequence Thread][SQ;] Checking RunEndOfSequenceEquipmentOptions, force = True
[10/25/20 06:29:07.771][DEBUG][Sequence Thread][SQ;] In RunEndOfSequenceEquipmentOptions
[10/25/20 06:29:38.693][DEBUG][Main Thread][SQ;] Adding sequence level notification: Warming the CCD…
[10/25/20 06:29:38.697][DEBUG][TEC Thread][SQ;] SGM_CHANGE_COOLER_TEMP message received…
[10/25/20 06:29:38.697][DEBUG][TEC Thread][SQ;] TEC Change: Starting…
[10/25/20 06:29:38.699][DEBUG][Sequence Thread][SQ;] Sending Notification: Status - Warming the CCD…
[10/25/20 06:29:38.699][DEBUG][Sequence Thread][SQ;] Closing flat box shutter, setting brightness to 0…
[10/25/20 06:29:38.707][DEBUG][Main Thread][SQ;] Adding sequence level notification: Closing flat box shutter, setting brightness to 0…
[10/25/20 06:29:38.713][DEBUG][Sequence Thread][SQ;] Sending Notification: Status - Closing flat box shutter, setting brightness to 0…
[10/25/20 06:29:38.713][DEBUG][Sequence Thread][SQ;] Alnitak Flat Box - Getting shutter status
[10/25/20 06:29:38.713][DEBUG][Sequence Thread][SQ;] Caught exception in AlnitakFlatBox:SendSerial: The port is closed.
[10/25/20 06:29:38.714][DEBUG][Sequence Thread][SQ;] Caught exception in AlnitakFlatBox:SendSerial: The port is closed.
[10/25/20 06:29:38.714][DEBUG][Sequence Thread][SQ;] Caught exception in AlnitakFlatBox:SendSerial: The port is closed.
[10/25/20 06:29:38.714][DEBUG][Sequence Thread][SQ;] Invalid return from serial. Val is ()
[10/25/20 06:29:38.717][DEBUG][TEC Thread][SQ;] TEC Change: Changing temp from -20.35 to 20.00 in 300 seconds…
[10/25/20 06:29:39.715][DEBUG][Sequence Thread][SQ;] Alnitak Flat Box - Setting Brightness to 0
[10/25/20 06:29:39.715][DEBUG][Sequence Thread][SQ;] Switches: Set state for sequence end…
[10/25/20 06:29:39.716][DEBUG][Main Thread][SQ;] Adding sequence level notification: Set switch “Output #1 - DC 12V Output” to “0.00”!
[10/25/20 06:29:39.721][DEBUG][Sequence Thread][SQ;] Sending Notification: Status - Set switch “Output #1 - DC 12V Output” to “0.00”!
[10/25/20 06:29:39.763][DEBUG][Main Thread][SQ;] Adding sequence level notification: Set switch “Output #2 - DC 12V Output” to “0.00”!
[10/25/20 06:29:39.772][DEBUG][Sequence Thread][SQ;] Sending Notification: Status - Set switch “Output #2 - DC 12V Output” to “0.00”!
[10/25/20 06:29:39.794][DEBUG][Main Thread][SQ;] Adding sequence level notification: Set switch “Output #3 - DC 12V Output” to “0.00”!
[10/25/20 06:29:39.801][DEBUG][Sequence Thread][SQ;] Sending Notification: Status - Set switch “Output #3 - DC 12V Output” to “0.00”!
[10/25/20 06:29:39.825][DEBUG][Main Thread][SQ;] Adding sequence level notification: Set switch “Output #4 - DC 12V Output” to “0.00”!
[10/25/20 06:29:39.831][DEBUG][Sequence Thread][SQ;] Sending Notification: Status - Set switch “Output #4 - DC 12V Output” to “0.00”!
[10/25/20 06:29:39.857][DEBUG][Main Thread][SQ;] Adding sequence level notification: Set switch “USB Hub Port 1 - USB Hub Port 1” to “0.00”!
[10/25/20 06:29:39.861][DEBUG][Sequence Thread][SQ;] Sending Notification: Status - Set switch “USB Hub Port 1 - USB Hub Port 1” to “0.00”!
[10/25/20 06:29:39.891][DEBUG][Main Thread][SQ;] Adding sequence level notification: Set switch “USB Hub Port 2 - USB Hub Port 2” to “0.00”!
[10/25/20 06:29:39.896][DEBUG][Sequence Thread][SQ;] Sending Notification: Status - Set switch “USB Hub Port 2 - USB Hub Port 2” to “0.00”!
[10/25/20 06:29:39.921][DEBUG][Main Thread][SQ;] Adding sequence level notification: Set switch “USB Hub Port 3 - USB Hub Port 3” to “0.00”!
[10/25/20 06:29:39.927][DEBUG][Sequence Thread][SQ;] Sending Notification: Status - Set switch “USB Hub Port 3 - USB Hub Port 3” to “0.00”!
[10/25/20 06:29:39.953][DEBUG][Main Thread][SQ;] Adding sequence level notification: Set switch “USB Hub Port 4 - USB Hub Port 4” to “0.00”!
[10/25/20 06:29:39.958][DEBUG][Sequence Thread][SQ;] Sending Notification: Status - Set switch “USB Hub Port 4 - USB Hub Port 4” to “0.00”!
[10/25/20 06:29:39.985][DEBUG][Main Thread][SQ;] Adding sequence level notification: Set switch “USB Hub Port 5 - USB Hub Port 5” to “0.00”!
[10/25/20 06:29:39.990][DEBUG][Sequence Thread][SQ;] Sending Notification: Status - Set switch “USB Hub Port 5 - USB Hub Port 5” to “0.00”!
[10/25/20 06:29:40.017][DEBUG][Main Thread][SQ;] Adding sequence level notification: Set switch “USB Hub Port 6 - USB Hub Port 6” to “0.00”!
[10/25/20 06:29:40.022][DEBUG][Sequence Thread][SQ;] Sending Notification: Status - Set switch “USB Hub Port 6 - USB Hub Port 6” to “0.00”!
[10/25/20 06:29:40.057][DEBUG][Main Thread][SQ;] Aborting sequence timer thread…
[10/25/20 06:29:40.057][DEBUG][Main Thread][SQ;] Sending sequence end notification…
[10/25/20 06:29:40.057][DEBUG][Main Thread][SQ;] Adding sequence level notification: Sequence has ended
[10/25/20 06:29:40.062][DEBUG][Main Thread][SQ;] Sending Notification: Status - Sequence has ended
[10/25/20 06:29:40.062][DEBUG][Main Thread][SQ;] Resetting UI elements…
[10/25/20 06:29:40.066][DEBUG][Main Thread][SQ;] Checking if sequence has work left…
[10/25/20 06:29:40.066][DEBUG][Main Thread][SQ;] No work left…
[10/25/20 06:29:40.066][DEBUG][Main Thread][SQ;] Updating big status…
[10/25/20 06:29:40.066][DEBUG][Main Thread][SQ;] Enabling menu items…
[10/25/20 06:29:40.101][DEBUG][Main Thread][SQ;] Set target icons…
[10/25/20 06:29:40.108][DEBUG][Main Thread][SQ;] Removing camera protection…
[10/25/20 06:29:40.109][DEBUG][Main Thread][SQ;] Attempting to find next event…
[10/25/20 06:29:40.109][DEBUG][Main Thread][SQ;] Error in GetNextEvent: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
[10/25/20 06:29:40.178][DEBUG][Main Thread][SQ;] Monitoring system shutdown…
[10/25/20 06:29:40.178][DEBUG][Main Thread][SQ;] SequenceEnds complete…
[10/25/20 06:29:40.179][DEBUG][Sequence Thread][SQ;] Restoring system standby state…
[10/25/20 06:29:41.124][DEBUG][CP Update Thread][NONE] ASCOM Camera: Error in GetCoolerTemp. : Not Connected in CCDTemperature (System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. —> System.Runtime.InteropServices.COMException: Not Connected in CCDTemperature
— End of inner exception stack trace —
at System.RuntimeType.InvokeDispMethod(String name, BindingFlags invokeAttr, Object target, Object[] args, Boolean[] byrefModifiers, Int32 culture, String[] namedParameters)
at System.RuntimeType.InvokeMember(String name, BindingFlags bindingFlags, Binder binder, Object target, Object[] providedArgs, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParams)
at System.Type.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args, CultureInfo culture)
at ASCOM.DriverAccess.MemberFactory.CallMember(Int32 memberCode, String memberName, Type[] parameterTypes, Object[] parms) in C:\ASCOM Build\Export\ASCOM.DriverAccess\MemberFactory.cs:line 242)
at ASCOM.DriverAccess.MemberFactory.CallMember(Int32 memberCode, String memberName, Type[] parameterTypes, Object[] parms) in C:\ASCOM Build\Export\ASCOM.DriverAccess\MemberFactory.cs:line 283
at ASCOM.DriverAccess.Camera.get_CCDTemperature() in C:\ASCOM Build\Export\ASCOM.DriverAccess\Camera.cs:line 107
at th.hl(Boolean A_0)
[10/25/20 06:29:41.126][DEBUG][CP Update Thread][NONE] ASCOM Camera: Error in GetCoolerPower. : Not Connected in CoolerPower (System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. —> System.Runtime.InteropServices.COMException: Not Connected in CoolerPower
— End of inner exception stack trace —
at System.RuntimeType.InvokeDispMethod(String name, BindingFlags invokeAttr, Object target, Object[] args, Boolean[] byrefModifiers, Int32 culture, String[] namedParameters)
at System.RuntimeType.InvokeMember(String name, BindingFlags bindingFlags, Binder binder, Object target, Object[] providedArgs, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParams)
at System.Type.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args, CultureInfo culture)
at ASCOM.DriverAccess.MemberFactory.CallMember(Int32 memberCode, String memberName, Type[] parameterTypes, Object[] parms) in C:\ASCOM Build\Export\ASCOM.DriverAccess\MemberFactory.cs:line 242)
at ASCOM.DriverAccess.MemberFactory.CallMember(Int32 memberCode, String memberName, Type[] parameterTypes, Object[] parms) in C:\ASCOM Build\Export\ASCOM.DriverAccess\MemberFactory.cs:line 283
at ASCOM.DriverAccess.Camera.get_CoolerPower() in C:\ASCOM Build\Export\ASCOM.DriverAccess\Camera.cs:line 269
at th.hp(Boolean A_0)

Thx for beta testing and all the reports here. I will go through and see what I can find