Changelog¶
1.4.1 - February 21, 2025¶
✨ Improved¶
Ensure that the APOGEE cold shutter cannot be commanded at LCO.
Turn APOGEE LEDs on/off during morning calibrations.
🔧 Fixed¶
Consider a field RM if it begins with
dark_monitordark_rm(as opposed to requiring an exact match).
1.4.0 - January 22, 2025¶
✨ Improved¶
Add
enabled_instrumentsoption to the expose macro to allow for enabling/disabling instruments.
⚙️ Engineering¶
Use
uvfor project management and workflows.
1.3.5 - June 15, 2024¶
🔧 Fixed¶
#24 Allow the
exposemacro to run ifgoto-fieldis running but has already reached the acquire or guide stages.
1.3.4 - June 5, 2024¶
✨ Improved¶
Added a second, dithered FPI exposure in morning and evening APOGEE cals, both APO and LCO.
1.3.3 - June 1, 2024¶
✨ Improved¶
#23 When the auto-pilot is started an a goto-field is running, it will wait for it to finish.
Close the APOGEE shutter when an exposure is aborted.
1.3.2 - May 30th, 2024¶
🔧 Fixed¶
hal auto-pilot --add-hartmannwas adding a stagehartmannto the goto-field instead ofboss_hartmann.
1.3.1 - May 30th, 2024¶
✨ Improved¶
#3 Added
--add-hartmannand--remove-hartmannflags toauto-pilot.
1.3.0 - May 29th, 2024¶
🚀 New¶
#20 New
abort-exposurescommand will stop theexposemacro, if running, and smoothly (hopfully) stop any ongoing APOGEE and BOSS exposures.
1.2.2 - May 28th, 2024¶
🔧 Fixed¶
Remove leftover
breakthat would cause the auto-pilot to exist after one iteration.
1.2.1 - May 28th, 2024¶
🔧 Fixed¶
Fix an issue with the new auto-pilot loading a new design during an exposure when a fully loaded one was available.
Correctly set the observed configuration if the a new one has been loaded.
1.2.0 - May 26th, 2024¶
🚀 New¶
#19 Fully rewritten version of the auto-pilot. The behaviour is generally unchanged but this rewrite fixes several bugs and should allow the auto-pilot to be started and stopped at any point. The command has been changed to
hal auto-pilotalthoughhal autois still being aliased.
✨ Improved¶
Fail
exposeandgoto-fieldmacros if another macro is running.
1.1.9 - April 26th, 2024¶
🔧 Fixed¶
goto-field acquirewas setting the exposure time to 5 seconds for APO but not using the dynamic exposure time flag.
1.1.8 - April 18th, 2024¶
✨ Improved¶
#18 Implement dynamic exposure times during acquisition.
cherno acquire(and potentiallycherno guide) can be called with the--dynamic-exposure-timeand--max-exposure-timeflags. Initial exposure time during acquisition defaults to 5 seconds.
🏷️ Changed¶
Changed the number of
max_iterationsduring acquisition to 5 (from 4) at APO and 7 (from 5) at LCO.
1.1.7 - April 17th, 2024¶
🔧 Fixed¶
Fix
hal goto-field --guider-timeflag which was previously ignored.Potentially fixed and issue in which if the auto pilot mode is turned on while a configuration is being observed and the next configuration is a repeat field, it was treated as a new field and the additional goto-field stages were executed. The old logic required the configuration to be complete (i.e., at least one exposure done). The new logic just requires the goto-field to have been executed in the previous configuration.
1.1.6 - April 16th, 2024¶
🔧 Fixed¶
When using the
automacro, set the exposure time correctly based on the design mode.
1.1.5 - April 6th, 2024¶
🔧 Fixed¶
Prevent the list of stages in
goto-fieldwith--autoto be modified in place when adding the--with-hartmannoption.
1.1.4 - April 5th, 2024¶
✨ Improved¶
Added
--preload-aheadoption to override how long ahead of time the next design is preloaded in auto mode.
1.1.3 - April 4th, 2024¶
🔧 Fixed¶
We don’t want 12-minute exposures for bright time designs at LCO yet. Fixed the code to accept different exposure times for bright designs depending on the observatory.
1.1.2 - April 4th, 2024¶
✨ Improved¶
Update
auto_modestages for LCO: removedboss_flatfor new fields and only doreconfigurationandguidefor repeat fields.
1.1.1 - April 3rd, 2024¶
✨ Improved¶
Pass
--extra-epoch-delaywhen preloading a design.
1.1.0 - April 1st, 2024¶
🚀 New¶
#17 Use 730 second exposure times for bright designs.
1.0.3 - March 5, 2024¶
🏷️ Changed¶
Increase slew timeout to 300 seconds.
1.0.2 - February 27, 2024¶
✨ Improved¶
Retry lamps at LCO to deal with cases when
TCS_FFfails.Use
/screenflag for LCO slews.
1.0.1 - January 15, 2024¶
✨ Improved¶
Reset cherno offsets when goto-field is called.
🏷️ Changed¶
LCO: added a 25 second delay before acquisition / guiding to give observers time to remove the FFS.
1.0.0 - December 22, 2023¶
✨ Improved¶
Added the option to define goto-field calibration slew offsets.
0.7.3 / 1.0.0b3 - December 20, 2023¶
🔧 Fixed¶
Update
macro_idwhenMacro.reset()is called.
1.0.0b2 - December 17, 2023¶
🔧 Fixed¶
Add 3 second delay before running
goto-fieldcleanup at LCO to prevent lamps being switched on/off too fast.
1.0.0b1 - December 15, 2023¶
🚀 New¶
[#16] Implement
goto-fieldmacro for LCO.
0.7.2 - December 11, 2023¶
✨ Improved¶
The overheads are now recorded with a
macro_idthat increases for each new macro run.Added a
testmacro and command that just waits but is useful for simple testing.
0.7.1 - December 10, 2023¶
🔧 Fixed¶
Correctly mark whether a set of concurrent stages succeeded in the database overhead table.
0.7.0 - December 6, 2023¶
🔥 Breaking changes¶
Deprecated Python 3.9.
🚀 New¶
#14 Record overheads for each stage and macro in the database and output
stage_durationkeyword.
0.6.0 - December 4, 2023¶
🏷️ Changed¶
Set maximum number of iterations for acquisition in
goto-fieldto 4.If acquisition fails to reach the target RMS after
acquisition_max_iterationsbut the RMS is lower thanacquisition_min_rms, the macro emits a warning but does not fail.
🔧 Fixed¶
Fixed circular import preventing the import of the goto-field macro.
Fix getting
target_rmsin auto mode.
⚙️ Engineering¶
Lint using
ruff.Update workflows.
0.6.0b4 - January 15, 2023¶
✨ Improved¶
Emit
running_scriptskeyword when a command is running. Needed for Boson 0.3.1.
0.6.0b3 - January 15, 2023¶
🔧 Fixed¶
Only register MCP callback for gang connection when at APO.
0.6.0b2 - January 15, 2023¶
🚀 New¶
Added the ability to pause/resume the expose macro. Users can issue
hal expose --pausethat will finish the current exposure and then wait untilhal expose --resumeis issued. If the count is changed while paused, the adjusted ETR is output on resuming. The same behaviour can be achieved withhal auto --pauseandhal auto --resume(note that this will NOT pause thegoto-fieldmacro).
🔧 Fixed¶
hal auto --modify --count Xwas not refreshing theExposureHelperafter updating the parameters.Several issues deciding how to handle command modifiers when the macro is already running.
0.6.0b1 - January 10, 2023¶
🚀 New¶
COS-89 (#12 Added an auto-mode macro. When active, the auto macro will run the
goto-fieldandexposemacros continuously. A few minutes before the end of theexposemacro completes, a new design is preloaded from the queue. Thegoto-fieldlogic for selecting stages is similar togoto-field --auto. The auto macro can be cancelled withhal auto --stopwhich will complete the current stage and then quit, orhal auto --stop --nowthat immediately aborts (ongoing exposures are never aborted). The auto mode should be able to take over from any current state; for example if the auto mode is enabled during anexposemacro, it will skip thegoto-fieldstage, wait untilexposeis done, and then start the loop (note tha this case a new design will not be preloaded during the ongoingexpose). The count of exposures to take can me modified withhal auto --modify --count Xwhich behaves similarly to thehal expose --modifycommand. Requirescherno0.5.0 or above.COS-66 (#13 The parameters for an ongoing
exposemacro can be modified by issuing a newhal exposecommand with the--modifyflag. Exposure information is handled by a newExposureHelperclass that calculates the exposures for each instrument and ensures readout time matching. The behaviour for the user should be mostly unchanged.
0.5.2 - January 5, 2023¶
Fix several typos in the lists of stages for
goto-field --auto.
0.5.1 - January 4, 2023¶
🔧 Fixed¶
Do not stop the guide look in
goto-fieldif we are not taking BOSS calibrations or halting the axes.
0.5.0 - January 2, 2023¶
🚀 New¶
Added a new
goto-fieldstage,lamps, that runs concurrently withreslewand turn on BOSS calibrations lamps (if needed) at that point. This saves a few seconds if we are taking a single BOSS arc. The stage is not required, and the lamps will be turned on at the calibration stage iflampsis omitted.
✨ Improved¶
Several performance improvements to
goto-field. FFS are only closed if we are taking BOSS calibrations; when turning off lamps, we don’t wait until they are really off, just send the command; the APOGEE shutter is closed at the beginning of the goto-field, but we don’t wait for it to fully close before moving to the reconfiguration.After the BOSS FF stage, only the FF lamp is turned off.
🔧 Fixed¶
Fixed a case in which lamp status reporting could fail if the lamps were caught at an intermediate state in which only some of the lamps were on.
⚙️ Engineering¶
Macro exceptions are logged to the file log with full traceback.
0.4.0 - December 21, 2022¶
🚀 Added¶
🏷️ Changed¶
If
exposeis called with--without-fpi, the FPI shutter is left where it is.
0.3.0 - September 11, 2022¶
🚀 Added¶
#9 Some changes for LCO. Splits the script into APO and LCO version.
🏷️ Changed¶
#8 Go to field turns on HgCd during prepare if arcs or Hartmanns are going to be taken, even if the
fvcstage is selected. Iffvcis not selected both HgCd and Ne are turned on. The telescope now slews to the field rotator angle.
0.2.0 - June 1, 2022¶
🚀 New¶
#2 HAL expose macro and actor command. Multiple subsequent commits fine-tuning its behaviour.
✨ Improved¶
COS-68 Better handling of lamps during go to field macro. Reduce warm up time for HgCd lamp to 108 seconds to account for BOSS flushing.
COS-71 Update evening/morning calibration scripts with dithered version.
#6 Update the
goto-fieldmacro to execute the FVC loop at a fixed rotator angle.#7 Check FBI LED levels before exposing.
Improved FPI shutter handling.
Mote
goto-fieldimprovements:Go to field: add a
cherno stopduring thepreparestage.Do not reset cherno offset.
Re-slew and open FFS at the same time.
Slew timeout 160 -> 180s.
Run 5 iterations with full corrections in the
acquirestage before moving to guiding using the PID coefficients.
🔧 Fixed¶
If a stage has been finished, do not cancel it.
0.1.0 - January 7, 2022¶
🚀 New¶
Basic infrastructure for scripts and macros.
#1 Command to run scripts.
Goto commands and TCC status.
goto-fieldmacro.