36 bool ISNewNumber(
const char * dev,
const char * name,
double values[],
char * names[],
int n)
override;
37 bool ISNewSwitch(
const char * dev,
const char * name,
ISState * states,
char * names[],
int n)
override;
48 void updateProperties(
const int32_t pos,
const int32_t
max,
const std::string dist,
const std::string aper);
49 bool readFocusPosition(int32_t &pos);
50 bool readFocusMaxPosition(int32_t &pos);
51 bool readFocusDistance(std::string &result);
52 bool readApertureRange(std::string &result);
53 bool readFirmwareVersion();
55 bool moveFocusAbs(uint32_t position);
57 bool setSpeed(
int speed);
58 bool setApertureAbs(
double value);
59 bool setApertureRel(
double value);
69 bool sendCommand(
const char *
cmd,
char * res =
nullptr);
84 static const uint8_t CEF_BUF { 16 };
87 static const char CEF_DEL {
'\n' };
90 static const uint8_t CEF_TIMEOUT { 3 };
92 std::chrono::steady_clock::time_point lastUpdate;
94 uint16_t firmwareMinor {0};
const char * getDefaultName() override
IPState MoveAbsFocuser(uint32_t targetTicks) override
MoveFocuser the focuser to an absolute position.
IPState MoveRelFocuser(FocusDirection dir, uint32_t ticks) override
MoveFocuser the focuser to an relative position.
void TimerHit() override
Callback function to be called once SetTimer duration elapses.
bool ISNewSwitch(const char *dev, const char *name, ISState *states, char *names[], int n) override
Processes incoming new switch states from the client for this device. Handles updates to FocuserInter...
bool initProperties() override
Initializes the default properties for the focuser device. Sets up standard INDI properties,...
bool SetFocuserSpeed(int speed) override
SetFocuserSpeed Set Focuser speed.
~PinefeatCEF() override=default
bool updateProperties() override
Updates the state and definition of properties based on the current connection status....
bool Handshake() override
Performs a device-specific handshake after a connection is established. This method should be overrid...
bool ISNewNumber(const char *dev, const char *name, double values[], char *names[], int n) override
Processes incoming new number values from the client for this device. Handles updates to FocuserInter...