Brian McBride created a new topic ' DSLR autofocus backlash' in the forum. 2 years ago

I was pretty gobsmacked to discover that the Ekos/Indi autofocus could drive my Canon EOS-R + Canon 300mm and get better focus with dimmer stars than I can otherwise - some of the time.

It doesn't work reliably. I'm using the linear algorithm and it tracks down the curve nicely, past the point of optimum focus and then does a big jump out and a smaller one back in. With my setup its not going far enough back. Sometimes it does go far enough back - just. Sometimes it doesn't and goes off into the weeds.

I can't set a backlash value (I'm using the GPhoto driver). The options field is disabled.

I've been looking at the code. I'm looking at LinearFocusAlgorithm::setupSecondPass where it sets the value its tracking back to

    // Arbitrarily go back "margin" steps above the best position.
    // Could be a problem if backlash were worse than that many steps.
    requestedPosition = std::min(static_cast<int>(firstPassBestPosition + stepSize * margin), maxPositionLimit);

That may be what's causing my problem.

I can't set a backlash value in the backlash options field because it is not enabled. The code above doesn't reference a backlash value at all - but that would be consistent with the linear algorithm's approach of avoiding backlash rather than actively compensating for it.

I could just change the default value for margin (2) until its big enough for my case. But that's a bit crude. I could try adding a margin field to the options in the UI - but that is a bit ugly as it overlaps whatever backlash support there is.

What's the right answer?

tmono

Read More...