CHDK Spotmeter - General Discussion and Assistance - CHDK Forum supplierdeeply

CHDK Spotmeter

  • 28 Replies
  • 12366 Views
CHDK Spotmeter
« on: 28 / September / 2009, 06:59:44 »
Advertisements
Hello you great CHDK people, as my first post I'd just like to voice my appreciation to all the people who've made CHDK such an awesome app!

I am into large format photography, and I had the idea of using my sd880 as lightweight and potentially very helpful spotmeter. Well, actually, after finding out about CHDK I decided to get myself little compact so I could play with CHDK on it... and potentially use it as a spotmeter.



So, I did some tests of EV values from my ixus in spotmetering mode vs my Minolta Spotmeter F and found the values to be close enough for practical use (usually a difference of less than 1/3 stop).

From there I worked out the maths for converting the camera's EV value into an F-Stop given a particular iso and shutter speed. I was thinking of just writing a script to do just output the info to screen, but though it would be better if I could get something on screen that looks something like the display of my spotmeter. So I checked out the CHDK source code and was suprised at how easy it was to get everything compiling and running. Awesome set up! Especially the CHDK Shell!

So far I have I new OSD element displaying all of the info that I want (EV value, current ISO, shutter speed and the resulting F-Stop on a scale of F-Stops). It can also store multiple readings and show them on the scale so one can work out zone system type stuff. It looks like this:




The last remaining hurdle is to have an easy way to change values. The ability to quickly scroll through shutter speeds as well as being able to tell the camera when to store values / clear values. After thinking about this, I decided the best way would be to write a scipt, similar to the Tv Mode script that is included in CHDK, and give it hooks to be able to change the OSD spotmeter values. I am currently working on getting a script set up.


I was wondering if anyone had any opinions on this? Better ways to do it etc? And if there is anyone else who would find something like this useful? If so I would be keen to try and get my stuff (once its all working) into the main build, or some other place where is accessible to people. I don't know what the process is to get stuff checked in? Can anyone do it?

*

Offline whim

  • ******
  • 2046
  • A495/590/620/630 ixus70/115/220/230/300/870 S95
Re: CHDK Spotmeter
« Reply #1 on: 03 / October / 2009, 13:07:22 »
Hi Dean,

I'm sure you'd get more reactions if you supplied some source code; most people (?) don't have
spot meters, and would have to play with it on their own cams to get an idea of usefullness/usability...

cheers,

wim

*

Offline fudgey

  • *****
  • 1705
  • a570is
Re: CHDK Spotmeter
« Reply #2 on: 04 / October / 2009, 10:31:33 »
I've never seen let alone used a spot meter and don't really know what I could do with one... but I guess that f/11.7 in your screenshot is something you'll use setting your actual camera up? If that's the case... when you mention you'd like to go through several Tv/ISO setups, why don't you write a script that loops through the interesting values (limits set as params) and outputs them to the console? The obvious solution is to use a camera that has a true M mode and as such easier built-in access to Tv, Av and ISO.

If I'm not mistaken, you need to half shoot before the value updates?

The script console is sort of tiny for that, but there is a (slightly but not dangerously buggy) patch to resize it: http://chdk.kernreaktor.org/mantis/view.php?id=55.


Only developers have write access to the CHDK SVN repository. If your feature is generally useful (I guess it is), does not stupendously increase RAM requirement (note that CHDK binary resides in RAM) and is overall coded in a more sensible fashion than CHDK in average :-X, you can get things rolling by providing a patch (`svn diff >spotmeter.patch`ought to do the trick) here on this thread and/or the bugtracker.

If CHDK code size increases more than a little bit, you should make it possible to disable it from buildconf.inc (see how this has been done with e.g. all the games).

