Thanks @T3P3Tony, that might be part of it too.
I did wonder if I could use the second encoder phase to give direction data to the duet, sounds like it'd require a firmware update. Fair enough.
I have also wondered if the level of precision available for the distance per pulse setting is letting rounding errors build up in this case. But that being said it would be a continuous build up of error rather than one that comes and goes during the print.
I've disabled the sensor again for now so I can get on with printing some larger parts. However I'd really like to get this working as I want to use a layer by layer readout of filament status as a metric for print quality.
The plan is to eventually merge the data with the lower error threshold data logged from closed loop stepper motors to give an overall print quality metric, and indication of where any remedial action might be necessary.
As always really appreciate the level of support from the duet team.
Many thanks
Barry M