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
- Download or write your own script and place it in the CHDK/SCRIPTS/ folder of your SD-card, (name
and extention areis not important, extension should be .BAS for uBASIC and .LUA for Lua scripts).
- Enter the script menu, load the script, adjust the parameters to your liking and leave the menu.
- While still in <ALT> mode just press the button and the script will start. A mini console will be displayed while the script is running.
It's best toset the Review parameter in the NORMAL camera menu to "off", other options like "x sec" or "hold" canwill interfere with the execution of scripts.
- You can stop a running script by just pressing the button again. Or pause a running script 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 (please feel free to contribute)
- 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]
If you want to modify existing scripts or write your own, you'll find more information here:
Some basic articles:
- Scripting Tutorial Discussion ... Posts about help with scripting syntax, unique uBASIC problems found, tutorial sections that need help, etc.
- New uBasic & Lua scripting commands, descriptions of newly introduced scripting commands
- Lua: what is Lua ? --> introduction to the Lua scripting language, links, samples...
- Lua scripting - new and changed commands - describes additional and/or changed scripting commands for the Lua scripting language
→ See also the Scripting Cross Reference Page for the complete list of CHDK scripting commands for Lua and uBasic.