Sunday, August 9, 2026

KStars 3.8.4 Released

KStars v3.8.4 is released on 2026.08.09 for Windows, Linux, and MacOS.

For Linux users, it's highly recommended to use the official KStars Flatpak hosted at Flathub.

This release brings major improvements including the World's First AI powered Guider! Furthermore, KStars now ships with an MCP server which enables connection to any LLM for full control. In this release a limited subset of skills have been introduced, and we hope to make the MCP server feature complete by the next release. Additionally, we improved rotator calibration, guide camera streaming support, and scheduler performance with large job lists. We've also fixed dozens of stability issues and added comprehensive tilt correction for mosaic masks. Here are some highlights.

AI Guiding Assistant

Pavan Kumar is our brilliant Google Summer of Code student who spent the summer developing an AI assisted guider. He delivered the AI Guiding Assistant for Ekos, a mount specific predictive guiding architecture that trains custom models for worm gear, harmonic drive, and direct drive mounts. The wizard walks you through system identification protocols, exports training data, and loads trained models for feed forward correction.

The assistant adds a feed forward predictive layer on top of Ekos's existing proportional guiding controller. A one time characterization wizard runs a system identification pass on your mount, and the resulting data trains a small model specific to your mount class (worm gear, harmonic drive, or direct drive). During guiding, a confidence gated controller blends the AI's predicted corrections with the classic proportional fallback, so the system defers to the proven controller whenever its own confidence is low. It runs entirely on device with no cloud dependency and no GPU requirement, does not need retraining every session, and deliberately does not attempt to predict stochastic noise sources like atmospheric seeing.

  • AI Guide protocol separated from the wizard UI for better modularity
  • Fixed filter models and reworked the system identification protocol and trainer
  • Wizard navigation fixed when closing and reopening; export now only includes the latest session logs
  • Added button to read offline training instructions directly from the wizard
  • Oscillator improvements for better stability during training
  • Fixed the fingerprint builder to correctly validate model compatibility across sessions

The AI Assisted Guider is still in experimental stage. Help us by sharing your feedback and exporting logs to us to analyze.

Guide

Andreas R. landed a run of guiding fixes this release:

  • Fixed streaming guide mode calibration failures on fast and harmonic mounts. The pulse guard is no longer armed during calibration, preventing "Lost track of the guide star" aborts that starved the AI Guider's system identification run
  • Fixed dark guiding (GPG and AI feed forward) in streaming mode by distinguishing between frame prediction pulses from real correction pulses, so the measurement loop no longer starves at the 0.5 s dark interval
  • Fixed the AI feed forward block reading declination from FITS headers. OBJCTDEC is a sexagesimal string, but the code was calling toDouble(), so declination silently stayed 0.0 on every frame. Now reads altitude, declination, and pier side directly from the mount object instead of headers
  • Added per optical train persistence for Predictive Guiding (GPG) period length, so users switching between worm gear and harmonic drive mounts on the same machine no longer clobber each other's tuned period values
  • Fixed the GPG circular buffer losing insertion order after 8192 samples. The read offset (start) was never advanced when the buffer filled, corrupting the chronological sequence and breaking the Gaussian Process training after roughly 68 to 82 minutes of continuous guiding at short exposures
  • Fixed guide camera binning not restored from optical train settings on Ekos startup with real hardware. The combo box was empty when setAllSettings() ran, so the saved binning was silently dropped. Also fixed a false "not supported" detection that compared against the driver's current binning instead of its maximum
  • Added an "Assume DEC orthogonal to RA" calibration option, which bypasses independent DEC angle measurement when periodic error or backlash causes erratic DEC calibration datapoints, deriving the guide angle solely from the RA axis with DEC forced to a 90 degree offset

Rotator

  • Fixed rotator auto reverse detection and added direction parity correction. The wrong direction detector never fired because the PA error tracker was unconditionally cleared before the confirming solve could check it. Now detects reversed rotation, trials the parity flag, recalibrates the offset immediately, and persists the correction only once a retry confirms it worked
  • Renamed internal flag to m_RotatorParityRetried to avoid confusion with the rotator's own driver level reverse functionality
  • Exposed the learned parity as a "Rotator direction reversed" checkbox in Align settings (below Flip Policy), so it can also be set manually without touching the driver's ROTATOR_REVERSE switch
  • Clear previousPAError when rotator times out or fails, preventing false positive auto reverse triggers
  • Fixed false positive rotator wrong direction detection by resetting m_PreviousPAError at key state transitions (successful rotation, mount slew, PA error decrease)
  • Rotator motion commands are now only sent when necessary, reducing unnecessary chatter

Camera & Capture

  • Added simple option for camera warmup instead of requiring users to create a task action for it, so camera sensors can now pre warm before a session starts
  • Andreas R. fixed the filter combo not reflecting the selected job in the Sequence Editor. In standalone mode, filter name lookup always returned -1 because filterLabels() returned an empty list without an INDI connection. Now resolves by name against the combo box contents
  • Auto default remote directory based on frame type in the capture module: %h/Videos for Video frame type, %h/Pictures otherwise, whenever the field is empty or still holds a previously auto generated %h path
  • Fixed an issue where video frame type selections didn't properly disable preview and loop, and set remote directory to a sane value so INDI can successfully write the video file

Scheduler & Observatory Automation

Andreas R. contributed two fixes here:

  • Added a wall clock timeout to the guiding stage (reusing the existing CaptureOperationsTimeout setting, default 300s) to prevent infinite retry loops when PHD2 fails to find a guide star, preventing wasted nights on a single target
  • Cached .esq file content to eliminate O(N) disk I/O per evaluation cycle. With 80 jobs on a Raspberry Pi, the greedy scheduler was spending 9 to 10 minutes of pure overhead re reading and parsing XML files from the SD card per cycle. The cache is keyed by file path and modification time; XML is still re parsed per call but disk I/O is eliminated

Hy Murveit sped up loading large .esl files by not repeatedly calling currentPositionChanged. A 100 job file now loads in a second or two instead of 40 seconds.

Wolfgang Reissenberger made two scheduler improvements:

  • Replaced stderr output with debug log output in the scheduler for cleaner diagnostics
  • Changed doubled sequence validation to only emit a warning instead of blocking, allowing setups with multiple cameras to use the same sequence on different targets

Alignment & Mount Modeler

Christian Kemper fixed two solver related issues:

  • Fixed solver algorithm selection based on available hints, so constrained plate solves now run faster than blind solves on multi core machines. The patchMultiAlgorithm() logic now selects MULTI_DEPTHS when a position hint is present and the scale window is narrow enough, MULTI_SCALES otherwise. The 1 Default align profile is now created with sensible bounds so fresh installs benefit immediately
  • Fixed scale bounds being double widened. Align::startSolving() and PolarAlignmentAssistant::startSolver() were applying their own 0.8x/1.2x margin on top of the same widening in SolverUtils::prepareSolver(), producing a net [low × 0.64, high × 1.44] window instead of the intended [low × 0.8, high × 1.2]
  • Fixed several Sentry and user reported crashes on camera timeout and restart drivers; Focus, Align, and Capture now have consistent timeout behavior
  • Salman Naheed added mount model commands for programmatic access
  • Andreas R. fixed filter not being reset to Sequence Job filter post meridian flip if the filter was different in Align
  • Process JSON alignment data from INDI mounts for improved integration
  • When running plate solving manually, reset target position angle and previous PA error, since otherwise they remain forever until successful or another load and slew is called

FITS Viewer & File Handling

  • Fixed unwarranted 180 degree rotation when pier side differs from the FITS file used for Load and Slew
  • Andreas R. fixed the Statistics panel showing full image stats when ROI is active. When a new image loaded while the selection rectangle was active, the panel reverted to full image statistics and users had to "jiggle" the box to refresh. Now checks whether the selection rect is shown and recalculates the ROI buffer from the new image data automatically
  • Christian Kemper fixed a CFITSIO_LIBRARIES typo that was dropping cfitsio from the link line. The variable name was missing the trailing S, silently overwriting the library and causing undefined references at link time for targets that depend only on Qt::Core and cfitsio

Focus

  • Added Tilt Correction Advisory to the Aberration Inspector, which computes and displays suggested tilt plate adjustments after autofocus with a mosaic mask. Supports 3 point plates (ETA, Octopi, manual 3 screw) and 4 point plates (TouTek style corner screws). Includes a rear view diagram with color coded points, mode toggle (Relative or Push only), thread presets (M2.5 to M6, Wanderer ETA, Custom), camera rotation dial, and an "Apply to ETA" button that sends corrections directly to Wanderer ETA M54 via INDI

