API for DSLR's

I installed SGPro 2.5.2.5 (trial licence). My mount is a 10Micron GM1000HPS. The camera I use is a Canon EOS 500D DSLR.
I wanted to do automated model making with the python app’s of John Wainwright and Michael Würtenberger. No chance.
Both app’s failed to control the DSLR because the SGPro API for DSLR isn’t yet implemented or has some other problems. This I could read in the 10Micron forum.
My question is: Will a reliable API for DSLR’s coming soon, let’s say within the next half year, or is there no hope for.

Thanks
Helmar

I’m not really sure what this means. How do you define a “reliable API for DSLR’s”?

Up to now I know about 3 app’s which can perform automated model making for 10Micron mounts:
ModelMaker by Per Frejvall (RIP),which needs MaxIm DL for controlling astro-cams and DSLR’s and PinPoint for plate-solve.
John Wainwright’s mm.py (http://www.lyric.com/astro/mm.py.zip) and Michael Würtenberger’s mount tool (https://github.com/mworion/mount.git) need SGPro for cam-control and PinPoint or one of the built-in solvers for plate-solving.
Per Frejvall’s ModelMaker is running flawless with astro-cams and DSLR’s.
John Wainwright’s mm.py and Michael Würtenberger’s mount tool are running only with astro-cams. If you use a DSLR the tools only move the mount to the desired syncpoints. No camera control, no shutter release, no plate solve, no syncing of the mount.
Michael Würtenberger wrote in his readme "Actually the SGPro API has some problems with DSLR Cam’s. It doesn’t work out properly. "
Some months ago I tried Per Frejvall’s ModelMaker with a MaxIm DL and PinPoint trial licence and a Canon EOS 500D and all was running well, but I would prefer SGPro if the issue with DSLR-control can be solved.
I’m not a programmer, so I can’t decide whether the required SGPro API for external applications is missing or is not working properly or if the issues are caused by the external applications.
It would be nice to get some more informations from your side about this.

Regards
Helmar

OK, thx. I see now.

Every camera we support has its own notion of what it means to capture an image. When you ask the connected camera to take an image, it should do it. I am not aware of DSLR specific issues when using the API (I could be wrong, but have received no specific reports). Using the API to take an image should be fine… if not it’s a bug and it will be repaired.

With respect to mount sync, I would guess you don’t want SGPro doing that at all… seems like a duty the modeling software should perform. If you need SGPro to plate solve via API, it can do that.

Any idea what specifically?

You are right.

Found this :


May be the cause of my problem. Are the issues with iso-settings already solved?

Regards
Helmar

Not sure. I will need to check on that one to make sure. I think I have a Canon camera around here somewhere to test with.

Any news ? Could You reproduce the issues with DSLR iso-settings?

Tested SGPro 2.5.2.8 Beta with my Canon 500D (T1i).
To be shure the camera is connected well, I first took a picture out of the SGPro’s Frame and Focus Module.
Then I started mount wizzard, connected to the mount and SGPro, generated a 3-point base model and started the model building run.
When the mount has moved in position and the first picture should be taken there happened only an error message from SGPro:

[Camera Thread] Canon: Error in CameraCommand_ShutterButton (1) Error: EDS_ERR_TAKE_PICTURE_CARD_NG
[Camera Thread] Error while attempting to capture frame…

So I guess the API for DSLR’s isn’t yet working properly.

Are you attempting to save to a network drive? Can you attempt to save locally?

Thanks
Jared

No. I’m saving to the local HDD of my laptop (ThinkPad T500, Windows 7, 64 bit).
As solver I selected PlateSolve2.
The pictures I shot out of the Frame and Focus Module have been saved on this drive. I also run a short test-sequence from the Sequencer windows. Those shots have also been properly saved on the local drive.

Regards
Helmar

edit:
Just tested SGPro 2.6.0.0
With mirror settle time enabled both in camera and SGPro I get following log:

[18.12.2016 18:44:36] [DEBUG] [Unknown] API Request:
[18.12.2016 18:44:36] [DEBUG] [Unknown] * Endpoint: (POST) - /json/reply/SgGetImagePath
[18.12.2016 18:44:36] [DEBUG] [Unknown] * Operation: SgGetImagePath
[18.12.2016 18:44:36] [DEBUG] [Unknown] * Body: {“Receipt”:“8f83454a-893f-45a6-b02a-ad4de3c673ab”}
[18.12.2016 18:44:36] [DEBUG] [Unknown] API Response:
[18.12.2016 18:44:36] [DEBUG] [Unknown] * Endpoint: (POST) - /json/reply/SgGetImagePath
[18.12.2016 18:44:36] [DEBUG] [Unknown] * Operation: SgGetImagePath
[18.12.2016 18:44:36] [DEBUG] [Unknown] * Body: {“Success”:false,“Message”:“No image found for receipt: 8f83454a-893f-45a6-b02a-ad4de3c673ab”}
[18.12.2016 18:44:36] [DEBUG] [Camera Thread] Canon: Error in TakePicture for mirror settle Error: EDS_ERR_TAKE_PICTURE_CARD_NG
[18.12.2016 18:44:36] [DEBUG] [Camera Thread] Error while attempting to capture frame…
[18.12.2016 18:44:37] [DEBUG] [Unknown] API Request:
[18.12.2016 18:44:37] [DEBUG] [Unknown] * Endpoint: (POST) - /json/reply/SgGetImagePath
[18.12.2016 18:44:37] [DEBUG] [Unknown] * Operation: SgGetImagePath
[18.12.2016 18:44:37] [DEBUG] [Unknown] * Body: {“Receipt”:“8f83454a-893f-45a6-b02a-ad4de3c673ab”}
[18.12.2016 18:44:37] [DEBUG] [Unknown] API Response:
[18.12.2016 18:44:37] [DEBUG] [Unknown] * Endpoint: (POST) - /json/reply/SgGetImagePath
[18.12.2016 18:44:37] [DEBUG] [Unknown] * Operation: SgGetImagePath
[18.12.2016 18:44:37] [DEBUG] [Unknown] * Body: {“Success”:true,“Message”:“Aborted”}
[18.12.2016 18:44:38] [DEBUG] [Camera Thread] SGM_CAMERA_CAPTURE complete…

With mirror settle time disabled I get following:

[18.12.2016 18:46:51] [DEBUG] [Unknown] API Request:
[18.12.2016 18:46:51] [DEBUG] [Unknown] * Endpoint: (POST) - /json/reply/SgGetImagePath
[18.12.2016 18:46:51] [DEBUG] [Unknown] * Operation: SgGetImagePath
[18.12.2016 18:46:51] [DEBUG] [Unknown] * Body: {“Receipt”:“9511365a-f7d4-4d89-83db-1ddd8318b923”}
[18.12.2016 18:46:51] [DEBUG] [Unknown] API Response:
[18.12.2016 18:46:51] [DEBUG] [Unknown] * Endpoint: (POST) - /json/reply/SgGetImagePath
[18.12.2016 18:46:51] [DEBUG] [Unknown] * Operation: SgGetImagePath
[18.12.2016 18:46:51] [DEBUG] [Unknown] * Body: {“Success”:false,“Message”:“No image found for receipt: 9511365a-f7d4-4d89-83db-1ddd8318b923”}
[18.12.2016 18:46:52] [DEBUG] [API Capture Thread] Waking from exposure time sleep period…
[18.12.2016 18:46:52] [DEBUG] [API Capture Thread] Checking to see if the CCD has a temp…
[18.12.2016 18:46:52] [DEBUG] [API Capture Thread] Saving the CCD temp…
[18.12.2016 18:46:52] [DEBUG] [Unknown] API Request:
[18.12.2016 18:46:52] [DEBUG] [Unknown] * Endpoint: (POST) - /json/reply/SgGetImagePath
[18.12.2016 18:46:52] [DEBUG] [Unknown] * Operation: SgGetImagePath
[18.12.2016 18:46:52] [DEBUG] [Unknown] * Body: {“Receipt”:“9511365a-f7d4-4d89-83db-1ddd8318b923”}
[18.12.2016 18:46:52] [DEBUG] [Unknown] API Response:
[18.12.2016 18:46:52] [DEBUG] [Unknown] * Endpoint: (POST) - /json/reply/SgGetImagePath
[18.12.2016 18:46:52] [DEBUG] [Unknown] * Operation: SgGetImagePath
[18.12.2016 18:46:52] [DEBUG] [Unknown] * Body: {“Success”:false,“Message”:“No image found for receipt: 9511365a-f7d4-4d89-83db-1ddd8318b923”}
[18.12.2016 18:46:52] [DEBUG] [API Capture Thread] Entering super dangerous loop to await image completion…
[18.12.2016 18:46:52] [DEBUG] [Unknown] API Request:
[18.12.2016 18:46:52] [DEBUG] [Unknown] * Endpoint: (POST) - /json/reply/SgGetImagePath
[18.12.2016 18:46:52] [DEBUG] [Unknown] * Operation: SgGetImagePath
[18.12.2016 18:46:52] [DEBUG] [Unknown] * Body: {“Receipt”:“9511365a-f7d4-4d89-83db-1ddd8318b923”}
[18.12.2016 18:46:52] [DEBUG] [Unknown] API Response:
[18.12.2016 18:46:52] [DEBUG] [Unknown] * Endpoint: (POST) - /json/reply/SgGetImagePath
[18.12.2016 18:46:52] [DEBUG] [Unknown] * Operation: SgGetImagePath
[18.12.2016 18:46:52] [DEBUG] [Unknown] * Body: {“Success”:false,“Message”:“No image found for receipt: 9511365a-f7d4-4d89-83db-1ddd8318b923”}
[18.12.2016 18:46:52] [DEBUG] [Camera Thread] Canon: Error in CameraCommand_ShutterButton (1) Error: EDS_ERR_TAKE_PICTURE_CARD_NG
[18.12.2016 18:46:52] [DEBUG] [Camera Thread] Error while attempting to capture frame…
[18.12.2016 18:46:52] [DEBUG] [Main Thread] Canon: PropertyEventHandler: event 102, property 41B, parameter 0,
[18.12.2016 18:46:52] [DEBUG] [Main Thread] Canon: PropertyEventHandler: event 101, property 406, parameter 0,
[18.12.2016 18:46:52] [DEBUG] [Main Thread] Canon: PropertyEventHandler: event 102, property 406, parameter 0,
[18.12.2016 18:46:52] [DEBUG] [Main Thread] Canon: PropertyEventHandler: event 101, property 405, parameter 0,
[18.12.2016 18:46:53] [DEBUG] [Unknown] API Request:
[18.12.2016 18:46:53] [DEBUG] [Unknown] * Endpoint: (POST) - /json/reply/SgGetImagePath
[18.12.2016 18:46:53] [DEBUG] [Unknown] * Operation: SgGetImagePath
[18.12.2016 18:46:53] [DEBUG] [Unknown] * Body: {“Receipt”:“9511365a-f7d4-4d89-83db-1ddd8318b923”}
[18.12.2016 18:46:53] [DEBUG] [Unknown] API Response:
[18.12.2016 18:46:53] [DEBUG] [Unknown] * Endpoint: (POST) - /json/reply/SgGetImagePath
[18.12.2016 18:46:53] [DEBUG] [Unknown] * Operation: SgGetImagePath
[18.12.2016 18:46:53] [DEBUG] [Unknown] * Body: {“Success”:true,“Message”:“Aborted”}
[18.12.2016 18:46:53] [DEBUG] [Camera Thread] SGM_CAMERA_CAPTURE complete…

Hope this will help.
Regards
Helmar

Hello Developers,
I have the same problem with a Canon 60da.
Are you working on the problem?
If you need more Logs or tests let me know.

Regards
Steffen

@smayer

We are not. This issue has been resolved.

To fix api issue in your camera please give a great attention to following points:

  • Download latest version of api file.

  • API file should be compatible with dslr firmware.

  • Firmware version of camera should be upgraded.

  • After all above instructions if still API running get unsuccessful then restart the camera and try installation again.

  • If still get error then troubleshoot it using Canon 500d Manual.Good Luck.