78 bool ISNewNumber(
const char *dev,
const char *name,
double values[],
char *names[],
int n)
override;
79 bool ISNewSwitch(
const char *dev,
const char *name,
ISState *states,
char *names[],
int n)
override;
80 bool ISNewText(
const char *dev,
const char *name,
char *texts[],
char *names[],
int n)
override;
122 bool SyncAZ(
double degrees)
override;
123 bool SyncALT(
double degrees)
override;
142 bool sendCommand(
const char *
cmd,
char *res =
nullptr);
149 bool parseTelemetry(
const char *response);
159 static void degreesToDMS(
double degrees,
int &d,
int &m,
int &s,
bool &positive);
168 IPState sendRelativeMove(
double degrees,
const char *cmdPos,
const char *cmdNeg);
170 void hexDump(
char *buf,
const char *data,
int size);
176 void checkMotionComplete();
195 enum { AZ_LIMIT_MIN, AZ_LIMIT_MAX };
199 enum { ALT_LIMIT_MIN, ALT_LIMIT_MAX };
203 enum { ALT_OVERSHOOT_ENABLED, ALT_OVERSHOOT_DISABLED };
207 enum { ALT_OVERSHOOT_UP, ALT_OVERSHOOT_DOWN };
225 enum { CORR_OVERSHOOT_ENABLED, CORR_OVERSHOOT_DISABLED };
229 enum { CORR_OVERSHOOT_UP, CORR_OVERSHOOT_DOWN };
279 enum { AP_SSID, AP_IP };
290 enum { FIRMWARE_VERSION, FIRMWARE_SERIAL };
294 enum { WIFI_INFO_AP_SSID, WIFI_INFO_AP_IP, WIFI_INFO_AP_MAC,
295 WIFI_INFO_STA_SSID, WIFI_INFO_STA_IP, WIFI_INFO_STA_MAC };
300 bool m_IsMoving {
false};
301 bool m_IsHoming {
false};
302 bool m_IsHomed {
false};
305 bool m_BacklashLogged {
false};
308 double m_OvshD {0}, m_OvshM {0}, m_OvshS {0};
316 static constexpr uint8_t DRIVER_TIMEOUT {5};
317 static constexpr uint16_t DRIVER_LEN {2048};
318 static constexpr char DRIVER_STOP_CHAR {
'\n'};
319 static constexpr const char *MOTOR_CONFIG_TAB {
"Motor Config"};
320 static constexpr const char *NETWORK_TAB {
"Network"};
321 static constexpr const char *INFO_TAB {
"Info"};
322 static constexpr const char *CORRECTION_TAB {
"Correction"};
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...
The MLAstroRPA class drives the MLAstro Robotic Polar Alignment controller via its ESP32-based serial...
IPState GoHome() override
GoHome.
bool updateProperties() override
updateProperties
bool ReverseALT(bool enabled) override
ReverseALT.
bool SetBacklashALT(int32_t steps) override
SetBacklashALT.
bool AbortMotion() override
PACInterface – abort, speed and reverse.
bool initProperties() override
initProperties
void TimerHit() override
TimerHit.
IPState MoveAZ(double degrees) override
PACInterface – axis movement.
bool SyncALT(double degrees) override
SyncALT – same mechanism as SyncAZ.
IPState MoveBoth(double azDegrees, double altDegrees) override
bool saveConfigItems(FILE *fp) override
saveConfigItems
IPState MoveALT(double degrees) override
MoveALT.
bool SyncAZ(double degrees) override
PACInterface – sync.
bool SetHome() override
PACInterface – home management.
double applyCorrectionAZ(double azDegrees) const
Scale a requested azimuth step by the configured correction percentage.
double applyCorrectionALT(double altDegrees) const
applyCorrectionALT – correction percentage, or full error + overshoot
bool ReverseAZ(bool enabled) override
ReverseAZ.
bool ISNewText(const char *dev, const char *name, char *texts[], char *names[], int n) override
ISNewText.
bool Handshake()
Handshake.
bool ISNewSwitch(const char *dev, const char *name, ISState *states, char *names[], int n) override
ISNewSwitch.
const char * getDefaultName() override
Basic device info.
bool ResetHome() override
ResetHome.
bool SetBacklashAZ(int32_t steps) override
SetBacklashAZ.
bool ISNewNumber(const char *dev, const char *name, double values[], char *names[], int n) override
ISNewNumber.
virtual ~MLAstroRPA() override=default
bool SetBacklashEnabled(bool enabled) override
PACInterface – backlash.
bool SetPACSpeed(uint16_t speed) override
SetPACSpeed (SLvl: 1–5)