How openastrotech/openastrotracker-desktop works
OpenAstroTracker Desktop provides Windows mount-control software and an ASCOM telescope driver, backed by shared communications libraries. The main user workflow is to choose a connection, send mount commands, and view mount state; the UI also supports target selection, polar alignment, settings, and theme customization. The README documents serial and WiFi control and major driver capabilities. Sampled source confirms command handling and UI command dispatch, but not all MountVM or driver internals, so uncertain wiring is omitted.
Main entry points: OatmealTelescopeCommandHandlers.cs Mount command handlers · Driver.cs Telescope driver · MountVM.cs Mount state and commands · CommunicationHandlerFactory.cs Connection handler factory
Components 22
Mount Control
- Main window
OATControl/MainWindow.xaml.cs - Mount state and commands
OATControl/ViewModels/MountVM.cs - Target selection
OATControl/TargetChooser.xaml.cs - Polar alignment
OATControl/DlgRunPolarAlignment.xaml.cs - Alignment log processors
OATControl/ViewModels/PolarAlignLogProcessorBase.cs - App settings
OATControl/ViewModels/AppSettings.cs - Theme management
OATControl/Theming/ThemeManager.cs - Mini controller
OATControl/MiniController.xaml.cs
Communications
- Connection handler factory
OATCommunications.WPF/CommunicationHandlers/CommunicationHandlerFactory.cs - Serial transport
OATCommunications.WPF/CommunicationHandlers/SerialCommunicationHandler.cs - TCP transport
OATCommunications/CommunicationHandlers/TcpCommunicationHandler.cs - WiFi discovery
OATCommunications/ClientAdapters/UdpClientAdapter.cs - Mount command handlers
OATCommunications/TelescopeCommandHandlers/OatmealTelescopeCommandHandlers.cs - Mount and position models
OATCommunications/Model/MountState.cs - ASCOM communication adapter
OATCommunications.ASCOM/CommunicationHandlers/ASCOMCommunicationHandler.cs
ASCOM Driver
- Telescope driver
ASCOM.Driver/TelescopeDriver/Driver.cs - Focuser driver
ASCOM.Driver/TelescopeDriver/FocuserDriver.cs - Driver setup
ASCOM.Driver/TelescopeDriver/SetupDialogForm.cs
Simulation
- Mount simulator
OATSimulation/Communication/TCPSimClient.cs
Other components
- Mount operator
- OpenAstroTracker mount
- Astronomy client
Connections 23
- Mount operator → Main window: operates
- Main window → Mount state and commands: presents state
- Mount operator → Target selection: chooses target
- Mount operator → Polar alignment: runs alignment
- Mount operator → Mini controller: controls mount
- Mini controller → Mount state and commands: dispatches commands
- Mount state and commands → Connection handler factory: selects transport
- Connection handler factory → Serial transport: creates handler
- Connection handler factory → TCP transport: creates handler
- TCP transport → WiFi discovery: starts discovery
- Serial transport → Mount command handlers: transports commands
- TCP transport → Mount command handlers: transports commands
- Mount command handlers → OpenAstroTracker mount: sends commands
- Mount command handlers → Mount and position models: updates state
- Astronomy client → Telescope driver: calls driver
- Telescope driver → ASCOM communication adapter: uses adapter
- Telescope driver → OpenAstroTracker mount: controls telescope
- Focuser driver → OpenAstroTracker mount: controls focuser
- Driver setup → Telescope driver: configures driver
- Mount simulator → Mount state and commands: supplies simulated state
- Alignment log processors → Polar alignment: processes logs
- Mount operator → App settings: configures
- Mount operator → Theme management: customizes appearance