Flats are the chore of automation: they must match tonight’s filters, camera settings, and rotator angles – which you only know once the night is over. Astro PM tracks all of it while imaging and takes exactly the right flats at session end, filing them with each target’s lights.
How Tracking Works #
Every successful light frame records a combination: target + filter + rotation + gain + offset + binning, including the rotator’s mechanical angle at capture time (sky angles mean nothing once the scope is parked). The list is deduplicated and persisted, so even a mid-night NINA restart does not lose it. The Flat Handling section of the container shows tonight’s combinations as they accumulate.
The Three Instruction Boxes #
Expand Flat Handling at the bottom of the Astro PM Instructions container:
- Before Flats (runs once) – park the mount, close the flat panel cover, light on.
- For Each Target + Filter + Rotation (repeats per combination) – your flat exposure instruction, e.g. Trained Flat Exposure with the amount set to how many flats you want per combination (20 is typical).
- After Flats (runs once) – light off, open cover.
A fresh container comes pre-seeded with a Trained Flat Exposure set to 20.
What Happens at Session Complete #
After the last block, Astro PM runs your Before Flats box, then walks the combinations grouped by rotation: move the rotator to the recorded mechanical angle once per group, switch to each filter, and run the middle box. For any Trained Flat Exposure in the box, the plugin writes the combination’s filter, gain, offset, and binning directly into the instruction – the trained-flat table lookup always matches the lights, with zero per-filter configuration from you. Finally the After Flats box runs, and the night ends normally.
Flats are saved under each target’s name, so with the usual NINA file pattern they land in the target’s folder tree in a FLAT subfolder, right next to the lights they calibrate.
Turning It On and Off #
One switch, three places to flip it: the Enable Flats Sequence checkbox in the desktop simulator’s settings (recommended – it syncs through the cloud per rig), the plugin’s Simulator panel, or the Flat Handling header in the sequencer. They are all the same setting; the desktop value wins at each schedule build. Default is off.