×

INDI Library v2.0.7 is Released (01 Apr 2024)

Bi-monthly release with minor bug fixes and improvements

CCD simulator - How to save resolution & pixel size

  • Posts: 167
  • Thank you received: 23
This has probably been asked before, but the search function didn't give me a valid answer.
So sorry if asked twice...

After changing the CCD resolution and pixel size, how can I save these settings so they remain next time Ekos/Indi has been started?
Tried already to save the configuration but that didn't work.

1 month 2 days ago #99923
Attachments:

Please Log in or Create an account to join the conversation.

  • Posts: 602
  • Thank you received: 281
Hi Fitchie,

Options->Save saves some of the data like pixel size.

Resolution looks to be defaulted to 1280x1024 on startup so I don't know if its possible to set that differently.
The following user(s) said Thank You: Fitchie
1 month 1 day ago #99933

Please Log in or Create an account to join the conversation.

  • Posts: 111
  • Thank you received: 41
The simulator settings are hold in property
SimulatorSettingsNP
which are also
saved: SimulatorSettingsNP.save(fp)
but indeed changing values in the property and saving them e.g.
SimulatorSettingsNP[SIM_XRES].fill("SIM_XRES", "CCD X resolution", "%4.0f", 512, 8192, 512, 1280);
SimulatorSettingsNP[SIM_YRES].fill("SIM_YRES", "CCD Y resolution", "%4.0f", 512, 8192, 512, 1024);
SimulatorSettingsNP[SIM_XSIZE].fill("SIM_XSIZE", "CCD X Pixel Size", "%4.2f", 1, 30, 5, 5.2);
SimulatorSettingsNP[SIM_YSIZE].fill("SIM_YSIZE", "CCD Y Pixel Size", "%4.2f", 1, 30, 5, 5.2);
are subsequently loading back the property does not work. Also the step sizes do not seemsto be correct (e.g. X resolution can only be changed in 512 pixel steps, etc..)

Another property is
ResolutionSP
:
inline static const std::vector<std::pair<uint32_t, uint32_t>> Resolutions =
        {
            {1280, 1024},
            {6000, 4000}
        };
// Resolution
    for (uint8_t i = 0; i < Resolutions.size(); i++)
    {
        std::ostringstream ss;
        ss << Resolutions[i].first << " x " << Resolutions[i].second;
        ResolutionSP[i].fill(ss.str().c_str(), ss.str().c_str(), i == 0 ? ISS_ON : ISS_OFF);
    }
    ResolutionSP.fill(getDeviceName(), "CCD_RESOLUTION", "Resolution", SIMULATOR_TAB, IP_RW, ISR_1OFMANY, 60, IPS_IDLE);

This property is used so far I can see only used in 3rdparty in toupek driver but nowhere else:
[indi-3rdparty]$ grep -r "CCD_RESOLUTION" .                                                                             master
./indi-toupbase/indi_toupbase.cpp:    IUFillSwitchVector(&m_ResolutionSP, m_ResolutionS, m_Instance->model->preview, getDeviceName(), "CCD_RESOLUTION",
[indi]$ grep -r "CCD_RESOLUTION" .
./drivers/ccd/ccd_simulator.cpp:    ResolutionSP.fill(getDeviceName(), "CCD_RESOLUTION", "Resolution", SIMULATOR_TAB, IP_RW, ISR_1OFMANY, 60, IPS_IDLE);

How about removing CCD_RESOLUTION/ResolutionSP property and refactoring the CCD_Simulator code?
The following user(s) said Thank You: John, Fitchie
1 month 1 day ago #99934

Please Log in or Create an account to join the conversation.

  • Posts: 167
  • Thank you received: 23
Thanks for the feedback.
Have tried some suggestions but have come to the conclusion that after a complete restart of Kstars & Ekos all settings are back to default.

Is it a big job to enable custom CCDs?
I often use this functionality to find objects and see how they will appear on the camera.
4 weeks 1 day ago #99966

Please Log in or Create an account to join the conversation.

Time to create page: 0.266 seconds