If it doesn't work on all cameras, the patch should not add it to those (see include/camera.h for various examples). As you probably can't possibly know, you could provide a quick patch for people to review (e.g. button assignments differ and you could be using something that won't work on some other cameras).

Spotmeter basics
« Reply #3 on: 05 / October / 2009, 23:43:30 »
For those who are not familiar with spotmeters, which is not surprising as most cameras nowadays have plenty of built in metering, a quick summary:

A spotmeter is basically an external lightmeter that is used to accurately determine exposure when your camera does not. So for example, I use a 4x5 view camera which is entirely mechanical. I use the spotmeter to work out where the brightest and darkest points are in the scene and work out what the range of the scene is. From this you can tell whether you need to compensate for over / underexposed areas in your developing etc etc.

Pressing the button measures the brightness on that spot and plots that point onto a scale of fStops (given a particular iso and shutter speed). You can measure multiple spots and have them all drawing on the scale, then, as you change the shutter speed they shift along the scale. You then read the fStop for your camera off this scale, depending on how dark you want the measured spots to be on your picture.

I Hope this makes some sense. You can read more about the ideas behind this method (the Zone System) here: http://en.wikipedia.org/wiki/Zone_system


So, in a nutshell, If you only use digital cameras, its not going to be very useful.
But it would be very useful if you are into analogue photography and want to make accurate exposures on simple cameras such as view cameras or old medium formats ...and you don't want to pay $700 bucks for a spotmeter, when for $150 you could have something that takes happy snaps too. (Not to mention all the other cool stuff you can do with CHDK).

I will try and post a diff / patch soon. So people can try it out if they're interested.

   



Re: CHDK Spotmeter
« Reply #4 on: 10 / October / 2009, 08:51:12 »
Here is a diff I've made with CHDK Shell. Its a diff off build 800.

In the rar are two files you'll also need:

icon_10.rbf goes in the CHDK\Symbols dir
spotmeter.lua goes wherever you run your scripts from

Usage:
Once the diff is applied (no idea how one does that) and the two files are added, simply run the spotmeter.lua script.
This should bring up the meter.
  • Then half press to measure
  • "Menu" to store a value
  • Hold "Menu" for a sec to clear stored values (you may need to do this at the start if things don't seem to be working) 
  • left/right to change the metering shutter speed
  • Up and down to change the metering iso
  • Pressing "Set" zooms in/out
  • Full Press ends the script

The meter values can also be changed from within the menus in OSD Params > Meter Settings.

Good luck!

*

Offline msl

  • *****
  • 1280
  • A720 IS, SX220 HS 1.01a
    • CHDK-DE links
Re: CHDK Spotmeter
« Reply #5 on: 11 / October / 2009, 05:11:18 »
That is an interesting thing. Thx for your work. It clearly shows the dependence of the parameters.

I think that might be a good optional extension for chdk.

The value icons are a bit small for displays < 3 inches. You should also create a version for the icon_16.rbf font. Also you need to correct the icons in the menu. In the moment are displayed icons of the clock settings. I would use for shutterspeed display "Tv" and not "s".
CHDK-DE:  CHDK-DE links

Re: CHDK Spotmeter
« Reply #6 on: 11 / October / 2009, 23:21:02 »
Cool! someone tried it :-)

Yeah, there are definitely a few finer touches and loose ends that need fixing.
But, I've found it works pretty well in practise. I will get to those eventually.


Incidentally, is it possible to stop the jog dial from changing mode from auto <-> program while running a script?
I'd really like to be able to use the Jog dial instead of the d-pad.



*

Offline whim

  • ******
  • 2046
  • A495/590/620/630 ixus70/115/220/230/300/870 S95
Re: CHDK Spotmeter
« Reply #7 on: 12 / October / 2009, 02:07:18 »
@dean0

Quote
Usage:
Once the diff is applied (no idea how one does that)

http://chdk.setepontos.com/index.php/topic,845.msg40940.html#msg40940

cheers,

wim


Re: CHDK Spotmeter
« Reply #8 on: 22 / July / 2010, 19:08:48 »
Hi Dean0 or anyone else.

I'm a total newb here.  Trying to get your script to run.  No idea what to do with the .diff file, can someone explain that to me?  I put the two other files in the camera.  Get this error message:
":75: attempt to call glob nl 'set_meter_visible' (a nil value) press shutter to close"

I'm assuming this has something to do with the .diff file I'm missing but I'm not sure.

I'm a poor large format photographer, this would be awesome if I could get it to work.  I don't have a spot meter!

Thanks!
Paul

*

Offline reyalp

  • ******
  • 14080
Re: CHDK Spotmeter
« Reply #9 on: 22 / July / 2010, 23:50:19 »
Hi Dean0 or anyone else.

I'm a total newb here.  Trying to get your script to run.  No idea what to do with the .diff file, can someone explain that to me?
The diff file is a patch to the CHDK source code. To use the script, you must first build a version of CHDK which includes those changes.
Don't forget what the H stands for.

 

Related Topics