51 virtual bool ISNewNumber(
const char *dev,
const char *name,
double values[],
char *names[],
int n)
override;
52 virtual bool ISNewSwitch(
const char *dev,
const char *name,
ISState *states,
char *names[],
int n)
override;
53 virtual bool ISNewText(
const char *dev,
const char *name,
char *texts[],
char *names[],
int n)
override;
87 bool getStepperData();
89 std::vector<std::string> split(
const std::string &input,
const std::string ®ex);
95 bool setPowerEnabled(uint8_t port,
bool enabled);
96 bool setPowerLEDEnabled(
bool enabled);
97 bool setPowerOnBoot();
98 bool getPowerOnBoot();
99 bool setAdjustableOutput(uint8_t voltage);
102 bool setAutoDewEnabled(
bool enabled);
103 bool toggleAutoDewV2();
104 bool setAutoDewAgg(uint8_t value);
105 bool setDewPWM(uint8_t
id, uint8_t value);
108 bool setUSBHubEnabled(
bool enabled);
109 bool setUSBPortEnabled(uint8_t port,
bool enabled);
112 bool setFocuserMaxSpeed(uint16_t maxSpeed);
122 bool sendCommand(
const char *
cmd,
char *res);
128 void cleanupResponse(
char *response);
136 bool sensorUpdated(
const std::vector<std::string> &result, uint8_t start, uint8_t end);
144 bool stepperUpdated(
const std::vector<std::string> &result, u_int8_t index);
147 bool setupComplete {
false };
173 CONSUMPTION_AVG_AMPS,
174 CONSUMPTION_AMP_HOURS,
175 CONSUMPTION_WATT_HOURS,
196 IText PowerControlsLabelsT[4] = {};
244 IText DewControlsLabelsT[3] = {};
282 IText USBControlsLabelsT[6] = {};
302 IText FirmwareT[2] {};
310 std::vector<std::string> lastSensorData, lastPowerData, lastStepperData, lastDewAggData;
311 bool focusMotorRunning {
false };
312 char stopChar { 0xD };
313 uint8_t version {
UPB_V1 };
315 static constexpr
const uint8_t PEGASUS_TIMEOUT {3};
316 static constexpr
const uint8_t PEGASUS_LEN {128};
317 static constexpr
const char *DEW_TAB {
"Dew"};
318 static constexpr
const char *USB_TAB {
"USB"};
319 static constexpr
const char *ENVIRONMENT_TAB {
"Environment"};
320 static constexpr
const char *POWER_TAB {
"Power"};
321 static constexpr
const char *FIRMWARE_TAB {
"Firmware"};
The Serial class manages connection with serial devices including Bluetooth. Serial communication is ...
Class to provide extended functionality for devices in addition to the functionality provided by INDI...
Provides interface to implement focuser functionality.
Provides interface to implement weather reporting functionality.
virtual void TimerHit() override
Callback function to be called once SetTimer duration elapses.
virtual bool saveConfigItems(FILE *fp) override
saveConfigItems Save specific properties in the provide config file handler. Child class usually over...
virtual IPState MoveRelFocuser(FocusDirection dir, uint32_t ticks) override
MoveFocuser the focuser to an relative position.
virtual bool ISNewText(const char *dev, const char *name, char *texts[], char *names[], int n) override
Process the client newSwitch command.
virtual bool initProperties() override
Initilize properties initial state and value. The child class must implement this function.
virtual bool updateProperties() override
updateProperties is called whenever there is a change in the CONNECTION status of the driver....
virtual bool ISNewNumber(const char *dev, const char *name, double values[], char *names[], int n) override
Process the client newNumber command.
virtual bool SetFocuserBacklash(int32_t steps) override
SetFocuserBacklash Set the focuser backlash compensation value.
virtual bool SyncFocuser(uint32_t ticks) override
SyncFocuser Set current position to ticks without moving the focuser.
virtual bool AbortFocuser() override
AbortFocuser all focus motion.
virtual bool SetFocuserBacklashEnabled(bool enabled) override
SetFocuserBacklashEnabled Enables or disables the focuser backlash compensation.
virtual bool ReverseFocuser(bool enabled) override
ReverseFocuser Reverse focuser motion direction.
const char * getDefaultName() override
virtual IPState updateWeather() override
updateWeather Update weather conditions from device or service. The function should not change the st...
virtual IPState MoveAbsFocuser(uint32_t targetTicks) 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.
Combines all INDI Connection Plugins. Each INDI connection plugin is responsible of managing communic...
Light vector property descriptor.
Number vector property descriptor.
Switch vector property descriptor.
Text vector property descriptor.