CHDK Wiki
(→‎How to run a script: corrected recent change about file name extension interpretation)
 
(7 intermediate revisions by 4 users not shown)
Line 4: Line 4:
 
[[Image:Script.jpg|right|thumb|170px| The Script Menu]]
 
[[Image:Script.jpg|right|thumb|170px| The Script Menu]]
 
[[Image:Script.gif|right|thumb|170px| Running a Script - ''Exposure Bracketing'']]
 
[[Image:Script.gif|right|thumb|170px| Running a Script - ''Exposure Bracketing'']]
* Download or write your own script and place it in the ''CHDK/SCRIPTS/'' folder of your SD-card, (name <strike>and extention are</strike> is not important, extension should be .BAS for uBASIC and .LUA for Lua scripts).
+
* Download or write your own script and save it to the ''CHDK/SCRIPTS/'' folder of your SD card. (File name is not important, but the extension must be .LUA or .lua for Lua scripts. Files with any other extension will be treated as uBASIC scripts.)
* Enter the [[CHDK_firmware_usage#Script_menu|script menu]], load the script, adjust the parameters to your liking and leave the menu.
+
* Enter the [[CHDK_firmware_usage#Script_menu|script menu]], load the script, adjust the parameters to your liking and exit the menu.
 
* While still in [[CHDK_firmware_usage#.3CALT.3E_mode|&lt;ALT&gt;]] mode just press the {{button|shutter}} button and the script will start. A [[CHDK_firmware_usage#Script_mini-console|mini console]] will be displayed while the script is running.
 
* While still in [[CHDK_firmware_usage#.3CALT.3E_mode|&lt;ALT&gt;]] mode just press the {{button|shutter}} button and the script will start. A [[CHDK_firmware_usage#Script_mini-console|mini console]] will be displayed while the script is running.
* Note:<strike>It's best to&nbsp; </strike>set the ''Review'' parameter in the NORMAL camera menu to "off", other options like "x sec" or "hold" <strike>can</strike> will interfere with the execution of scripts.
+
* NB: Set the ''Review'' parameter in the NORMAL camera menu to "off", other options such as "x sec" or "hold" will interfere with the execution of scripts.
* You can '''stop''' a running script by just pressing the {{button|shutter}} button again. Or '''pause''' a running script by exiting &lt;ALT&gt; mode. If paused the script will resume right where it left off when re-entering &lt;ALT&gt; mode.
+
* A running script can be''' stopped''' by simply pressing the {{button|shutter}} button again, or '''paused''' by exiting &lt;ALT&gt; mode. If paused the script will resume right where it left off when re-entering &lt;ALT&gt; mode.
   
 
<div align="right">([[FAQ#Q._What_can_I_use_exposure.2Ffocus_bracketing_for.3F|What's that? → ]])</div>
 
<div align="right">([[FAQ#Q._What_can_I_use_exposure.2Ffocus_bracketing_for.3F|What's that? → ]])</div>
   
 
'''You can download ready made scripts here:'''
 
'''You can download ready made scripts here:'''
----
 
 
   
 
* [[uBASIC/Scripts|'''User Written Scripts''']] (please feel free to contribute)
 
* [[uBASIC/Scripts|'''User Written Scripts''']] (please feel free to contribute)
 
* [http://tools.assembla.com/chdk/browser/branches/grand/script Sample Scripts]
 
 
----
 
 
   
 
*
 
*
Line 46: Line 39:
 
* [[Lua]]: what is ''Lua'' ? --> introduction to the Lua scripting language, links, samples...
 
* [[Lua]]: what is ''Lua'' ? --> introduction to the Lua scripting language, links, samples...
 
* [[Lua/Lua_Reference|Lua scripting - new and changed commands]] - describes additional and/or changed scripting commands for the Lua scripting language
 
* [[Lua/Lua_Reference|Lua scripting - new and changed commands]] - describes additional and/or changed scripting commands for the Lua scripting language
  +
  +
  +
{{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.
   
 
----
 
----

Latest revision as of 01:10, 7 December 2012

CHDK includes a slightly modified version of the uBASIC interpreter written by Adam Dunkels, which itself is a tiny version of BASIC (Beginner's All-purpose Symbolic Instruction Code). CHDK allows users to automate their cameras by running "scripts", small and simple programs written in a short-hand version of BASIC. There are scripts for exposure bracketing, focus bracketing, intervalometer and many more.

How to run a script

Script

The Script Menu

Script

Running a Script - Exposure Bracketing

  • Download or write your own script and save it to the CHDK/SCRIPTS/ folder of your SD card. (File name is not important, but the extension must be .LUA or .lua for Lua scripts. Files with any other extension will be treated as uBASIC scripts.)
  • Enter the script menu, load the script, adjust the parameters to your liking and exit the menu.
  • While still in <ALT> mode just press the shutter button and the script will start. A mini console will be displayed while the script is running.
  • NB: Set the Review parameter in the NORMAL camera menu to "off", other options such as "x sec" or "hold" will interfere with the execution of scripts.
  • A running script can be stopped by simply pressing the shutter button again, or paused by exiting <ALT> mode. If paused the script will resume right where it left off when re-entering <ALT> mode.

You can download ready made scripts here:

  • User Written Scripts - Discussion ... Posts about: Writing your own scripts, comments about scripts on this page: problems, bugs, improvements, help converting them to other cameras, etc.
  • Links to Other Scripts Found on the Net!
If you find any interesting scripts for CHDK out there in net-land, please share their links here. If enough are added or found we'll add another page or list them with the other user-written scripts here in CHKD-Wikiland.
[waycool_script link placeholder]

Links

If you want to modify existing scripts or write your own, you'll find more information here:

uBasic

Some basic articles:

Scripting Tutorial Discussion ... Posts about help with scripting syntax, unique uBASIC problems found, tutorial sections that need help, etc.

Lua


See also the Scripting Cross Reference Page for the complete list of CHDK scripting commands for Lua and uBasic.