SGPro 4 Beta - Switches Primer

Since documentation is typically the last thing we do before a release, here is a primer for the beta.

Switches are essentially classified as “gear”, but they do not appear with the rest of the gear on the sequencer window. This is really just because there can be dozens of them and we needed a better way to lay them out. As such, you can find them on a new tab in the Control Panel. The same is true of the Equipment Profile Manager.


New vocabulary:

  • Switch: A device with one or more states that has a Switch Device as a parent.
  • Switch Device: A container device (usually physical) that contains n switches.

The basics:

  • The Switches Table is a single table that holds all of your Switch Devices. You can click the Switch Device’s “down arrow” at the far left of the row to collapse or expand its child switches.
  • Some switch devices need to be connected before the switches will display state or respond to change. SGPro will continually try to connect to any switch devices of which it is aware. Failing to connect will not produce an error unless the sequence is starting and it needs to alter a switch state. You do not need to manually connect or disconnect, but can if you’d like (by clicking the power button in the Device Switch row).
  • If a Switch Device has manufacturer settings available, you can access them by clicking on the gear icon in the Device Switch row.
  • You can interact with the Switches Grid by clicking on the table cells associated with the “State”, “Start” or “End” columns.
  • State: This column holds a switch’s current state. You can also alter the current state by clicking on the cell. When you do, a list of options (allowable states) will appear. Select one to change the switch’s state.
  • Start: This column identifies the desired state of switch at sequence start. Click the cell to show a list of allowable states.
  • End: This column identifies the desired state of switch at sequence end. Click the cell to show a list of allowable states.
  • Right click the switches table to hide the ASCOM Switch Simulator or PrimaLuce Eagle switch devices
  • The Equipment Profile Manager follows the same concepts. The only difference is that you can’t alter the current state of the switch from the profile manager.
  • Important: In order to set the state of switches in a profile manager, you must have connected to it at least one time so SGPro can gather the switches and states that are available to you.
  • Note: Switches with many states have kind of a janky state selector that lists all available states in the same single dropdown menu. We are looking at alternatives for these types of switches.

I’m a little puzzled how you get the Eagle connected to SGP

It does not seem to recognise any of the switches - reports that it failed to get the switch data from the Eagle.

The Eagle manager must communicate with it directly as it does indeed turn switches on and off

Theres no ASCOM needed?

Am I missing something?



That looks really good Ken,

May I offer some input ?

Ref - Power1 and Power 2:
Would it not be more logical to have the states ‘On and Off’ rather than ‘0 and 1’ ?

Ref Scope Cover:
Would it not be more logical to have ‘Open & Closed’ as opposed to ‘True & False’ here ?

Obviously zero’s and one’s are how it will work under the hood but I cant help feeling for the users eye’s more descriptive text might serve better.

Also, if a module would not be useable to display the states of the switches while a sequence was running maybe a second long taskbar like the current one which shows safety, focus, scope etc. could be turned On or Off by the user, using colors for their current ‘States’ like ‘Green for On’ and ‘Red for Off’ for Power1 and Power2 for example and ‘Red for Closed’ and ‘Green for Open’ for something like a scope cover.

Just some idea’s


Could the possibility of running a script together with a switch be added?
Like i’m turning on the power to my 10 Micron mount it’s still off, a relay will have to triggered to actually turn on the mount via a script, it would be great if an “after turned on” and “before turning off” different scripts could be run.
This would make SGP incredibly powerfull.

I also wonder if SGP knows what kind of devices are connected? Like if flats are supposed to be taken will it automatically turn on the power to the flat panel? If not it would be great if this could be added.

I might add that i have access to scopedome which is already supported.
I also have access to dragonfly which i guess will be supported?
It would be cool if support for kmtronic could be added in the future since it’s a cheap option for swithing that most people can afford.

I have tested the LevesDomeNet Switches and they seem to work.



Of course, feedback is part of the beta for sure.

I agree, but alas, that would be SGPro inferring a correlation where none may actually exist. SGPro literally takes the switch states given by the ASCOM driver and dumps them in the drop downs.

Same comment, SGPro will display whatever the driver tells it to display

I am looking at how to make a module from this, but it will take some time. Modules are small and there is potentially a lot of data to display… looking at a way to customize just the switches you want instead of dumping all your switches into a tiny module.

We can certainly look at this. I don’t see anything particularly complicated here, but I don’t want to promise anything just yet.

As of this moment SGPro has no insight into this. It only understands the states presented to it by the ASCOM driver. That said, as mentioned, above, “cal frames” is one of the switch events that will be added soon. SGPro wont know if your switch is a flat panel, but you will be able to specify any switches you want in a “pre-flat” event.

You shouldn’t need to do anything… if SGPro finds an eagle, it will auto connect to it.

What version Eagle and Eagle Manager are you using? Can you post logs via the SGPro issue reporter?

This is an Eagle from first batch …version 2.8

Yes I can


I experience the same problem but with an eagle3 running eagle manager 3.3. Has thus been reported before?

We are aware of the issues reported here. We are away from home and don’t have access to an Eagle device at the moment, but will look next week.

Some comments on the user interface.

It would be nice to have a configurable module with a user’s choice of a subset of the available switches shown. That would allow a convenient view of the most important switch states, or would cover the needs of those with few switches. But, the control panel you show already gives a comprehensive display of the switches and their states. So that can be left open if the user wants a full list. However, I think some enhancements would make that a more useful display.

A suggestion would be to allow a right-click on a row, or click an icon, to bring up a switch configuration screen. This screen would allow the user to map their own labels, like “off and on” or “open and closed” to the states reported by the driver. It would also allow the user to assign a color to the states, or to a level. For example, a power level of 0 to 30% might be red, 30 to 60% could be yellow, and >61% would be green. Then, these labels and colors would be shown in the control panel to allow a quick-glance determination of switch state.

One last improvement would be to allow the control panel window to be expandable. Or if that’s difficult due to the architecture of the current control panel, then an option to show a full switch panel window, which is expandable.

For those with complex setups and lots of switches, it would be really valuable to have a window open all the time, perhaps on a separate monitor, that allows them to quickly see the condition of all the devices in the observatory properly labeled and color-state coded, and to be able to manually change states quickly in case of some issue occuring.

Just following up on this. I too have an Eagle3 Pro, and I cannot seem to get the Switches to connect. SGP seems to recognize that I have an Eagle, and correctly populates all the various switches, but I can’t get SGP to actually interact with the switches in any way.

Is there something I need to do to get this working?

Bumping this in the hopes someone has an answer? SGP errors every time it tries to turn off the switch powering my main camera (or any other power switch for that matter).

I have not had time to troubleshoot the Eagle issues, but I am aware of them. Will try to address soon.

Okay, no worries. Thanks much.

By the way, do these work now ? I was tempted to try v4.0.

The switches have been working since we released 4.0. There was an issue with the Pegasus ASCOM driver and they’ve created a release to address it…but other than that switch support should be good to go.


Thank you. By the way, is it possible the install both V3 and V4 in both 32 bits version ?

Anyone knows ?