Sunday, December 3, 2023

KStars 3.6.8 is Released


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

Aberration Inspector


John Evans introduces the very exciting Aberration Inspector tool. The Aberration Inspector is a tool that makes use of Autofocus to analyze backfocus and sensor tilt in the connected optical train. It solves up to 9 virtual tiles on the sensor as defined by the existing Mosaic Mask.


The information is then used to analyze:
  • Back focus.
  • Sensor Tilt.
There are 4 sections:
  • V-curve for the each tile.
  • Table of data detailing the curve fitting results.
  • Analysis of back focus and tilt.
  • 3D Surface graphic to explain the Petzval Surface intersection with the sensor.
This release provides display only functionality. In future it would be possible to add functionality to offer recommendations for adjustments using Octopi, PhotonCage, etc.

Sub-exposure Calculator


Joseph McGee continues to add improvements and fixes for the Sub-exposure calculator. For usability, the window is now re-sizeable, an issue with the display of tool tips was corrected, and an indicator has been added for the sensor type of the selected camera (Mono / Color).  For functionality: the upper limit of the Noise Increase input parameter was increased, support was added for cameras with non-variable read noise, (cameras with CCD sensors).


Several new camera data files were added to the KStars source code repository, and a function to allow direct direct download of camera files from the repository was enabled. (Note: users who have created their own camera data files, may wish set the file attribute to read-only, and/or make a back up copy in case of an accidental over-write from the download function if the camera file has the same name).

A new experimental graphical tool to determine an appropriate number of sub-exposures for integration was added. This tool allows the selection of an exposure time to noise ratio for a stacked image; the tool will compute the number of sub-exposures required to achieve that value.

Added several new camera data files:
  • Atik-16200CCD_Mono.xml
  • FLI-16200CCD_Mono.xml 
  • QHY_CCD_294M_Pro.xml
  • QHY_CCD_461_PH.xml
  • QHY_CCD_163C.xml 
  • QHY_CCD_163M.xml
  • QHY_CCD_268C.xml
  • QHY_CCD_294M.xml
  • QHY_CCD_600_PH.xml
  • ZWO_CCD_ASI294MC
  • Pro.xml ZWO_CCD_ASI294MM
  • Pro.xml ZWO_CCD_ASI533MC
  • Pro.xml ZWO_CCD_ASI2600MC
  • Pro.xml ZWO_CCD_ASI6200MC
  • Pro.xml ZWO_CCD_ASI533MC
  • Pro.xml ZWO_CCD_ASI533MM
  • Pro.xml Nikon_DSLR_DSC_D5100_(PTP_mode).xml Nikon_DSLR_DSC_D700_(PTP_mode).xml

FITSViewer Solver


Hy Murveit added a very useful feature to the FITS Viewer: a built-in solver!

The FITS Viewer Solver is used to plate-solve the image loaded in the FITS Viewer's tab. It only works with the internal StellarSolver. You get the RA and DEC coordinates for the center of the image, the image's scale, the angle of rotation, and the number of stars detected in the image. Its main use case is debugging plate-solving issues in Ekos, though the information displayed can be generally useful. The controls and displays are described below.


This adds a new tool inside the splitter on the FITS Viewer. It plate-solves the displayed image, and allows the user to experiment with a number of plate-solving parameters, and thus help debug plate-solving issues.

How to test it out?
  • Open the sliding panel on the left part way, click on Plate Solving, and resize the windows appropriately.
  • Experiment with the parameters available (Use Scale, Use Position, the scale and RA/DEC positions, choose a profile and/or edit it)
  • Click Solve, and the image is solved and the solution presented in the Scale and RA & DEC and Angle boxes.
  • If you enable "Mark Stars" above the image window, you will also see the stars that were detected.

Quality of Life improvements

  • Make "Set Coordinates Manually" dialog more intuitive.
  • Telescope name specified in the optical trains are now saved in the  FITS header (the mount name was saved before).
  • New placeholders for ISO, binning and pure exposure time added.
  • Add a new not-default scheduler option to disable greedy scheduling.
  • Reduce latency between captures, especially when guiding / dithering.
  • Fix issue with differential slewing.
  • Separate Business Logic from UI in Scheduler.
  • Fix bug in estimating job time, capture delays were misinterpreted.
  • Fixed guide start deviation was not saved properly in esq file.
  • Bugfix in one-pulse dither. Dither pulses were going the wrong way.
  • Fix Scheduler hangs when Focus does not signal Autofocus start failure.
  • Focus Guide Settle Bug.

Tuesday, October 3, 2023

KStars v3.6.7 is Released

KStars v3.6.7 is released on 2023.10.03 for MacOS & Linux. Windows build is still pending and should hopefully be released by 10th of October. It's a bi-monthly bugfix release with a couple of exciting features.

Image Overlay Component


Hy Murveit introduced a long requested feature: Custom Image Overlays!

