Skip to content
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

Migrate SVBony to code based on ZWO drivers #839

Merged
merged 6 commits into from
Sep 28, 2023
Merged

Conversation

knro
Copy link
Collaborator

@knro knro commented Sep 22, 2023

Due to the existing SVBony bug, I rebased the ZWO driver.

indi-svbony/svbony_base.h Outdated Show resolved Hide resolved
indi-svbony/svbony_ccd.h Outdated Show resolved Hide resolved
@knro
Copy link
Collaborator Author

knro commented Sep 24, 2023

Thanks, were you able to test this PR with your camera?

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

Now I'm testing it.

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

[1] Bayer Info Filter is wrong.
It should be GRBG, not RGGB.
It should be initialized with the Bayer Pattern obtained from the SDK.

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

[2] Cannot change Gain to any value on INDI control panel.
Log output is following:

2023-09-24T06:30:54: [ERROR] Failed to set Gain=300 (SVB_ERROR_GENERAL_ERROR).

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

[3] Exposure cannot be aborted.

  1. Set duration 500sec
  2. Start to expose.
  3. Abort to expose. It looks like it could have been aborted.
  4. Set duration 1sec.
  5. Start to expose.
  6. The exposure begins with the continuation of 500sec.

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

[4] Default value of "Bad pixel correction" on indi controle panel should be 0.
If "Bad pixel correction" is 1, too strong noise reduction will be enable so image become dull.

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

[5] Following Control items are not included in Fits header.
Contrast, Sharpness, WB_R, WB_G, WB_B, Gamma, Bad pixel correction.

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

[6] What is 'Auto exposure target' ?
'enum SVB_CONTROL_TYPE' has no such control.

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

[7] Is it possible to "Auto set" the INDI control panel ?
What is that function ?

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

[8] The cooling fan stops momentarily when Format is changed to "Raw 8 bit" or "Raw 16 bit", bining is changed and ROI is changed.
Please do not stop the fan after cooling down.

In particular, ROI and BINING may be changed dynamically by "Plate Solve" or "Auto focus", and each time this happens, cooling stops, which is a problem.

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

[9] Pressing driver restart button, driver is not restarted.
image

SVBONY CCD disappears from the INDI control panel.
image

Pressing the Exposure button causes KStars to exit with a Segmentation fault.

org.kde.kstars.ekos: Restarting driver "SVBONY CCD SV605CC"
org.kde.kstars.ekos: "SVBONY CCD SV605CC is offline."
Segmentation fault

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

I have some business to attend to, so I will stop for a while.
I will resume next week when I can.

@knro
Copy link
Collaborator Author

knro commented Sep 24, 2023

All these values are fetched from the SDK itself, there is no hard-coded values in the driver itself. I don't believe there is code to stop fan.. maybe there needs to be some code to ignore some values. Can you share logs? screenshots from Controls tab?

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

I have numbered each report.

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

[8]
This issue was my mistake.
The current indi_svbony_ccd also reproduces the issue except for bining.
The current driver is software bining, so it does not occur in the first place.
I guess SDK behaves that way.

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

[1]
The result Bayer pattern watched by the debugger is SVB_BAYER_GR.
in SVBONYBase::Connect()
image

Bayer patter is SVB_BAYPER_GR (GRBG), but the INDI Control Panel shows "RGGB".
image

SVBONYBase::getBayerString() does not seem to be called.
I guess the value obtained by mCameraProperty is not used in Fits Header.

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

Logs for [1][2].
log_21-15-21.txt

@jctk
Copy link
Contributor

jctk commented Sep 24, 2023

Log and Movie for Reproduce for [3]

