supplierdeeply

CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD

  • 704 Replies
  • 31302 Views
*

Offline reyalp

  • ******
  • 9882
  • Publish
    Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
    « Reply #390 on: 28 / January / 2013, 17:45:27 »
    Advertisements
    What else to your knowledge could there be? 
    I know there are some related to focus and other the mechanical bits, which I guess probably don't apply to you. I don't know if there are any others related to the CCD, but it would be unwise to assume there isn't.
    Quote
    However, in my mental block diagram (which still could be flawed), considering that raw image data always comes pixel-zero-corrected from Canon (as CHDK reads the data for a DNG for example), what is the advantage (or point even) of having badpixel.bin present on the SD card, since this file is just a copy of the
    badpixel.bin is purely a speed optimization, because searching the entire raw buffer for 0 values is slow. The 0 value pixels are interpolated over for DNG 1.1 because the spec requires it.

    Quote
    Overall what I am driving at (in exchange for community CCD swap-ability) is to be able at some point to extract *absolute* raw image data w/o any Canon (or CHDK) processing intervention.  With that I would be able to characterize the gain of every pixel, and do my linearization math outside the camera.
    And I'd like a pony lifetime supply of Chimay.
    Don't forget what the H stands for.

    *

    Offline SticK

    • *****
    • 779
  • Publish
    Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
    « Reply #391 on: 22 / February / 2013, 02:38:30 »
    SHOOT -sv override strange ?

    I am now beginning integration development and have run into this caveat.  Here is myshoot for reference:
    Code: [Select]
    function myshoot(tv, av, canon_sv, destdir)
    sv = canon_sv / 1.6461 -- ISO correction for S90 so that CHDK EXIF data is the same as Canon.
    cli:execute('shoot -tv='..tv..' -av='..av..' -sv='..sv..'')
    sys.sleep(2400)
    local l,r=con:execwait('return get_meminfo().free_size')
    print(" free", r)   
    printf(" free: %s\n",r)   
    dcimdl(destdir, true, false)
    end

    PROBLEM DESCRIPTION

    For liveview, if I set ISO in Canon to 100, then the shoot canon_sv= overrides work as expected, the image is exposed correctly, and EXIF shows the right override value. 

    However, if I set ISO in Canon to anything greater than 100, then the image is exposed at the "override EV" + Canon ISO (ie the two EVs are added for the actual exposure), but, EXIF is correct!   

    For example, if I set Canon ISO to 400 to see a brighter liveview, then if I shoot canon_sv=100, EXIF ISO says 100 correctly, but, the image is exposed at 800.  Similarly if I shoot at canon_sv=200, the image is exposed at 1600.  Hence the image is always overexposed.  If I try to shoot at canon_sv lower than the liveview value, the actual exposure bottoms out at the liveview value (cannot get an exposure darker than the Canon liveview ISO value), but EXIF ISO is always correct, this time showing the lower override value.

    Could this ring a bell?   Any ideas?

  • Publish
    Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
    « Reply #392 on: 22 / February / 2013, 06:41:16 »
    I don't really understand ISO override but in the shooting_set_sv96() code   :-

    Code: [Select]
                if (iso_mode>=50)
                    shooting_set_iso_mode(0);
                set_property_case(PROPCASE_SV_MARKET, &svm96_base, sizeof(svm96_base));
                set_property_case(PROPCASE_SV, &sv96, sizeof(sv96));
                set_property_case(PROPCASE_DELTA_SV, &dsv96, sizeof(dsv96));


    PROPCASE_SV is meant to set the EXIF and display to the ISO override value, according to Phil.

    *

    Offline SticK

    • *****
    • 779
  • Publish
    Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
    « Reply #393 on: 23 / February / 2013, 08:26:11 »
    @Microfunguy
    I think the problem is likely at a deeper level than the setting code of the ISO property value.  The ISO property value always propagates to EXIF correctly, however, the actual shot does not respect the override value under the condition when Canon ISO (set by the Canon user menu) is *greater than* 100: it gets overexposed, as what "seems like" Canon user ISO + override ISO.  Only when Canon ISO is user-set to 100, does override work as expected.  The behavior is "as though" there is an addition instead of an override, but only for the actual exposure.

    @reyalp
    Could you look at this please?


    *

    Offline SticK

    • *****
    • 779
  • Publish
    Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
    « Reply #394 on: 23 / February / 2013, 08:53:28 »
    Attached is the result for the extreme case where Canon liveview ISO is 1600 showing a high-gain liveview in CHDKPTP (as expected), and "ISO 1600" in the lower right corner.  So far so good.  But when canon_sv=100 for the shot IMG_1717, then the shot is exposed at 1600 instead of 100.  For reference IMG_1710 is correctly exposed at 100.

    Another way of interpreting the problem is that ISO override only works correctly when Canon ISO is user-set to 100.
    « Last Edit: 23 / February / 2013, 09:14:47 by SticK »

    *

    Offline philmoz

    • *****
    • 2936
      • Photos
  • Publish
    Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
    « Reply #395 on: 23 / February / 2013, 16:06:28 »
    Attached is the result for the extreme case where Canon liveview ISO is 1600 showing a high-gain liveview in CHDKPTP (as expected), and "ISO 1600" in the lower right corner.  So far so good.  But when canon_sv=100 for the shot IMG_1717, then the shot is exposed at 1600 instead of 100.  For reference IMG_1710 is correctly exposed at 100.

    Another way of interpreting the problem is that ISO override only works correctly when Canon ISO is user-set to 100.

    Sounds like it might need this fix added - http://chdk.setepontos.com/index.php?topic=6713.msg71425#msg71425

    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)

    *

    Offline srsa_4c

    • ******
    • 3118
  • Publish
    Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
    « Reply #396 on: 23 / February / 2013, 16:39:29 »
    Sounds like it might need this fix added - http://chdk.setepontos.com/index.php?topic=6713.msg71425#msg71425
    Thanks for the hint!

    @SticK
    Which build are you using?

    *

    Offline SticK

    • *****
    • 779
  • Publish
    Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
    « Reply #397 on: 23 / February / 2013, 17:13:40 »
    @philmoz, @srsa_4c
    Guys, thanks for chiming in.  The versions for both cameras are supposed to be the two links here, but I am not 100% certain:
    http://chdk.setepontos.com/index.php?topic=8801.msg94701#msg94701
    I know that we tried starting in manual mode, but that was abandoned because of corrupt camera operation.  In any case, I hot-wired manual mode into the matchbox S90_101a, reverted back to the BIN above, and it's working perfectly.

    I've attached the actual BIN here downloaded directly from the 101a that I have been using for the last 2 months.  I hope you can determine the version from that.  It should match the above.

    @Microfunguy
    There's been much progress I will update you on later.
    « Last Edit: 23 / February / 2013, 17:18:43 by SticK »


    *

    Offline srsa_4c

    • ******
    • 3118
  • Publish
    Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
    « Reply #398 on: 23 / February / 2013, 18:39:32 »
    I've attached the actual BIN here downloaded directly from the 101a that I have been using for the last 2 months.  I hope you can determine the version from that.  It should match the above.
    Yes, it's my latest build.
    Here's a new one, with the above suggested change.
    https://subversion.assembla.com/svn/chdk-s1.bin/files/s90-101a-1.1.0_2592_disableisdriveerror_nodistcorr_no_startup_lens_check_isofix_trial.zip

    *

    Offline SticK

    • *****
    • 779
  • Publish
    Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
    « Reply #399 on: 23 / February / 2013, 20:47:42 »
    s90-101a-1.1.0_2592_disableisdriveerror_nodistcorr_no_startup_lens_check_isofix_trial  works perfectly in all the scenarios I have tested so far.  Excellent // thanks for the teamwork.

    @srsa_4c
    before you issue 100c, ........

    ... since you guys are in this corner, there was an old bone I had mentioned to reyalp long ago.  Whenever Canon ISO is set to something greater than 100 for a bright liveview image, then after doing shoot(*), liveview goes dark, that is, ISO *internally* drops to 100, but, the value in the corner remains the same.  So to recover the current liveview ISO setting in the liveview image, I press SET RIGHT LEFT SET, ie jog the setting, and the liveview brightens back to the desired ISO setting.

    I was hoping this solution would also resolve that old nuisance, but it's still there.  Any ideas?

     

    Related Topics