Thomas Nemer fixed two focus related bugs:

  • Fixed Focus::autoFocusLinear and scanStartPos passing measure as weight. Two callsites passed getLastMeasure() into a weight slot instead of getLastWeight(), corrupting the V curve fit and the weights exposed via Focus Advisor
  • Fixed Focus::focusOut ignoring caller supplied step count. A duplicate assignment was unconditionally overwriting any explicit value, so focusOut(100) always moved by the UI default

MCP Server (Remote Control)

Thomas Nemer established the MCP server foundation, an in process MCP server inside Ekos that lets external clients drive KStars over JSON RPC 2.0 over HTTP, with bearer token auth and an optional read only token. It includes transport, tool registry, server orchestrator, settings UI, and comprehensive unit tests. His additional work this release includes:

  • MCP mount control tool family (12 tools: coords, goto, goto_target, sync, park/unpark, abort, set_tracking, set_track_mode, set_slew_rate, get_slew_rates, set_meridian_flip)
  • MCP catalog search tool, which resolves fuzzy or user supplied names ("M42", "andromeda", "polaris") into canonical KStars names for use with mount_goto_target
  • Focuser tool family (status, move_absolute, move_relative, abort_move) with a shared device lookup helper
  • Image access tool family (image_last_info, image_last_thumbnail) with per camera frame cache
  • "Available tools" panel in MCP settings, so operators can see which tools are exposed, what each does, and enable or disable individual tools or entire families via checkboxes
  • Unit tests isolated from the real token keychain, so the test suite no longer clobbers the developer's stored MCP credentials
  • Silenced Wmissing field initializers warnings in tool registrations

Stability & Bug Fixes

  • Ilia Belov fixed a crash when a stale EkosLive dialog response arrives after the dialog was dismissed. KSMessageBox is a reused singleton, and buttons of a dismissed dialog stayed as its children; a remote response sent after dismissal clicked a stale button and crashed KStars with SIGSEGV
  • Andreas R. fixed missing i18n and null check crashes in BuildFilterOffsets: button labels, tooltips, and status text were untranslatable, and several methods accessed m_BFOModel.item() without null checks
  • Fixed a crash when building offsets by using showDialog properly
  • Made Build Filter Offsets accessible programmatically and via EkosLive
  • Set proper unique object names for both Filter Manager and Build Filter Offsets
  • Fixed an issue where combo boxes in global config were not getting saved; only write the combo's index when it is populated and has a valid selection
  • Fixed -1 corrupting persisted combo settings before device connects. Several combos (guide/CCD binning) are only populated once a device connects, so currentIndex() returned -1 and overwrote the saved option
  • Suppress pulses from reaching the mount when disabled
  • Mark state as aborted if user explicitly cancels the dialog
  • Shut the profile down instead of indefinitely waiting when checkINDITimeout fires
  • Correctly wait for remote drivers and add contribution of all sequence files

Build & Infrastructure

  • Attempt to make Flatpak arm64 builds use only 4 cores to work around OOM errors
  • Limit Eigen to 4 CPU cores so it can build on the arm64 Flatpak CI runner
  • Do not build testing, demos, docs, or Fortran in Eigen
  • KStars now compiles with OpenCV 5
  • Scarlett Moore added cmake root path env for Snapcraft

Other Improvements

  • Extended filter offsets maximum range to 1 million per user request
  • Added a script to generate indidrivers.xml
  • Fixed wizard state transition when stopped
  • Offset is now updated after each solve, with more logging to diagnose future issues
  • Guilherme Marçal Silva updated the kstars.notifyrc file

Christian Kemper made three additional fixes:

  • Added KSPaths bundle Resources/kstars/ search on macOS, so data files are now found directly in the app bundle
  • Corrected DST rule for countries that abolished daylight saving in citydb
  • Normalized the country column in citydb to ISO 3166 1 alpha 2 codes
  • Replaced the binary citydb.sqlite with a source built TSV format; the database is now generated at build time

Monday, June 1, 2026

KStars 3.8.3 Released

KStars v3.8.3 is released on 2026.06.01 for Windows, Linux, and MacOS.

For Linux users, it's highly recommended to use the official KStars Flatpak hosted at Flathub.

This release brings major improvements to the Mount Modeler with artificial horizon filtering and uniform point distribution, significant connection speed optimizations, better guide streaming integration, and enhanced rotator handling. We've also fixed several scheduler and stability issues reported by the community. Here are the highlights:

Alignment & Mount Modeler

  • Christian Kemper added Artificial Horizon filtering to the Mount Modeler wizard, allowing generated alignment points below the active horizon to be automatically filtered out. Candidate coordinate points (both generated AltAz coordinates and snapped catalog objects) are now checked and rejected if they fall into active artificial horizon regions.
  • New Uniform Distribution mode generates points spread evenly across the visible sky using a Halton sequence, sampling in AltAz space to guarantee every point is above the configured minimum altitude. Points whose declination exceeds +/-80 degrees after conversion are rejected. The Any Stars, Named Stars, and Any Object modes now adopt this distribution internally and snap each generated position to the nearest qualifying object.
  • Auto-sorted wizard output: points added by the wizard are automatically sorted in nearest-neighbour slew order, minimizing total slew distance. Users no longer need to click Sort after running the wizard. Clicking Sort during a run reorders only the remaining unvisited points, leaving completed rows undisturbed.
  • The wizard now automatically configures the solver for each alignment point. Blind solves are used by default because no pointing model exists yet at the start of a run, so the mount's reported position may be significantly off. The GOTO mode is forced to Sync so the mount is updated after each successful solve. The original settings are saved and restored when the run finishes, is aborted, or is reset.
  • Refactored point generation logic to eliminate duplicated generation and conversion math in the test suite, improving generator efficiency using a stateful sequence
  • Toni Schriber fixed activation of the rotator button in the align module
  • Fixed effective focal length calculation to use radians in the DSLR branch

Guide

  • Thanks to Andreas Ruthner, guide streaming now correctly handles video stream window interaction. The video window no longer pops up when guide streaming starts, displays frames correctly when opened from the Capture module after a guide session, and now renders 16-bit mono stream frames (previously only 8-bit mono and RGB were handled).
  • Andreas also fixed frame, binning, gain and exposure sync for streaming mode. When starting guide streaming, the module now applies the same frame settings that captureOneFrame() applies for single-frame captures. Previously, streaming mode skipped this setup entirely, causing stale values from other modules to remain active in the driver.
  • Frame ROI and binning now sync on stream start, live gain updates apply immediately when the user changes the spinner during active streaming, and binning/exposure changes automatically stop and restart the stream
  • Added 0.001-0.01s exposure values to the guide exposure spinner for fast streaming and daytime testing

Rotator

  • Fixed several issues with Reversed rotator state not taken into account in various rotator operations
  • Rotation now aborts if the Position Angle error keeps increasing due perhaps to reversed rotator behavior

Ekos Profiles & Connection

  • Significantly cut down time to connect to INDI web manager by skipping DNS resolution if we already have an IP address specified for the remote host
  • Fixed rare crash due to dangling clientManager pointer with test to verify the fix

Capture & Livestacking

  • Use OpenCV debayering by default. Enforce even ROI selection to ensure bayer boundaries are respected.
  • Always sync from INDI to overwrite shadow states in the Camera process
  • Account for STREAM_FULL_DEPTH when streaming
  • John Evans added support for Live Stacker Alt/AZ data via Seestar S30 Pro. It should support other telescopes in Alt/AZ mode.
  • John added a gradient removal option to post processing in Live Stacker.

FITS Viewer & File Handling

  • Use standard gzip compress instead of Qt own compression algorithm
  • Support loading .fits.gz and .xisf.gz in the viewer

Scheduler & Observatory Automation

  • Fixed scheduler freezes when loading ESL referencing many ESQ files (patch by Tomas). BUGS:519294
  • Autopark should work over multiple nights now
  • If observatory is not started, skip shutdown procedure
  • Fixed issue where post-shutdown script run in infinite loop
  • Fixed scheduler and capture scripts not running inside flatpak

Optical Trains & DBus API

  • Added DBus call to set and get Pictures directory
  • Fixed warning of missing devices when we already selected alternative devices in the optical train

Build & Infrastructure

  • Use KSUtil to consolidate all calls to external executable so they can run correctly within a flatpak as well
  • Within flatpak, run the external scripts on the host system since it may require libraries that are only available on the host system
  • Christian Kemper fixed macOS iconutil failure by adding 256px and 512px icon sizes rendered from the existing SVG source, which are required by iconutil on macOS 15 (Sequoia)
  • Wolfgang Reissenberger updated the Dockerfile to be based on installation scripts for all steps: INDI, StellarSolver, PHD2, GSC, openCV. All scripts are built uniformly such that existing packages or installations are preferred. If the package is missing, first installing the appropriate package is tried. If this fails, the package is built from sources