Ekos.-.SVBONY.CCD.Profile.-.KStars.2023-09-24.21-32-18.mp4
[2023-09-24T21:32:25.904 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "Capturing 60.000-second  image..."
[2023-09-24T21:32:25.997 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] StartExposure->setexp : 60.000s "
[2023-09-24T21:32:25.997 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[INFO] Taking a 60 seconds frame... "
[2023-09-24T21:32:28.791 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "CCD capture aborted"
[2023-09-24T21:32:28.834 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Aborting exposure... "
[2023-09-24T21:32:32.936 東京 (標準時) DEBG ][   org.kde.kstars.ekos.capture] - Preparing capture job "" for execution.
[2023-09-24T21:32:33.027 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "Capturing 10.000-second  image..."
[2023-09-24T21:32:33.029 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Aborting exposure... "
[2023-09-24T21:32:36.281 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "CCD capture aborted"
[2023-09-24T21:32:39.125 東京 (標準時) DEBG ][   org.kde.kstars.ekos.capture] - Preparing capture job "" for execution.
[2023-09-24T21:32:39.214 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "Capturing 10.000-second  image..."
[2023-09-24T21:33:26.049 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] StartExposure->setexp : 10.000s "
[2023-09-24T21:33:26.067 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Aborting exposure... "
[2023-09-24T21:33:26.068 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[INFO] Taking a 10 seconds frame... "
[2023-09-24T21:33:26.069 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Aborting exposure... "
[2023-09-24T21:33:36.121 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] StartExposure->setexp : 10.000s "
[2023-09-24T21:33:36.153 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[INFO] Taking a 10 seconds frame... "
[2023-09-24T21:33:47.274 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[INFO] Exposure done, downloading image... "
[2023-09-24T21:33:48.234 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[ERROR] Failed to get data after exposure (4144x2822 #1 channels) (SVB_ERROR_TIMEOUT). "
[2023-09-24T21:35:49.207 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "Exposure timeout. Restarting exposure..."
[2023-09-24T21:35:49.210 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Aborting exposure... "
[2023-09-24T21:35:49.305 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] StartExposure->setexp : 10.000s "
[2023-09-24T21:35:49.306 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[INFO] Taking a 10 seconds frame... "
[2023-09-24T21:35:59.594 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[INFO] Exposure done, downloading image... "
[2023-09-24T21:36:00.519 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[INFO] Download complete. "
[2023-09-24T21:36:00.519 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Exposure complete "
[2023-09-24T21:36:00.585 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Uploading file. Ext: fits, Size: 23397120, sendImage? Yes, saveImage? No "
[2023-09-24T21:36:00.627 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] BLOB transfer took 0.00344649 seconds "
[2023-09-24T21:36:00.627 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Upload complete "
[2023-09-24T21:36:00.898 東京 (標準時) DEBG ][           org.kde.kstars.indi] - Image received. Mode: "Normal" Size: 23397120
[2023-09-24T21:36:01.301 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "Captured C:/Users/tkaku/AppData/Local/Temp/kstars.kotKGp"
[2023-09-24T21:36:01.304 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "Download Time: 0.68 s, New Download Time Estimate: 0.67 s."

}
}

ret = SVBGetVideoData(mCameraInfo.CameraID, buffer, nTotalBytes, 1000);
Copy link
Contributor

@jctk jctk Sep 25, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SVBGetVideoData must be retried when ret is SVB_ERROR_TIMEOUT.
It is necessary to be able to accept Abort processing at that time. Otherwise, it will not be able to be aborted while SVB_ERROR_TIMEOUT continues.

--
UPDATE 26.sep.2023
I do not understand the role of "SVBONYBase::grabImage(float duration)" and am not sure if a retry is really necessary on SVB_ERRPR_TIMEOUT.
Someone who knows the role of this function should determine if a retry is necessary.

@jctk
Copy link
Contributor

jctk commented Sep 25, 2023

I withdraw [4].
The user can change it to 0 if necessary.

@jctk
Copy link
Contributor

jctk commented Sep 25, 2023

[5][6][7] are questions.
Based on the answers to these questions I will consider the test content.

@jctk
Copy link
Contributor

jctk commented Sep 25, 2023

Due to the existing SVBony bug, I rebased the ZWO driver.

BTW, What is 'the existing SVBony bug' ?

@knro
Copy link
Collaborator Author

knro commented Sep 25, 2023

Can you summarize the issues again? There was an issue with existing driver in that it didn't cover all controls and had them hard-coded so the driver was crashing with more recent cameras i.e. 7XX

@jctk
Copy link
Contributor

jctk commented Sep 25, 2023

Summarizing is difficult today.
Can I submit them to ISSUES as new bugs instead of summarizing?

Multiple bugs, even if summarized, quickly become crowded because the PR chat cannot be threaded.
If there is a proper way to manage multiple issues against a PR other than ISSUES, please let me know.

And as for the SV705C bug, from the two lines of logs posted on the INDI Forum, I thought the direct cause of the crash would be during config file loading. But I was too busy to investigate.

I left Controls hard coded because I was asked to change as little of the original code as possible.

@jctk
Copy link
Contributor

jctk commented Sep 25, 2023

I'm sure you know how to fix [1] and [3] with my research.
The following are the causes, right?
In [1], the Bayer Pattern was retrieved but not set.
#839 (comment)

In [3], the timer was not stopped after abort.
#839 (comment)

@jctk
Copy link
Contributor

jctk commented Sep 26, 2023

Regarding test equipment.
I won't be able to test the monochrome camera "SV605MC" for a while. I am sending it to the manufacturer for repair.
I will test it after repair.

static bool warn_roi_height = true;
static bool warn_roi_width = true;

const char *SVBONYBase::getBayerString() const
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If SVBONYBase::getBayerString() is called before the camera is opened, the Bayer Pattern should be "Unknown".
SVBONY Camera SDK cannot get the Bayer Pattern before the camera is opened.

case SVB_BAYER_BG: return "BGGR";
case SVB_BAYER_GR: return "GRBG";
case SVB_BAYER_GB: return "GBRG";
default: return "RGGB";
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"default" case should be "GRBG".
The Bayer Patter for SVBONY's color camera is "GRBG", so that the correct pattern can be set even in the unlikely event that the Bayer Pattern cannot be obtained.
In that case, "case SVB_BAYER_RG" which is "RGGB" should be added.

In addition, a "note" should be added in the comments so that const char *toString(SVB_BAYER_PATTERN pattern) is not called before the camera is opened.
SVBONY Camera SDK cannot get Bayer patter before camera open.

@jctk
Copy link
Contributor

jctk commented Sep 26, 2023

The results of the code inspection and testing at this time are summarized below.

A. Code Inspection

A-1 BUG

Some comment include word "ASI"

A-2 COMMENT

If SVBGetVideData call during SVBONYBase::grabImage(float duration) returns SVB_ERROR_TIMEOUT, shouldn't SVBGetVideData be retried?

A-3 RECOMMENDATION

Behavior in function calls before camera open

indi-svbony/svbony_base.cpp
const char *SVBONYBase::getBayerString() const

If SVBONYBase::getBayerString() is called before the camera is opened, the Bayer Pattern should be "Unknown".
SVBONY Camera SDK cannot get the Bayer Pattern before the camera is opened.

A-4 RECOMMENDATION

Default value of Bayer Pattern for SVBONY Camera

indi-svbony/svbony_helpers.h
const char *toString(SVB_BAYER_PATTERN pattern)

"default" case should be "GRBG".
The Bayer Patter for SVBONY's color camera is "GRBG", so that the correct pattern can be set even in the unlikely event that the Bayer Pattern cannot be obtained.
In that case, "case SVB_BAYER_RG" which is "RGGB" should be added.

In addition, a "note" should be added in the comments so that const char *toString(SVB_BAYER_PATTERN pattern) is not called before the camera is opened.
SVBONY Camera SDK cannot get Bayer patter before camera open.

A-5 BUG?

bool SVBONYBase::initProperties()
Line 255:IUSaveText(&BayerT[2], getBayerString());

With this code, wouldn't a monochrome camera also become RGGB?

A-6 RECOMMENDATION
UPDATE: 28-Sep-2023 20:39 JST: Added new review A-6.

SVBONY Camera-specific improvements to function SVBONYBase::Connect().

The following code should be placed after called SVBOpenCamera().

ret = SVBRestoreDefaultParam(mCameraInfo.cameraID);
if (ret != SVB_SUCCESS) {...}
ret = SVBSetAutoSaveParam(mCameraInfo.cameraID, SVB_FALSE);
if (ret != SVB_SUCCESS) {...}

SVBONY Camera has the ability to automatically save/load configuration files.
Loading a settings file that has been modified by another application may result in unintended behavior.
Therefore, when using the SVBONY Camera, you should set the settings to default, disable automatic saving/loading of the configuration file, and initialize the parameters again according to the configuration file of the INDI SVBONY CCD Driver.

A-7 BUG
UPDATE: 28-Sep-2023: Added new review A-6.

int SVBONYBase::grabImage(float duration)

The monochrome camera determination in SVBONYBase::grabImage() is insufficient.
If SVB_IMG_* symbol is used to determine the monochrome camera, it must be compared with all of the following symbols.

SVB_IMG_Y8
SVB_IMG_Y10
SVB_IMG_Y12
SVB_IMG_Y14
SVB_IMG_Y16

A-8 RECOMMENDATION
UPDATE: 28-Sep-2023: Added new review A-7.

int SVBONYBase::grabImage(float duration)
Bayer Pattern in the INDI control panel is set to RGGB until the image is retrieved.

B. Test Result

Camera tested

  • SV405CC OSC

Cameras to be tested in the future

  • SV605MC cooled monochrome camera
  • Now my SV605MC is under repair. To be tested after repair; do not merge PRs before testing SV605MC.

UPDATE: 27-Sep-2023 18:20 JST: My SV605MC will be returned in middle of Oct. from the factory.

OS

  • StellarMate OS 64bit
  • INDI : Latest GitHub at 24-sep-2023
  • INDI 3rd party drivers: Latest GitHub and PR#839 at 24-sep-2023

B-1 BUG

Bayer Info Filter is wrong.
It should be GRBG, not RGGB.
It should be initialized with the Bayer Pattern obtained from the SDK.

Log
log_21-15-21.txt

The result Bayer pattern watched by the debugger is SVB_BAYER_GR.
in SVBONYBase::Connect()
image

Bayer patter is SVB_BAYPER_GR (GRBG), but the INDI Control Panel shows "RGGB".
image

SVBONYBase::getBayerString() does not seem to be called.
I guess the value obtained by mCameraProperty is not used in Fits Header.

B-2 BUG

UPDATE: 26-Sep-2023 20:32 JST: This problem was not reproduced today.
UPDATE: 28-Sep-2023 20:32 JST: This problem was reproduced today.

Cannot change Gain to any value on INDI control panel.

Code immediately after calling the SDK's API to change Gain:
image

Value of variable immediately after call:
image

Log
log_21-15-21.txt

B-3 BUG:

Exposure cannot be aborted.

1. Set duration 500sec
2. Start to expose.
3. Abort to expose. It looks like it could have been aborted.
4. Set duration 1sec.
5. Start to expose.
6. The exposure begins with the continuation of 500sec.

Note:
After correcting this BUG, the image data remaining in the SDK camera SDK buffer after the exposure is stopped must be discarded.

Log and Movie for Reproduce

Ekos.-.SVBONY.CCD.Profile.-.KStars.2023-09-24.21-32-18.mp4
[2023-09-24T21:32:25.904 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "Capturing 60.000-second  image..."
[2023-09-24T21:32:25.997 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] StartExposure->setexp : 60.000s "
[2023-09-24T21:32:25.997 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[INFO] Taking a 60 seconds frame... "
[2023-09-24T21:32:28.791 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "CCD capture aborted"
[2023-09-24T21:32:28.834 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Aborting exposure... "
[2023-09-24T21:32:32.936 東京 (標準時) DEBG ][   org.kde.kstars.ekos.capture] - Preparing capture job "" for execution.
[2023-09-24T21:32:33.027 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "Capturing 10.000-second  image..."
[2023-09-24T21:32:33.029 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Aborting exposure... "
[2023-09-24T21:32:36.281 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "CCD capture aborted"
[2023-09-24T21:32:39.125 東京 (標準時) DEBG ][   org.kde.kstars.ekos.capture] - Preparing capture job "" for execution.
[2023-09-24T21:32:39.214 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "Capturing 10.000-second  image..."
[2023-09-24T21:33:26.049 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] StartExposure->setexp : 10.000s "
[2023-09-24T21:33:26.067 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Aborting exposure... "
[2023-09-24T21:33:26.068 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[INFO] Taking a 10 seconds frame... "
[2023-09-24T21:33:26.069 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Aborting exposure... "
[2023-09-24T21:33:36.121 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] StartExposure->setexp : 10.000s "
[2023-09-24T21:33:36.153 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[INFO] Taking a 10 seconds frame... "
[2023-09-24T21:33:47.274 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[INFO] Exposure done, downloading image... "
[2023-09-24T21:33:48.234 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[ERROR] Failed to get data after exposure (4144x2822 #1 channels) (SVB_ERROR_TIMEOUT). "
[2023-09-24T21:35:49.207 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "Exposure timeout. Restarting exposure..."
[2023-09-24T21:35:49.210 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Aborting exposure... "
[2023-09-24T21:35:49.305 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] StartExposure->setexp : 10.000s "
[2023-09-24T21:35:49.306 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[INFO] Taking a 10 seconds frame... "
[2023-09-24T21:35:59.594 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[INFO] Exposure done, downloading image... "
[2023-09-24T21:36:00.519 東京 (標準時) INFO ][           org.kde.kstars.indi] - SVBONY CCD SV405CC :  "[INFO] Download complete. "
[2023-09-24T21:36:00.519 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Exposure complete "
[2023-09-24T21:36:00.585 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Uploading file. Ext: fits, Size: 23397120, sendImage? Yes, saveImage? No "
[2023-09-24T21:36:00.627 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] BLOB transfer took 0.00344649 seconds "
[2023-09-24T21:36:00.627 東京 (標準時) DEBG ][           org.kde.kstars.indi] - SVBONY CCD SV405CC : "[DEBUG] Upload complete "
[2023-09-24T21:36:00.898 東京 (標準時) DEBG ][           org.kde.kstars.indi] - Image received. Mode: "Normal" Size: 23397120
[2023-09-24T21:36:01.301 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "Captured C:/Users/tkaku/AppData/Local/Temp/kstars.kotKGp"
[2023-09-24T21:36:01.304 東京 (標準時) INFO ][   org.kde.kstars.ekos.capture] - "Download Time: 0.68 s, New Download Time Estimate: 0.67 s."

B-4 REQUEST - Priority LOW

Default value of "Bad pixel correction" on indi controle panel should be 0.
If "Bad pixel correction" is 1, too strong noise reduction will be enable so image become dull.

B-5 REQUEST - Priority LOW

Following Control items are not included in Fits header.
Contrast, Sharpness, WB_R, WB_G, WB_B, Gamma, Bad pixel correction.

B-6 QUESTION

What is 'Auto exposure target' ?
'enum SVB_CONTROL_TYPE' has no such control.

I need the answer to this question in order for me to test it.

B-7 QUESTION

Is it possible to "Auto set" the INDI control panel ?
What is that function ?

I need the answer to this question in order for me to test it.

B-8 Not BUG - SVBONY Camera SDK Specifications

The cooling fan stops momentarily when Format is changed to "Raw 8 bit" or "Raw 16 bit", bining is changed and ROI is changed.
Please do not stop the fan after cooling down.

B-9 BUG

UPDATE: 26-Sep-2023 20:32 JST: This problem was not reproduced today.

Pressing driver restart button, driver is not restarted.
image

SVBONY CCD disappears from the INDI control panel.
image

Pressing the Exposure button causes KStars to exit with a Segmentation fault.

org.kde.kstars.ekos: Restarting driver "SVBONY CCD SV605CC"
org.kde.kstars.ekos: "SVBONY CCD SV605CC is offline."
Segmentation fault

indi-svbony/svbony_base.cpp Outdated Show resolved Hide resolved
@jctk
Copy link
Contributor

jctk commented Sep 26, 2023

I also plan to test the following operations:
*I think Jasen can also be tested in this area. Please try it.

Connect/disconnect/reconnect from EKOS
INDI disconnect/reconnect from idle state
INDI disconnect/reconnect from non-idle state
INDI disconnect/reconnect after exposure abort
Operations for INDI Local connection and Remote connection patterns
SVBONY Camera SDK automatic settings save status and behavior
etc....

And the monochrome camera test

@jctk
Copy link
Contributor

jctk commented Sep 28, 2023

Test Category-C. CONNECT, DISCONNECT and RECONNECT

C-1 BUG
Unable to remotely establish the SVBONY CCD.

Instruction:
1. Start indiserver with drivers of svbony ccd and telesope simurator on StellarMate OS
$ indiserver -v ~/Projects/build/indi-3rdparty/indi-svbony/indi_svbony_ccd indi_simulator_telescope
2. Launch Kstars on Windows 11.
3. Start Ekos. (Push Start Ekos button on Ekos Setup Tab)
4. Connect to INDI. (Push Connect button on Ekos Setup Tab)
5. Disconnect from INDI. (Push Disonnect button on Ekos Setup Tab)
6. Connect to INDI. (Push Connect button on Ekos Setup Tab)
7. Disconnect from INDI. (Push Disonnect button on Ekos Setup Tab)
8. Connect to INDI. (Push Connect button on Ekos Setup Tab)
9. Disconnect from INDI. (Push Disonnect button on Ekos Setup Tab)
10. Stop Ekos. (Push Stop Ekos button on Ekos Setup Tab)
11. Retart Ekos. -> Reproduce a issue.

Shown messages in Ekos Setup Tab:

2023-09-27T19:04:28 Unable to remotely establish the following devices:
+ SVBONY CCD
+ SVBONY CCD
+ Telescope Simulator
Please ensure each device is connected and powered on.
2023-09-27T19:04:18 INDI services started. Connection to remote INDI server stellarmate.local:7,624 is successful. Waiting for devices...
2023-09-27T19:04:14 Connecting to remote INDI server at stellarmate.local on port 7,624 …

Figurers:

image
Start Ekos button.

image
Stop Ekos button.

image
Connect button.

image
Disconnect button.

Profile for this test:

  • Name: SVBONY CCD
  • Auto Connect: not checked
  • Port Selector: not checked
  • Site Info: not checked
  • Remote: stellarmate.local:7624
  • Mount: Telescope Simulator
  • Camera 1: SVBONY CCD
  • Camera 2: SVBONY CCD
  • Other devices: --

Notes:

  • The reproducing degree of the issue is highly. But not 100%.
  • If reproduced the issue, stellarmate os should be rebooted.

@jctk
Copy link
Contributor

jctk commented Sep 28, 2023

Update following comment:
#839 (comment)

Added A-6
Updated B-2

Added following comment for Test Category-C:
#839 (comment)

Added C-1

…n files.

Loading a settings file that has been modified by another application may result in unintended behavior.
Therefore, when using the SVBONY Camera, you should set the settings to default, disable automatic saving/loading of the configuration file, and initialize the parameters again according to the configuration file of the INDI SVBONY CCD Driver. Proposed by @jctk
@jctk
Copy link
Contributor

jctk commented Sep 28, 2023

Update following comment:
#839 (comment)

Added A-7

@jctk
Copy link
Contributor

jctk commented Sep 28, 2023

Update following comment:
#839 (comment)

Added A-8

@knro
Copy link
Collaborator Author

knro commented Sep 28, 2023

Regarding bayer pattern, it is set from current format before we upload image, so it's fine.

@jctk
Copy link
Contributor

jctk commented Sep 28, 2023

Regarding bayer pattern, it is set from current format before we upload image, so it's fine.

Functionally your description is correct.
However, it is inconsistent that the Bayer Pattern is shown as RGGB in the INDI control panel even though the Bayer Pattern is not determined until the shot is taken.

This is my opinion, at least the Bayer pattern in the INDI control panel before shooting should be blank.

@knro
Copy link
Collaborator Author

knro commented Sep 28, 2023

It's also loaded from config, so setting to blank will not work (only FIRST time you connect without configuration file).

@knro knro merged commit bddb5ee into indilib:master Sep 28, 2023
4 checks passed
@knro knro deleted the svbony_work branch September 28, 2023 13:35
@jctk
Copy link
Contributor

jctk commented Sep 28, 2023

Okay, There is nothing functionally wrong with it. It's just that I'm a nervous wreck and the first display bothers me.
The current your implementation is fine.

@jctk
Copy link
Contributor

jctk commented Sep 28, 2023

@knro
I haven't tested the monochrome camera, is that ok?

@knro
Copy link
Collaborator Author

knro commented Sep 28, 2023

It would be nice to have it tested with monochrome of course, but this PR would solve a lot of issues for many users facing crashes. There are still minor things pending like FITS headers..etc which hopefully I'll have time to later

@jctk
Copy link
Contributor

jctk commented Sep 28, 2023

I would like to see a note in the ChangeLog that it has not been tested to work with a monochrome camera.

@jctk
Copy link
Contributor

jctk commented Sep 28, 2023

@knro
No variation of SVB_IMG_Y is defined in svbony_helper.h.
It would be better to add those variations to support monochrome cameras.
At least the image output of SV605MC should be SVB_IMG_Y16.

@jctk
Copy link
Contributor

jctk commented Sep 29, 2023

@knro
I forgot to tell you one more thing. The cameras whose operation was confirmed in this PR are SV405CC and SV905C. SV905C only checks the connection. I do not own the SV705C and have not confirmed the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants