Tony Gondola avatar
I'm making the switch to mono imaging and realized that the sequences needed just got a lot more complicated. I'm looking for an example that uses filter offsets and does a center after drift command loop during each filter exposure. This would be for LRGB.
Well Written
Francesco Meschia avatar
This is what I do, in pseudo-code. You may want to add other triggers as needed (e.g., autofocus after a certain time or after HFR change)

Initial setup (slew, cool camera, autofocus, etc.)
Repeat until desired:
    Triggers:
        - Meridian Flip
        - Center After Drift
    L:
        - Switch filter to L (includes focus change if you use filter offsets)
        - Repeat for 6 times:
            - Move focuser by temperature
            - Take X/2-minute exposure
    R:
        - Switch filter to R (includes focus change if you use filter offsets)
        - Move focuser by temperature
        - Take X-minute exposure
    G:
        - Switch filter to G (includes focus change if you use filter offsets)
        - Move focuser by temperature
        - Take X-minute exposure
    B:
        - Switch filter to B (includes focus change if you use filter offsets)
        - Move focuser by temperature
        - Take X-minute exposure
    Dither
Helpful
Brian Fowler avatar
This video is a few years old, but it is still applicable and is what I base all of my sequences from.  

https://youtu.be/Gcekn0lw2IY?si=5h5O3Bb-w3X4WDSx
Georg G Albrecht avatar
I am using TS in NINA but if you are using the advanced sequence, set "Center after Drift" in the trigger above your imaging instructions with the number of each taken lights per filter; if you take 3 subs per L/R/G/B, set it to evaluate every 3 images. For the imaging, use smart exposures and set the amount per filter, set the dither to Zero and below the 4 exposure lines, add the dither command so that the sequence runs through all 4 filters, then dithers once before returning back to the first filter.
Of course you may need to add further information in the trigger section at your liking, such as MF, AF etc.  - Cheers and good luck
Helpful
Paul Puntin avatar
PatriotAstro has some sequencer templates that you can download and customise. They will do what you require as regards filter offsets and centre after drift https://patriotastro.com/nina-advanced-sequence-downloads/
Helpful Concise
Christian Bennich avatar
+1 for the Patriot Astro templates 💪
Linwood Ferguson avatar
Do you guide?   If not, ignore this posting.

One thing to consider if you want to improve efficiency is whether your rig can handle focus offsets while continuing to guide.  In other words, if you are guiding and imaging red, then switch filters to blue, can you continue guiding while that occurs? 

In most cases the answer is "no", so you need to stop and restart guiding.  Why "no"?  Because a filter offset (especially if backlash is involved) moves the focuser, and most focusers are not perfect in staying precisely aligned during movement – they will shift the field of view an arc second or a few from that motion.  Which will either cause guiding to loose the star, or more likely to know it moved and start chasing it.  You can partially offset this with some kind of delay, but in reality what you need is a "settle" before you start the next exposure or the impact of chasing the guide star causes a star trail. 

So for most cases you want to build a sequence like this: 

- Shoot 20 red exposures, dithering every 2
- stop guiding
- Change filter
- Start guiding
- Shoot 20 Blue exposures, dithering every 2
- etc
- loop

Note that NINA can handle the stop/start guiding automatically. 

If you have something like a nitecrawler (which are super accurate) and find that changing filers does NOT cause a guide star shift, then it's more efficient to do this:

- Shoot 2 red
- Shoot 2 green
- Shoot 2 blue
- Shoot 2 Luminance 
- Dither
- loop

And NOT have NINA stop/start guiding for filter changes. 

This never stops guiding, and moves the dither to every 8 instead of every 2 (because you don't need to dither between colors).  It's very efficient but only if your rig can do it.  Most cannot.

The recenter after drift is just a trigger somewhere after the  DSO target, nothing special.  I'd also add restart guiding as a trigger. 

I didn't follow any of the first postings temperature change stuff.  I recommend using multiple auto-focus triggers, including large temperature change (if you have a probe), after time, and after HFR change, and maybe just in case every  90 minutes or some such. 

Linwood
Helpful Insightful Engaging
Francesco Meschia avatar
Linwood Ferguson:
You can partially offset this with some kind of delay, but in reality what you need is a "settle" before you start the next exposure or the impact of chasing the guide star causes a star trail.

+1 on this! Stefan Berg's "PHD2 Tools" plug-in has introduced a "Settle Before Exposure" trigger precisely for this scenario.
Well Written
Tony Gondola avatar
Excellent, just the info I'm looking for. Taking everything together, here's what I've come up with:

Beginning Sequence:
     
wait for time
unpark scope
cool camera

Main Instructions:

set target
slew and center
start guiding

Imaging Loop:  (note, repeat for each filter)

Triggers - meridian flip, center after drift, restore guiding, AF after HFR increase
Loop Conditions - loop for iterations
Instructions - smart exposure

End Sequence:
park scope
warm camera


The repeated imaging loop takes a single smart exposure checks the triggers and the iterations and makes the next exposure an so on. Once that imaging loop is done it goes to the next with the only change being the filter.
Linwood Ferguson avatar
Francesco Meschia:
Linwood Ferguson:
You can partially offset this with some kind of delay, but in reality what you need is a "settle" before you start the next exposure or the impact of chasing the guide star causes a star trail.

+1 on this! Stefan Berg's "PHD2 Tools" plug-in has introduced a "Settle Before Exposure" trigger precisely for this scenario.

I saw that and then promptly forgot about it.  I need to put that in.

I was so happy to see the exposure time setting, it's nice to be able to do this in a setup routine to get calibrated.   Makes it go SOOO Much faster (well, approximately 4 times): 

set exposure = 1s
start guiding, force calibration
stop guiding
set exposure = 4s (or whatever you usually use) 

LOTS of good stuff in plugins; hard to remember all the good things.
Tony Gondola avatar
Linwood Ferguson:
Do you guide?   If not, ignore this posting.

One thing to consider if you want to improve efficiency is whether your rig can handle focus offsets while continuing to guide.  In other words, if you are guiding and imaging red, then switch filters to blue, can you continue guiding while that occurs? 

In most cases the answer is "no", so you need to stop and restart guiding.  Why "no"?  Because a filter offset (especially if backlash is involved) moves the focuser, and most focusers are not perfect in staying precisely aligned during movement -- they will shift the field of view an arc second or a few from that motion.  Which will either cause guiding to loose the star, or more likely to know it moved and start chasing it.  You can partially offset this with some kind of delay, but in reality what you need is a "settle" before you start the next exposure or the impact of chasing the guide star causes a star trail. 

So for most cases you want to build a sequence like this: 

- Shoot 20 red exposures, dithering every 2
- stop guiding
- Change filter
- Start guiding
- Shoot 20 Blue exposures, dithering every 2
- etc
- loop

Note that NINA can handle the stop/start guiding automatically. 

If you have something like a nitecrawler (which are super accurate) and find that changing filers does NOT cause a guide star shift, then it's more efficient to do this:

- Shoot 2 red
- Shoot 2 green
- Shoot 2 blue
- Shoot 2 Luminance 
- Dither
- loop

And NOT have NINA stop/start guiding for filter changes. 

This never stops guiding, and moves the dither to every 8 instead of every 2 (because you don't need to dither between colors).  It's very efficient but only if your rig can do it.  Most cannot.

The recenter after drift is just a trigger somewhere after the  DSO target, nothing special.  I'd also add restart guiding as a trigger. 

I didn't follow any of the first postings temperature change stuff.  I recommend using multiple auto-focus triggers, including large temperature change (if you have a probe), after time, and after HFR change, and maybe just in case every  90 minutes or some such. 

Linwood

I do guide but with a separate guide scope so I don't think the above would apply.
Linwood Ferguson avatar
Tony Gondola:
The repeated imaging loop takes a single smart exposure checks the triggers and the iterations and makes the next exposure an so on. Once that imaging loop is done it goes to the next with the only change being the filter.


While there's nothing wrong with this, it's more complicated than you may need.  THe smart exposure is itself a built in loop.   Unless you are doing something special in those, you can just do this inside one loop:

Smart exposure X for red (dither every Y)
smart exposure X for green (dither every Y)
etc. 

At least I didn't notice anything special you were doing to have a loop for each filter.
Linwood Ferguson avatar
Tony Gondola:
I do guide but with a separate guide scope so I don't think the above would apply.

You are absolutely correct.  I've been using an OAG so long I tend to forget that there is an alternative (I even own a nice one, sitting on my shelf). 

Yes, you can just keep guiding, of course.
Well Written Respectful
Martin Junius avatar
Hi Tony,
here the standard LRGB *target* sequence (for open/globular clusters) we're using at our remote telescopes:
https://github.com/phtnnz/astro/blob/main/NINA-Templates-IAS-Common/Target%20LRGB%20stars%20(Discord).template.json
Tony Gondola avatar
Linwood Ferguson:
Tony Gondola:
The repeated imaging loop takes a single smart exposure checks the triggers and the iterations and makes the next exposure an so on. Once that imaging loop is done it goes to the next with the only change being the filter.


While there's nothing wrong with this, it's more complicated than you may need.  THe smart exposure is itself a built in loop.   Unless you are doing something special in those, you can just do this inside one loop:

Smart exposure X for red (dither every Y)
smart exposure X for green (dither every Y)
etc. 

At least I didn't notice anything special you were doing to have a loop for each filter.

Check me on this but it's my understanding that I can't check for triggers while a smart exposure is in progress. In other words, if I start a smart exposure that's set for 120 exposures the triggers won't be checked until after the 120 exposures are complete. That's why I'm setting each smart exposure to one, so that triggers are checked after each each single exposure.
Linwood Ferguson avatar
Tony Gondola:
Check me on this but it's my understanding that I can't check for triggers while a smart exposure is in progress. In other words, if I start a smart exposure that's set for 120 exposures the triggers won't be checked until after the 120 exposures are complete. That's why I'm setting each smart exposure to one, so that triggers are checked after each each single exposure.


No, the smart exposure acts like a nested loop, so the triggers will be checked after each individual exposure (and the loop conditions are checked in real time, e.g. if a timer expires or an unsafe condition (if you use that trigger) occurs in the middle of an exposure the exposure is aborted.

Triggers do not only affect the loop they are in, but any loop included inside the trigger's loop.
Helpful Concise
Tony Gondola avatar
Linwood Ferguson:
Tony Gondola:
Check me on this but it's my understanding that I can't check for triggers while a smart exposure is in progress. In other words, if I start a smart exposure that's set for 120 exposures the triggers won't be checked until after the 120 exposures are complete. That's why I'm setting each smart exposure to one, so that triggers are checked after each each single exposure.


No, the smart exposure acts like a nested loop, so the triggers will be checked after each individual exposure (and the loop conditions are checked in real time, e.g. if a timer expires or an unsafe condition (if you use that trigger) occurs in the middle of an exposure the exposure is aborted.

Triggers do not only affect the loop they are in, but any loop included inside the trigger's loop.

Ahhhhh, that helps me a bunch!
Médéric Hébert avatar
Like others have mentionned before, I highly recommend PatriotAstro sequences as a starting point.
He even include instruction on how to set it up
Tony Gondola avatar
Tony Gondola:
Linwood Ferguson:
Tony Gondola:
Check me on this but it's my understanding that I can't check for triggers while a smart exposure is in progress. In other words, if I start a smart exposure that's set for 120 exposures the triggers won't be checked until after the 120 exposures are complete. That's why I'm setting each smart exposure to one, so that triggers are checked after each each single exposure.


No, the smart exposure acts like a nested loop, so the triggers will be checked after each individual exposure (and the loop conditions are checked in real time, e.g. if a timer expires or an unsafe condition (if you use that trigger) occurs in the middle of an exposure the exposure is aborted.

Triggers do not only affect the loop they are in, but any loop included inside the trigger's loop.

Ahhhhh, that helps me a bunch!

So in that case I can simplify the imaging loop it to this:

Imaging Loop:

Triggers - meridian flip, center after drift, restore guiding

Loop Conditions - none

smart exposure - xxx red
smart exposure - xxx green
smart exposure - xxx blue
smart exposure - xxx lum


Each smart exposure will run for a specified number of exposures and will check the triggers between each exposure?
Linwood Ferguson avatar
Tony Gondola:
Each smart exposure will run for a specified number of exposures and will check the triggers between each exposure?


Yes. 

Don't forget dithering either on each or as a separate trigger (I think there is one). 

I'd recommend time constraints on the loop of some sort, either for dark conditions, target altitude or both. 

I'd also recommend focus triggers, such as after-hfr, after-time, after-temp-change or some combination.

If you have a safety monitor that would be a loop condition as well to loop-while-safe.
Tony Gondola avatar
Yes, I left those things out for the sake of simplicity, will be added as needed now that I understand the general concept.
Well Written Respectful
ValeryL avatar

Tony Gondola · Jun 27, 2025, 08:17 PM

Linwood Ferguson:

Tony Gondola:
Check me on this but it's my understanding that I can't check for triggers while a smart exposure is in progress. In other words, if I start a smart exposure that's set for 120 exposures the triggers won't be checked until after the 120 exposures are complete. That's why I'm setting each smart exposure to one, so that triggers are checked after each each single exposure.



No, the smart exposure acts like a nested loop, so the triggers will be checked after each individual exposure (and the loop conditions are checked in real time, e.g. if a timer expires or an unsafe condition (if you use that trigger) occurs in the middle of an exposure the exposure is aborted.

Triggers do not only affect the loop they are in, but any loop included inside the trigger's loop.


Ahhhhh, that helps me a bunch!

Hello,

Indeed triggers will be check in between smart exposures but using a loop of smart exposures (like the example below) has other advantages, it means all you exposures will be averaged regarding imaging condition Along the night (averaged LP, altitude, seeing). But if you do like below, you really want to use filter offset so there is no need to autofocus at filter change…

Loop until time/below horizon/…

3 smart exposure of lum

1 smart exposure of r

1 smart exposure of g

1 smart exposure of b

Keith Mombourquette avatar

ValeryL · Sep 3, 2025, 01:42 PM

Tony Gondola · Jun 27, 2025, 08:17 PM

Linwood Ferguson:

Tony Gondola:
Check me on this but it's my understanding that I can't check for triggers while a smart exposure is in progress. In other words, if I start a smart exposure that's set for 120 exposures the triggers won't be checked until after the 120 exposures are complete. That's why I'm setting each smart exposure to one, so that triggers are checked after each each single exposure.



No, the smart exposure acts like a nested loop, so the triggers will be checked after each individual exposure (and the loop conditions are checked in real time, e.g. if a timer expires or an unsafe condition (if you use that trigger) occurs in the middle of an exposure the exposure is aborted.

Triggers do not only affect the loop they are in, but any loop included inside the trigger's loop.


Ahhhhh, that helps me a bunch!

Hello,

Indeed triggers will be check in between smart exposures but using a loop of smart exposures (like the example below) has other advantages, it means all you exposures will be averaged regarding imaging condition Along the night (averaged LP, altitude, seeing). But if you do like below, you really want to use filter offset so there is no need to autofocus at filter change…

Loop until time/below horizon/…

3 smart exposure of lum

1 smart exposure of r

1 smart exposure of g

1 smart exposure of b

The other advantage to this is you can dither after each sequence and all of your data is well dithered.

ValeryL avatar

Keith Mombourquette · Sep 6, 2025, 12:11 AM

ValeryL · Sep 3, 2025, 01:42 PM

Tony Gondola · Jun 27, 2025, 08:17 PM

Linwood Ferguson:

Tony Gondola:
Check me on this but it's my understanding that I can't check for triggers while a smart exposure is in progress. In other words, if I start a smart exposure that's set for 120 exposures the triggers won't be checked until after the 120 exposures are complete. That's why I'm setting each smart exposure to one, so that triggers are checked after each each single exposure.



No, the smart exposure acts like a nested loop, so the triggers will be checked after each individual exposure (and the loop conditions are checked in real time, e.g. if a timer expires or an unsafe condition (if you use that trigger) occurs in the middle of an exposure the exposure is aborted.

Triggers do not only affect the loop they are in, but any loop included inside the trigger's loop.


Ahhhhh, that helps me a bunch!

Hello,

Indeed triggers will be check in between smart exposures but using a loop of smart exposures (like the example below) has other advantages, it means all you exposures will be averaged regarding imaging condition Along the night (averaged LP, altitude, seeing). But if you do like below, you really want to use filter offset so there is no need to autofocus at filter change…

Loop until time/below horizon/…

3 smart exposure of lum

1 smart exposure of r

1 smart exposure of g

1 smart exposure of b

The other advantage to this is you can dither after each sequence and all of your data is well dithered.

Yes!

And for LRGB, if you want more L than the other RGB channel, i do as follow :

Loop untill….

3 smart exposures of lum (Dither every frames)

1 smart exposure of r (no dither)

1 smart exposure of g (no dither)

1 smart exposure of b (no dither)

Dither