Недавно наблюдал ситуацию: компюьтер и специализированное устройство
были соединены между собой чрез COM-порт, но при этом пришлось
паять переходник из трёх проводов - Tx, Rx и Gnd. Так связь
не работала, пока не соединили ещё и корпусной провод кабеля через
этот же переходник. Хотя, казалось бы, соединения сигнальных нулей
достаточно, так же, как в RS-485 обязательно использовать 3-й провод,
иначе входные микросхемы могут сгореть и я это наблюдал.
Как я понимаю, сигнальные нули должны быть относительно одного
и того же уровня, иначе возможны перенапряжения в момент
подключения при уравнивании потенциалов. Они могут вызвать броски
напряжения в компьютере и, как следствие, сбой в памяти.
Если у принтера на задней стенке есть клемма заземления,
то соедините её с корпусом компьютера. Хотя я вовсе не уверен,
что причина сбоев именно в этом но всё равно сделать надо.
Правда, у USB-кабеля тоже есть корпусной контакт,
но всё-таки не помешает.