CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD - page 55 - Creative Uses of CHDK - CHDK Forum

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

  • 704 Replies
  • 178069 Views
*

Offline SticK

  • *****
  • 779
Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
« Reply #540 on: 13 / August / 2013, 17:22:20 »
Advertisements
Somehow I can never guess which cam you want to test on...
I see ... here's my rationale ... it's quite simple actually.  If I want to test a new feature that does not involve alteration of Canon electromechanics, I prefer the 100c (with lens).  So that means for example, with the orientation feature, I'd rather test a 100c build, but only with the orientation feature implemented.  If the only build type you can provide has to include all your electromechanics (ie motors) hacks, then I'd rather test on the 101a (w/o lens).  Hence this is a good example where a 2-step process might be safer:
   test #1:  100c just the hack-under-test w/o all other hacks (this is validation of basic feature performance as the only hack).
        If #1 passes, then
  test #2:  101a (all hacks + the new feature).

So the reason why I asked for the 101a version is I (probably wrongly) assumed you can only provide all hacks + the new feature format.  So according to my rationale, testing a stock CHDK with only the new feature added first on the 100c, is preferred.  Thus if you can offer a 100c in that format, if I see it passes, then I will immediately try the 101a you just sent, since I already have it.  This also helps me from disabling the operational 101a for test, and if it doesn't work, then I have to re-enable the last version. 

edit: the other reason I prefer to use the 101a in a final test only is that it's operational and I am developing new external hardware right now to interface with the camera electronics.  I will show you that soon.
« Last Edit: 13 / August / 2013, 17:38:25 by SticK »

*

Offline srsa_4c

  • ******
  • 4451
Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
« Reply #541 on: 13 / August / 2013, 17:44:29 »
OK, so in short you're afraid of breaking the 100c camera.

The only hack which could be potentially dangerous is the "startup lens check override", but only when the camera is started with an already extended lens (due to a previous crash or opened battery door).
Since there already is a 101a version, just try that.

*

Offline SticK

  • *****
  • 779
Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
« Reply #542 on: 13 / August / 2013, 17:51:41 »
OK, so in short you're afraid of breaking the 100c camera.
Yes, and that the 101a is in active hardware development mode, but can be pulled out to do a test ... not a very big deal.  I am finding the the 101a (with MECHA SIM) is very resilient.  I haven't had the need to refresh the camera due to a lens error, as in the early days of developing that solution and having ti re-install the lens to bring the camera back to life.  That is now nearly impossible because it's all mechanically packaged.

*

Offline SticK

  • *****
  • 779
Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
« Reply #543 on: 13 / August / 2013, 18:01:14 »
@srsa_4c

For the 101a, I just want be sure the test ZIP has *all* hacks, correct?


*

Offline srsa_4c

  • ******
  • 4451
Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
« Reply #544 on: 13 / August / 2013, 18:07:12 »
@srsa_4c

For the 101a, I just want be sure the test ZIP has *all* hacks, correct?
Yes.

*

Offline SticK

  • *****
  • 779
Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
« Reply #545 on: 13 / August / 2013, 18:17:31 »
Hmmm srsa ... this is looking good ... the icon was stuck left for two weeks and now it's straight up!  Please wait a while for some imaging tests I need to setup and have a bite to eat.

*

Offline SticK

  • *****
  • 779
Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
« Reply #546 on: 13 / August / 2013, 19:35:13 »
RESULTS for the ORIENTATION 0deg HACK on S90_101a

@srsa_4c

Splendid!  I tested JPG in IrfanView, ie even toggling  the orientation flag the image stays horizontal.  I tested DNG in both RT and IV, and OK.  I tested CR2 in RT, and it's perfect.  Mission accomplished.  Vignetting suppression remains OK.

You may rename your file (adding an extra token to that long filename so it's descriptive, please), and build all 4 FW versions.  When you announce the builds, I will download from asembla with official filename and reinstall.

You put such a smile on my face, it hurts!  Thank you.

FYI, I have a little relic from the past for you to consider while you have your IDE open, and perhaps resolve if you feel so inclined.  Would you like to know what it is?

*

Offline srsa_4c

  • ******
  • 4451
Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
« Reply #547 on: 14 / August / 2013, 17:53:12 »
When you announce the builds, I will download from asembla with official filename and reinstall.
New builds are up, the added tag is "_0deg". Updated diff against CHDK 1.1 r2729 is attached.

About the latest hack (mostly technical details): It was actually your service manual-excerpt and then nafraf's latest finsig_dryos update that helped me find this solution. Keyword is 'HV sensor'. Previously I thought it was about 'high voltage'  :haha . Turns out, Canon's developers actually call this sensor HV sensor. There is an event procedure named GetLatestHVPosition, which, as its name says, gets the latest orientation data (0-90-180(!)-270 degrees), encoded as an ordinal. All parts of the firmware use this to get orientation data. Fortunately, the orientation data it returns is updated in the PhySw task - therefore it was easy to overwrite it.
Another interesting detail: there is a function that turns the changes of this value into a certain logical event. The orientation value carried by that logical event is written into the orientation propcase. The 'orientation' exif data is not read from the propcase (it's probably read directly).
Another interesting fact: although the cam can sense 180 degrees rotation, it's handled as 0 degree in the Canon UI and in the exif.


Quote
FYI, I have a little relic from the past for you to consider while you have your IDE open, and perhaps resolve if you feel so inclined.  Would you like to know what it is?
You mean one of my failed attempts? Which one?


Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
« Reply #548 on: 14 / August / 2013, 17:59:33 »
Keyword is 'HV sensor'. Previously I thought it was about 'high voltage'

Horizontal Vertical sensor.

*

Offline SticK

  • *****
  • 779
Re: CHDKPTP: S90 Primary Focal Plane Configuration - hacking out the CCD
« Reply #549 on: 14 / August / 2013, 19:49:13 »
@srsa_4c

Thank you for all the details of your discovery.  I read it with the same care with which you wrote.  After seeing your earlier difficulties, I kind-a sensed that a schematic could help you.  So, congrats on that one - wonderful work!  Hopefully some day some disgruntled Canon engineer (or preferably one with a good heart because there is nothing there the other big competitors don't know already) will publish an S90 schematic into cyberspace to help us all.

FYI, I have a little relic from the past for you to consider while you have your IDE open, and perhaps resolve if you feel so inclined.  Would you like to know what it is?
You mean one of my failed attempts? Which one?

I don't believe so, not sure though // long time ago // ... I think the primary discussion was with reyalp.  But I have a feeling you might be able to resolve it, because in the least you should be able to reproduce it the a3200.  Here's the situation.  Right now I have Lua code in my big function my_shoot(Tv, Sv) that is a work-around.  My_shoot() calls reyalp's shoot().   When I have liveview ISO set to any other value than ISO 100, for example, I set liveview to say ISO 800 by the normal Canon route SET etc, then after the call to shoot() regardless of override parameters (which work as expected in the image -- that's OK), the liveview ISO always resets to ISO 100.  So what happens is that the liveview goes quite dark because the amplifier gain changes correspondingly.  But, even though the ISO icon now says "100" and what was a bright view before the shot is now dark, if one goes into the SET -> ISO Canon menu, the ruler tick mark still points to original value of liveview (ie 800)!  So if you jog the tick mark LEFT RIGHT  (ie 1/3 stop away and back, and hit SET, the liveview reverts back to ISO 800 and amp gain goes back up, and all's back to normal again.  Hence you can now see that the 1/3-stop jog works for any ISO setting, and is a universal workaround, but only guaranteed for the S90.  Hence the code after shoot() that re-establishes the current liveview is:

Code: [Select]
function reset_ISO()  -- After taking shot a with myshoot(), Canon ISO is left at the override value.  Function resets liveview Canon ISO after taking a shot
con:execwait('click "set"')
sys.sleep(400)
con:execwait('click "left"')
sys.sleep(200)
con:execwait('click "right"')
sys.sleep(200)
con:execwait('click "set"')
sys.sleep(400)
end
In order for this to work, the code expects the last menu item selected to be ISO before pressing SET to exit.  Hence there are 3 drawbacks to this method:

   a) there is ~1.5s overhead per shot, and now that the system is destined for tiling a hundred or more images per mosaic, it becomes quite a factor,
   b) it is S90 sensitive .. because this is generic operation not specific to the 101a project and effects everyone who wants to use CHDKPTP (certainly with the S90), it is likely not very compatible with the whole array of cameras that CHDK addresses, and,
   c) the worst for me personally is that sometimes I go into the SET menu to change other parameters and forget to reset the side-bar icon pointer to the ISO icon before pressing SET to exit, I go take a shot, and the above function messes with other settings!

So if you could solve this in FW, it would be a nice bonus for the S90_101a project, and you can might be able to put it into the standard CHDK distribution for all cameras.  If you think you'd like to give it a shot, please let me know if you can reproduce the problem on your a3200.

 

Related Topics


SimplePortal 2.3.6 © 2008-2014, SimplePortal