eTTL in manual mode Issue - Script Writing - CHDK Forum

eTTL in manual mode Issue

  • 17 Replies
  • 4013 Views
eTTL in manual mode Issue
« on: 26 / June / 2013, 20:54:46 »
Advertisements
Hey guys, back again with a similar issue as always (sorry!)

I have been using the following script in my g15 CHDK to activate eTTL in manual mode:

@title Flash TTL
@param a Flash :0 TTL,1 Manul power (0,1)
@default a 0
@param c Flash compensation (-3~3)
@default c 0

rem DIGIC3 Flash Power id:121 0:auto 1:Manual
rem the default setting

sleep 4000

get_prop 121 q
print "Default TTL: ", q
set_prop 121 a
get_prop 121 q
if q=0 then print "Flash in TTL mode"
if q=1 then print "Flash in Manual mode"


sleep 500


e=0
set_prop 127 e
get_prop 127 P
c=c*96
print "Old compensation:",P
P=P+c
set_prop 127 P
print "New compensation:",P

exit_alt

end


I thought it was working flawlessly because I'd change the shutter speed and aperture and the picture would be perfectly exposed every time. Then, upon closer inspection, I noticed that if I set the shutter for 1/160 and Aperture for say, F1.8, when I press the shutter halfway down, the camera picks it's own shutter speed and aperture to get the right exposure. I used the canon speedlite to test all this.

I went in and turned off CHDK and went into manual mode and set the shutter for 1/160 and aperture for 1.8 and took a shot, and while horribly overexposed (expected), the shutter speed and aperture were at the settings I locked them in at.

Is there something wrong with my code? I really want to be able to lock the shutter speed and aperture and have the flash do the adjusting. Seems to be working backwards right now. Any assistance would be greatly appreciated.

Sorry for the related posts month after month :/

Thanks
Jim

Re: eTTL in manual mode Issue
« Reply #1 on: 26 / June / 2013, 21:41:00 »
Then, upon closer inspection, I noticed that if I set the shutter for 1/160 and Aperture for say, F1.8, when I press the shutter halfway down, the camera picks it's own shutter speed and aperture to get the right exposure. I used the canon speedlite to test all this.
Did you have the camera in Manual mode while you were doing this?


Quote
Is there something wrong with my code? I really want to be able to lock the shutter speed and aperture and have the flash do the adjusting. Seems to be working backwards right now. Any assistance would be greatly appreciated.
The code you posted allows you to set the flash into manual mode and allows you to adjust the flash exposure compensation. In manual mode,  you probably need to set propset 141 to the manual setting you need - the code does not currently do that.  If you leave it in auto mode (TTL) then the compensation value should change the exposure setting used by the flash.  Nothing in the code locks shutter speed or aperature setting.
Ported :   A1200    SD940   G10    Powershot N    G16

Re: eTTL in manual mode Issue
« Reply #2 on: 26 / June / 2013, 22:13:25 »
Yes, I was in manual mode. I double checked.

I'm obviously way out of my league on this one. Is there a help file or area that could take me through the process? Does anyone here fix code for monetary compensation? I have a dive trip coming up and I'd really like to get this fixed.

Jim

Re: eTTL in manual mode Issue
« Reply #3 on: 26 / June / 2013, 22:16:19 »
Just for clarification, eTTL works in auto Av, And Tv mode out of the box without CHDK. I really need it to lock the settings I choose with the wheels and adjust the flash power only....


Re: eTTL in manual mode Issue
« Reply #4 on: 26 / June / 2013, 23:28:18 »
I'm obviously way out of my league on this one. Is there a help file or area that could take me through the process? Does anyone here fix code for monetary compensation? I have a dive trip coming up and I'd really like to get this fixed.
Not sure about the monetary part - I already pay too many taxes :)  I think that you are kind of out on the bleeding edge here - I don't even know if any of the current forum participants actually own an external Canon flash for example.

Just for clarification, eTTL works in auto Av, And Tv mode out of the box without CHDK. I really need it to lock the settings I choose with the wheels and adjust the flash power only....
So let's get specific.  If I understand correctly, you want to pick a fixed shutter speed,  aperature and ISO setting prior to getting in the water.   You then want the flash to adjust its power to get the correct exposure ?  Based not on the photosensor on the flash deciding it had received enough light but the cameras TTL calculation?  Does that even make sense - underwater you really need spot metering on the fish/eel/object in the center of the frame - the rest is dark ? 

So the problem here will be that when CHDK overrides Tv Sv or Av,  the camera does not know that and so unless CHDK sets all three,  the exposure will be wrong.  What is unclear to me is how the flash setting factors into that.

And what you have found is that setting the G15 into full M mode (no CHDK) and picking the shutter speed, aperature and ISO setting does not cause the flash to compensate correctly?

Whew ... am  I even close to understanding the root problem here?  How do the tens of thousands of sports divers with underwater camera rigs deal with this today?


Ported :   A1200    SD940   G10    Powershot N    G16

Re: eTTL in manual mode Issue
« Reply #5 on: 27 / June / 2013, 00:14:42 »
Not quite.

I want to be able to select the shutter speed and aperture using the wheels on the camera. Whatever I choose I want it to stay locked until I modify it using the wheel (just like M mode does today) with those "fixed" I want the camera to meter the flash for proper exposure.

DSLR have this feature available in Av, Tv, AND M mode. Some other point and shoots (Olympus for example) activate eTTL in M mode. Canon doesn't activate this by default. I'm pretty sure their thinking is they don't want their high end point and shoots to eat into their SLR market.

The eTTL should turn the flash on then do its best to give proper exposure by turning off the flash before the image over exposes. There has to be a way to be able to do this. In Av And Tv mode, when you press the shutter halfway, the user selected shutter or aperture is locked, the camera selects the free variable (if in Av mode the camera would select the shutter speed for example) so before I even press the shutter fully, the shutter speed and aperture are locked. When the shutter is pressed, the camera turns the strobe on until the picture is properly exposed and then shuts it off.

All that would be different here is that instead of the camera picking one of the variables, I pick both using the wheels and the camera ttl logic handles the strobe power/time.

Sport divers get away with what they have because they're not interested in the control over the photos some people want. Some people want to control motion blur and depth of field. Most photo divers are happy if a picture just turns out :). The people who really care get really expensive SLR's. I'm hoping we can find a way around that.

I wish we could view the actual camera firmware. I have a feeling the base firmware is the same on the G15 as the SLR's they just deactivate a bit in the firmware to remove a mode or feature. Frustrating :P If we need more info on how exactly the camera handles eTtl, I can get more info.

Re: eTTL in manual mode Issue
« Reply #6 on: 27 / June / 2013, 00:29:52 »
I want to be able to select the shutter speed and aperture using the wheels on the camera. Whatever I choose I want it to stay locked until I modify it using the wheel (just like M mode does today) with those "fixed" I want the camera to meter the flash for proper exposure.

DSLR have this feature available in Av, Tv, AND M mode. Some other point and shoots (Olympus for example) activate eTTL in M mode. Canon doesn't activate this by default. I'm pretty sure their thinking is they don't want their high end point and shoots to eat into their SLR market.

The eTTL should turn the flash on then do its best to give proper exposure by turning off the flash before the image over exposes. There has to be a way to be able to do this. In Av And Tv mode, when you press the shutter halfway, the user selected shutter or aperture is locked, the camera selects the free variable (if in Av mode the camera would select the shutter speed for example) so before I even press the shutter fully, the shutter speed and aperture are locked. When the shutter is pressed, the camera turns the strobe on until the picture is properly exposed and then shuts it off.

All that would be different here is that instead of the camera picking one of the variables, I pick both using the wheels and the camera ttl logic handles the strobe power/time.
Thanks - that explains it better.   Although I'm always a bit amazed at how everyone thinks Canon does things on purpose to limit sales of their P&S camera thinking they can force people to buy high end DSLR cameras.  Canon marketing is well aware that there are lots of P&S options out there and that there is no way to "force" people to buy their better cameras.   They tune camera options to what sells - its not an evil conspiracy when they don't support an obsure option that you might actually be interested in.

Quote
Sport divers get away with what they have because they're not interested in the control over the photos some people want. Some people want to control motion blur and depth of field. Most photo divers are happy if a picture just turns out :). The people who really care get really expensive SLR's.
Makes sense.

Quote
I wish we could view the actual camera firmware. I have a feeling the base firmware is the same on the G15 as the SLR's they just deactivate a bit in the firmware to remove a mode or feature.
All the actual firmware for Canon P&S cameras and most of their DSLR's can be viewed complements of the CHDK & Magic Lantern repositories.  Have fun with that.

Anyway,  I don't know how to get the camera to do what you want.  And it certainly won't be easy. But maybe somebody else will chime in here - bearing in mind that its not a big group of advanced users watching this forum.
« Last Edit: 27 / June / 2013, 00:33:19 by waterwingz »
Ported :   A1200    SD940   G10    Powershot N    G16

*

Online philmoz

  • *****
  • 3163
    • Photos
Re: eTTL in manual mode Issue
« Reply #7 on: 27 / June / 2013, 07:27:02 »
I tried this on my G12 & G1X by modifying the C code rather than using a script.

Normally setting the camera to M mode sets the external flash to Manual as well; but by forcing the PROPCASE 121 to 0 it switches the flash to Auto mode.

The shutter speed & aperture chosen on the camera are maintained for the most part - I sometimes see a shutter speed that is 1/3rd stop faster. E.G. if I choose 1/60th sec the image EXIF shows 1/80th sec.

Another thing I found is the flash exposure compensation is not PROPCASE 127 when an external flash is attached. On the G12 & G1X its PROPCASE 289. I haven't tested if I can set the exposure compensation with this yet.

Phil.
CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)
  g5x (1.00c, 1.01a, 1.01b)


Re: eTTL in manual mode Issue
« Reply #8 on: 27 / June / 2013, 08:20:00 »
I tried this on my G12 & G1X by modifying the C code rather than using a script.
Did you go that route because you could not get a script version working?  Or was it just easier for you?

Quote
Normally setting the camera to M mode sets the external flash to Manual as well; but by forcing the PROPCASE 121 to 0 it switches the flash to Auto mode.
Is thjs general enough to be a candidate for a "built-in" CHDK feature?
Ported :   A1200    SD940   G10    Powershot N    G16

*

Online philmoz

  • *****
  • 3163
    • Photos
Re: eTTL in manual mode Issue
« Reply #9 on: 27 / June / 2013, 08:25:58 »
I tried this on my G12 & G1X by modifying the C code rather than using a script.
Did you go that route because you could not get a script version working?  Or was it just easier for you?

To eliminate any other factors. And yes, I find it easier to make a small code change and build/download than trying to write/debug a script :)

Quote
Quote
Normally setting the camera to M mode sets the external flash to Manual as well; but by forcing the PROPCASE 121 to 0 it switches the flash to Auto mode.
Is thjs general enough to be a candidate for a "built-in" CHDK feature?

Possibly; trying to work out a UI option.

So far I can't get the exposure compensation to work for an external flash though.

Phil.
CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)
  g5x (1.00c, 1.01a, 1.01b)

 

Related Topics