26 #define RESPONSE_TIMEOUT 3
53 virtual bool Connect()
override;
59 virtual bool ISNewNumber(
const char *dev,
const char *name,
double values[],
char *names[],
int n)
override;
60 virtual bool ISNewSwitch(
const char *dev,
const char *name,
ISState *states,
char *names[],
int n)
override;
64 virtual bool ISNewText(
const char *dev,
const char *name,
char **texts,
char **names,
int n)
override;
69 IText MountInfoT[2] {};
70 int GuideNSTID { -1 };
71 int GuideWETID { -1 };
88 virtual bool Goto(
double ra,
double dec)
override;
90 virtual bool Sync(
double ra,
double dec)
override;
93 virtual bool Abort()
override;
97 virtual bool updateLocation(
double latitude,
double longitude,
double elevation)
override;
98 virtual bool updateTime(ln_date *utc,
double utc_offset)
override;
110 virtual bool Park()
override;
111 virtual bool UnPark()
override;
114 virtual bool SetParkPosition(
double Axis1Value,
double Axis2Value)
override;
117 bool SendCommand(
const char *cmd_org);
118 bool SendCommand(
const char *
cmd,
int val);
119 bool SendCommand(
const char *
cmd,
double val);
121 bool CommandResponse(
const char* pCommand,
const char* pResponse,
char delimeter,
double *pDouble,
int *pInteger =
nullptr);
122 bool CommandResponseHour(
const char* pCommand,
const char* pResponse,
char delimeter,
double* Hour);
123 bool CommandResponseStr(
const char* pCommand,
const char* pResponse,
char delimeter,
char* pReturn,
int len = 0);
124 bool CommandResponseChar(
const char* pCommand,
const char* pResponse,
char* pReturn);
126 bool GetMountParams(
bool bAll =
false);
128 bool GetParamStr(
const char* pInStr,
char* pOutStr,
int len,
const char* pResponse,
char delimeter);
129 bool GetParamNumber(
const char* pInStr,
char* pOutStr,
int len,
const char* pResponse,
char delimeter,
double *pDouble,
130 int *pInteger = NULL);
131 bool GetParamHour(
const char* pInStr,
char* pOutStr,
int len,
const char* pResponse,
char delimeter,
double *pHour);
134 bool GetEqPosition(
double *
ra,
double *
dec);
137 int ReadResponse(
char *buf,
int len,
char delimeter,
int timeout =
RESPONSE_TIMEOUT);
139 bool SetTarget(
double ra,
double dec);
141 void guideTimeoutNS();
142 void guideTimeoutWE();
144 static void guideTimeoutHelperNS(
void * p);
145 static void guideTimeoutHelperWE(
void * p);
147 void _setPECState(
int pec_status);
virtual bool SetCurrentPark() override
SetCurrentPark Set current coordinates/encoders value as the desired parking position.
virtual IPState GuideSouth(uint32_t ms) override
Guide south for ms milliseconds. South is defined as DEC-.
virtual bool ReadScopeStatus() override
Read telescope status.
virtual bool Disconnect() override
Disconnect from device.
virtual bool Park() override
Park the telescope to its home position.
virtual bool Abort() override
Abort any telescope motion including tracking if possible.
virtual bool MoveWE(INDI_DIR_WE dir, TelescopeMotionCommand command) override
Move the telescope in the direction dir.
virtual bool Handshake() override
perform handshake with device to check communication
virtual bool ISNewSwitch(const char *dev, const char *name, ISState *states, char *names[], int n) override
Process the client newSwitch command.
virtual bool UnPark() override
Unpark the telescope if already parked.
virtual bool ISNewText(const char *dev, const char *name, char **texts, char **names, int n) override
virtual bool MoveNS(INDI_DIR_NS dir, TelescopeMotionCommand command) override
Start or Stop the telescope motion in the direction dir.
virtual IPState GuideWest(uint32_t ms) override
Guide west for ms milliseconds. West is defined as RA-.
virtual bool Sync(double ra, double dec) override
Set the telescope current RA and DEC coordinates to the supplied RA and DEC coordinates.
virtual bool SetParkPosition(double Axis1Value, double Axis2Value) override
SetParkPosition Set desired parking position to the supplied value. This ONLY sets the desired park p...
virtual bool SetDefaultPark() override
SetDefaultPark Set default coordinates/encoders value as the desired parking position.
virtual bool updateProperties() override
Called when connected state changes, to add/remove properties.
virtual IPState GuideEast(uint32_t ms) override
Guide east for ms milliseconds. East is defined as RA+.
virtual bool ISNewNumber(const char *dev, const char *name, double values[], char *names[], int n) override
Process the client newNumber command.
virtual bool updateLocation(double latitude, double longitude, double elevation) override
Update telescope location settings.
virtual bool Connect() override
Connect to the device. INDI::DefaultDevice implementation connects to appropriate connection interfac...
virtual bool SetSlewRate(int index) override
SetSlewRate Set desired slew rate index.
virtual bool SetTrackEnabled(bool enabled) override
SetTrackEnabled Engages or disengages mount tracking. If there are no tracking modes available,...
virtual bool updateTime(ln_date *utc, double utc_offset) override
Update telescope time, date, and UTC offset.
virtual IPState GuideNorth(uint32_t ms) override
Guide north for ms milliseconds. North is defined as DEC+.
virtual bool initProperties() override
Called to initialize basic properties required all the time.
virtual const char * getDefaultName() override
virtual bool SetTrackMode(uint8_t mode) override
SetTrackMode Set active tracking mode. Do not change track state.
virtual bool Goto(double ra, double dec) override
Move the scope to the supplied RA and DEC coordinates.
Switch vector property descriptor.
Text vector property descriptor.