Stability & Bug Fixes

  • Fixed crash reported in crash-reports.kde.org regarding invalid base device or message text. The check for message text now occurs earlier in the process to protect against this crash.
  • Milhan Kim fixed test deadlock by replacing QTest::mouseClick with animateClick(), which posts the click through the event loop and prevents tests from hanging indefinitely on QDialog::exec() loops
  • Fixed an issue where frequent temperature updates can cause the dark cover check to run indefinitely
  • Hy Murveit fixed green lines display issue
  • Fixed solution assignment
  • Fixed crash and distorted artifacts in video streaming
  • Replaced all abs and fabs with std::abs for consistency
  • Modernized signals and slots

Many thanks to Christian Kemper, Andreas Ruthner, Toni Schriber, Hy Murveit, John Evans, Milhan Kim, Wolfgang Reissenberger, Tomas, and all others who contributed fixes and improvements to this release! Your work makes KStars better for everyone.

Download KStars v3.8.3 today and enjoy improved mount modeling, faster connections, and more reliable guiding!

Wednesday, April 8, 2026

KStars 3.8.2 Released

KStars v3.8.2 is released on 2026.04.08 for Windows, Linux, and MacOS.

For Linux users, it's highly recommended to use the official KStars Flatpak hosted at Flathub.

This release brings reliability improvements across the scheduler, live stacking, polar alignment, along with new features like passive camera warming, a startup queue failure popup, and preliminary automatic polar alignment correction. Here are some highlights:

 Scheduler & Observatory Automation

  • Fixed Ekos not shutting down after preemptive shutdown; task executor no longer stalls when a park command is issued
  • New startup queue failure popup with state reset for clean retries
  • Scheduler restart from error state now always resets startup to IDLE
  • Fixed crashes caused by improper use of QSharedPointer; simulator-based regression tests expanded
  • Added ability to wait indefinitely for weather to improve
  • Profiles now synced from INDI Web Manager on startup; deleting a profile in KStars removes it from the manager
  • Fixed checkINDIState returning incorrect value when transitioning to STARTUP_POST_DEVICES
  • Added Optical Trains DBus interface for scripted access to train configuration

Polar Alignment

  • Preliminary support for Automatic Polar Alignment Correction via the INDI Polar Alignment Corrector interface. INDI Polar Alignment Drivers include Avalon UPAS (not tested) and MLAstro Robotic Polar Alignment (not released yet)
  • Fixed overwrap calculation error producing erroneous correction vectors
  • Multisetup PA sync workaround contributed by Philip Mair

Live Stacking

  • Added mutex locking on LiveStack image buffer updates to prevent SEGVs under concurrent load (John Evans)
  • Livestacker settings are now retained between sessions; parameters synced programmatically to UI
  • Fixed saved .xisf stacks to store pixel values in the correct 0→1.0 range
  • Stacker now restarts automatically when the filter or imaging target changes

Capture & Focus

  • Added passive camera warming for graceful end-of-session cooldown
  • Fixed critical bug where autofocus triggered by a filter change could leave sequences stuck indefinitely
  • Fixed sequence filter not being restored after a meridian flip when autofocus is not required (Pavan Kumar S G)
  • Fixed dithering getting stuck in streaming mode
  • Fixed crashes when closing compressed FITS files and failure to open compressed FITS images (Umangjeet Singh Pahwa)

Guiding

  • Initial work to support streaming mode in the guide module, enabling video-capable cameras for guiding. This is especially useful for harmonic mounts where you can guide at higher frequency (2-4 Hz)

Other Fixes

  • Added dome slit overlay to the sky map view (Ed Lee)
  • Various dust cap and light box device handling improvements
  • Fixed INDI Web Manager port detection on macOS and Windows
  • Suppressed spurious empty disconnect messages on clean disconnects
  • Mount unpark no longer passes a hardcoded "Mount" string; INDI resolves the device by interface type

Monday, February 2, 2026

KStars 3.8.1 is Released

KStars v3.8.1 is released on 2026.02.092 for Windows, Linux, and MacOS.

For Linux users, it's highly recommended to use the official KStars Flatpak hosted at Flathub. You can install the stable flatpak or try out new features by downloading the KStars Nightly Flatpak for x86_64 and arm64 architectures.