With this new feature, a user can add their own processed/completed astro-images, and the system will display them scaled and rotated appropriately on the Sky Map.

The feature is controlled in the KStars Settings menu, in a new tab labelled Image Overlays. First the user needs to add files into a directory, parallel to the logs directory, called imageOverlays. Simply add the images there (typically jpegs). Ideally these aren't massive files for performance reasons, but probably width 1000 or 2000 are fine. I have been testing with larger files, which will also work be use more system resources on slower CPUs.


The user then uses the Image Overlays menu in KStars Settings to (one-time) plate-solve the images and check a box to enable the image display. Successful plate-solve info is stored in the user-db so that it doesn't have to be done again. The images should, from then on, appear in the SkyMap in the proper position. There is a way to easily navigate to the images without manipulating the SkyMap by selecting a row in the overlay table and clicking on the "Show" button. You can move from one image to the next with up/down arrow keyboard commands.

A user can adjust the plate-solve timeouts. As these are mostly blind solves (jpegs won't have any header info, and as currently implemented, no header info is used) the plate solving can be problematic. You can choose a default image scale (arcseconds-per-pixel) or leave that to 0.0 to not use scale. If there are files that won't solve, the user can add RA,DEC into the image's row in the table displayed, which would get the solver to use the sky position as a constraint. The user can also add the scale that way. In fact, if the user knows all the info for the image, he/she can populate all the fields on the image's row and simply set the status field to OK, and plate-solving would no longer be required.

Rotator Dialog Improvements



Toni Schriber continued simplifying the Rotator Dialog. Rotator Flip Policy was introduced. This (global) policy is an answer to this question and to this wish. It's now possible to define how the rotator reacts after a flip or if the result of a solved reference image reports a different pierside respective to the actual mount pierside. Preserve Rotator Angle will keep the rotator position and the camera is virtually rotated by 180°. Preserve Position Angle will keep the camera position angle.

The rotator always turns the camera to the original position angle and the image will show the original star arrangement. Flip Policy can be altered in the StellarSolver Options under Rotator Settings.

More File Placeholders


Due to popular demand, Wolfgang Reissenberger added support for camera temperature %C, gain %G, offset %O and pier side %P.


This is not only applicable to locally captured images, but also for images captured on a remote INDI server.

Thursday, June 1, 2023

KStars v3.6.5 is Released

 

KStars v3.6.5 is released on 2023.06.01 for MacOS, Linux, and Windows. It's a bi-monthly bugfix release with a couple of exciting features.


Sky Map Rotation


Akarsh Simha added a new feature to allow the user to rotate the sky map. It also allows some standard settings like inverted view. Here are some the highlights:
  1. Rotate the sky-map freely: Shift + mouse drag on the sky map
  2. Pick pre-defined orientations: Zenith Up / Zenith Down / North Up / North Down depending on the coordinate system being used
  3. A magic mode for Dobsonians: The Erect Observer Correction feature, when selected along with Horizontal Coordinates / Zenith Down settings, will reproduce the orientation seen in the eyepiece of a Dobsonian. May need a one-time adjustment for your specific Dobsonian using the shift + drag feature.





Optimal Sub-Exposure Calculator


Joseph McGee made his first contributor to KStars with the Optimal Sub-Exposure Calculator. This is the first iteration of the calculator and only a handful of camera profiles is supported. There are different points of view within the astrophtography community on how optimal sub-exposure should be calculated and whether we should consider other factors such as processing time given the volume of data produced. Your feedback would be appreciated on this first iteration of the calculator.

Implementation of an optimal sub-exposure calculator based upon the work of, and presentation by, Dr Robin Glover. The calculator considers multiple inputs to determine a sub-exposure time which will provide minimal overall noise in the image:


  • A sky quality measurement (SQM) for light pollution
  • The optic focal length
  • A filter bandwidth
  • Camera read-noise (based upon gain/iso)
  • An optional adjustment to the allowable increase in noise from light pollution

As inputs are adjusted the calculator will refresh graphic presentation of potential exposure times of the range of gains, and update calculated outputs. The output values are separated into two sections: one for the sub-exposure, and another for image stacks of various integration times.

The sub-exposure outputs are:

  • the optimal sub-exposure time
  • the count of electrons produced from light-pollution
  • the shot noise, (noise from light pollution)
  • the total exposure noise, (the combined noise from light-pollution and camera read-noise)

The image stack information is presented in a table showing:

  • planned integration hours
  • the count of exposures to reach the planned integration hours
  • the actual stack (integration time) in seconds
  • the noise for the stack
  • a ration of stack time to noise, (as a indicator of quality)

An instance of the sub-exposure calculator can be started from a new 'clock' icon on the ekos capture screen. Multiple instances of the sub-exposure calculator can be started concurrently so that side-by-side comparisons can be made for variations in inputs.

Data for camera read-noise will be provided through individual xml files which will be user maintained and published in a repository. These camera data files persisted within a folder "exposure_calculator" under user/local/share/kstars. The calculator includes the capability to download camera files from a repository. Upon the initial start of the calculator at least one camera data file download will be mandatory before the calculator can be instantiated.

The intent is that camera data file names will be used to allow the calculator to select an appropriate camera data file based upon the device id of the active camera. (But some of the initial camera files were named using educated guesses, and will likely need to be re-named).


Rotator Dialog Improvements


Toni Schriber merged improvements and fixes for the Rotator Dialog. As shown in the illustrations the user interface is very simple and there is only one parameter to set: The Camera Position Angle. It is a very consistent term and easy to understand. The same Position Angle (PA) is also used in Alignment, Scheduler, and the Sky Map.


In the gauge this angle is presented in the same color as the FOV in the planetarium sky and in viewing direction. This way one can relate and understand this angle intuitively. The rotator angle is presented in gray and also in viewing direction. This angle is calculated from the Camera PA and the Cameras Offset Angle which is calibrated each time a [Capture & Solve] or a [Load & Slew] is brought into action. For further clarity the rotator angle and the camera offset is displayed again in a information window together with the current pier side.

The Rotator Settings can be accessed either in the Capture or Align modules.


Focus Linear 1 Pass Improvements


John Evans continued his phenomenal improvements to Ekos Focus module with L1P Phase 2 changes as detailed in the Linear Focus Phase 2 document. Here are the highlights:

  1. Optimized curve fitting . Should be faster and more accurate and includes outlier rejection.
  2. Currently HFR is the only fitting "measure" available. The following have been added: a) HFR Adj (adjusted HFR to compensate for star brightness vs background variation) b) FWHM c) Number stars (max at focus rather than a min) d) Fourier Power (alternative focus method not requiring star detection)
  3. Focus units can be displayed in pixels or arc-seconds.
  4. Critical Focus Zone - a calculator with 3 different algorithms has been added
  5. Focus Offset Utility to automatically build focus offsets.
  6. Take flats at same focus point as lights has been fixed.
  7. Focus Adviser. Still working on this but a tool to help with focus parameters (since there are now so many).
  8. SEP parameters suggestions for focus. Keen to get some feedback on this.
  9. Adaptive focus to adapt the focuser position between Autofocus runs, aiming to keep optimum focus for each sub-frame. Adaptations for Temperature and Altitude are supported.
  10. Adaptive focuser start . The starting position for an AF run can be filter and Adaptive Focus adjusted.
  11. Focus walks added to control how the inward sweep of the AF process performs.
  12. AF Overscan originally implemented in the Linear algorithm and then reused by Linear 1 Pass now extended to all focuser movements.

