diff --git a/mcc/mcc_slewing_model.h b/mcc/mcc_slewing_model.h index 531aea1..e0ea08e 100644 --- a/mcc/mcc_slewing_model.h +++ b/mcc/mcc_slewing_model.h @@ -624,6 +624,8 @@ public: logger.logInfo("Slewing finished"); + // get final position + // wait for updated telemetry data { std::lock_guard lock{*_currentParamsMutex}; @@ -636,6 +638,11 @@ public: } } + t_err = controls->targetToMountDist(&dist); + if (t_err) { + return *_lastError = mcc_deduce_error_code(t_err, MccSimpleSlewingModelErrorCode::ERROR_DIST_TELEMETRY); + } + if constexpr (mccIsEquatorialMount(CONTROLS_T::mountType)) { logger.logDebug(std::format(" entered target: HA = {}, DEC = {}", mcc::MccAngle{tdata.target.HA}.sexagesimal(true), @@ -643,6 +650,13 @@ public: logger.logDebug(std::format(" current mount: HA = {}, DEC = {}", mcc::MccAngle{tdata.HA}.sexagesimal(true), mcc::MccAngle{tdata.DEC_APP}.sexagesimal())); + + if (store_path) { + fst << std::chrono::duration_cast(tdata.time_point - start_point).count() << " " + << tdata.target.HA << " " << tdata.target.DEC_APP << " " << tdata.HA << " " << tdata.DEC_APP + << " " << (tdata.target.HA - tdata.HA) << " " << (tdata.target.DEC_APP - tdata.DEC_APP) << " " + << (int)hw_state.moving_state << "\n"; + } } else if constexpr (mccIsAltAzMount(CONTROLS_T::mountType)) { logger.logDebug(std::format(" entered target: AZ = {}, ZD = {}", mcc::MccAngle{tdata.target.AZ}.sexagesimal(), @@ -652,6 +666,8 @@ public: mcc::MccAngle{tdata.ZD}.sexagesimal())); } + logger.logDebug(std::format(" target-to-mount distance {}", mcc::MccAngleFancyString(dist))); + if (store_path) { fst.close(); }