This is mostly a bugfix release with nice improvements in debayering algorithms thanks to John Evan's work on this using OpenCV. Here are some highlights:

 Scheduler & Observatory Automation

  • Enhanced weather-based scheduling with proper abort/resume during soft shutdown
  • Improved preemptive shutdown with wakeup timers and better state management
  • Safety monitor now continues monitoring even after complete shutdown
  • Fixed jobs incorrectly marked as aborted when completed

Live Stacking Improvements

  • Added debayering support for multiple cameras including Touptek
  • Implemented hot/cold pixel removal
  • Added XISF file format support with debayering
  • General bayer processing refactoring



Meridian Flip & Alignment

  • Fixed capture operation timeouts during meridian flips
  • Added extensive logging for post-flip actions
  • Improved rotator timeout handling - now aborts alignment instead of waiting indefinitely

Reliability & Error Handling

  • More resilient INDI web manager connectivity checks with graceful failures
  • Fixed ADU-based flat frame signature matching
  • Improved filter offset handling for multi-camera setups
  • Better dark frame diagnostic logging

Other Fixes

  • Fixed comet position calculations for hyperbolic orbits (e.g., 3I/ATLAS)
  • Improved artificial horizon importer to handle spaces in files
  • Enhanced HIPS survey filtering and sorting with partial sky survey support. Support for many more catalogs like NSNS



Wednesday, December 3, 2025

KStars v3.8.0 is Released

KStars v3.8.0 is released on 2025.12.03 for Windows & Linux. MacOS release is expected in one week due to build issue on KDE CI infrastructure.

For Linux users, it's highly recommended to use the official KStars Flatpak hosted at Flathub. You can install the stable flatpak or try out new features by downloading the KStars Nightly Flatpak for x86_64 and arm64 architectures.

Live Stacker: LRGB Stacking

John Evans implemented generation of RGB and LRGB images from individual mono subframes. Watch R, G, B and optionally L directories and combine the individual stacks into RGB or LRGB images.


Add directories for R, G, B and optionally L subs. These are monitored and a single color image is displayed.


RGB images are combined with a Linear Fit type algorithm.  LRGB images are combined with a LRGB Combination type algorithm. SNR algorithm has been rewritten. Appears to work better but is more resource intensive.

Live Stacker: ImageMM Stacking Method

John Evans added an implementation of the ImageMM stacking method. This implementation strikes a balance between speed (it needs to be a Live Stacker) and fidelity.



To use: select ImageMM as the stacking method and play with the available controls. This method is considerably more resource intensive than "regular" stacking because it uses an iterative approach.

Live Stacker: Live Stacker Monitor

John Evans implemented the Live Stacker monitor. Live Stacking Monitor window is a popup from Live Stacker that shows a table of subs that match the chosen directory in Live Stacker.


The purpose is to allow analysis of Live Stacker, for example to allow investigation of bottlenecks in the stacking process.

When a sub is added to the watched directory, the sub is added to the Monitor's table. As the sub is processed by each step of the process information is updated in the table:
  • Waiting to load. The sub is in the queue to be processed but Live Stacker is busy with other subs.
  • Loading. The sub is loaded into memory.
  • Plate solving. The sub is undergoing plate solving (if appropriate).
  • Waiting to stack. The sub is waiting to be stacked (e.g. currently there are insufficient subs loaded to start a stack).
  • Calibration. Dark / Flat calibration.
  • Alignment.
  • Stacking.


Table columns and sort order are configurable. Changing cells can be highlighted (or not)

Task Queue system

Observatory startup and shutdown steps are now replaced by the new highly configurable Task Queue system. The Task Queue System is a modern, flexible automation framework that replaces traditional startup and shutdown scripts with a template-based, configurable task execution system. It provides a visual interface for building sequences of automated operations that can control your observatory equipment through INDI. It is accessible from Ekos Scheduler.


Why use it? The Task Queue system offers several advantages over traditional scripting:

  • Visual Management: Build and monitor task sequences through an intuitive graphical interface
  • Reusability: Use pre-built templates for common operations without writing code
  • Error Handling: Built-in retry logic and configurable failure responses
  • Device Compatibility: Automatic matching of templates to available devices
  • Progress Monitoring: Real-time status updates and detailed execution logs
  • Collections: Pre-defined task sets for startup, shutdown, and other common scenarios
  • Flexibility: Combine templates or create custom variations without programming