In addition to HFR, you can now use different measurements (FHWM, # of Stars, Fourier Power) that may work well with your setup and environment. Here are some focus runs with each of the new measurements types. You will notice that the solutions are very close to each other.

FWHM




# Of Stars



Fourier Power





Focus Aberration Inspector


Wolfgang Reissenberger introduced the mosaic view well known from PixInsight's AberrationInspector script that builds a mosaic from all image corners and center tiles such that they can be compared directly.

Supernovae are back


The last few releases was missing supernovae data since the online source that was providing the data decided to go offline. Thankfully, Philipp Auersperg-Castell communicated with the fine folks over the Transient Name Server (IAU Supernovae Working Group) to obtain daily supernovae updates and imported them to KStars. All Recent supernovae should be available now in KStars.







Sunday, October 2, 2022

KStars v3.6.1 Released

KStars v3.6.1 is released on 2022.10.02 for MacOS, Linux, and Windows. It's a bi-monthly bugfix release with a couple of exciting features.

Due to major changes in this release, we are releasing it as Early Preview. We hope to release final stable release in a few weeks given the user feedback.

Optical Trains

Ekos introduces a new method to configure equipment by organizing them into Optical Trains. An optical train is a collection of devices arranged in orders from the telescope/lens up until the last imaging element. It includes everything in between including reducers, barlows, OAGs, rotators, filter wheels and so forth.

You will no longer select individual devices in Ekos modules, you simply select which train you want to use. Settings are now saved per-train basis so you can have different settings for each train. This is all done automatically and no need to save or load settings yourself.

For further explanation, check out this YouTube tutorial


Dark Guiding


Sophie Taylor is a new contributor to KStars and a highly talented scientific developer. She is a PhD student and has contributed a new internal guider feature: Dark guiding.

One of the primary benefits of the GPG guiding system is the ability to predict the behavior of the mount at any point in time; not just when guide camera images are received. Dark guiding introduces a rapid control loop that occurs several times per guide exposure, to correct for the predicted error. This way, not only can the benefits of long duration guide exposures be taken advantage of (e.g. capturing fainter guide stars), but some of the benefit of short-term exposures too; namely, quicker corrections to the mount.

For example, you can configure 5 seconds guiding exposures with 1 second dark guiding updates. Dark Guiding is an improvement to GPG, and part of the GPG menu in the Guider menu.

Internal Guider

Hy Murveit increased the number of usable MultiStar references. It was limited to 10 previously but now you can increase it as appropriate given the seeing conditions.


State Machines

Wolfgang Reissenberger continues work on dedicated state machines. This is the next step towards dedicated state machines for EKOS. This step contains:

  • Introduction of a dedicated meridian flip state machine encapsulating both the meridian flip state of the mount and the overall state. This state machine is shared between Capture and Mount, which avoids mutual state communication.
  • First functionality regarding the meridian flip is shifted from Capture and Mount to the state machine. Nevertheless, the complex operations are still part of the Capture code and will be addressed in one of the next refactoring steps.

More Fixes & Improvements

Hy Murveit           fix align solver disconnect crash, disable ssolver logging
Hy Murveit           Analyze target distance should be plotted as a property of the last capture.
Wolfgang Reissenberger Problem with guide calibration after meridian flip
Sophie Taylor        Proper support for loading compressed image statistics
Robert Lancaster     Attempting to patch Find Dialog Crash Bug on MacOS
Marius P             guidealgorithms use C++ initialization instead of memset
Hy Murveit           Reduce the resolution in drawing artificial horizon to 1 degree
Hy Murveit           Bugfix--scheduler was ignoring artificial horizon ceiling constraints
alfred herrhausen    Summary Screen layout improvements, Total RMS added
Wolfgang Reissenberger No separate JPLParser creation for check of epoch_mjd, since this causes crashes
Jasem Mutlaq         Add support for DSLR lenses. User can select either scope or lens in equipment
Hy Murveit           Fix bug where deprecated XML caused extra sequence jobs
Hy Murveit           PAA: use the index and healpix of the 3rd PAA calibration image at the start of the refresh phase.
Wolfgang Reissenberger State machines for meridian flip and Capture
Wolfgang Reissenberger Bugfix for restarting a paused capture sequence after a meridian flip
Hy Murveit           Call checkCamera before loading a sequenceQueue in case UI has not yet been updated.
Wolfgang Reissenberger Handling attempts sending an RPC call if no connection established
Hy Murveit           Do not draw star circles when printing HFRs
Jasem Mutlaq         Warn users if one or more devices fail to connect

Saturday, July 30, 2022

KStars v3.6.0 Released

KStars v3.6.0 is released on 2022.07.30 for MacOS, Linux, and Windows. It's a bi-monthly bugfix release with a couple of exciting features.

Linear 1 Pass Algorithm

John Evans contributed a new Focus algorithm: The Linear 1 Pass Algorithm. When using this algorithm, Ekos initially performs like the Linear algorithm in establishing the first pass V-Curve and fitting a curve to it to find the solution. Then, however, it moves directly to the calculated minimum. Key features include:

  • The algorithm compensates for focuser backlash, providing that backlash is consistent.

  • The algorithm is fast, taking 1 pass to identify optimum focus.

  • The algorithm uses more sophisticated curve fitting to pinpoint the optimum focus position.

  • The algorithm is highly configurable with user control over many parameters like step size and number of steps.




Early tests by various users shows very promising and stable results

Polar-alignment V3


Hy Murveit introduced a new Polar Alignment method based of plate solving. The original polar-alignment error measurement scheme has not changed. The user interface has changed slightly--different messages and a new LED display to indicate progress.

The original polar-alignment refresh/correction method still exists (if you choose the MoveStar or MoveStar & Cal Err refresh methods).

A new polar-alignment refresh/correction method is provided called PlateSolve. It allows for corrections of larger polar-misalignment in a single pass, does not depend on the image display, and may be more reliable if your plate solving is working well.

A new alternative to MoveStar is the PlateSolve method. This can polar align mounts with larger alignment errors in a single procedure. A similar triangle is displayed on the image display, but it is not central to this scheme. 


Rather the user should concentrate on the Updated Error line at the bottom of the display, and attempt to zero the Altitude and Azimuth errors. Also, arrows display the direction the mount needs to move to reduce error.

The method works by plate-solving images as they are captured, and then estimating the user's knob-adjustments from the plate-solve solutions. Note that, since knobs may be moved during exposures, some images may have large star trails and plate solves may fail. Be patient and allow the system to capture a clean image before relying on the error estimate. 

Image ROI Statistics


Madhav Prabhu made his first contribution to KStars by adding Region-Of-Interest (ROI) selection in FITS viewer where users may view statistics for a particular region of the image. The stats include average, median, and standard deviation.



You can select from existing probes of varying sizes (50x50, 100x100..etc), or you can simply hold down the Shift key and drag the mouse to create your own rectangle.

Profile Scripts


For complex equipment profile that have inter-dependencies requiring script execution or programmable delays, the new Script Profile edit provides complete control over the driver startup sequence.


You may define a Pre-Delay and Pre-Script before a driver is executed (e.g. script to turn on the observatory electricity), and define a Post driver delay and script if desired. For some drivers like Pegasus Ultimate Power Box, it is often desirable to start this driver before other drivers so that all configuration is loaded.

Geographic Map Update


Ed Lee made his first contribution to KStars by replacing the old geographic map from a new high quality version from NASA. This should play more nicely on larger monitors and high DPI displays.

Misc. Updates


Small but important quality of life improvements to KStars & Ekos.
  • Hy Murveit Show number of clipped pixels on fitsviewer status bar if show-clipping is enabled
  • Akarsh Simha Improve the manual focus dialog for the SkyMap
  • Sophie Taylor Correct nomenclature for Linear1 focus algorithm with "R2" -> "R²", and add a default and minimum value for R² limit
  • Akarsh Simha Further improvements to Add Catalog Object UI, including auto-filling data from text.
  • Sophie Taylor Improve tooltips for GPG expert settings
  • Akarsh Simha Various fixes and improvements related to DSO catalogs and visibility.
  • Akarsh Simha Refactor `DmsBox` widget and improve the Add Catalog Object form.

Thursday, May 26, 2022

KStars v3.5.9 Released

KStars v3.5.9 is released on 2022.05.26 for MacOS, Linux, and Windows. It's a bi-monthly bugfix release with a couple of exciting features.

DSS Offline HiPS

HiPS (Hierarchical Progressive Surveys) is a technology that provides progressive high resolution images of the sky at different zoom levels. KStars fully supports online HiPS where data is downloaded from online servers and cached to display on the Sky Map.


One of the most popular catalogs in KStars is the DSS Colored progressive survey. With v3.5.9, you can now specify directory where the offline DSS catalog is located. You can download the data from various HiPS services online. For best experience, it's recommended to download 3rd, 4th, and 5th (Norder3, Norder4, and Norder5) order directories which would take around 1GB of storage space. You may download further orders (i.e. higher zoom levels) at the expense of more storage space.

The following shows a sample of downloaded order directories, at minimum you need Norder3 folder for this functionality to work.


Revamped Mosaic Planner

New simplified and powerful Mosaic Planner directly integrated in the Sky Map. It greatly benefits from HiPS overlay to make your target framing spot on. Toggle the Mosaic View from the tool bar, and select your equipment and the mosaic configuration. You can also use it as a very simple tool to frame a single 1x1 tile.



Adjust the tile center either by manually specifying the J2000 center or by dragging the tiles across the sky map. Once done, you can command the mount to go to the target and solve. Alternatively, you can proceed to create jobs for the Ekos Scheduler. After the jobs are added, you may start the scheduler at any time to plan the mosaic session accordingly.

Refocus After Meridian Flip


Dušan Poizl
 added the ability to refocus after a meridian flip is complete. This is very useful for some optical train setups where the focuser might shift duration the flip.

New Index Files


Robert Lancaster added the new 5200 astrometry index files. The difference is just which star surveys were used to build which indexes. The 4200 Series was made from 2MASS and covers all the image scales. The 4100 series was made from Tycho2 but only covers wide image scales. The 5200 series was just recently added, was made by blending Tycho2 and Gaia, and complements the 4100 series to give it the smaller scales.

Internal Plumbing: Introducing Device Adapter

Wolfgang Reissenberger continues his outstanding work refactoring Ekos state machine by introducing the device adapter. Next step extracting state handling from Capture into a dedicated state machine. In this step devices are managed by a dedicated device adapter (successor of the command processor). With this refactoring it is no longer necessary to route device events from Capture through SequenceJob to the state machine, the device adapter sends the events directly to the state machine.

Capture Progress face lift


Wolfgang Reissenberger streamlined the capture progress section of Capture:

  • Remaining time for frame and sequence displayed as hh:mm:ss
  • Display of average download time (in calculation, all download times are taken into account and not only those > 1)
  • New status widget with a color LED displaying the capture status (and no longer using the seconds text for this)
  • Using the same widget on the Master tab 

Greedy Scheduler Speeds up


Fans of Greedy Scheduler rejoice! Hy Murveit made significant speedups to the Greedy Scheduler, especially for very large scheduler. 


Friday, March 18, 2022

KStars v3.5.8 Released

 KStars v3.5.8 is released on 2022.03.19 for MacOS, Linux, and Windows. This is a mostly bugfix release with a couple of exciting new features.

Faster plate-solving with StellarSolver 2.2

Robert Lancaster released StellarSolver 2.2 with significant improvements. StellarSolver is the library used by Ekos for star extraction and plate-solving. It is now so fast that sub-second plate-solves are quite common. Here are some highlights:

  • Eliminating the last external files: solved and cancel files from the internal solver
  • Making an interface between the C++ and astrometry.net logging that works well to fix logging issues
  • Making StellarSolver easier to use in a blocking way, including using it as a C++ temporary object
  • Making the convolution filter easier to generate and use as well as adding more types of filters
  • Significantly reducing the astrometry code needed for the solver
  • Adding support for a new external solver: the Watney Astrometry Solver
  • Improving the abort code so that it shuts down faster
  • Adding a number of demos to show how to use StellarSolver
  • Adding healpix and index series hints so that you can speed up solves in localized areas based on former solves
  • Making it possible to run two stellar solvers simultaneously
  • Adding some new options for star extraction
  • Making API simplifications
  • Fixing some memory leaks and other warnings on various operating systems
  • Removing some unused code

Greed is Eternal (10th Rule of Acquisition)

Hy Murveit introduced a new type of scheduling algorithm which he dubbed as the Greedy algorithm.

In both the Classic and Greedy schedulers, jobs are listed as "earlier on the job list means higher priority". With the Classic scheduler, priority is of the highest importance. It will not schedule a lower priority job until the higher priority job is done, even if that job takes several nights, and even if the higher-priority job cannot run at the current time, e.g. due to altitude/terrain/etc.  In contrast to this, the Greedy scheduler attempts to keep Ekos busy as much as possible. Although it gives priority to earlier-listed-jobs, it will run later-listed ones if the earlier one can't run. Of course, the lower priority job will get preempted when the high-priority job can finally start to run.

If you start the scheduler with only one job, there is no difference between Classic and Greedy scheduling. However, if you have more than one job, depending on your setup, there is a good chance that the Greedy scheduler will schedule more imaging time than Classic.

Here's a recommended way to try this out. Let's assume you have a main target for which you want to collect as many images as possible. Set that target up as first on the scheduler list, have it start ASAP and set its completion condition as "Repeat Until Terminated". It should be scheduled to image whenever possible (even across multiple nights) until you turn off the scheduler or Ekos. Add several other targets as well, ones that you might also be interested in, and that can be imaged in other parts of the night. Make sure those are listed below the primary target on the jobs list. Set those the same way (ASAP/RepeatUntilTerminated). They will be scheduled to run whenever the primary target can't be imaged.  Of course, make sure the twilight restriction is set for all your targets. Altitude and terrain restrictions are important as well--if Ekos doesn't know that there's a tree or house blocking your target, it can't be smart about scheduling it.

Since jobs will be preempted/restarted more often with Greedy than with Classic, the "Remember Job Progress" option is now more important.  You can find this setting in the KStars Setting Menu --> Ekos --> Scheduler --> "Remember job progress".  This option only works if you are storing images on the same machine where the scheduler is running. You should enable "Remember Job Progress" with this scheduler to get the most benefit, assuming your capture sequences use multiple/different filters. If your capture sequences are just used with one type of filter/or OSC then it probably doesn't matter. (RememberJobProgress has also be updated a bit, and should now do a better job of picking up where the last attempt finished.)

The screenshot above shows the scheduler running with this new scheme. Note that there are 4 jobs, and they are listed in order of precedence. You can see the next start times for each of the jobs on the scheduler table, and the highlighted (4th) job is the one currently running. A schedule for the next 48 hours is also printed in the log window at the bottom.


The scheduler is (minimally) integrated with Analyze. During testing I let the Greedy Scheduler run for 3 days. Here's a screenshot of the Analyze timeline for the 3 days. (Note some timelines didn't display well because of screen resolution.) The top line is the new scheduler timeline in Analyze. The different colors correspond to different jobs that were run, each one keeping its same color on different stars. You can see the different jobs ran as expected each night.

