-
Notifications
You must be signed in to change notification settings - Fork 59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Camera blocks after using the download script #49
Comments
Your problem sounds like a bug in libgphoto2 or the camera. What happens if you use the gphoto2 command to download photos? A google search suggests that "busy" problems are quite common, but I didn't see any obvious fix. |
@dmitryelj are you shooting with a SD card installed? |
Thanks for the answer. Sure, the SD card is installed. I'll try to download and build the last libgphoto2 version, maybe it will help. |
I had an issue where the camera would get stuck at busy if I was shooting without a SD card. I have a reliable one installed now and haven't run into any issues despite working it extremely hard using a photo booth. I'll link my code, maybe you can find somthing we are doing differently? https://github.com/bitcraft/tailor/blob/master/tailor/plugins/gphoto2_camera.py#L90-L112 If you ignore the asyncio bits, its a pretty straightforward function. Works like a charm with my Canon 6D. |
Another user has had problems (unspecified) when using a USB3 port. Using a USB2 port might work better, assuming a USB2 camera. |
Thanks for the answer. Its weird in general.
It works like a charm, but - sometimes with about 25% probability camera cannot make pictures more after running the script, indicating "busy" when pressing shutter. Then I cannot access the camera through python-gphoto, but cannot take more pictures. I builded the last version of libgphoto2 from source, but it didn't help, the symptoms are the same. |
That really is very strange. It appears the Python script is not always leaving the camera in the correct state, but I have no idea why. There's nothing asynchronous or threaded in your program so it should be deterministic. I wonder if adding a second or two delay between calling gp_camera_exit and quitting the program would help. It might be worth delving into the source of ./sample-autodetect to see what libgphoto2 calls it's making. In theory you should be able to make the same calls from Python to unlock your camera. |
This code is doing nothing special: I tried to make a call of gp.get_config_value_string from python but this method is missing. |
get_config_value_string isn't a libgphoto2 function, it's defined in config.c |
Thanks. |
Another small update.
|
Did you reinstall python-gphoto2 after building and installing the latest libgphoto2? The Python interface might still be using the old version. Use ldd on one of the compiled Python modules (e.g. /usr/lib64/python3.4/site-packages/gphoto2/_camera.cpython-34m.so - the name will be system dependent) to check. |
The error gone when I switched to "OOP" interface:
I don't know what it was, it looks, the ticket can be closed. Thanks again for help. |
One difference is using a context. I thought the context was optional (whether OOP or not) but you may have found a case where it isn't. |
Hi,
Thanks for the cool product.
After running images download script, the camera (Canon 750D) locks and show "busy" when trying to make a new photo.
The script has "gp.gp_camera_exit(camera)" at the end.
Trying to use "gp.gp_camera_free(camera)" at the end of the script, causing error, is it implemented? Can it help?
The second weird thing is, sometimes it works and the camera is not locked, sometime it does not.
Thanks.
The text was updated successfully, but these errors were encountered: