I'm remote controlling a Canon EOS 1000D using EDSDK 3.6.1 and C#.
Sometimes after (successfully) taking a photo and downloading the images (RAW+L) the camera seems to "hang". Live view doesn't work any more and/or the camera seems unresponsive via EDSDK. When I try to turn off the camera its display shows:
Recording...
Remaining images :2
This normally means: the camera is busy writing data to the card. However it seems the camera endlessly writes data in these cases.
Do I need to tell the camera that I finished downloading the images or something similar?
However, it seems to work when remote controlling the camera w/o card.
UPDATE 1:
Just had this issue without any card in the camera.
UPDATE 2:
The EdsDownloadComplete
command will be called after each download. However, I get still get this error randomly: sometimes after the 2nd or 3rd photo/download, sometimes later. Quite strange... :-(
EdsRelease
returns always 0, meaning there are no further reference counters on this file/object.
Is there probably a way to check the download state before taking a photo/starting live view and cancel all remaining?
I'm guessing that there is something happening in parallel when downloading the images and that's never good with the Canon SDK. I think if you put a lock around the DownloadReady event handling it should work.
This answer was written by Johannes Bildstein as a comment and works fine for me.