Support for Capture Format

New in this release is support for INDI v1.9.5 Capture Format selection. This was previously explicitly selected by the user in INDI Control Panel but is now available in the Sequence settings in the capture module.



Full change log

907bc629b 2022-03-15 Jasem Mutlaq         Replace repeated message with just a label update
fead0a8d4 2022-03-15 Wolfgang Reissenberger Avoid in-sequence-counter countdown when already zero
b10c443f7 2022-03-14 Robert Lancaster     Forgot Prefix path for DriverSupport
0a552226f 2022-03-14 Jasem Mutlaq         Only emit newCoord when mount is connected
e02adcf48 2022-03-14 Wolfgang Reissenberger Bugfix initial guide deviation set blocks post MF calibration
6853eec35 2022-03-14 Jasem Mutlaq         If telescope device is not defined or connected, do not process coordinates
1640c7a2b 2022-03-13 Robert Lancaster     Moving KStars Mac INDI copy instructions to cmakelists
56cd0535f 2022-03-13 Jasem Mutlaq         Add an exact parameter to findByName so that catalog component can customize its search behavior globally
64b9ec0c3 2022-03-13 Akarsh Simha         Fix  CatalogsComponent::findByName() to find only 1 exact match
0e2a3ab07 2022-03-13 Akarsh Simha         Fixes and some improvements to the "Add catalog object" UI
e22bfc6ed 2022-03-11 Akarsh Simha         Fix truncation of observing list upon adding to it from popup menu
993692eaa 2022-03-13 Akarsh Simha         Make some usability improvements, especially in the Find Dialog
9245f9b75 2022-03-12 Hy Murveit           reduce log spam
e23a7ab8c 2022-03-12 Jasem Mutlaq         Various memory leaks. Still there is definitely memory leaks when performing...
dabeeec3d 2022-03-11 Jasem Mutlaq         Fix compile on 18.04
f34bcb7d9 2022-03-11 Jasem Mutlaq         Disable event-driven setScopeStatus from INDI::Telescope since it sets m_Status which prevents the polling method from working
5033fba01 2022-03-11 Jasem Mutlaq         Fix bug that caused PAA to fail if a driver send HORIZONTAL_COORD as well
836f47c89 2022-03-11 Jasem Mutlaq         Improve Look n Feel tab
23bb6cbfd 2022-03-10 Robert Lancaster     updating to StellarSolver 2.1
f184fd378 2022-03-09 Nicolas Fella        Don't find KAuth
96ed6a6d7 2022-03-10 Jasem Mutlaq         Fix compile on Windows
755c34e96 2022-03-09 Hy Murveit           Make the test_ekos_scheduler_ops tests more stable.
860301309 2022-03-09 Jasem Mutlaq         Fix typo
abec3e796 2022-03-09 Jasem Mutlaq         Extra check
e4685108d 2022-03-09 Jasem Mutlaq         vShapeSolution should be reset in stop
d38a27b17 2022-03-08 Akarsh Simha         Whenever stars have Henry Draper numbers, make them show up as their names
21635a353 2022-03-08 Robert Lancaster     Fix memory leak
4c71e6262 2022-03-07 Jasem Mutlaq         No need to explicitly load the dark frame
50c523bdc 2022-03-07 Jasem Mutlaq         Clear pointers on disconnect
d973ffec2 2022-03-06 Robert Lancaster     Making it faster by reusing stellarsolver.
4ea60c7fe 2022-03-07 Jasem Mutlaq         Capture encoding is now fully implemented in the code along with capture format. Fix issue when setting temperature and filters in non-light frames
e1a1f7c33 2022-03-06 Jasem Mutlaq         Make it compile on 18.04
8e7fd183f 2022-03-06 Hy Murveit           change scheduler colors for analyze
146577ca6 2022-03-06 Robert Lancaster     Fixing a KHelpClient bug on MacOS
3b39d06b4 2022-03-06 Philip Mair          Fixed restoring of bin settings
134d3d8d1 2022-03-06 Yuri Chornoivan      Fix minor typos
52e0e4d1e 2022-03-06 Jasem Mutlaq         Improve tooltip and simplify UI
961575df9 2022-03-05 Robert Lancaster     Improving Tooltips
d2724f80c 2022-03-05 Jasem Mutlaq         Clear sequence array on clear sequence
24d0806b5 2022-03-02 Akarsh Simha         Fix bug due to addition of new sky culture by saving config differently
ec9448cbd 2022-03-05 Hy Murveit           New Greedy Algorithm for Scheduler
a39d48e8e 2022-03-04 Mattia Procopio      Allow to provide a custom URL to download index data from
3e5b922c1 2022-03-04 Robert Lancaster     Fixing some issues found by Jussi Saarvirta
56a377826 2022-03-03 Hy Murveit           fix maxGuidestarsHFR issue, fix test, increase max dither size
cf5db0400 2022-03-02 Robert Lancaster     Updating KStars to support StellarSolver 2.0
9f20fe9e7 2022-03-02 Jasem Mutlaq         Make minimum exposure value 1 for refresh phase
831dc2890 2022-03-02 Hy Murveit           Allow older capture sequence files
cc7225978 2022-03-01 Salman Naheed        Ekoslive dark library
bfa23a060 2022-02-28 Nate Graham          Add Release tags to AppStream metadata file
06d6c0460 2022-02-26 Nate Graham          Make default color scheme default
8fe6068e0 2022-02-24 Salman Naheed        Ekoslive dark library
5dbb32de0 2022-02-23 Hy Murveit           Unconstrain Ekos' main vertical slider
df71cbf3e 2022-02-22 Salman Naheed        Ekoslive dark library
cd1cb58cf 2022-02-22 Wolfgang Reissenberger Timer based update of mount coordinates
8c457d62a 2022-02-22 Jasem Mutlaq         Add support for INDI capture format
2de2a7d0b 2022-02-21 Akarsh Simha         Adding popular asterisms as a sky culture
bbe08f422 2022-02-21 Salman Naheed        Ekoslive dark library
46d5fd47b 2022-02-21 Hy Murveit           Change gpg period spinbox from int to double
5a04cdbaa 2022-02-19 Wolfgang Reissenberger Bugfix selecting guide deviation when guiding is not running
9071245d7 2022-02-17 Wolfgang Reissenberger Bugfix darks jobstate and #158
e23f1c33d 2022-02-16 Hy Murveit           Small bug fixes: calibration not always shown. MultiStar graphics offset by a frame.
5bd737613 2022-02-16 Jasem Mutlaq         Fix meridian flip message, should be KSMessageBox and not newLog
628cf1241 2022-02-15 Yuri Chornoivan      Fix minor typo
99410cd62 2022-02-15 Hy Murveit           Make sure SolverUtils doesn't delete a running StellarSolver
c3bd4bd40 2022-02-14 Wolfgang Reissenberger State machine for capture control | preparation phase
f60d72d9b 2022-02-14 Salman Naheed        Ekoslive dark library
f103653f4 2022-02-14 Jasem Mutlaq         Disable stellarsolver logging
59f0a1301 2022-02-14 Wolfgang Reissenberger Display of filter name corrected
22e0ec011 2022-02-14 Jasem Mutlaq         More refinement to the polynomial method. Discard bad data points.
d606ffd33 2022-02-14 Jasem Mutlaq         Check target position versus current position every N frames
76e733a3e 2022-02-13 Robert Lancaster     removing setLoadWCS in another spot
80eabfa07 2022-02-12 Jasem Mutlaq         Change default guide exposure to 2 seconds
0fd94a4a5 2022-02-11 Hy Murveit           guider bugfix, firstframe improperly set
dd1c4becb 2022-02-10 Jasem Mutlaq         Allow send module frame to send from dark library
be665df18 2022-02-10 Hy Murveit           Check position after captures
ce83f275f 2022-02-08 Jasem Mutlaq         INDI drivers sync
d9e30a0fe 2022-02-08 Jasem Mutlaq         Remove check for parking time over 12 hours since it is acceptable if within 24 hours
6978d77d9 2022-02-08 Robert Lancaster     Removing WCS Coord disabling line
1ba2464c3 2022-02-07 Hy Murveit           Changes needed for upcoming Indi AstroPhysics driver
e40d833de 2022-02-05 Hy Murveit           guider cleanup and bugfix
b831c904e 2022-02-05 Hy Murveit           Add developer options tab, add option to save internal guider images.
62a551549 2022-01-31 Jasem Mutlaq         Catalog search should not be limited so that we can check for multiple identifiers
9305fe2b2 2022-01-31 Hy Murveit           Analyze: update graphics plot for completed capture or focus if latest is checked
3a778dc16 2022-01-27 Jasem Mutlaq         Increase test timeout
1c8e607e9 2022-01-27 Hy Murveit           Adjust dbus interfaces and paths to allow test_ekos_scheduler_ops tests to...
0515257a7 2022-01-27 Hy Murveit           Min #detections to initialize SEP MultiStar
6a5a96382 2022-01-26 Hy Murveit           add missing signal to analyze for focus restarts
0f2a4c951 2022-01-26 Jasem Mutlaq         Fix wrong arg
55b462887 2022-01-25 Toni Schriber        Standardized dialog for guider 'Control Parameters' &'Other Settings'
35236a51c 2022-01-23 Jasem Mutlaq         Check if regionItem is null
b3114467b 2022-01-23 Jasem Mutlaq         Fix issue in treating calibration frames since we used to only check a single channel whereas we were supposed to check all three
8808d3309 2022-01-23 Jasem Mutlaq         Add else for multiple channels
1efbbc7cc 2022-01-22 Robert Lancaster     Adding translations to Mac prebuild
6dafdc27b 2022-01-21 Jasem Mutlaq         Fix bug where filter is sometimes not set in camera or dustcap drivers unless it is set explicitly by the user by selecting it from the dropdown. No..
003a29faa 2022-01-21 Jasem Mutlaq         Fix issue when saving dark flats with sub-second exposures as we need to update the full prefix if duration was selected
0032701b6 2022-01-21 Jasem Mutlaq         Invalidate download timer to avoid bogus reports
18174ad1c 2022-01-21 Jasem Mutlaq         Reduce threashold to 1000ms
ff1ac9cfe 2022-01-21 Salman Naheed        Add generate dark flats to EkosLive
0ecfd135b 2022-01-20 Jasem Mutlaq         Make it so it is possible to create a 1x1 mosaic for purposes of framing
0f5c633c5 2022-01-20 Jasem Mutlaq         Update sequence prefix for ADU-calculated flat frames since full prefix can...
36e47a522 2022-01-20 Jasem Mutlaq         Set Focus module to the filter of the first light job in the sequence so that...
7c0807ad4 2022-01-19 Jasem Mutlaq         Starting KStars v3.5.8 development cycle
06277101e 2022-01-18 Jasem Mutlaq         INDI drivers sync
2e8345b8f 2022-01-17 Jasem Mutlaq         Improve message when failing to establish connection for remote devices
6f94491d3 2022-01-17 Jasem Mutlaq         Move options before ekoslive