284
284
// Get the adjustment factor used to speed up (>1.0) or slow down (<1.0) the tracking speed of the mount.
285
285
// Returns: float
286
286
//
287
+ // :XGT#
288
+ // Get Tracking speed
289
+ // Get the absolute tracking speed of the mount.
290
+ // Returns: float
291
+ //
287
292
// :XGH#
288
293
// Get HA
289
294
// Get the current HA of the mount.
@@ -464,7 +469,7 @@ String MeadeCommandProcessor::handleMeadeSetInfo(String inCmd) {
464
469
// 0123456789
465
470
// :Sd+84*03:02
466
471
int sgn = inCmd[1 ] == ' +' ? 1 : -1 ;
467
- if ((inCmd[4 ] == ' *' ) && (inCmd[7 ] == ' :' ))
472
+ if ((( inCmd[4 ] == ' *' ) || (inCmd[ 4 ] == ' : ' ) ) && (inCmd[7 ] == ' :' ))
468
473
{
469
474
int deg = sgn * inCmd.substring (2 , 4 ).toInt ();
470
475
if (NORTHERN_HEMISPHERE) {
@@ -532,7 +537,7 @@ String MeadeCommandProcessor::handleMeadeSetInfo(String inCmd) {
532
537
// 0123456789012345678
533
538
// :SY+84*03:02.18:34:12
534
539
int sgn = inCmd[1 ] == ' +' ? 1 : -1 ;
535
- if ((inCmd[4 ] == ' *' ) && (inCmd[7 ] == ' :' ) && (inCmd[10 ] == ' .' ) && (inCmd[13 ] == ' :' ) && (inCmd[16 ] == ' :' )) {
540
+ if ((( inCmd[4 ] == ' *' ) || (inCmd[ 4 ] == ' : ' ) ) && (inCmd[7 ] == ' :' ) && (inCmd[10 ] == ' .' ) && (inCmd[13 ] == ' :' ) && (inCmd[16 ] == ' :' )) {
536
541
int deg = inCmd.substring (2 , 4 ).toInt ();
537
542
_mount->syncPosition (inCmd.substring (11 , 13 ).toInt (), inCmd.substring (14 , 16 ).toInt (), inCmd.substring (17 , 19 ).toInt (), sgn * deg + (NORTHERN_HEMISPHERE ? -90 : 90 ), inCmd.substring (5 , 7 ).toInt (), inCmd.substring (8 , 10 ).toInt ());
538
543
return " 1" ;
@@ -542,7 +547,7 @@ String MeadeCommandProcessor::handleMeadeSetInfo(String inCmd) {
542
547
else if ((inCmd[0 ] == ' t' )) // latitude: :St+30*29#
543
548
{
544
549
float sgn = inCmd[1 ] == ' +' ? 1 .0f : -1 .0f ;
545
- if (inCmd[4 ] == ' *' ) {
550
+ if (( inCmd[4 ] == ' *' ) || (inCmd[ 4 ] == ' : ' ) ) {
546
551
int deg = inCmd.substring (2 , 4 ).toInt ();
547
552
int minute = inCmd.substring (5 , 7 ).toInt ();
548
553
_mount->setLatitude (sgn * (1 .0f * deg + (minute / 60 .0f )));
@@ -552,7 +557,7 @@ String MeadeCommandProcessor::handleMeadeSetInfo(String inCmd) {
552
557
}
553
558
else if (inCmd[0 ] == ' g' ) // longitude :Sg097*34#
554
559
{
555
- if (inCmd[4 ] == ' *' ) {
560
+ if (( inCmd[4 ] == ' *' ) || (inCmd[ 4 ] == ' : ' ) ) {
556
561
int deg = inCmd.substring (1 , 4 ).toInt ();
557
562
int minute = inCmd.substring (5 , 7 ).toInt ();
558
563
float lon = 1 .0f * deg + (1 .0f * minute / 60 .0f );
@@ -696,6 +701,9 @@ String MeadeCommandProcessor::handleMeadeExtraCommands(String inCmd) {
696
701
else if (inCmd[1 ] == ' S' ) {
697
702
return String (_mount->getSpeedCalibration (), 5 ) + " #" ;
698
703
}
704
+ else if (inCmd[1 ] == ' T' ) {
705
+ return String (_mount->getSpeed (TRACKING), 7 ) + " #" ;
706
+ }
699
707
else if (inCmd[1 ] == ' B' ) {
700
708
return String (_mount->getBacklashCorrection ()) + " #" ;
701
709
}
0 commit comments