There is a motion detection version of this script available at ultraMD.lua |
The Ultimate Intervalometer is a script for taking "timelapse" pictures over a long period of time. It is designed to run for week or months at a time. Applications include scenes like construction sites, flower gardens, or landscapes.
Download Link : Ultimate Intervalometer v4.10
Download md5sum : 9f59a757bf2a7430bb8324cf54b2ecc3
Forum Thread : Ultimate Intervalometer - a script for shooting over a long duration
Overview[]
There are many excellent general purpose intervalometer scripts posted on the CHDK wiki and forum. Some simply take pictures repetitively while others are tuned for specific applications like sunsets, automobile routes, balloon flights or macro/HDR applications.
The Ultimate Intervalometer is likewise specially tuned, but for long duration photo sessions - typically of outdoor scenes. In this application, the principal requirments are the ability to take pictures only during daylight hours, to be able to sync pictures from day to day, to run the camera on as little power as possible, to provide some visual clue that the script is still running, and to periodically restart the camera as neither CHDK or the Canon firmware was designed to continuously run for long durations.
Features[]
- Start shooting each day on any combination of a fixed time, dawn/dusk, brightness, or an external signal via CHDK USB remote
- Stop shooting each day when all combinations of a fixed time, dusk, and brightness are satisfied.
- Day of week schedule to select on which days shooting will occur ( All, Mon-Fri, Sat-Sun )
- Shutdown camera after user defined number of days.
- Shutdown camera when SD card is full (or optionally delete the oldest images to make additional space).
- Optional exposure bracketing ( Tv, Av, Sv, Ev , burst Tv ) for HDR applications.
- Optional focus lock at infinity.
- Optional low battery shutdown.
- Periodic automated restarts of the camera to reset internal timer and assist with long term stability.
- Support for all known power savings techniques ( backlight off. display off, sleep mode, playback mode) if supported by the camera model.
- Interval shooting in sync to the time of day (e.g. 60 minute intervals always occur at the top of the hour, 30 minute intervals a the top and bottom of the hour, etc.)<
- Sets the zoom lens to a user define position (reset zoom to that position after periodic script intitiated restarts)
- Color or mono option for the OSD status display.
- Option to pause during shooting if USB power goes active to allow for ptp download of images.
- Optional LED slow blink to let you know the script is still running when the display is off. Night mode blinks more slowly than day mode and you can specify different LED's for day and night mode ( e.g. green viewfinder LED blinking normally during the day, yellow viewfinder LED blinking more slowly at night - LED's available vary by camera model)
- Detailed logging of operation to SD card (user specified option).
On Screen Display[]
In addition to log messages in the normal script console, the Ultimate Intervalometer provides an on screen status box showing the current status of the shooting progress. Items displayed include :
- current number of shots since last reset
- time to next shot
- elapsed number of days
- Tv currently in use [& Tv shooting threshold]
- time to next camera reboot
- daily time to start shooting
- daily time to stop shooting
- days until camera shuts down (if enabled)
- SD card space left
- time to display blanking
- shooting mode : Day (on) or Night (off)
Note : colors of the status box may vary with different camera ports.
Application Notes[]
- While the script is running, you can stop it "cleanly" by pressing the MENU key. Pressing any other key will cause the display/backlight to activate for about 30 seconds, allowing you to check the script status. Pressing anything other than MENU again will increment the amount of time that the display/backlight stays enabled.
- When using just the internal camera battery, the script can run for about a day before the batteries are exhausted. This depends a lot on the camera model, battery type, battery age, number of shots per hour, and the power saving setting used by the script. So for long duration timelapse runs, an external power source (ideally some sort of UPS / battery / mains combination) is required.
- The script offers all the known options for display blanking / power savings. These are inherited mostly from here : Battery Intervalometer Script Note that the "Idle in Playback" mode will allow the camera lens to retract based on Canon menu settings. Its possible to script things to periodically switch briefly to shooting and back to playback to prevent lens retraction. But this allows you to setup the camera to "hide" the lens from dust and dirt when you are only shooting a couple of times each day.
- If your are using display blanking / power savings mode, you really should disable the camera's built-in "shot review" mode. At a minimum it uses extra power and slows down shooting. And in the worst case it can prevent the display blanking settings from working.
- While the script will periodically restart the camera and cause CHDK to restart the script, CHDK cannot be setup to restart the camera if the power to the camera actually fails. So a UPS battery backed supply is a really good idea.
- If you are going to use the "automatic restart periodically" feature, you need to be starting CHDK with the SD card lock autoboot method. This feature will not work if you start CHDK via the "firmware udpate" method.
- The script does not know anything about "day light savings" time, so if you use the sunrise or sunset modes just leave your camera in "standard time".
- If you enable the option to delete the oldest images when the SD card is full, please ensure the File Numbering setting in the Canon menus is set to Continuous (and not Auto Reset). Also, make sure the Lens Retract setting in the Canon menu is not set to 0 sec (the 1 min setting will prevent the lens from automatically retracting while the script is deleting old files as it does so in Playback mode to avoid crashing the camera).
- The script uses features of the 1.4.0 version of CHDK and will not run on earlier versions.
- As always, CHDK is experimental and running a camera for week or months at a time is our on the "bleeding edge" of experimental. Use at your own risk.
Parameter Setup[]
Shot Interval[]
Specifies the time between shots. Note that the shot time is sync'd to the time of day, so a 1 hour interval will cause shots to occur at the top of each hour, 15 minute interval will shoot at a quarter past, half past, quarter to and on the hour, etc
values 10sec 20sec 30sec 1min 2min 5min 10min 15min 30min 1hr 2hr 4hr
default 1min
Zoom position[]
Specifies the position to set the zoom lens at the start of shooting in "zoom steps" for the camera. This is necessary to ensure that the zoom returns to the same position each time the intervalometer periodically resets the camera.
values Off 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
default Off
Focus @ Infinity?[]
Sets the camera focus at infinity when the script starts and locks it there.
values Off / On
default Off
Shoot when shutter speed >[]
Specifies a shutter speed value that will cause the intervalometer to start interval shooting regardless of the day start or stop settings. Note that many cameras will not reduce the shutter speed below 1 second in P or Auto mode so setting to 2sec may cause the intervalometer to run continuously.
values Off 2sec 1sec 1/2 1/4 1/8 1/30 1/60
default Off
Shoot on USB pulse ?[]
Trigger a shot each time USB port +5V signal line goes from 0V to 5V.
values Off / On
default Off
Enable times start/stop[]
Causes the script to start or stop shooting based in the specified start and stop times.
values - disabled / enabled
default - enabled
Starting hour (24 Hr)[]
Combines with Starting Minute (below) to specify a time a which the intervalometer will switch into "Day" mode and begin interval shooting. If sunrise mode is enabled, or Tv mode is enabled, then this value can be overriden and shooting can start earlier.
range 0 23
default 9
..and starting minute[]
range 0 59
default 0
..or start at dawn?[]
Tells the intervalometer to calculate the time of sunrise and begin interval shooting at that time as well.
values enable/disable
default disabled
Ending hour (24 Hr)[]
Combines with Ending Minute (below) to specify a time a which the intervalometer will switch into "Night" mode and stop interval shooting. If sunset mode is enabled, or Tv mode is enabled, then this value can be overridden by those settings and shooting will continue later.
range 0 23
default 17
..and ending minute[]
range 0 59
default 0
..and end at dusk?[]
Tells the intervalometer to calculate the time of sunset and stop interval shooting at that time.
values enable/disable
default disabled
Enable on days[]
Tells the intervalometer to shoot every day, only on week days or only on weekends.
values All Mon-Fri Sat&Sun
default All
Latitude[]
Latitude for sunrise/sunset calculations. Set to degrees * 10, positive for northern hemisphere, negative for southern hemisphere. Ex : for New York, NY, USA, set to 407, for Berlin, Germany set to 525.
default 234
Longitude[]
Longitude for sunrise/sunset calculations. Set to degrees * 10. Positive values for locations east of 0 deg and, negative for locations west of 0 deg. Ex : for New York, NY, USA set to -740 for Berlin, Germany set to 135
default -845
UTC[]
Coordinated Univeral Time offset for sunrise / sunset calculations. Ex : for New York, NY, USA use -5, for Berlin, Germany use 1.
default -5
Start/stop offset [min][]
Causes the script to offset the start & stop time calculated by the Latitude & Longitude parameter by the specified number of minutes. Negative minutes start shooting early and delay the time that shooting starts. Positive minutes cause a delay in the time that shooting starts and terminate the shooting process early.
default 0
Exposure Bracketing[]
Mode[]
Causes the script to take multiple shots at each interval - a normal shot, a shot at the specified offset negative, and a shot at the specified offset positive. Value picked selects the type of exposure bracketing. (Burst option shoots more quickly using Tv bracketing).
values Off Ev Tv Sv Av Burst
default Off
Offset ( f-stops)[]
Adjustment used for each bracketing step
values 0.3 0.6 1.0 1.3 1.6 2.0 2.3 2.6 3.0 3.3 3.6 4.0
default 2.0
Shots[]
Specifies the number of different exposure to take in the bracketing set
values 3 5 7 9
default 3
Action if card full>[]
Specifies if script should halt or delete oldest images when there is no remaining SD card space. (See application notes if using Delete mode).
values Quit Delete
default Quit
Delay Start (Days)[]
Specified the number of days the script should wait before starting to shoot.
range 0 99999
default 0
End after days[]
The maximum number of days the script will run before turning off the camera at midnight. Set to 0 to disable this feature.
range 0 99999
default 0
Days between resets[]
The ultimate intervalometer script will periodically force a complete camera reset and then restart itself. This resets the camera tic timer before it overflows and also anything else that was not designed to run for long periods of time. This feature means you must start CHDK with the "SD Card Lock" autoboot method - CHDK will not automatically load after a reboot if you use the "firmware update" method of loading CHDK.
Note that the scripts shot counter clears to zero at each reset.
range 1 365
default 1
Reset Hour (24 Hr)[]
The hour of the day for the reset. The actual reset starts ten minutes before this hour.
range 1 23
default 2
Display Off mode (day)[]
Provides the various display & power saving modes discussed here during day mode operation.BKLite simply turns of the LCD backlight, DispKey presses the cameras DISP button until the display turns off, PlayKey puts the camera into playback mode between shots & turns off the backlight. ShrtCut presses the camera's short cut key - this requires that the short cut key be set to "Sleep Mode" in the Canon menus. LCD actually turns of the LCD & backlight completely.
Note that not all modes will work with all cameras. Also, when using PlayKey mode, the camera lens will retract after a timeout, This can be good in dirty locations when using long intervals between shots or it can cause extra wear&tear if you are using short intervals.
values None BKLite DispKey PlayKey ShrtCut LCD
default LCD
Display Off mode (night)[]
Provides the various display & power saving modes discussed here during night mode operation. BKLite simply turns of the LCD backlight, DispKey presses the cameras DISP button until the display turns off, PlayKey puts the camera into playback mode between shots & turns off the backlight. ShrtCut presses the camera's short cut key - this requires that the short cut key be set to "Sleep Mode" in the Canon menus. LCD actually turns of the LCD & backlight completely.
Note that not all modes will work with all cameras. Also, when using PlayKey mode, the camera lens will retract after a timeout, This can be good in dirty locations when using long intervals between shots or it can cause extra wear&tear if you are using short intervals.
values None BKLite DispKey PlayKey ShrtCut LCD
default PlayKey
Low battery shutdown mV[]
Battery voltage reading in millivolts at which the camera will shutdown on the assumption the battery is effectively drained. Set to zero if you are using an external A/C powered supply.
values 0 to 12000 mV
default 0
Status LED[]
With the LCD blanked/off, it can be difficult to know that the script is still running. Specifying an LED here will cause it to blink briefly every few seconds, giving positive feedback that the script is still operational even when the display is off. The value to use for each LED is camera implementation dependent - some experimentation may be required.
values Off 1 2 3 4 5 6 7 8
default Off
Pause when USB connected?[]
Causes the camera to switch to playback mode while USB is connected to allow for PTP transfer of pictures to a host PC.
values Y/N
default N
Theme[]
Select color or mono mode for on screen status display.
values Mono Color
default Color
Logging[]
Specifies where log message go. This does not affect information displayed on the on screen GUI box.
values Off Screen SDCard Both
default Both
Debug Mode[]
When enabled, simulates the script's time clock running quickly (about 20 minutes per second). Useful for verifying script setup by allowing the script to simulate running for many days in only a few minutes.
values Off On
default Off