Arduino Reboot loop on Windows 10

I've recently started to have problems when Arduinos are connected via USB to Windows 10 machines. These are running Marlin which restarts itself every 30 seconds or so when connected via USB but is fine when disconnected. During these 30 seconds, all is fine - I can communicate with the board via serial monitor etc.

This happens on multiple Arduino boards and on multiple Windows 10 laptops. It's fine on an old Windows 8 laptop I have occasional access to.

Drivers, IDE etc are all up to date.

Any ideas? The closest I could find on various forums was an old problem with some Sony phone software which was scanning USB ports for phones and triggering periodic resets - but there's nothing installed like that (that I'm aware of anyway).

Any ideas folks? Or any diagnostics I could run?

Thanks in advance.