Joachim replied to the topic 'Driver OnStep (LX200 like) for INDI' in the forum. 2 months ago

Awesome, I will check it out.

And what you say about also making it possible to set the Onstep weather data from INDI or some other connected device makes perfect sense to me!

Read More...

Joachim replied to the topic 'simulation devices enable debug fails' in the forum. 2 months ago

Great, thanks! I guess the GUI tricked me and I am not sure whether I find it optimal to have the INDI driver debug settings in the Ekos logs somewhere instead of the INDI / driver settings, but most importantly, it's working now.

Cheers,

Joachim

Read More...

Joachim replied to the topic 'simulation devices enable debug fails' in the forum. 2 months ago

same problem here.

Read More...

Joachim replied to the topic 'Re:BLOB Property' in the forum. 3 months ago

Thanks! This should get me started for the snooping part at least.

Possibly I also had a wrong idea of how a client would handle the BLOB property. Does a FITS frame need to be explicitly sent to a client or does it get notified when a corresponding BLOB property changes?

Cheers,

Joachim

Read More...

Joachim thanked Eric in topic Re:BLOB Property 3 months ago

Joachim created a new topic ' BLOB Property' in the forum. 3 months ago

Hello,

I would like to experiment with writing a driver that snoops incoming fits data from a CCD and that has a BLOB property which in itself stores fits data that a client should be able to display.
While I found the tutorial_three, I did not find it too instructive for my purposes and I did not find any other examples. Could anyone give me any pointers?

Many thanks,

Joachim

Read More...

Joachim created a new topic ' Standard property ATMOSPHERE' in the forum. 3 months ago

Hi,

in the API documentation I found a mention of the standard property ATMOSPHERE with number members for temperature, pressure, and humidity.

I can not find this implemented or used anywhere and would be grateful if someone could point me to the right direction.

Cheers,

Joachim

Read More...

Joachim replied to the topic 'Driver OnStep (LX200 like) for INDI' in the forum. 3 months ago

Would love the weather support :)

Thanks in any case!

Joachim

Read More...

Joachim replied to the topic 'FITS Keywords' in the forum. 7 months ago

I created the github pull request for the absolute position.

The temperature information would be nice to have as well. It is slightly more complex, though:

- Thinking of determining temperature correction coefficients etc, I agree that it probably would be most useful to record the temperature at the time of the autofocus, not the current temperature. Well or actually, both should ideally be recorded in the FITS header.
- A temperature measurement could be provided by the driver of the focuser (in which temperature is not a standard property) or potentially by the driver of some weather device (in which case it might in principle be of interest to record also e.g. wind direction and speed).

I think someone with a better overview than me would need to code this.

Cheers,

Joachim

Read More...

Joachim replied to the topic 'FITS Keywords' in the forum. 7 months ago

Hi.

I was wondering about the focus position in the header as well. The modifications n the indiccd source files listed below (output from diff) appear to make it work for the CCD simulator. To my understanding this should be propagated to any CCD driver. I haven't done any further testing though, so I cannot tell whether this true and whether the mod could mess up other things.... but it at least suggests to me that it should be possible quite easily?

Cheers,

Joachim



indiccd.h:

505a506
> long FocusPos;
545c546
< IText ActiveDeviceT[4] {};
---
> IText ActiveDeviceT[5] {};
549a551
> SNOOP_FOCUSER,



indiccd.cpp:

118a119
> FocusPos = std::numeric_limits<long>::quiet_NaN();
411,414c412,416
< IUFillText(&ActiveDeviceT[1], "ACTIVE_FOCUSER", "Focuser", "Focuser Simulator");
< IUFillText(&ActiveDeviceT[2], "ACTIVE_FILTER", "Filter", "CCD Simulator");
< IUFillText(&ActiveDeviceT[3], "ACTIVE_SKYQUALITY", "Sky Quality", "SQM");
< IUFillTextVector(&ActiveDeviceTP, ActiveDeviceT, 4, getDeviceName(), "ACTIVE_DEVICES", "Snoop devices", OPTIONS_TAB,
---
> IUFillText(&ActiveDeviceT[1], "ACTIVE_ROTATOR", "Rotator", "Rotator Simulator");
> IUFillText(&ActiveDeviceT[2], "ACTIVE_FOCUSER", "Focuser", "Focuser Simulator");
> IUFillText(&ActiveDeviceT[3], "ACTIVE_FILTER", "Filter", "CCD Simulator");
> IUFillText(&ActiveDeviceT[4], "ACTIVE_SKYQUALITY", "Sky Quality", "SQM");
> IUFillTextVector(&ActiveDeviceTP, ActiveDeviceT, 5, getDeviceName(), "ACTIVE_DEVICES", "Snoop devices", OPTIONS_TAB,
431a434
> IDSnoopDevice(ActiveDeviceT[SNOOP_FOCUSER].text, "ABS_FOCUS_POSITION");
727a731,743
> else if (!strcmp(propName, "ABS_FOCUS_POSITION"))
> {
> for (ep = nextXMLEle(root, 1); ep != nullptr; ep = nextXMLEle(root, 0))
> {
> const char * name = findXMLAttValu(ep, "name");
>
> if (!strcmp(name, "FOCUS_ABSOLUTE_POSITION"))
> {
> FocusPos = atol(pcdataXMLEle(ep));
> break;
> }
> }
> }
786a803,807
> if (strlen(ActiveDeviceT[SNOOP_FOCUSER].text) > 0)
> IDSnoopDevice(ActiveDeviceT[SNOOP_FOCUSER].text, "FOCUS_ABSOLUTE_POSITION");
> else
> MPSAS = std::numeric_limits<double>::quiet_NaN();
>
---
> fits_update_key_dbl(fptr, "FOCUSPOS", FocusPos, 3, "Focus Position in steps", &status);
1722c1732,1734
<
---

Read More...