Reading sensor data without closing shutter? - Script Writing - CHDK Forum

Reading sensor data without closing shutter?

  • 70 Replies
  • 34643 Views
Reading sensor data without closing shutter?
« on: 13 / February / 2016, 14:51:04 »
Advertisements
Hello guys, this is my first post.

For a project of mine, i wanted to read the sensor data from the camera without closing the shutter. I wanted to see for myself, the effects of long shutter data over time, since with a long shutter option, the sensor isnt reset and the light data is accumulated over the period, i wanted to read at some 'x' intervals of the long shutter press, and record the changes to the sensor values.

tl:dr; Is it possible to read the sensor data without closing the shutter or resetting sensor in chdk?
many thanks for any help :)

*

Offline reyalp

  • ******
  • 14126
Re: Reading sensor data without closing shutter?
« Reply #1 on: 13 / February / 2016, 15:45:19 »
Hello guys, this is my first post.

For a project of mine, i wanted to read the sensor data from the camera without closing the shutter.
Sure, record video or live view ;)

I'm not aware of a software way to do this for full frame stills. With some reverse engineering, you might be able disable the routine that closes the shutter for readout or pop it back open before readout starts.
Quote
I wanted to see for myself, the effects of long shutter data over time, since with a long shutter option, the sensor isnt reset and the light data is accumulated over the period, i wanted to read at some 'x' intervals of the long shutter press, and record the changes to the sensor values.
Sensor readout on CCD and CMOS is destructive, so regardless what happens with the shutter, you would be capturing separate images. Keeping the shutter open would just give you various artifacts.
Don't forget what the H stands for.

*

Offline Ant

  • *****
  • 509
