Buy me a cup of coffee 

Software development is powered by coffee... if you use any of our open source pojects, it would make my day if you'd buy me a cup (or several). Just click on the coffee cup.

ASCOM driver for Digital DomeWorks

Tags: digital-domeworks, ASCOM, astronomy, dome, technical-innovations, software, open-source, oss, free software, free

ASCOM driver for Digital DomeWorks


Tigra Astronomy was commissioned buy Technical Innovations to produce an ASCOM driver for their observatory automation product known as Digital DomeWorks.

The project originally began in 2006 and has evolved quite a lot since then. Currently, the project includes: - The ASCOM dome driver, which implements the IDomeV2 interface. - A low level hardware interfacing layer, which is open to other developers and upon which the ASCOM driver is built. - A hardware simulator, which attempts to replicate the operation of the Digital DomeWorks hardware in real time. The simulator also has a 'quick time' mode which lets us use it for unit testing of the code. The simulator talks directly to a serial port and can be connected to the ASCOM driver and other components using a null modem cable, or a serial port virtualization utility such as Com0Com. - A test harness, intended primarily for internal testing but it is included in the installer for completeness. - A command line utility for setting the user output pins (typically used for power control). This utility can't be used while another client is connected, unfortunately, as it needs exclusive access to the driver assembly.


Hardware Simulator

The driver package now includes a hardware simulator, that we developed to assist with our testing. The simulator can work in real time or quick time. In real time mode the simulator tries to be as realistic as possible, simulating the timing characteristics of the Digital DomeWorks hardware. In quick time mode, everything is done as fast as possible. The latter mode can be used for automated integration tests.

The simulator can come in very handy if you need to test software without being close to the actual hardware. It talks directly to a serial port and can be looped back to the ASCOM driver or other software using a null modem cable. Alternatively, a virtual serial port pair can be used by installing software such as Com0Com or equivalent.

Power Automation

Although the low-level interfacing module has always supported control of the user output pins, until now we've never really provided an easy way to use that. In the latest version we offer two approaches.

There's a command line utility that can directly control the power pins, using a command along the lines of:

TA.DigitalDomeWorks.PowerControl.exe --pin1=TurnOn --pin2=TurnOff --pin3=Toggle --pin4=NoChange

The default is NoChange so you only need to specify pins that you want to change.

The second approach is probably the more useful for most people. We've integrated power control into the setup dialog, so that you can set the states you want the pins to be in when the driver connects to the dome, and when it disconnects. Here's the new setup dialog:

Setup dialog showing power automation controls

Obtaining and Installing the Driver

Please refer to the links section below for links to relevant builds.

End users should normally download the Release build and install the Release configuration that matches their machine architecture: x86 for 32-bit systems and x64 for 64-bit systems. The installer checks this and will not allow the wrong architecture to be installed.

The Debug configurations produce copious amounts of diagnostic output and therefore run relatively slowly. Debug builds are not recommended for normal use and should only be installed when troubleshooting is required.

Open Source

In August 2015, Tigra Astronomy took the decision to open-source the project. The source code is available from a BitBucket Git repository. The code is being made available under the MIT license.


End users should normally only install the latest release build. Beta builds are likely to contain bugs and are not supported for production use. Integration builds contain up-to-the-minute code changes but might not be production quality so are not supported under any circumstances.

TeamCity Build Status

Let Us Help You

Find us on Facebook