Safety Monitor

KStars scheduler now fully supports INDI Safety Monitor driver released part of INDI v2.1.7. A standalone driver may be used (independent of the equipment profile) that is running on a different INDI server to provide 24/7 safety monitor updates to the scheduler. No observatory operations shall take place unless it is deemed safe by the safety monitor.



The INDI Safety Monitor can listen to any number of sources including weather stations, UPS (uninterruptible power supply) monitors, and any auxiliary device that support the INDI's standard SAFETY_STATUS property.

Push-To Assistant 

Wolfgang Reissenberger added an incredibly useful tool for users with manual mounts: Push-To Assistant. Just attached a camera to your dobsonian and use this tool to center the target in the eyepiece. This tool assumes that both the camera center and eyepiece center are already aligned.

The new push-to assistant is intended as plate solving support for mechanical mounts in combination with a digital camera on a finder scope.


Setup: Create an optical train with the Telescope Simulator as mount and configure your combination of finder scope and digital camera.

Usage

  • Start Ekos
  • open the Push-to Assistant located in the Tools menu
  • move your scope as good as possible to the target you want to find
  • select the target from the catalog or enter its coordinates manually and press "Select target"
  • press "Solve position" to determine the position your scope is currently pointing at
  • as soon as the position has been solved, the assistant displays hints in which direction you should move your mount to be closer to the target
  • correct your mount position and press "Solve position" again

if you want to automatically repeat plate solving, configure the delay and press the "Repeat" button.


Bug Fixes


Wednesday, August 13, 2025

KStars v3.7.8 is Released

KStars v3.7.8 is released on 2025.08.13 for Windows & Linux. MacOS release is pending. It's a bi-monthly bug-fix release with a couple of exciting features.

Live Stacking

The moment many of you have been waiting for has arrived! John Evans has introduced the highly anticipated Live Stacking feature to Ekos, seamlessly integrated into the FITS Viewer. Once you configure your live stacking directory, any FITS images added will be automatically stacked in real-time.

This feature works independently of your existing sequences or scheduler sessions, allowing you to configure the live stacker to process captured images for an enhanced view of your final results. It's particularly valuable for public observatories and star parties, where real-time feedback can greatly enhance the viewing experience.

Since Live Stacking is still in beta, we welcome your feedback and suggestions for improvement. Check out the demonstration videos below to see the feature in action and learn about its capabilities.


Equipment Profile Editor

The Ekos Equipment Profile editor has received a complete redesign. We've eliminated the limitations of the previous editor—you can now add unlimited drivers to your equipment profiles without restrictions. Need three different mounts in a single profile? No problem!

Both driver and profile lists now include search functionality, making it quick and easy to locate specific drivers. This flexibility gives you unprecedented control over your equipment configurations.



Focus History Navigation

Wolfgang Reissenberger has added an invaluable Focus History navigation feature. When autofocus encounters issues, you can now navigate through your focus frame history to inspect images from all autofocus runs, making troubleshooting much more effective.

The Focus module now includes a dedicated navigation panel. To optimize screen real estate, we've moved the detected stars display and current HFR readings above the V-Curve rather than below it, freeing up valuable space.


To use this feature, simply configure the maximum number of stored frames in your Focus settings. The navigation controls are active only when autofocus sequences aren't running.



FITS Viewer Stretch Presets

Hy Murveit has refined the FITS Viewer stretch sliders and added a convenient preset button that cycles through seven different stretch configurations, offering various combinations of background brightness and contrast levels.

When you display the histogram and zoom in, the sliders provide much finer resolution control—particularly useful for precise black point adjustments.

Flatpak Support

Thanks to extensive collaboration between the Ikarus Technologies team, KDE Infrastructure team, and the Flathub community, we now offer both Stable and Nightly Flatpak packages.

The KStars Flatpak includes all INDI drivers and runs securely within the flatpak sandbox environment. This allows you to install both Stable and Nightly versions simultaneously without conflicts; perfect for testing the latest features and bug fixes while maintaining access to the stable release.

For installation on a brand new system, you'll need to install INDI firmware files. We've prepared comprehensive instructions and a simple installation script for both stable and nightly versions to facilitate this process.

Polar Alignment Improvements

