Just wanted to share my experience with using a Pi 3 to control my printers. I've been using Octoprint with a pi 3 on my first Anet A8 for over a year now with no problems.
I recently built an AM8 printer spending a lot of time on cable managment, etc. only to find that once I finished I was getting the dreaded communication errors where the usb connection would drop pretty regularly. I did a lot of research and followed all of the suggestions regarding power supplies, usb cables, etc. Even went so far as to take things apart moving the pi and cables away from other components suspecting some sort of interference. None of it helped.
So, Then I just popped the sd card out of Pi, put it right in another Pi and connected that up. Bingo. Everything works reliably now.
So in my case at least, it appears that the first Pi I used has some sort of issue with maintaining a USB connection and it had nothing to do with the cables or power supply.
Just one other thing to think about if you are at your wits end with that particular error.