Re: Reading sensor data without closing shutter?
« Reply #2 on: 22 / January / 2018, 14:01:11 »
Finally I've managed to get full resolution RAW image without closing the shutter.
All you need is:
1. Disable sensor polling for EVF (the simplest way is enter to Canon Menu).
2. Execute "Capture.Create" event procedure.( Don't need for "Capture.WholeParallel")
3. Execute "Capture.WholeParallel" event procedure.
4. Take raw data from RAM. (on EOS M3 there is only one raw buffer for it. Its address can be found at the beginning of "Capture.WholeParallel" function)

You can also use "Capture.WholeSerial" to take picture with shutter.
« Last Edit: 22 / January / 2018, 16:18:19 by Ant »

Re: Reading sensor data without closing shutter?
« Reply #3 on: 22 / January / 2018, 19:16:53 »
Finally I've managed to get full resolution RAW image without closing the shutter.
All you need is:
1. Disable sensor polling for EVF (the simplest way is enter to Canon Menu).
2. Execute "Capture.Create" event procedure.( Don't need for "Capture.WholeParallel")
3. Execute "Capture.WholeParallel" event procedure.
4. Take raw data from RAM. (on EOS M3 there is only one raw buffer for it. Its address can be found at the beginning of "Capture.WholeParallel" function)

You can also use "Capture.WholeSerial" to take picture with shutter.
Is EVF = "Electronic View Finder". ???
Do you have a M3 "Electronic View Finder".
Last Time I used my M3 "Electronic View Finder" with CHDK the EVF was not syncing,
 so the EVF was un-usable.
 i.e. EVF functions are not implemented or tested in CHDK. ??? (For M3-101a & M3-Latest)

Also what are you then doing with the full resolution RAW images. ???

Edit #1 Some after thoughts on EVF and the one M3 raw buffer (see the above).

a/ Is there also a HDMI buffer or is it shared with one raw buffer.

b/ There is lots of pins on my EVF M3 Viewfinder, so just guessing, that it may be its also some type of HDMI interface. ???

c/  Is there also a Wi-Fi Remote Live View buffer or is it shared with one raw buffer.

d/ When using Wi-Fi Remote Live View via a Smart  Phone/Tablet the Cameras Viewfinder and HDMI is then disabled.

e/ "...You can also use "Capture.WholeSerial" to take picture with shutter..."
     Is it also disabled when using when using the Wi-Fi Remote Live View.

Also do you have any (detailed) photos of the HDMI interface IC & EVF  interface IC.
[Could the Camera Display interface IC also be HDMI any ,detailed, photos.]

H-H
« Last Edit: 22 / January / 2018, 22:33:39 by Hardware_Hacker »

*

Offline c_joerg

  • *****
  • 1251
Re: Reading sensor data without closing shutter?
« Reply #4 on: 23 / January / 2018, 01:36:02 »
Also what are you then doing with the full resolution RAW images. ???
 

Time-lapse without increasing shutter count  :D

Is this similar to
https://www.magiclantern.fm/forum/index.php?topic=12523.0 ?

M100 100a, M3 121a, G9x II (1.00c), 2*G1x (101a,100e), S110 (103a), SX50 (100c), SX230 (101a), S45,
Flickr https://www.flickr.com/photos/136329431@N06/albums
YouTube https://www.youtube.com/channel/UCrTH0tHy9OYTVDzWIvXEMlw/videos?shelf_id=0&view=0&sort=dd

*

Offline Ant

  • *****
  • 509
Re: Reading sensor data without closing shutter?
« Reply #5 on: 23 / January / 2018, 01:46:06 »
Is EVF = "Electronic View Finder". ???
Do you have a M3 "Electronic View Finder".

EVF is a function, not  a special device. Every Powershot camera has EVF.


Quote
Also do you have any (detailed) photos of the HDMI interface IC & EVF  interface IC.
I did not trace EVF interface on hot shoe but at least EOS M3 has dedicated IC for HDMI output.

*

Offline Ant

  • *****
  • 509
Re: Reading sensor data without closing shutter?
« Reply #6 on: 23 / January / 2018, 01:46:36 »
Time-lapse without increasing shutter count  :D

Is this similar to
https://www.magiclantern.fm/forum/index.php?topic=12523.0 ?

Yes. And other purposes too.

HDMI transmitter on M3 is ADV7528
« Last Edit: 23 / January / 2018, 11:42:37 by Ant »

*

Offline srsa_4c

  • ******
  • 4451
Re: Reading sensor data without closing shutter?
« Reply #7 on: 23 / January / 2018, 11:38:33 »
Finally I've managed to get full resolution RAW image without closing the shutter.
That's a nice find.
Here's some notes/thoughts.
The capture.* event procedures only exist on EOS M models. IMHO the meaning of "parallel" and "serial" is not directly related to (mecha)shutter use, I'd guess it might be a difference in sensor readout.
The hardcoded raw buffer address used by these eventprocs suggests that they are intended to be used in factory mode (as most other eventprocs also). They might influence camera operation (i.e. overwrite something) when used outside factory mode. So, if you're experimenting with them I'd suggest replacing the buffer with one of the regular raw buffers (or exmem).
The underlying fw function also has another argument that can be experimented with.

Capture.WholeParallel seems to work on the M10 too, I just could not find a fast way to convert the 14bit raw data to something usable.
I'm also not sure how to specify exposure parameters.

*

Offline Ant

  • *****
  • 509
Re: Reading sensor data without closing shutter?
« Reply #8 on: 23 / January / 2018, 12:25:28 »
The capture.* event procedures only exist on EOS M models.

But "EvfCaptureSystem.c" present on Powershots too.
See function 0xFC172520 at G7X_100d. It looks similar to EOS M3 (0xFC20D880). At least assertion line number is the same. Maybe you could find similar function for sx280. Maybe it's 0xFC16212C for SX280_102b.

Quote
I just could not find a fast way to convert the 14bit raw data to something usable.
At this moment I just changed byte order and added DNG header taken from correct DNG file.
« Last Edit: 23 / January / 2018, 12:29:02 by Ant »

*

Offline srsa_4c

  • ******
  • 4451
Re: Reading sensor data without closing shutter?
« Reply #9 on: 28 / January / 2018, 08:52:50 »
I have played a bit with Capture.WholeParallel (to be more exact, I specified the two parameters myself, rather than using the fixed parameters hardcoded in the eventproc).
The eventproc's default is type 1 which captures the full sized RAW. The other two types that do not crash the camera are 2 and 3. They result in a much smaller 14bpp raw image, 1808 pixels wide, ~700...720 rows.
All images include the (on-sensor) phase detect pixels.
When used in M mode, exposure seems to respect the manual settings set on Canon UI.
Unfortunately, the old LiveImageTool.Pause and LiveImageTool.Resume event procedures no longer work (they are empty), so the Canon menu needs to be active when running Capture.WholeParallel...
I did not check other cameras yet.

 

Related Topics


SimplePortal © 2008-2014, SimplePortal