Closed AlexRoman closed 10 years ago
Hi, please see my INDI QHY9 driver project at https://github.com/AlexRoman/indi-qhy9-libqhyccd . That is the code that I wrote to make it work with the SDK. Now, I haven't seen an example from you guys as to how to use the SDK, and so I "guesstimated" a few of the calls and played with it, so I can't guarantee that the fixes I'm submitting are not required simply because I am not making the right calls in the right sequence. Please take a look and advise. If we can solve this issue properly from my code (i.e. not by adding sleeps here and there), then I think we should do that, but I feel it's a firmware issue... Otherwise, this seems to provide a reasonable compromise in the meanwhile.
Hello, yesterday I looked around the code for IC8300 and I reached at the same point where Alex has fixed in terms of the SetChipResolution(). Actually ic8300.cpp has the same issue as qhy9s.cpp. I have my fix in my local branch but I thought the master branch should have the fix.
Hello
Glad to receive your email. Thank you for your work for SDK.
the IC8300 and QHY9 do not support the set resolution. Yes,the resolution could be changed.But it is not a real resolution change. It is a binning change.So I think we do not need to set resolution.(so,I let the api always return NOTSUPPORT).
Thank you all the time. 在 14-8-17 11:27, ykm2006 写道:
Hello, yesterday I looked around the code for IC8300 and I reached at the same point where Alex has fixed in terms of the SetChipResolution(). Actually ic8300.cpp has the same issue as qhy9s.cpp. I have my fix in my local branch but I thought the master branch should have the fix.
— Reply to this email directly or view it on GitHub https://github.com/qhyccd-lzr/QHYCCD_Linux/pull/3#issuecomment-52412587.
OK, but QHY9S::InitChipRegs() calls SetChipResolution() and if this call doesn't return SUCCESS, then it bails out and doesn't execute the SetChipBinMode(). Either way, the call to InitChipRegs() wouldn't return SUCCESS unless all functions it calls return SUCCESS (including SetChipResolution()).
So, we either make SetChipResolution return SUCCESS, or we make InitChipRegs() not call it, but it seemed like it set some parameters, so I wanted to make sure that code executes...
Oh ,It is my mistake. I think you are right.So, I will path the code to mine. Thanks a lot.
在 14-8-18 22:29, Alex Roman 写道:
OK, but QHY9S::InitChipRegs() calls SetChipResolution() and if this call doesn't return SUCCESS, then it bails out and doesn't execute the SetChipBinMode(). Either way, the call to InitChipRegs() wouldn't return SUCCESS unless all functions it calls return SUCCESS (including SetChipResolution()).
So, we either make SetChipResolution return SUCCESS, or we make InitChipRegs() not call it, but it seemed like it set some parameters, so I wanted to make sure that code executes...
— Reply to this email directly or view it on GitHub https://github.com/qhyccd-lzr/QHYCCD_Linux/pull/3#issuecomment-52499836.
Hello lzr, thank you for fixing the code. I am going to check with my IC8300 camera. Also thank you for adding some demonstration codes for IC8300, it would help understand how to use the SDK.
I also checked qhy9s.cpp and I am afraid to say that InitChipRegs() in qhy9s.cpp would still have the issue as Alex originally figured out. Could you please fix it as well, so that we can share the SDK to make our attempt to develop our software with your SDK as generic as possible and easy to maintain with your official SDK, not with our grass root patches.
Hello ykm2006
Yes,you are right.Thanks for your advice. I have merged to offcial SDK. Best Regards!
在 14-8-19 21:24, ykm2006 写道:
Hello lzr, thank you for fixing the code. I am going to check with my IC8300 camera. Also thank you for adding some demonstration codes for IC8300, it would help understand how to use the SDK.
I also checked qhy9s.cpp and I am afraid to say that InitChipRegs() in qhy9s.cpp would still have the issue as Alex originally figured out. Could you please fix it as well, so that we can share the SDK to make our attempt to develop our software with your SDK as generic as possible and easy to maintain with your official SDK, not with our grass root patches.
— Reply to this email directly or view it on GitHub https://github.com/qhyccd-lzr/QHYCCD_Linux/pull/3#issuecomment-52632378.
Thanks, but are you sure it is OK that the two logics for ic8300 and qhy9s are not identical?
In ic8300 you do not call SetChipResolution() but in qhy9s you accepted Alex's fix that calls SetChipResolution() setting values such as roixsize and roiysize and returns with QHYCCD_SUCCESS.
I assume both cameras are basically identical in terms of camera resolution capability, the logics for initialization for resolution should be identical too... Could you please check it again?
These were the fixes I had to make to get the camera working with a minimal INDI driver. What I've tested was the cooling and exposures. Binning and sub-framing are still TODO (not verified).