S90_100c shoot+dcimdl CHDKPTP RESULTS SUMMARY#89 CanonCR2 onlyThe final CanonCR2-only test was set to 2.4 seconds delay from shoot to dcimdl, using a C10 Duracell 4GB SD card (markings 200X) formatted as FAT16. In the S90 this SD card has a typical write performance estimated at very approximately 15 MB/second. Average file size was 10MB. Also this time the dedicated computer was lightly used with no interference. malloc failed (ReadFDir) at 194k. 4010 files were transferred successfully before malloc fail. This was the second test not to experience a spurious error before the expected malloc fail.
Code is here:
http://chdk.setepontos.com/index.php?topic=8613.msg91217#msg91217*** Note that the delay in the is set to sys.sleep(1600), 1.6s. This value has to be optimized for specific camera and SD card.
Summary of all tests JPG+CR2 (888800-193136)/2910 = 239 bytes/{shoot+dcimdl} 12MB/shoot - 1.6s delay - one spurious failure
JPG-only (888808-192032)/4017 = 173 bytes/{shoot+dcimdl} 2MB/shoot - 1.6s delay - no spurious failures
CR2-only (888864-193832)/4010 = 173 bytes/{shoot+dcimdl} 10MB/shoot - 2.4s delay - no spurious failures
Some preliminary conclusionsThese results reveal that with an appropriately long delay, continuous shooting in a remote control environment using CHDKPTP may be possible without spurious failures. All three tests fail malloc at approximately 192k-194k ranging from 2900 shoots for 2 files to 4000 shoots for 1 file, sufficient to claim that these are the cutoff points for the S90. These are the best-case values and assume no other CHDK features are used except shoot & dcimdl.
The case of the CR2 is interesting because 4000 files implies 40GB data was transferred to PC over a 4 GB SD card. That means the card was repeatedly filled at least 10 times, and either all garbage collection is very fast and was covered by the 2.4s delay, or, slow garbage collection did not yet have a chance to occur. Overall, the results indicate that spurious errors are most likely due to card data reorganization and/or garbage collection initiated with a write to the card by the camera.
Canon guarantees a maximum of 1000 continuous shots. Because the S90 has perhaps one of the largest freemem pools of the PowerShots, this may be close to the real limit of the PowerShot line under CHDKPTP continuous shooting. Thus if one is considering CHDKPTP and a camera for long sequence-critical remote control without camera reboot, free memory should be examined.
I attribute the success of this particular large-file test to the very long delay time. Phase II equipment compatibility testing will begin soon // good news obviously.