S95 in Manual Mode with TTL

Please register or login

Welcome to ScubaBoard, the world's largest scuba diving community. Registration is not required to read the forums, but we encourage you to join. Joining has its benefits and enables you to participate in the discussions.

Benefits of registering include

  • Ability to post and comment on topics and discussions.
  • A Free photo gallery to share your dive photos with the world.
  • You can make this box go away

Joining is quick and easy. Log in or Register now!

Interceptor121

Contributor
Scuba Instructor
Messages
4,410
Reaction score
722
Location
Weybridge, UK
I have done a bit of testing on enabling TTL on the S95 using CHDK
My first attempt has been to use Shutter priority and then override the aperture.
As in CHDK the aperture ranges between 2 and 16 I have worked out that a setting of 16 despite not being actually used by the camera fools the TTL and the picture come over exposed. The navigation in the user menu to find F8 or other values is painful

I have therefore reverted to using a CHDK script. There were some threads on the internet to enable TTL on Manual mode however when you shoot macro you really do not want TTL and the script would run and leave the camera in TTL until you switch if off and on so that you go back to manual flash.This would retract the lens and use more battery.

Therefore I developed my own script that I am pasting here. This script is called TTL ON OFF or should I say TTL switch.
What it does is simple it changes the flash status. If the flash is on manual it changes it to auto if it is in auto it changes into manual. With this script you do not need to switch on and off the camera if after your close focus wide angle or wide angle shot you want to go to manual flash for macro.


Create a text file named ttlonoff.bas (lowercase is important) on your computer and paste the following code

CODE

@title TTL ON OFF
rem Author: Interceptor121


rem Turn on or off TTL flash
rem with mode dial in 'Manual' for which the factory firmware doesn't support TTL.
rem The script should be run manually using the ALT+Shutter combination


rem Script is based on the example of jamesinsummer from:
rem G Series TTL In Manual Mode
rem DIGIC4 Flash Power id:121 0:auto 1:Manual


rem b=before
rem c=current


get_prop 121 b


rem Reporting to user with strings i.s.o. numbers
if b=0 then
set_prop 121 1
print "TTL OFF"
else
set_prop 121 0
print "TTL ON"
endif


get_prop 121 c
rem Error reporting
if c=b then print "ERROR: failed to change status"

The script has to be copied in the Scripts folder of CHDK and must be run manually, there is no point running automatically as the whole idea is to get control of the TTL
The script should run on all DIGIC3 and DIGIC4 cameras including S90,S95,S100, G9,G10,G11,G12 etcetera
 
I have done a bit of testing on enabling TTL on the S95 using CHDK
My first attempt has been to use Shutter priority and then override the aperture.
As in CHDK the aperture ranges between 2 and 16 I have worked out that a setting of 16 despite not being actually used by the camera fools the TTL and the picture come over exposed. The navigation in the user menu to find F8 or other values is painful

I have therefore reverted to using a CHDK script. There were some threads on the internet to enable TTL on Manual mode however when you shoot macro you really do not want TTL and the script would run and leave the camera in TTL until you switch if off and on so that you go back to manual flash.This would retract the lens and use more battery.

Therefore I developed my own script that I am pasting here. This script is called TTL ON OFF or should I say TTL switch.
What it does is simple it changes the flash status. If the flash is on manual it changes it to auto if it is in auto it changes into manual. With this script you do not need to switch on and off the camera if after your close focus wide angle or wide angle shot you want to go to manual flash for macro.


Create a text file named ttlonoff.bas (lowercase is important) on your computer and paste the following code

CODE

@title TTL ON OFF
rem Author: Interceptor121


rem Turn on or off TTL flash
rem with mode dial in 'Manual' for which the factory firmware doesn't support TTL.
rem The script should be run manually using the ALT+Shutter combination


rem Script is based on the example of jamesinsummer from:
rem G Series TTL In Manual Mode
rem DIGIC4 Flash Power id:121 0:auto 1:Manual


rem b=before
rem c=current


get_prop 121 b


rem Reporting to user with strings i.s.o. numbers
if b=0 then
set_prop 121 1
print "TTL OFF"
else
set_prop 121 0
print "TTL ON"
endif


get_prop 121 c
rem Error reporting
if c=b then print "ERROR: failed to change status"

The script has to be copied in the Scripts folder of CHDK and must be run manually, there is no point running automatically as the whole idea is to get control of the TTL
The script should run on all DIGIC3 and DIGIC4 cameras including S90,S95,S100, G9,G10,G11,G12 etcetera

god i do wish i had someone who could explain and help me with all this chdk business as id really not want do it myself when i dont understand it enough and reading about it sounds so daunting. well done for coming up with that as i had wondered about ttl, when you mention the camera not using the F16 do you mean that although it is on there the camera doesnt shoot that setting?
 
What I mean is that CHDK tells you Aperture 16 however the camera only manages F8 what happens is that the TTL is measured on 16 and the camera actually still does F8 and your shot comes overexposed.
On my powershot putting it on 16 would result in F11 but on the S95 it does not go below F8 and in order to get TTL working you need to set CHDK override to F8. all of this is not easy to navigate so the TTL ON OFF script is the best option as you keep the camera in manual at all times...
 
Ozzi exactly that I have a set of fixed options for CHDK and run the camera in manual. When I want the TTL I press alt then shutter take the TTL shot and then revert back to manual
I think on some shots it is good to have ttl mostly for wide angle and I don't like the idea of having to use aperture priority as the camera tends to use slow shutter speed resulting in pictures that tea too bright
I am happy to share a CHDK for dummies is a useful tool and you can set it so that is not too complicated to use
 
Hi Interceptor ! great work !I just came back from my diving trip to Anilao. In our group we have 3 different Canons on CHDK for enabling m mode TTL as below:S90 with internal flash onlyG9 with YS110a (optically triggered on TTL mode)G12 with YS-01 (optically triggered on TTL mode)The script works well for it's intention and didn't fail even once. However flash output control was a problem with my YS01..My GF's S90 with internal flash, and also my buddy's G9 with 110a, both system worked like magic.. the power output for every flash from them were accurateFor my own G12+YS-01 however over-exposure is a constant issue. It happens even on dry land. So I tried another script which also works on propertycase 127.. with that I can control flash compensation from -2 ~ +2 .. of coz in my case i have to use -1.. and with this my setup finally worked just as well as the other 2 sets.I wish i have a 110a for more testing .. I guess it was the TTL component in the strobes that are different and is creating the over-exposures .. (Slave TTLs after all .. are they just multiplying the pre-flash power ??)Anyways.. below is one of the shots from this trip out of my G12.. IMG_5429r - - ScubaBoard Gallery
 
Last edited:
aaaaryin thanks for testing the script. I have added the flash exposure compensation to the script. You will either need to default a value for parameter a or set it through CHDK. Note this goes in increments of 1/3 so 1 is +1/3 2 is +2/3 3 is 1 etc

CODE
@title TTL ON OFF
rem Author: Interceptor121


rem Turn on or off TTL flash
rem with mode dial in 'Manual' for which the factory firmware doesn't support TTL.
rem The script should be run manually using the ALT+Shutter combination


rem Script is based on the example of jamesinsummer from:
rem G Series TTL In Manual Mode
rem DIGIC4 Flash Power id:121 0:auto 1:Manual

rem parameters for Flash exposure compensation
@param a Flash Comp (Ev)
@default a 0

rem b=before
rem c=current


get_prop 121 b


if b=0 then
set_prop 121 1
else
set_prop 121 0
endif


get_prop 121 c

rem status reporting
if c=b then

print "ERROR: failed to change status"

else

if c=0 then
a=a*32
get_prop 127 P
print "Old:",P
set_prop 127 a
print "New:",a
print "TTL ON"
else
print "TTL OFF"
endif

endif

end
 
Man! That's a lot of tech sounding stuff to try to understand.

My brain is better able to just deal with manual everything including the strobe power.

Me too. M mode for strobe shots with manual strobe. Tv mode for non-strobe shots. All in RAW. No CHDK. Works for me.
Old dogs just don't want to learn some new tricks.

old_diver_camera.png
 
Gilligan your strobe only works in manual so there is no point in this script for you anyway
CHDK will not do a lot for you, still it is useful to know what the real battery charge left still is and you can use zebra to warn on overexposure
But of course this is very personal
For what concerns aaaaryin and the G12 I wonder if the overexposure is an issue with the clear canon housing and not blackening the flash more than a TTL issue
 
Last edited:
I have been testing the script more and made some changes, change log here:
  1. The scripts does not run if the camera is not set to manual or custom
  2. Manage parameters to alter Flash exposure control in intervals of 1/3 Ev
  3. Automatically exit the script at completion so the user does not have to press alt again
I am not going to copy the blurp here...if anybody wants please PM and I will give details of my dropbox

Note the CHDK properties for S95 are in some cases incorrect and the script needs to be revised for G series
 

Back
Top Bottom