Hy Murveit improved the Polar Alignment algorithm, especially when it the mount is close to the meridian. Wolfgang Reissenberger improved the the size of the arrows indicating the direction of the necessary adjustments so they're more visible in the Polar Alignment Assistant.

Migration to Qt6

This release represents a significant technical milestone with our complete migration to Qt 6 and KDE Frameworks 6. KStars is still compatible with Qt 5 until all major distributions fully switch to Qt 6. While these changes happen behind the scenes, they provide a more robust foundation for future development.

The entire KStars development team contributed to this substantial effort. Special recognition goes to Eric Dejouhanet and Robert Lancaster, who invested countless hours reworking our complex CI/CD pipelines and macOS support builds in KDE's Craft system. This release wouldn't have been possible without their exceptional dedication.


Tuesday, April 1, 2025

KStars v3.7.6 is Released


KStars v3.7.6 is released on 2025.04.01 for Windows, MacOS & Linux. It's a bi-monthly bug-fix release with a couple of exciting features.

Scheduler Plans Visualized


Hy Murveit added a graph to the Scheduler page that displays visually the scheduler's plans--the same plans described in the log at the bottom of that page, and partially described in the scheduler's table. You can see altitude graphs for all the scheduler jobs, which are highlighted in green when that job is planned to be active. The next two nights of the plan can be accessed using buttons to the right (and left) of the graph. The graph can be enlarged or hidden by sliding the "splitter" handle above it up or down.




PHD2 & Internal Guider RMS


Many users reported differences between the RMS value reported by Ekos internal guider vs PHD2. This is not a new issue as there was a difference in RMS calculations ever since Ekos Guider module was developed over a decade ago. In this release, we updated the internal Guider RMS calculations to use the same algorithm used by PHD2. This way, there is now a more consistent metric to judge the performance of the two guider systems.

Weather Scheduler Integration


Weather station integration with the scheduler was improved. The weather enforcement is now global and not per job. If weather enforcement is enabled, you can adjust the Grace Period (default 10 minutes) in cases where the scheduler cannot be started due to a weather Alert or Warning. 



When a weather warning is received, existing jobs can continue to execute but new jobs will not be executed until the weather situation improves. Upon detecting a weather hazard, the scheduler execute a Soft shutdown mode where it can park the mount and dome, but still retains connection with INDI drivers to continue monitoring the weather situation. If the weather does not improve by the Grace Period, it then commences a full shutdown of the observatory. Otherwise, it should resume the job from where it was left.

Contrast Based Focusing


John Evans added an option to allow focusing on non-star fields by using various contrast based algorithms. This is suitable for Lunar, Solar and planetary imaging.


Autofocus Optimization


John Evans added an option has been added to Focus that allows an Autofocus run to re-use a previous successful Autofocus result if the previous AF run occurred within a user-defined time period, say <10mins ago. This can speed up certain situations when using the Scheduler where multiple Autofocus requests can happen within a short period of time.



Imaging Planner Improvements


Hy Murveit pushed a new Imaging Planner catalog release along with improvements to the KStars Imaging Planner.
  • It should now start up much more quickly on first use, or first use after a catalog upgrade.
  • There were stability improvements.
  • The catalog was extended to include 770 objects.
Upgrade to KStars 3.7.6, use Data -> Download New Data to get the latest Imaging Planner catalog, and run Load Catalog in the Imaging Planner tool to take advantage of all these improvements.

Quick Go & Rotate



Added support to Go and Rotate in Framing Assistant. This would command fast go to target and then followed by rotation to match position angle indicated. Simply adjust the Position Angle to your desired angle then command Ekos to solve and rotate in one go.

Scheduler Coordinates Flexibility



Wolfgang Reissenberger introduced enhancements for handling target coordinates in the scheduler module:

  • Add an option to switch the target coordinates between J2000 and JNow. This is interesting for those cases where the user wants to enter the coordinates manually, but has the coordinates only in JNow - for example when taking them over from the align module.
  • Add a "use the current target" button. Currently, there is only an option to take over the current skymap center.
Furthermore, during the time where the moon is visible, it should be possible to schedule only those jobs that are not disturbed by moonlight (e.g. H-alpha captures). To enable this, a new optional constraint is introduced where the maximal moon altitude could be set.

Use PHD2-scheme graph





Toni Schriber modified the internal guider chart to use PHD2-scheme (RA/DEC) for graph of guide mount drift. This should help comparisons between PHD2 and internal guider more consistent.