67 virtual bool ISNewNumber(
const char *dev,
const char *name,
double values[],
char *names[],
int n)
override;
68 virtual bool ISNewSwitch(
const char *dev,
const char *name,
ISState *states,
char *names[],
int n)
override;
69 virtual bool ISNewText(
const char *dev,
const char *name,
char *texts[],
char *names[],
int n)
override;
108 uint32_t focuserSimPosition = 0;
109 uint32_t rotatorSimPosition = 0;
110 uint32_t rotatorSimPA = 0;
111 uint32_t targetFocuserPosition = 0;
112 uint32_t targetRotatorPosition = 0;
113 uint32_t targetRotatorAngle = 0;
114 uint32_t maxControllerTicks = 0;
119 bool simCompensationOn;
122 struct timeval focusMoveStart;
123 float focusMoveRequest;
130 bool getFocusConfig();
131 bool getFocusStatus();
136 bool setFocusPosition(uint16_t position);
139 bool setTemperatureCompensation(
bool enable);
140 bool setTemperatureCompensationMode(
char mode);
141 bool setTemperatureCompensationCoeff(
char mode, int16_t coeff);
142 bool setTemperatureCompensationOnStart(
bool enable);
146 bool setBacklashCompensationSteps(
DeviceType type, uint16_t steps);
163 ISwitch TemperatureCompensateS[2];
167 ISwitch TemperatureCompensateOnStartS[2];
175 ISwitch TemperatureCompensateModeS[5];
187 ISwitch FocuserHomeOnStartS[2];
198 bool isFocuserAbsolute;
199 bool isFocuserHoming;
206 bool getRotatorConfig();
207 bool getRotatorStatus();
209 IPState MoveAbsRotatorTicks(uint32_t targetTicks);
210 IPState MoveAbsRotatorAngle(
double angle);
211 bool reverseRotator(
bool enable);
246 ISwitch RotatorHomeOnStartS[2];
249 bool isRotatorHoming;
256 bool setLedLevel(
int level);
263 float calcTimeLeft(timeval,
float);
274 IText HFocusNameT[2] {};
virtual void TimerHit() override
Callback function to be called once SetTimer duration elapses.
virtual bool saveConfigItems(FILE *fp) override
saveConfigItems Saves the Device Port and Focuser Presets in the configuration file
virtual IPState MoveRelFocuser(FocusDirection dir, uint32_t ticks) override
MoveFocuser the focuser to an relative position.
virtual IPState HomeRotator() override
HomeRotator Go to home position.
virtual IPState MoveFocuser(FocusDirection dir, int speed, uint16_t duration) override
MoveFocuser the focuser in a particular direction with a specific speed for a finite duration.
virtual bool ISNewText(const char *dev, const char *name, char *texts[], char *names[], int n) override
Process the client newSwitch command.
virtual bool SetFocuserBacklashEnabled(bool enabled) override
SetFocuserBacklashEnabled Enables or disables the focuser backlash compensation.
bool focuserConfigurationComplete
virtual IPState MoveRotator(double angle) override
MoveRotator Go to specific angle.
bool rotatorConfigurationComplete
virtual bool ISNewNumber(const char *dev, const char *name, double values[], char *names[], int n) override
Process the client newNumber command.
virtual bool updateProperties() override
updateProperties is called whenever there is a change in the CONNECTION status of the driver....
virtual bool SetRotatorBacklashEnabled(bool enabled) override
SetRotatorBacklashEnabled Enables or disables the Rotator backlash compensation.
virtual bool AbortFocuser() override
AbortFocuser all focus motion.
virtual bool SetFocuserBacklash(int32_t steps) override
SetFocuserBacklash Set the focuser backlash compensation value.
virtual bool ReverseRotator(bool enabled) override
ReverseRotator Reverse the direction of the rotator. CW is usually the normal direction,...
virtual IPState MoveAbsFocuser(uint32_t targetPosition) override
MoveFocuser the focuser to an absolute position.
virtual bool ISNewSwitch(const char *dev, const char *name, ISState *states, char *names[], int n) override
Process the client newSwitch command.
virtual bool SetRotatorBacklash(int32_t steps) override
SetRotatorBacklash Set the Rotatorer backlash compensation value.
virtual bool Handshake() override
perform handshake with device to check communication
virtual bool initProperties() override
Initilize properties initial state and value. The child class must implement this function.
virtual const char * getDefaultName() override
ISwitchVectorProperty AbortRotatorSP
Light vector property descriptor.
Number vector property descriptor.
Switch vector property descriptor.
Text vector property descriptor.