AUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
This documentation is current as of Firmware V1.13.9
This puts the Arduino in Serial Control Mode and displays RA on line 1 andDEC on line 2 of the display. Serial Control Mode can be ended manually bypressing the SELECT key, or programmatically with the :Qq# command.
Command:
:I#
Returns:
AUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
This tells the scope what it is currently pointing at. The scope synchronizesto the current target coordinates
Command:
:CM#
Returns:
NONE#
Remarks:
Set with :Sd#
and :Sr#
AUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
This queries the mount for its slewing status
Command:
:D#
Returns:
|#
if slewing #
if notAUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
Attempts to set the mount time and location from the GPS for 2 minutes. This is essentially ablocking call, no other activities take place (except tracking, but only if interrupt-driven).
Command:
:gT#
Returns:
1
if the data was set0
if not (timedout)Remarks:
Use :Gt#
and :Gg#
to retrieve Lat and Long,
Attempts to set the mount time and location from the GPS with a custom timeout. This is also blockingbut by using a low timeout, you can avoid long pauses and let the user know that it's not ready yet.
Command:
:gTnnn#
Returns:
1
if the data was set0
if not (timedout)Parameters:
nnn
is an integer defining the number of milliseconds to wait for the GPS to get a bearingAUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
Command:
:GVP#
Returns:
OpenAstroTracker#
if the firmware was compiled for OATOpenAstroMount#
if the firmware was compiled for OAMCommand:
:GVN#
Returns:
V1.major.minor#
from version.hCommand:
:Gd#
Returns:
sDD*MM'SS#
Parameters:
s
is + or -DD
is degreesMM
is minutesSS
is secondsCommand:
:GD#
Returns:
sDD*MM'SS#
Parameters:
s
is + or -DD
is degreesMM
is minutesSS
is seconds.Command:
:Gr#
Returns:
Parameters:
HH
is hourMM
is minutesSS
is secondsCommand:
:GR#
Returns:
HH:MM:SS#
Parameters:
HH
is hourMM
is minutesSS
is secondsCommand:
:Gt#
Returns:
sDD*MM#
Parameters:
s
is + or -DD
is the latitude in degreesMM
the minutesCommand:
:Gg#
Returns:
sDDD*MM#
Parameters:
s
is the sign of the longitudeDDD
is the degreesMM
is the minutesRemarks:
Note that this is the actual longitude, but east coordinates are negative (opposite of normal cartographic coordinates)
Command:
:Gc#
Returns:
24#
Command:
:GG#
Returns:
sHH#
Parameters:
s
is the signHH
is the number of hoursCommand:
:Ga#
Returns:
HH:MM:SS#
Parameters:
HH
are hours (modulo 12)MM
are minutesSS
are seconds of the local timeCommand:
:GL#
Returns:
HH:MM:SS#
Parameters:
HH
are hoursMM
are minutesSS
are seconds of the local timeCommand:
:GC#
Returns:
MM/DD/YY#
Parameters:
MM
is the month (1-12)day
is the day (1-31)year
is the lower two digits of the yearCommand:
:GM#
Returns:
OAT1#
Command:
:GN#
Returns:
OAT2#
Command:
:GO#
Returns:
Command:
:GP#
Returns:
Command:
:GT#
Returns:
AUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
Command:
:GIS#
Returns:
1#
if either RA or DEC is slewing0#
if notCommand:
:GIT#
Returns:
1#
if tracking is on0#
if notCommand:
:GIG#
Returns:
1#
if currently guiding0#
if notString reflecting the mounts' status. The string is a comma-delimited list of statuses
Command:
:GX#
Returns:
Idle,--T--,11219,0,927,071906,+900000,#
Parameters:
Remarks:
The motion state
First character is RA slewing state ('R' is East, 'r' is West, '-' is stopped).
Second character is DEC slewing state ('d' is North, 'D' is South, '-' is stopped).
Third character is TRK slewing state ('T' is Tracking, '-' is stopped).
Fourth character is AZ slewing state ('Z' and 'z' is adjusting, '-' is stopped).
Fifth character is ALT slewing state ('A' and 'a' is adjusting, '-' is stopped).
Az and Alt are optional. The string may only be 3 characters long
AUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
This sets the target DEC. Use a Movement command to slew there.
Command:
:SdsDD*MM:SS#
Returns:
1
if successfully set0
otherwiseParameters:
s
is + or -DD
is degreesMM
is minutesSS
is secondsThis sets the target RA. Use a Movement command to slew there.
Command:
:SrHH:MM:SS#
Returns:
1
if successfully set0
otherwiseParameters:
HH
is hoursMM
is minutesSS
is secondsThis sets the latitude of the location of the mount.
Command:
:StsDD*MM#
Returns:
1
if successfully set0
otherwiseParameters:
s
is the sign ('+' or '-')DD
is the degree (90 or less)MM
is minutesThis sets the longitude of the location of the mount.
Command:
:SgsDDD*MM#
Returns:
1
if successfully set0
otherwiseParameters:
s
(optional) is the sign of the longitude (see Remarks)DDD
is the number of degreesMM
is the minutesRemarks:
When a sign is provided, longitudes are interpreted as given, with zero at Greenwich but negative coordinates going east (opposite of normal cartographic coordinates)
When a sign is not provided, longitudes are from 0 to 360 going WEST with 180 at Greenwich. So 369 is 179W and 1 is 179E. 190 would be 10W and 170 would be 10E.
This sets the offset of the timezone in which the mount is in hours from UTC.
Command:
:SGsHH#
Returns:
1
Parameters:
s
is the signHH
is the number of hoursThis sets the local time of the timezone in which the mount is located.
Command:
:SLHH:MM:SS#
Returns:
1
Parameters:
HH
is hoursMM
is minutesSS
is secondsThis sets the date
Command:
:SCMM/DD/YY#
Returns:
1Updating Planetary Data# #
Parameters:
MM
is the monthDD
is the dayYY
is the year since 2000AUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
This sets the scopes HA, which should be that of Polaris.
Command:
:SHHH:MM#
Returns:
1
if successfully set0
otherwiseParameters:
HH
is hoursMM
is minutesThis sets the current orientation of the scope as its home point.
Command:
:SHP#
Returns:
1
This sets the scopes LST (and HA).
Command:
:SHLHH:MM#
Returns:
1
if successfully set0
otherwiseParameters:
HH
is hoursMM
is minutesThis tells the scope what it is currently pointing at.
Command:
:SYsDD*MM:SS.HH:MM:SS#
Returns:
1
if successfully set0
otherwiseParameters:
s
is + or -DD
is degreesHH
is hoursMM
is minutesSS
is secondsAUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
Command:
:Rs#
Returns:
Parameters:
s
is one of 'S', 'M', 'C', or 'G' in order of decreasing speedAUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
This starts slewing the scope to the target RA and DEC coordinates and returns immediately.
Command:
:MS#
Returns:
0
AUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
This runs the motors at increased speed for a short period of time.
Command:
:MGdnnnn#
Returns:
1
Parameters:
d
is one of 'N', 'E', 'W', or 'S'nnnn
is the duration in msThis turns the scopes tracking mode on or off.
Command:
:MTs#
Returns:
1
Parameters:
s
is 1
to turn on Tracking and 0
to turn it offThis starts slewing the mount in the given direction.
Command:
:Mc#
Returns:
Parameters:
c
is one of 'n', 'e', 'w', or 's'This starts moving one of the steppers by the given amount of steps and returns immediately.
Command:
:MXxnnnnn#
Returns:
1
if successfully scheduled, else 0
Parameters:
x
is the stepper to move (r for RA, d for DEC, f for FOC, z for AZ, t for ALT)nnnn
is the number of stepsThis attempts to find the hall sensor and to home the RA ring accordingly.
Command:
:MHRxn#
Returns:
1
if search is started0
if homing has not been enabled in the local configParameters:
x
is either 'R' or 'L' and determines the direction in which the search starts (L is CW, R is CCW).n
(Optional) is the maximum number of degrees to move while searching for the sensor location. Defaults to 30degs. Limited to the range 5degs - 75degs.Remarks:
The ring is first moved 30 degrees (or the given amount) in the initial direction. If no hall sensor is encountered,
it will move twice the amount (60 degrees by default) in the opposite direction.
If a hall sensor is not encountered during that slew, the homing exits with a failure.
If the sensor is found, it will slew to the middle position of the Hall sensor trigger range and then to the offset
specified in the Home offset position (set with the :XSHRnnnn#
command).
If the RA ring is positioned such that the Hall sensor is already triggered when the command is received, the mount will move
the RA ring off the trigger in the opposite direction specified for a max of 15 degrees before searching 30 degrees in the
specified direction.
This attempts to find the hall sensor and to home the DEC axis accordingly.
Command:
:MHDxn#
Returns:
1
if search is started0
if homing has not been enabled in the local configParameters:
x
is either 'U' or 'D' and determines the direction in which the search starts (U is up, D is down).n
(Optional) is the maximum number of degrees to move while searching for the sensor location. Defaults to 30degs. Limited to the range 5degs - 75degs.Remarks:
The ring is first moved 30 degrees (or the given amount) in the initial direction. If no hall sensor is encountered,
it will move twice the amount (60 degrees by default) in the opposite direction.
If a hall sensor is not encountered during that slew, the homing exits with a failure.
If the sensor is found, it will slew to the middle position of the Hall sensor trigger range and then to the offset
specified in the Home offset position (set with the :XSHDnnnn#
command).
If the DEC ring is positioned such that the Hall sensor is already triggered when the command is received, the mount will move
the DEC ring off the trigger in the opposite direction specified for a max of 15 degrees before searching 30 degrees in the
specified direction.
If the scope supports automated azimuth and altitutde operations, move AZ and ALT axis to their zero positions.
Command:
:MAAH#
Returns:
1
If the scope supports automated azimuth operation, move azimuth by n.nn arcminutes
Command:
:MAZn.nn#
Returns:
Parameters:
n.nn
is a signed floating point number representing the number of arcminutes to move the mount left or rightIf the scope supports automated altitude operation, move altitude by n.nn arcminutes
Command:
:MALn.nn#
Returns:
Parameters:
n.nn
is a signed floating point number representing the number of arcminutes to raise or lower the mount.AUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
This slews the scope back to it's home position (RA ring centered, DEC at 90, basicallypointing at celestial pole), then advances to the parking position (defined by the Homing offsets)and stops all movement (including tracking).
Command:
:hP#
Returns:
This slews the scope back to its home position (RA ring centered, DECat 90, basically pointing at celestial pole). Mount will keep tracking.
Command:
:hF#
Returns:
AUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
This currently simply turns on tracking.
Command:
:hU#
Returns:
1
If the mount supports AZ and ALT axes, this call sets their positions to 0 and stores this in persistent storage.
Command:
:hZ#
Returns:
1
AUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
This stops all motors, including tracking. Note that deceleration curves are still followed.
Command:
:Q#
Returns:
1
when all motors have stoppedStops slew in specified direction where d is n, s, e, w, a (the first four are the cardinal directions, a stands for All).
Command:
:Qd#
Returns:
AUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
This quits Serial Control mode and starts tracking.
Command:
:Qq#
Returns:
AUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
Clears all the EEPROM settings
Command:
:XFR#
Returns:
1#
This runs a drift alignment procedure where the mounts slews east, pauses, slews west and pauses.Where nnn is the number of seconds the entire alignment should take. The call is blocking and willonly return once the drift alignment is complete.
Command:
:XDnnn#
Returns:
Command:
:XL0#
Returns:
1#
if successful0#
if there is no Digital LevelCommand:
:XL1#
Returns:
1#
if successful0#
if there is no Digital LevelGets the reference pitch and roll values of the mount (Digital Level addon). Thesevalues are the values of the pitch and roll when the mount is level.
Command:
:XLGR#
Returns:
<pitch>,<roll>#
0#
if there is no Digital LevelGets the current pitch and roll values of the mount (Digital Level addon).
Command:
:XLGC#
Returns:
<pitch>,<roll>#
0#
if there is no Digital LevelGet the current temperature in Celsius of the mount (Digital Level addon).
Command:
:XLGT#
Returns:
<temp>#
0#
if there is no Digital LevelSets the reference roll value of the mount (Digital Level addon). This is the valueat which the mount is level.
Command:
:XLSR#
Returns:
1#
if successful0#
if there is no Digital LevelSets the reference pitch value of the mount (Digital Level addon). This is the valueat which the mount is level.
Command:
:XLSP#
Returns:
1#
if succsessful0#
if there is no Digital LevelGet the current position in steps of the AZ and ALT axes if they are enabled.If an axis is not enabled, this always returns zero as the axis's value.
Command:
:XGAA#
Returns:
azpos|altpos#
if either axis is enabledGet the current state of RA and DEC Autohoming status. Only valid when at leastone Hall sensor based autohoming axis is enabled.
Command:
:XGAH#
Returns:
rastate|decstate#
if either axis is enabled|#
if no autohoming is enabledRemarks:
While the mount status (:GX#) is 'Homing', the command returns one of these:
MOVE_OFF
MOVING_OFF
STOP_AT_TIME
WAIT_FOR_STOP
START_FIND_START
FINDING_START
FINDING_START_REVERSE
FINDING_END
RANGE_FOUND
Command:
None
Returns:
Get the number of steps the RA stepper motor needs to overshoot and backtrack when slewing east.
Command:
:XGB#
Returns:
integer#
Get the positions of stepper motors when pointed at the given coordinates.
Command:
:XGCn.nn*m.mm#
Returns:
ralong,declong#
Parameters:
n.nn
is the RA coordinate (0.0 - 23.999)m.mm
is the DEC coordinate (-90.00 - +90.00)ralong
is the stepper position of the RA stepperdeclong
is the stepper position of the DEC stepperGet the number of steps the RA stepper motor needs to take to rotate RA by one degree
Command:
:XGR#
Returns:
float#
Get the number of steps the DEC stepper motor needs to take to rotate DEC by one degree
Command:
:XGD#
Returns:
float#
Get either lower, upper or both limits for the DEC stepper motor in degrees.
Command:
:XGDLx#
Returns:
float#
or float|float#
Parameters:
Gets the number of steps from the home position to the parking position for DEC
Command:
:XGDP# (obsolete, disabled)
Returns:
0#
Get the adjustment factor used to speed up (>1.0) or slow down (<1.0) the tracking speed of the mount.
Command:
:XGS#
Returns:
float#
Get the number of hours before the RA ring reaches its end.
Command:
:XGST#
Returns:
float#
Get the absolute tracking speed of the mount.
Command:
:XGT#
Returns:
float#
Get the current HA of Polaris that the mount thinks it is.
Command:
:XGH#
Returns:
HHMMSS#
Get the RA ring homing offset.If a Hall sensor is present this is the number of steps from the center of the sensor range towhere the actual center position is located.If no Hall sensor is present this is the number of steps from the power on position of the RA axis to
Command:
:XGHR#
Returns:
n#
- the number of stepsGet the DEC ring homing offset.If a Hall sensor is present this is the number of steps from the center of the sensor range towhere the actual center position is located.If no Hall sensor is present this is the number of steps from the power on position of the DEC axis to
Command:
:XGHD#
Returns:
n#
- the number of stepsGet the hemisphere that the OAT currently assumes it is operating in. This is set via setting Latitude (see :St
command)
Command:
:XGHS#
Returns:
N#
- for northern hemisphereS#
- for southern hemisphereCommand:
:XGM#
Returns:
<board>,<RA Stepper Info>,<DEC Stepper Info>,<GPS info>,<AzAlt info>,<Gyro info>,<Display info>,(more features...)#
Parameters:
<board>
is one of the supported boards (currently Mega, ESP32, MKS)<Stepper Info>
is a pipe-delimited string of Motor type (NEMA or 28BYJ), Pulley Teeth, Steps per revolution)<GPS info>
is either NO_GPS or GPS, depending on whether a GPS module is present<AzAlt info>
is either NO_AZ_ALT, AUTO_AZ_ALT, AUTO_AZ, or AUTO_ALT, depending on which AutoPA stepper motors are present<Gyro info>
is either NO_GYRO or GYRO depending on whether the Digial level is present<Display info>
is either NO_LCD or LCD_display_type depending on whether LCD is present and if so, which one<Focuser info>
is either NO_FOC or FOC depending on whether the focuser motor is enabled<RAHallSensor info>
is either NO_HSAH or HSAH depending on whether the Hall sensor based auto homing for RA is enabled<Endswitch info>
is either NO_ENDSW or ENDS_RA, ENDSW_DEC, or ENDSW_RA_DEC depending on which axis have end switches installedExample:
ESP32,28BYJ|16|4096.00,28BYJ|16|4096.00,NO_GPS,NO_AZ_ALT,NO_GYRO,NO_LCD,NO_FOC,NO_ENDSW#
Command:
:XGMS#
Returns:
<RA driver>,<RA slewMS>,<RA trackMS>|<DEC driver>,<DEC slewMS>,<DEC guideMS>|#
Parameters:
<driver>
is one of the supported drivers: TU=TMC2209UART, TS=TMC2209STANDALONE, A=A4983<slewMS>
is the microstepping divider (1, 2, 4, 8, 15, 21, 64, 128, 256) used when slewing<trackMS>
is the microstepping divider (1, 2, 4, 8, 15, 21, 64, 128, 256) used when tracking RA<guideMS>
is the microstepping divider (1, 2, 4, 8, 15, 21, 64, 128, 256) used when guiding DECExample:
TU,8,64|TU,16,64|#
Gets the current status of the Wifi connection. Reply only available when running on ESP boards.
Command:
:XGN#
Returns:
1,<mode>,<status>,<hostname>,<ip>:<port>,<SSID>,<OATHostname>#
if Wifi is enabled0,#
if Wifi is not enabledGet the current LST of the mount.
Command:
:XGL#
Returns:
HHMMSS#
Sets the number of steps the RA stepper motor needs to overshoot and backtrack when slewing east.
Command:
:XSBn#
Returns:
This offset is added to the position of the RA ring when it is centered on the hall sensor triggered range after running.the RA homing command (:MHRx#)
Command:
:XSHRnnn#
Returns:
Parameters:
n
is the number of steps that are needed from the center of the Hall senser trigger range to the actual home position.This offset is added to the position of the DEC ring when it is centered on the hall sensor triggered range after running.the DEC homing command (:MHDx#)
Command:
:XSHDnnn#
Returns:
Parameters:
n
is the number of steps that are needed from the center of the Hall senser trigger range to the actual home position.Set the number of steps the RA stepper motor needs to take to rotate by one degree.
Command:
:XSRn.n#
Returns:
Parameters:
n.n
is the number of steps (only one decimal point is supported)Set the number of steps the DEC stepper motor needs to take to rotate by one degree.
Command:
:XSDn.n#
Returns:
Parameters:
n.n
is the number of steps (only one decimal point is supported)Set the upper limit for the DEC axis to the current position if no parameter is given,otherwise to the given angle (in degrees from the home position).
Command:
:XSDLUnnnnn#
Returns:
Parameters:
nnnnn
is the number of steps from home that the DEC ring can travel upwards. Passing 0 will reset it to theResets the upper limit for the DEC axis to the configuration-defined position.If unconfigured, the limit is cleared.
Command:
:XSDLu#
Returns:
Set the lower limit for the DEC axis to the current position if no parameter is given,otherwise to the given angle (in degrees from the home position).
Command:
:XSDLLnnnnn#
Returns:
Parameters:
nnnnn
is the number of steps from home that the DEC ring can travel downwards. Passing 0 will reset it to theResets the lower limit for the DEC axis to the configuration-defined position.If unconfigured, the limit is cleared.
Command:
:XSDLl#
Returns:
This stores the number of steps needed to move from home to the parking position.Returns: nothing
Command:
:XSDPnnnn# (obsolete, disabled)
Returns:
Set the adjustment factor used to speed up (>1.0)
or slow down (<1.0)
the tracking speed of the mount
Command:
:XSSn.nnn#
Returns:
Parameters:
n.nnn
is the factor to multiply the theoretical speed byThis is purely a debugging aid. It is not recommended to call this unless you know what you are doing. It simply sets the internal tracking steps to the given value.
Command:
:XSTnnnn#
Returns:
Parameters:
nnn
is the stepper steps to setToggle the manual slewing mode state where the RA and DEC motors run at a constant speed
Command:
:XSMn#
Returns:
Parameters:
n
is '1' to turn it on, otherwise turn it offSet RA manual slewing speed in degrees/sec immediately. Max is around 2.5 degs/s
Command:
:XSXn.nnn#
Returns:
Remarks:
Must be in manual slewing mode.
Set DEC manual slewing speed in degrees/sec immediately. Max is around 2.5 degs/s
Command:
:XSYn.nnn#
Returns:
Remarks:
Must be in manual slewing mode.
AUTOMATICALLY GENERATED FROM FIRMWARE - DO NOT EDIT
Continues pull in until stopped
Command:
:F+#
Returns:
Continues pull out until stopped
Command:
:F-#
Returns:
Set focuser speed to where is an ASCII digit 1..4. 1 is slowest, 4 i fastest
Command:
:Fn#
Returns:
Set focuser to the slowest speed it can use
Command:
:FS#
Returns:
Set focuser speed to the fastest speed it can use
Command:
:FF#
Returns:
Get the current position of the focus stepper motor
Command:
:Fp#
Returns:
nnn#
nnn
is the current position of the stepperCommand:
None
Returns:
Sets the current position of the focus stepper motor
Command:
:FPnnn#
Returns:
1
Parameters:
nnn
is the new position of the stepper. The stepper is not moved.Gets the state of the focuser stepper.
Command:
:FB#
Returns:
0
if the focuser is idle1
if the focuser is movingStops the stepper motor of the focuser.
Command:
:FQ#
Returns: