index
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
index [2020/12/14 10:22] – [Blindly Maintained] Walter Schulz | index [2020/12/15 14:33] – [LUA Scripting] Walter Schulz | ||
---|---|---|---|
Line 29: | Line 29: | ||
===== C ===== | ===== C ===== | ||
==== Canon Basic Scripting ==== | ==== Canon Basic Scripting ==== | ||
+ | Canon introduced Basic Scripting support in EOS camera line-up with Digic 8. It is available for all EOS cams hosting DiGiC 8 und X processors. Same functionionality is a long-standing part in PowerShot cameras (there for older DiGiC generations, | ||
+ | It makes a dev's life a lot easier by allowing to set cam's [[# | ||
+ | If you ever come across a statement like "Canon making ML development harder by introducing locked down cameras": | ||
==== CHDK ==== | ==== CHDK ==== | ||
+ | Our friends and frequent contributors from Canon Hacking Development Kit (CHDK) do enhance PowerShot digital cameras with some features not implemented by Canon. Similiar - in some aspects - what ML project does with EOS. | ||
+ | There are some major diffences how PowerShot and EOS have to be programmed and that is why there are 2 different project teams.\\ | ||
+ | |||
+ | It may confuse some people that there are a few EOS M cameras not handled by ML but CHDK. And there are 2 PowerShot cameras not located in CHDK realm but ML. Those cameras run code contrary to their names!\\ | ||
+ | |||
+ | EOS M3, M5, M6, M10, M100 work with PowerShot firmware and are therefore handled by CHDK.\\ | ||
+ | PowerShot SX70 and SX740 work with EOS firmware and can be ported to ML. | ||
==== Collaboration (software development) ==== | ==== Collaboration (software development) ==== | ||
==== Commit ==== | ==== Commit ==== | ||
Line 69: | Line 79: | ||
-> [[# | -> [[# | ||
==== LUA Scripting ==== | ==== LUA Scripting ==== | ||
+ | LUA Scripting are the easiest approach to add own automotation task to ML. \\ | ||
+ | Examples are: \\ | ||
+ | -Script for shooting a whole set of total eclipse photos with all critical phases an astronomer has to get. | ||
+ | -Script for focus stacking for landscape, architecture with real-time calculator and user interface. | ||
+ | |||
+ | Main difference to programming ML (autoexec.bin) and [[# | ||
+ | |||
===== M ===== | ===== M ===== | ||
Line 78: | Line 95: | ||
==== MLV ==== | ==== MLV ==== | ||
==== Module ==== | ==== Module ==== | ||
+ | Some parts of ML's feature set are not loaded by default. To use them you have to access Modules tab/screen activate them* and restart camera. After powerup module' | ||
+ | Some developers created custom modules not included in zipped ML builds. You can add modules by placing module file (*.mo) into card directory ML\Modules. | ||
+ | |||
+ | There are two reasons to place ML features into modules:\\ | ||
+ | - Placing all functions into one single piece of software bloats memory requirements and may exceed camera limits for available memory during startup.\\ | ||
+ | - Modules are somehow easier to develop. Such lowering the bar how to make features happen in ML. | ||
+ | Well known ML features codes as modules are: RAW/MLV recording, Dual-ISO, Silent Pics, ETTR ... | ||
===== N ===== | ===== N ===== | ||
==== Native resolution ==== | ==== Native resolution ==== | ||
Line 110: | Line 134: | ||
==== Semi Bricking ==== | ==== Semi Bricking ==== | ||
-> [[# | -> [[# | ||
+ | |||
+ | |||
+ | ==== Shutter Bug (EOS M) ==== | ||
+ | **Symptom**: | ||
+ | **Cause**: Most likely a so called "race condition" | ||
+ | **Cure**: None, at least in foreseeable future.\\ | ||
+ | **Workarounds**: | ||
+ | * Twist your lens in socket. Powerup cam. Twist lens into mount socket. \\ | ||
+ | * Use a fast card! \\ | ||
+ | |||
+ | Disclaimer: This entry contains no practical joke. | ||
+ | |||
==== Silent pic ==== | ==== Silent pic ==== | ||
==== Skipping ==== | ==== Skipping ==== | ||
Line 120: | Line 156: | ||
===== U ===== | ===== U ===== | ||
==== UART ==== | ==== UART ==== | ||
+ | A serial protocol interface/ | ||
+ | By accessing it ML devs can read a lot of internal low-level data hidden from Canon menu. And in case of very-hard-to-hack cameras there may be a way to write data, too (for example: Enable bootflag). \\ | ||
+ | Physically accessing UART in older cams required opening cam and maybe even soldering wires to camera' | ||
+ | On some of Canon' | ||
===== V ===== | ===== V ===== |