Wikia

CHDK Wiki

Changes: User Written Scripts

Edit

Back to page

(Motion Detection)
(Universal)
 
(100 intermediate revisions by 4 users not shown)
Line 2: Line 2:
 
|__TOC__
 
|__TOC__
 
|}
 
|}
  +
==Important Remarks==
  +
The scripts posted below were written by CHDK users, and are contributed '''as is'''.
   
=User-written Scripts=
+
Please note that prior to 2009 a number of special builds of CHDK were in general release and some used different uBASIC commands and features. With the unification of CHDK into one release trunk, some of these older scripts may not run on current versions of CHDK.
   
Dear script authors and those just learning:
+
Also, be aware that some of these scripts use CHDK's ability to simulate camera button presses. As the buttons on any camera model typically vary from what is found on other camera models, the button press sequence scripted needs to be verified as correct for your camera.
   
The [http://chdk.setepontos.com/index.php '''CHDK Forum'''] has a dedicated [http://chdk.setepontos.com/index.php/board,7.0.html '''Script Writing and uBASIC'''] section. The forum's design and capabilities make it far easier to discuss and help with the sometimes confusing nature of scripts and uBASIC. You are strongly encouraged to post on that forum so that you can get assistance more rapidly and in a much more easy-to-follow discussion format. I hope you can join us there!
+
Finally, some of these scripts use the '''get_prop''' and '''set_prop''' commands. These directly read or write particular memory locations that store some camera settings. Different cameras generations have different property number assignments, so be careful when using any script with these commands. Use the '''get_propset''' command to be sure which parameter set to use for a particular camera.
   
For beginners, there is a tutorial: [http://chdk.wikia.com/wiki/UBASIC/TutorialScratchpad TutorialScratchpad]
+
==Scripts==
   
Final scripts can be linked to this page as a kind of Script Archive. The above mentioned forum is only for those who would like some assistance or input from others with similar goals in mind.
+
===Intervalometers===
  +
====Universal====
  +
* [[Time_Lapse_Script_One |Time Lapse Script One]] - accurate intervalometer with display off plus focus & exposure lock (requires CHDK 1.3.0 or better)
  +
* [[uBASIC/Scripts: A Simple Intervalometer|A Simple Intervalometer]] - like it says - "simple"
  +
* [[Selective_Intervalometer|Selective Intervalometer]] - fine granular control of time of day and day of week shooting
  +
* [[uBASIC/Scripts: Ultra Intervalometer|Ultra Intervalometer]]  - several simple intervalometer scripts with different features
  +
* [[Fast_Shooter_Intervalometer|Fast Shooter Intervalometer]]  -  "fastest" shooting without using camera's continuous mode
  +
* [[uBASIC/Scripts: A fast "intervalometer"|A fast "intervalometer"]]  - uses camera's continous shot mode -  interval duration not under your control
  +
* [[uBASIC/Scripts:Time Lapse Photography|Time Lapse Photography]] -- shoots continuously with an interval.
  +
*[[Ultimate_Intervalometer|Ultimate Intervalometer]] - script for taking time lapse photos over weeks or months
   
{{tagb|→}} See also the '''[[CHDK_Scripting_Cross_Reference_Page|Scripting Cross Reference Page]]''' for the complete list of CHDK scripting commands for Lua and uBasic.
+
====Camera Specific====
+
* [[Countdown Intervalometer | Countdown Intervalometer]] is an easy to use intervalometer script suitable for the casual user.
==Important Notices==
+
* [[uBASIC/Scripts:accurate intervalometer|Accurate Intervalometer 1]] uses the get_tick_count function to accurately time intervals
The scripts that are posted below were written by CHDK users, and are contributed '''as is'''.
+
* [[Lua/Scripts: Accurate Intervalometer with power-saving and pre-focus|Accurate Intervalometer 2]] a regular intervalometer with power-saving and pre-focus
+
* [[uBASIC/Scripts: yet another accurate intervalometer|Yet Another Accurate Intervalometer]] uses the change in exposure count for faster shooting
Please note that prior to 2009 a number of special builds of CHDK were in general release and some used different uBASIC commands and features.  With the unification of CHDK into one release trunk, some of these older scripts may not run on current versions of CHDK.
+
* [[uBASIC/Scripts: OMNI Intervalometer|OMNI Intervalometer]] combines video & regular shooting
 
Further, some of these scripts use the '''get_prop and set_prop''' commands. This directly modifies particular memory locations that store some camera settings. Different generations of cameras have different property number assignments so be cautious in using any script that uses these commands. Use the get_propset command to be sure which parameter set to use for a particular camera.
 
 
==Scripts==
 
   
=== Intervalometers ===
+
===Special Purpose Intervalometers===
  +
====<span style="font-size:14px;line-height:21px;">Universal</span>====
  +
* [[Autoexposure_Intervalometer|Autoexposure Intervalometer]]
 
* [[Drivelapse]] script for recording a time lapse from a moving vehicle. Use this for road trips
 
* [[Drivelapse]] script for recording a time lapse from a moving vehicle. Use this for road trips
* [[Countdown Intervalometer | Countdown Intervalometer]] is an easy to use intervalometer script suitable for the casual user.etc.uBASIC/Scripts: Make ANY Single-Shot Intervalometer into an HDR-Bracketing Script|Make ANY Single-Shot Intervalometer into an HDR-Bracketing Script]] (valuable CHDK usage info, not a script)
+
* [http://chdk.setepontos.com/index.php?topic=2589.msg24632#msg24632 Carlapse ] older scripts for shooting timelapse from a  car
* [[uBASIC/Scripts: Time lapse script variable shutter speed|Time lapse script variable shutter speed]] (prevents camera from taking underexposed shots during timelapse.)
+
* [[Battery Intervalometer]] - demonstrates all know techniques for conserving battery power (Lua)
* [[uBASIC/Scripts: HDR time lapse|HDR time lapse]] (Starts at 300 as default for pictures. Easier to understand in some respects than the Ultra Intervalometer. Someone needs to find a way to combine the 1st and 2nd scripts' user features as the 1st script doesn't show what's going on, rather just shoots. The second script tells you delay for 10 seconds so at least you know you're still taking a shot)
+
* [[Meteor_Intervalometer_with_Dark_Frame_Management|Meteor Intervalometer]] - night sky photography with dark frame subtraction management
  +
* [http://chdk.setepontos.com/index.php?topic=11036.msg107966#msg107966 HDRLapse] : HDR time lapse script
  +
  +
====Camera Specific====
  +
* [[uBASIC/Scripts: HDR time lapse|HDR time lapse]]
 
* [[uBASIC/Scripts: Unlimited Interval Shooting|Unlimited Interval Shooting]]
 
* [[uBASIC/Scripts: Unlimited Interval Shooting|Unlimited Interval Shooting]]
* [[uBASIC/Scripts:Long Exposure Intervalometer|Long Exposure Intervalometer]] (Its purpose is for NIGHT shots. Takes long exposure shots continuously for applications such as night time time-lapse or to take image stacking shots for astrophotography. IMPORTANT NOTE ABOUT THIS SCRIPT. IT TAKES LONG EXPOSURES, SO DON'T PANIC WHEN YOUR SCREEN GOES BLANK FOR 15 SECONDS. IT'S TAKING A PICTURE.)
+
* [[uBASIC/Scripts:Long Exposure Intervalometer|Long Exposure Intervalometer]] a script for NIGHT shots. 
* [[uBASIC/Scripts: Ultra Intervalometer|Ultra Intervalometer]]
 
* [[uBASIC/Scripts: OMNI Intervalometer|OMNI Intervalometer]] (Use in burst mode with new Tv-bracketing for HDR!) (does not work with Canon s5 IS)
 
* [[uBASIC/Scripts:accurate intervalometer|Acccurate Intervalometer]]
 
* [[uBASIC/Scripts: yet another accurate intervalometer|Yet Another Accurate Intervalometer]]
 
* [[uBASIC/Scripts: A Simple Intervalometer|A Simple Intervalometer]] (Added 9/28/07)
 
* [[uBASIC/Scripts: A fast "intervalometer"|A fast &quot;intervalometer&quot;]] (uses continual mode, so interval duration not under your control)
 
 
* [[uBASIC/Scripts:my_first_intervalometer|My first intervalometer]]
 
* [[uBASIC/Scripts:my_first_intervalometer|My first intervalometer]]
 
* [[uBASIC/Scripts:Simple bracketing+Intervalometer|Simple bracketing+Intervalometer]]
 
* [[uBASIC/Scripts:Simple bracketing+Intervalometer|Simple bracketing+Intervalometer]]
 
* [[uBASIC/Scripts: Time Lapse Video Interval Time mod| Time Lapse Video Interval Time mod]]
 
* [[uBASIC/Scripts: Time Lapse Video Interval Time mod| Time Lapse Video Interval Time mod]]
* [[uBASIC/Scripts:Time Lapse Photography|Time Lapse Photography]] -- Shoots continuously with an interval. Uses Fingalo's get_tick_count to 
+
* [[uBASIC/Scripts:Increasing Intervals HDR Nightshot Script|Increasing Intervals HDR Nightshot Script]] -- shoots 7 images with shutter times getting longer each shot.
* [[uBASIC/Scripts:Increasing Intervals HDR Nightshot Script|Increasing Intervals HDR Nightshot Script]] -- Shoots 7 images with shutter times getting longer each shot.
+
* [[Lua/Scripts: Accurate Intervalometer with power-saving and pre-focus|Accurate Intervalometer with power-saving and pre-focus]]
+
===Sunset Scripts===
* [[Battery Intervalometer]] - demonstrates all know techniques for conserving battery power (Lua)
+
* [[uBASIC/Scripts: Time lapse script variable shutter speed|Sunset4&nbsp;&amp;&nbsp;Sunset5]]
  +
* [http://chdk.setepontos.com/index.php/topic,2156.msg20057.html SunsetF14]
  +
* [http://chdk.setepontos.com/index.php?topic=3079.msg31644#msg31644 SunsetF16] - 1.01 version of this script is camera independent and works with current releases of CHDK
  +
* [http://chdk.setepontos.com/index.php?topic=10493 YASS v4 - Yet Another Sunset Script] - works with all cameras
   
 
=== Bracketing ===
 
=== Bracketing ===
* [[UBASIC/Scripts:_Make_ANY_Single-Shot_Intervalometer_into_an_HDR-Bracketing_Script|How to use CHDK + Custom-Timer settings for all manner of bracketing '''without''' a script.]] (see note at bottom)
+
* [[Timefocus.bas_:_a_Shutter_&_Focus_Stacking_Script|Timefocus.bas]] : a Shutter & Focus Stacking Script
* [[uBASIC/Scripts: Focus Bracketing|Focus Bracketing v1.1]] (deprecated)
+
* [[UBASIC/Scripts: Shutter Speed Stack|Shutter Speed Stack]]
 
* [[uBASIC/Scripts: Multipurpose Bracketing|Multipurpose Bracketing]]
 
* [[uBASIC/Scripts: Multipurpose Bracketing|Multipurpose Bracketing]]
 
* [[uBASIC/Scripts: EV bracketing with TV and AV commands|EV bracketing with TV and AV commands]]
 
* [[uBASIC/Scripts: EV bracketing with TV and AV commands|EV bracketing with TV and AV commands]]
* [[uBASIC/Scripts: Focus Bracketing with set_focus and get_focus|Focus Bracketing with set_focus and get_focus]]
 
 
* [[uBASIC/Scripts: Fill-Flash Bracketing|Fill-Flash Bracketing]]
 
* [[uBASIC/Scripts: Fill-Flash Bracketing|Fill-Flash Bracketing]]
* [[uBASIC/Scripts: OMNI-Bracket|OMNI-Bracket]]
 
 
* [[uBASIC/Scripts: Universal Bracketing |Universal Bracketing]]
 
* [[uBASIC/Scripts: Universal Bracketing |Universal Bracketing]]
 
* [[uBASIC/Scripts: an ultra fast HDR bracketing script for A6xx |An ultra fast HDR bracketing script for A6xx]] (5 bracketed pictures in 5 seconds&nbsp;!!!)
 
* [[uBASIC/Scripts: an ultra fast HDR bracketing script for A6xx |An ultra fast HDR bracketing script for A6xx]] (5 bracketed pictures in 5 seconds&nbsp;!!!)
Line 51: Line 51:
 
* [[uBASIC/Scripts: Scene Bracketing|Scene Bracketing]]
 
* [[uBASIC/Scripts: Scene Bracketing|Scene Bracketing]]
 
* [[Lua/Scripts: Scene Bracketing(lua)|Scene Bracketing(lua)]]
 
* [[Lua/Scripts: Scene Bracketing(lua)|Scene Bracketing(lua)]]
  +
plus >> [[UBASIC/Scripts:_Make_ANY_Single-Shot_Intervalometer_into_an_HDR-Bracketing_Script|Bracketing without a script.]]
   
=== HDR ===
+
=== KAP & UAV ===
  +
* [[KAP_UAV_Exposure_Control_Script|Kite & UAV Photography]] : a fancy intervalometer with advanced exposure control and USB interface for kite and uav photography
  +
  +
===HDR===
  +
* [[Ultra HDR Script]]
  +
* [[ND_Filter_HDR_Script|ND Filter HDR Script]]
  +
* [[HDR_Fast_Shooter|HDR Fast Shooter]]
 
* [[uBASIC/Scripts: HDR with stacking|HDR with stacking]]
 
* [[uBASIC/Scripts: HDR with stacking|HDR with stacking]]
 
* [[uBASIC/Scripts: HDR time lapse|HDR time lapse]]
 
* [[uBASIC/Scripts: HDR time lapse|HDR time lapse]]
  +
* [https://app.box.com/s/7nnkxok6n8epo62paenr HDRlapse.lua] Universal HDR intervalometer with fast shooting
 
* [[uBASIC/Scripts: HDR for G7|HDR for G7]]
 
* [[uBASIC/Scripts: HDR for G7|HDR for G7]]
  +
  +
===<span style="font-size:16px;line-height:21px;">Focus & Depth of Field Stacking</span>===
  +
* [[uBASIC/Scripts: Focus Bracketing with set_focus and get_focus|Focus Bracketing with set_focus and get_focus]]
  +
* [[Technical_Aspects_of_Stacking_Macro_Images|Technical Aspects of Stacking Macro Images]]
  +
* [[uBASIC/Scripts: macro DOFstacker|Macro DOFstacker]]
  +
* [[uBASIC/Scripts: yet another DOF stacker|Yet another DOF stacker]] (Best of the bunch for macro! IMHO)
  +
* [[uBASIC/Scripts: Focus Bracketing|Focus Bracketing v1.1]] (deprecated - uses manual focus button pushes)
   
 
=== Motion Detection ===
 
=== Motion Detection ===
  +
*[[Motion_Detection|Motion Detection Wiki Page]]
 
*[[Motion_Detect_Plus|Motion Detect Plus Script]] - Takes a series of images that are triggered using motion detection.
 
*[[Motion_Detect_Plus|Motion Detect Plus Script]] - Takes a series of images that are triggered using motion detection.
* [[uBASIC/Scripts:Lightning script -- Fudgey|Lightning script -- fudgey]] (Lightning script which captures quick successions of light bursts.).
+
*[http://chdk.setepontos.com/index.php?topic=10864 MDFB2013.lua] - updated version of fudgey's MDFB script (see below)
* [http://chdk.setepontos.com/index.php?action=dlattach;topic=471.0;attach=2132 Fast Motion detection (latest version)]
+
* [http://chdk.setepontos.com/index.php?action=dlattach;topic=471.0;attach=2132 MDFB-080914.BAS] - fudgey's Fast Motion Detection (best script for lightning)
  +
* [[uBASIC/Scripts:Lightning script -- Fudgey|MDFB-0802054.BAS]] - fudgey's original lightning script
 
* [[uBASIC/Scripts: Multipurpose Motion Detection|Multipurpose Motion]] (Sexy script. Could use for monitoring, or even photo shoots for banquets and such.)
 
* [[uBASIC/Scripts: Multipurpose Motion Detection|Multipurpose Motion]] (Sexy script. Could use for monitoring, or even photo shoots for banquets and such.)
 
* [[uBASIC/Scripts: Universal motion detection|Universal motion detection]]
 
* [[uBASIC/Scripts: Universal motion detection|Universal motion detection]]
 
* [[uBASIC/Scripts: AdaptiveMD|Motion detection with adaptive sensitivity]]
 
* [[uBASIC/Scripts: AdaptiveMD|Motion detection with adaptive sensitivity]]
 
* [[uBASIC/Scripts: Multipurpose Motion Detection|Multipurpose Motion Detection]]
 
* [[uBASIC/Scripts: Multipurpose Motion Detection|Multipurpose Motion Detection]]
+
* [[Birding_with_CHDK|Birding with CHDK]] - tips on bird pictures and a script for video when motion present - very useful for bird pictures
=== Stacking ===
 
* [[uBASIC/Scripts:Shutter Speed Stack |Shutter Speed Stack ]]
 
* [[uBASIC/Scripts: macro DOFstacker|Macro DOFstacker]]
 
* [[uBASIC/Scripts: yet another DOF stacker|Yet another DOF stacker]] (Best of the bunch for macro! IMHO)
 
   
 
=== Zoom ===
 
=== Zoom ===
* [[uBASIC/Scripts: Zoom Shoot|Zoom Shoot!]] Zoom takes a shot zooms in with one step takes another shot zooms in and so forth.
+
* [[uBASIC/Scripts: Zoom Shoot|Zoom Shoot!]]  takes a shot zooms in with one step takes another shot zooms in and so forth.
 
* [[uBASIC/Scripts: Zoom-Video|Zoom-Video]]
 
* [[uBASIC/Scripts: Zoom-Video|Zoom-Video]]
 
* [[uBASIC/Scripts: Tele-Macro-Mode|Tele-Macro-Mode]]
 
* [[uBASIC/Scripts: Tele-Macro-Mode|Tele-Macro-Mode]]
 
* [[uBASIC/Scripts: Zoom_Series|Zoom_Series]]
 
* [[uBASIC/Scripts: Zoom_Series|Zoom_Series]]
* [[uBASIC/Scripts: Easy Zoom & MF while Video Recording|Easy Zoom &amp; MF while Video Recording]]
 
   
==== Other ====
+
=== Video ===
  +
* [[Continuous Video Scripts]]  - automatic restart of video  recording after Canon time limit reached
  +
* [[uBASIC/Scripts: Easy Zoom & MF while Video Recording|Easy Zoom &amp; MF while Video Recording]] - keyboard control of zoom and focus setting while recording
  +
* [[Manual_Exposure_Control_for_Video_Recording|Manual Exposure Control for Video Recording]]  - manual override of Tv, Av, & Sv while recording
  +
  +
=== Other ===
  +
  +
* [[CHDKplus]] :  a script that provide full manual exposure control via an on screen GUI interface
  +
* [[Sunrise_and_Sunset_Time_Calculation_Script|Sunrise &amp; Sunset Time Calculation Script]]
  +
* [http://chdk.setepontos.com/index.php?topic=8238.0 Photobooth] - a CHDK powered motion-detection-triggered photobooth.
 
* [[uBASIC/Scripts: a property case value tester|A Property Case Value Tester]]
 
* [[uBASIC/Scripts: a property case value tester|A Property Case Value Tester]]
 
* [[uBASIC/Scripts: Button test|Show which key has been pressed]]
 
* [[uBASIC/Scripts: Button test|Show which key has been pressed]]
 
* [[uBASIC/Scripts: Photo Rations|Photo Rations]]
 
* [[uBASIC/Scripts: Photo Rations|Photo Rations]]
* [[uBASIC/Scripts: LED light| Led flashlight]]
+
* [[uBASIC/Scripts: LED light| LED flashlight]]
* [[uBASIC/Scripts: Scripts for Canon A640|Scripts for Canon A640]] (New: now updated for the AllBest build)
+
* [http://chdk.wikia.com/wiki/Lua#TagMe.2C_the_Lua_EXIF_tagger TagMe]  a  Lua script that shows how to write to a JPG's EXIF UserComment tag
  +
* [[Lua/Lua_Reference#RAW_development|RAW development ]]- some functions and an example script for processing RAW images in the camera
   
 
=== Old / Obsolete ===
 
=== Old / Obsolete ===
Line 86: Line 95:
 
* [[uBASIC/Scripts: Cable Release|Cable Release]] (Obsolete unless you need a mechanical trip, all new builds have USB remote!)
 
* [[uBASIC/Scripts: Cable Release|Cable Release]] (Obsolete unless you need a mechanical trip, all new builds have USB remote!)
 
* [[uBASIC/Scripts:Time Bandit 1.0|Time Bandit 1.0 -- Arman Bohn]] This timelapse script creates a sequence of jpegs which can be turned into an a video on your PC.
 
* [[uBASIC/Scripts:Time Bandit 1.0|Time Bandit 1.0 -- Arman Bohn]] This timelapse script creates a sequence of jpegs which can be turned into an a video on your PC.
  +
* [[uBASIC/Scripts: Scripts for Canon A640|Scripts for Canon A640]] (New: now updated for the AllBest build)
  +
  +
===Lua Script Libraries===
  +
* [http://chdk.setepontos.com/index.php?topic=6149.0 Utilities #1]
  +
* [http://chdk.setepontos.com/index.php?topic=9382.0 Sardanian Knife]
   
 
=== Other Resources / Archives ===
 
=== Other Resources / Archives ===
* [http://chdk.setepontos.com/index.php CHDK Forum] [http://chdk.setepontos.com/index.php/board,7.0.html &gt; Script Writing] [http://chdk.setepontos.com/index.php/board,12.0.html &gt; Completed and Working Scripts]
+
* [http://chdk.setepontos.com/index.php CHDK Forum] [http://chdk.setepontos.com/index.php/board,7.0.html &gt; Script Writing] [http://chdk.setepontos.com/index.php/board,12.0.html &gt; Completed and Working Scripts]: Some more scripts that may not appear here at the Wikia archive. Due to the easier method of jointly discussing and working on scripts at the CHDK Forum some new scripts are showing up there that you may not find in any other places. For example: some newer and faster Lightning Photography /Motion Detection scripts have been added (among others).
   
::Some more scripts that may not appear here at the Wikia archive. Due to the easier method of jointly discussing and working on scripts at the CHDK Forum some new scripts are showing up there that you may not find in any other places. For example: some newer and faster Lightning Photography /Motion Detection scripts have been added (among others).
+
* [http://crteknologies.fr/wiki/doku.php/photo:chdk-scripts CHDK scripts for Canon SD1000/IXUS70]: An interesting collection of unique scripts, written primarily for the SD1000/IXUS70 camera (DIGIC III), but can easily be converted to most all DIGIC II cameras by following the directions in the simple REM comments in them. Worth checking them out. They use some creative shortcuts that can be applied to your own scripts, or used as-is.
 
* [http://crteknologies.fr/wiki/doku.php/photo:chdk-scripts CHDK scripts for Canon SD1000/IXUS70] ::An interesting collection of unique scripts, written primarily for the SD1000/IXUS70 camera (DIGIC III), but can easily be converted to most all DIGIC II cameras by following the directions in the simple REM comments in them. Worth checking them out. They use some creative shortcuts that can be applied to your own scripts, or used as-is.
 
   
 
----
 
----
   
==Information for contributors==
+
==Suggestions for contributors==
  +
  +
'''Dear script authors and those just learning:''' the [http://chdk.setepontos.com/index.php '''CHDK Forum'''] has a dedicated [http://chdk.setepontos.com/index.php/board,7.0.html '''Script Writing and uBASIC'''] section. The forum's design and capabilities make it far easier to discuss and help with the sometimes confusing nature of scripts and uBASIC. You are strongly encouraged to post on that forum so that you can get assistance more rapidly and in a much more easy-to-follow discussion format. I hope you can join us there!
  +
  +
{{tagb|→}} <span style="font-size:13px;line-height:21px;">For beginners, there is a tutorial: </span>[http://chdk.wikia.com/wiki/UBASIC/TutorialScratchpad TutorialScratchpad]. <span style="font-size:13px;line-height:21px;">See also the </span>'''[[CHDK_Scripting_Cross_Reference_Page|Scripting Cross Reference Page]]'''<span style="font-size:13px;line-height:21px;"> for the complete list of CHDK scripting commands for Lua and uBasic as well as many links to other scripting reference pages.</span>
   
Please add your debugged and tested scripts to this section. Reserve discussion and help for writing your script to the [http://chdk.setepontos.com/index.php/board,7.0.html <u>CHDK Forum: Script Writing</u>] (or the now rarely-used {{tpl|<u>discussion</u>}} section (tab above)). Final scripts will appear on this page.
+
<span style="font-size:13px;line-height:21px;">Please feel free to link your debugged and tested scripts to this wiki page. Reserve discussion and help for writing your script to the </span>[http://chdk.setepontos.com/index.php/board,7.0.html <u>CHDK Forum: Script Writing</u>]<span style="font-size:13px;line-height:21px;"> </span>
:Scripts added here should include:
+
:Script pages linked here should include:
 
:*Camera model that you wrote it on.
 
:*Camera model that you wrote it on.
 
:*Other camera models that it is known to work on.
 
:*Other camera models that it is known to work on.
Line 104: Line 118:
 
:*Your script!
 
:*Your script!
   
:Since some scripts require special instructions that might be too lengthy to write into the script itself with "print" statements, I think it would be a good idea to start a common practice of including a short but informative text-file with each script, that could be saved by the same filename. Using a .TXT extension so the file may be referred to as a help-file using CHDK's "File Reader".
+
:Since some scripts require special instructions that might be too lengthy to write into the script itself with "print" statements, it is a good practice to include a short but informative text-file with each script, that could be saved by the same filename but using a .TXT extension so the file may be referred to as a help-file using CHDK's "File Reader".
   
 
:It has been found that some people are irresponsibly/foolishly sharing collections of scripts without the important accompanying documentation for each script. Try to include some extra info in the header of your script in the form of '''rem''' statements that might help the unfortunate people that might get hold of undocumented scripts. Beginning of script example:
 
:It has been found that some people are irresponsibly/foolishly sharing collections of scripts without the important accompanying documentation for each script. Try to include some extra info in the header of your script in the form of '''rem''' statements that might help the unfortunate people that might get hold of undocumented scripts. Beginning of script example:
Line 114: Line 128:
 
</pre>
 
</pre>
   
'''To post your own script to this main Scripts page:'''
+
'''Suggestions on posting your own script to your  scripts page:'''
 
# Click on the [http://chdk.wikia.com/index.php?title=uBASIC/Scripts&action=edit EDIT '''TAB'''] at the top of the page (not the ones beside each entry).
 
# Click on the [http://chdk.wikia.com/index.php?title=uBASIC/Scripts&action=edit EDIT '''TAB'''] at the top of the page (not the ones beside each entry).
 
# Scroll to the bottom of the list of scripts.
 
# Scroll to the bottom of the list of scripts.

Latest revision as of 21:43, June 19, 2014

Important RemarksEdit

The scripts posted below were written by CHDK users, and are contributed as is.

Please note that prior to 2009 a number of special builds of CHDK were in general release and some used different uBASIC commands and features. With the unification of CHDK into one release trunk, some of these older scripts may not run on current versions of CHDK.

Also, be aware that some of these scripts use CHDK's ability to simulate camera button presses. As the buttons on any camera model typically vary from what is found on other camera models, the button press sequence scripted needs to be verified as correct for your camera.

Finally, some of these scripts use the get_prop and set_prop commands. These directly read or write particular memory locations that store some camera settings. Different cameras generations have different property number assignments, so be careful when using any script with these commands. Use the get_propset command to be sure which parameter set to use for a particular camera.

ScriptsEdit

IntervalometersEdit

UniversalEdit

Camera SpecificEdit

Special Purpose IntervalometersEdit

UniversalEdit

Camera SpecificEdit

Sunset ScriptsEdit

Bracketing Edit

plus >> Bracketing without a script.

KAP & UAV Edit

  • Kite & UAV Photography : a fancy intervalometer with advanced exposure control and USB interface for kite and uav photography

HDREdit

Focus & Depth of Field StackingEdit

Motion Detection Edit

Zoom Edit

Video Edit

Other Edit

Old / Obsolete Edit

Lua Script LibrariesEdit

Other Resources / Archives Edit

  • CHDK Forum > Script Writing > Completed and Working Scripts: Some more scripts that may not appear here at the Wikia archive. Due to the easier method of jointly discussing and working on scripts at the CHDK Forum some new scripts are showing up there that you may not find in any other places. For example: some newer and faster Lightning Photography /Motion Detection scripts have been added (among others).
  • CHDK scripts for Canon SD1000/IXUS70: An interesting collection of unique scripts, written primarily for the SD1000/IXUS70 camera (DIGIC III), but can easily be converted to most all DIGIC II cameras by following the directions in the simple REM comments in them. Worth checking them out. They use some creative shortcuts that can be applied to your own scripts, or used as-is.

Suggestions for contributorsEdit

Dear script authors and those just learning: the CHDK Forum has a dedicated Script Writing and uBASIC section. The forum's design and capabilities make it far easier to discuss and help with the sometimes confusing nature of scripts and uBASIC. You are strongly encouraged to post on that forum so that you can get assistance more rapidly and in a much more easy-to-follow discussion format. I hope you can join us there!

 For beginners, there is a tutorial: TutorialScratchpadSee also the Scripting Cross Reference Page for the complete list of CHDK scripting commands for Lua and uBasic as well as many links to other scripting reference pages.

Please feel free to link your debugged and tested scripts to this wiki page. Reserve discussion and help for writing your script to the CHDK Forum: Script Writing

Script pages linked here should include:
  • Camera model that you wrote it on.
  • Other camera models that it is known to work on.
  • The CHDK build required to run it (if it's an extension beyond GrAnds builds).
  • Any special instructions that may be required for running the script.
  • Your script!
Since some scripts require special instructions that might be too lengthy to write into the script itself with "print" statements, it is a good practice to include a short but informative text-file with each script, that could be saved by the same filename but using a .TXT extension so the file may be referred to as a help-file using CHDK's "File Reader".
It has been found that some people are irresponsibly/foolishly sharing collections of scripts without the important accompanying documentation for each script. Try to include some extra info in the header of your script in the form of rem statements that might help the unfortunate people that might get hold of undocumented scripts. Beginning of script example:
rem Author: Your Alias/Name
rem For S-Series ONLY!
rem Requires Fingalo's build v 106 or later!
rem Use with caution! Read documentation!

Suggestions on posting your own script to your  scripts page:

  1. Click on the EDIT TAB at the top of the page (not the ones beside each entry).
  2. Scroll to the bottom of the list of scripts.
  3. Add new line
    * [[uBASIC/Scripts: <<YOUR SCRIPT TITLE>>|<<YOUR SCRIPT TITLE>>]]
    to the list.
  4. Save changes.
  5. Click on the list item you just added.
  6. Use the following template to publish your script:
== <<SCRIPT TITLE>> == 
:'''Written for/on:''' <<CAMERA MODEL>>

:'''Also works on:''' <<CAMERA MODELS>>

:'''Required CHDK build:''' <<either 'any' or specify the build required>> 

<<SCRIPT DESCRIPTION>> 

'''Documentation/Help''' (save as a small "<<script_filename>>.txt" file to your /CHDK/SCRIPTS/ folder) 

----

<<HELP TEXT>>

---- 

'''Script Code''' (save as "<<script_filename>>.bas" to your /CHDK/SCRIPTS/ folder) 

<pre>

<<SCRIPT BODY>>

</pre> 

--~~~

[[Category:Scripts]]

Around Wikia's network

Random Wiki