https://bugs.kde.org/show_bug.cgi?id=410094
--- Comment #13 from James Lancaster <deathstal...@gmail.com> --- So different periods do affect how often it gets triggered. However, when I tried set at down at 100ms (really more like 200-250ish) and locally 17/25 instances encounter it. If it's at 1 second, maybe 1/10 do. I did try last night, with the timer idea, set for 1 second (oneshot and isactive checks right after the m_hasSlewStarted.) That *masks* the issue, but the erroneous IPS_BUSY is still being processed. Which has to be somewhere where kstars is setting it internally, because it's not on the wire. (As shown with wireshark) Solving: I do see nvp->s = IPS_BUSY in indiproperty.cpp, could that or something like that be causing it? (I haven't yet gone through and checked why that's being set. Actually, that might make sense if it were: it's in sendText, and that seems like there might be when updating, but not something actually passed to INDI? ) As far as masking the issue: Thinking on it, I'm not sure that the Timer is a good idea, because in the event that the slew is < timer, only one IPS_OK, should be emitted. Hrm. Oh, an idea that might mask it better, and not mess up like the solution that works for me: The settle timer is ALSO updated if IPS_BUSY is noted? (Or the IPS_OK, which starts it now) is called. (Note that this was come up with on the fly and I haven't tested.) QTimer maybeMasking; in header When ALIGN_SYNCING is called, it sets up. maybeMasking.setSingleShot(); maybeMasking.setInterval(delaySpin->value()); connect(&maybeMasking, &QTimer::timeout, this, &Ekos::Align::captureAndSolve); However, it doesn't start it, that's done with: ALIGN_SLEWING, where currently it has this: if (delaySpin->value() >= DELAY_THRESHOLD_NOTIFY) appendLogText(i18n("Settling...")); QTimer::singleShot(delaySpin->value(), this, &Ekos::Align::captureAndSolve); Replace that with if (delaySpin->value() >= DELAY_THRESHOLD_NOTIFY) appendLogText(i18n("Settling...")); maybeMasking.start() Then in IPS_BUSY it becomes : case IPS_BUSY: m_wasSlewStarted = true; if (maybeMasking.isActive()){ maybeMasking.start() if (showbug410094 == true) appendLogText(i18n("Bug 410094 masking...")); } Which would reset it. (And if the optional and silly showbug... is shown, it would also leave a log of when it happened.) As an aside, how many other drivers can use the mount model? I know Eqmod can, but I'm not sure of others to compare with just to make sure that the INDI driver isn't the cause, which I'm 99%+ sure isn't the case because of wireshark, but still? -- You are receiving this mail because: You are watching all bug changes.