p.1 #1 · Call for help - building sensor readout speed database
I've published a GitHub project that seeks to compile sensor readout speeds for all cameras on the market. I've added a bunch of cameras myself, including some I bought/sold on B+S for this purpose but that's getting expensive so I've come up with a much cheaper strategy but it requires a little help from my fellow FM'ers
The technique is simple - photographing/video recording a small LED on a $17 Arduino board, then measuring the resulting light bands in the photo/video to calculate the sensor readout speed. Nothing groundbreaking here - the technique to photograph light and count the bands has been used by many, including Jim Kasson and FM'er dclark. The idea to use the LED on an Arduino came from a1ex at Magic Lantern, who also wrote sample code that blinks the LED at a known high frequency to assist in the measurement.
The advantage of using the Arduino board is that 1) it's programmable, so we can set a known universal light frequency, 2) it's dirt cheap at $17, and 3) it's portable and easy to photograph - it only needs access to USB power.
The help I need from FM'ers is to crowdsource the measurement of all the cameras I don't own, ie acquire the Arduino board and follow a simple set of instructions to photograph the board's LED in various settings and send me the resulting photographs and video.
Here's how I think the process will work:
1) PM me if you own one or more of the cameras I'm seeking to add to the database of measurements
2) If you are the first to inquire for that model, I'll buy the Arduino board from Amazon and have it shipped directly to you
3) After you receive the board you'll follow the instructions on configuring your camera and taking the photos/video of the board's LED, then send me the resulting photos/video via your file sharing method of your choice, after which I'll do the analysis and add the camera to the database. If you'd like attribution I'd be happy to add you to my GitHub project's wall of fame. If you prefer to remain anonymous that works too.
I estimate it will take about 45 minutes for your first camera. If you have additional cameras the process should be much faster after you've done it once.
Here are the cameras I'm interested in adding:
All Sony APS-C Bodies (that have an electronic/silent shutter mode)
Sony A7S, A7S II, A7S III
Sony A7r II, A7r III
All Canon RF bodies, both APS-C and FF (RP, R3, R5, R6, etc...)
Updated 3/15/24: Camera's pending testing by FM'ers:
p.1 #2 · Call for help - building sensor readout speed database
I ran into your post while I was looking for a way to test my A7iv and also my Fuji X-S20. It would be interesting to see what other cameras and even what modern phones can do.
p.1 #5 · Call for help - building sensor readout speed database
Great project. I'll contribute, once I get my first RF or Sony body. I'm holding out for the high res RF unicorn, I mean camera. I already have the LED. ;
p.1 #7 · Call for help - building sensor readout speed database
FYI, I've changed the GitHub project name from "CameraSensorReadoutSpeeds" to "RollingShutter", which required creating a new project. I've updated the links in the OP. I'll be deleting the project associated with the old name.
"CameraSensorReadoutSpeeds" lol. Engineers shouldn't be trusted with naming projects
p.1 #9 · Call for help - building sensor readout speed database
Cnyphotoguy wrote:
Readability is low the way the data is all on a single page without any sorting ability. Interesting concept.
Yep, right now the GitHub Pages-hosted html page is a simple export from the LibreOffice Calc spreadsheet where the results are calculated. Improvements are planned once I finish all the infrastructure of the repository.
In the meantime you can use the spreadsheet from the project if you'd like to sort or arrange the data.
p.1 #12 · Call for help - building sensor readout speed database
Not sure how relevant this is and if it just adds a lot more work, but wondering if it's possible to test for differences between single and continuous frame advance settings (all if there is more than one continuous advance option). I've read posts by some who anecdotally believe that some cameras change sensor scan speed based on fps rate in stills mode.
p.1 #13 · Call for help - building sensor readout speed database
rscheffler wrote:
Not sure how relevant this is and if it just adds a lot more work, but wondering if it's possible to test for differences between single and continuous frame advance settings (all if there is more than one continuous advance option). I've read posts by some who anecdotally believe that some cameras change sensor scan speed based on fps rate in stills mode.
Yep, single vs continuous shooting is part of the test plan. And several cameras I've tested exhibit this behavior, including the Panasonic S5 II/IIx and the Sony FF models. Some cameras also change their readout speed at high ISO, including the Olympus E-M5 III and OM-1.
p.1 #14 · Call for help - building sensor readout speed database
rscheffler wrote:
Not sure how relevant this is and if it just adds a lot more work, but wondering if it's possible to test for differences between single and continuous frame advance settings (all if there is more than one continuous advance option). I've read posts by some who anecdotally believe that some cameras change sensor scan speed based on fps rate in stills mode.
snapsy wrote:
Yep, single vs continuous shooting is part of the test plan. And several cameras I've tested exhibit this behavior, including the Panasonic S5 II/IIx and the Sony FF models. Some cameras also change their readout speed at high ISO, including the Olympus E-M5 III and OM-1.
Thanks for confirming. I had a look through the results and noticed some of this but good to know it's in the plan.
p.1 #15 · Call for help - building sensor readout speed database
rscheffler wrote:
Not sure how relevant this is and if it just adds a lot more work, but wondering if it's possible to test for differences between single and continuous frame advance settings (all if there is more than one continuous advance option). I've read posts by some who anecdotally believe that some cameras change sensor scan speed based on fps rate in stills mode.
p.1 #17 · Call for help - building sensor readout speed database
Thanks for such a great writeup in github readme. Buying the hardware and setting up the software is very straight forward, and the procedure for taking the samples is simple and easy to implement.
I got 29 bands (34.5ms) in single shot mode and 16 bands (62.5ms) in continuous-Hi mode which is the opposite of what I'd expect, so I'll do a full set of tests you have listed tomorrow and upload somewhere.
p.1 #18 · Call for help - building sensor readout speed database
newdom wrote:
Thanks for such a great writeup in github readme. Buying the hardware and setting up the software is very straight forward, and the procedure for taking the samples is simple and easy to implement.
I got 29 bands (34.5ms) in single shot mode and 16 bands (62.5ms) in continuous-Hi mode which is the opposite of what I'd expect, so I'll do a full set of tests you have listed tomorrow and upload somewhere.
Great project
Thanks, looking forward to the images. Btw fewer bands translates into a faster readout rate rather than slower, since the sensor is reading for a shorter period of time and thus will capture fewer of the light cycles.
p.1 #19 · Call for help - building sensor readout speed database
snapsy wrote:
Thanks, looking forward to the images. Btw fewer bands translates into a faster readout rate rather than slower, since the sensor is reading for a shorter period of time and thus will capture fewer of the light cycles.
Ah see this is why I'm not an engineer
The README says:
"For example, if we know the light source is 60Hz (120 transitions/second) and the sensor captures 6 bands, we can calculate the sensor readout time via 1000/120*6, which is 50ms"
and
"The readout speed in milliseconds is simply (500 / number of full bands), since the LED is being toggled at 500 Hz, so 500 / 25.2539, which comes to 19.79ms."
These confused me - I don't see how either of these make sense?
p.1 #20 · Call for help - building sensor readout speed database
newdom wrote:
Ah see this is why I'm not an engineer
The README says:
"For example, if we know the light source is 60Hz (120 transitions/second) and the sensor captures 6 bands, we can calculate the sensor readout time via 1000/120*6, which is 50ms"
and
"The readout speed in milliseconds is simply (500 / number of full bands), since the LED is being toggled at 500 Hz, so 500 / 25.2539, which comes to 19.79ms."
These confused me - I don't see how either of these make sense?
Your engineering skills are fine - it's my writing skills which failed you I flubbed that section, reversing the ms vs time calculations.. I've just published a correction to the readme.