Resistance variation when on the flat

My Elite XR has been working fine for over a year but in the last couple of months when training in Zwift the resistance on the turbo keeps varying, despite my power and cadence been constant and the route been either flat or a consistent gradient. Its so annoying as often when in a tough workout you go from a smooth rhythm to pedalling squares of spinning out, then after a few seconds it returns to how it was. But the time it take to return varies from a few seconds to 30 or 40 secs. This only happens in workouts and I never use erg. Anyone know how I can fix this issue? Thanks