Unexpected error while reading serial port - returned no data

Hello All,
Using Prusa Slicer 2.2 with Creality Ender 3 - SKR Mini e3 board. There have been several instances in the past couple of days of stopping midprint and AstroTouch suggesting the printer disconnected. I’m sitting near the printer and there is no disconnection… I turned on serial logging and the last three instances I pasted below. One interesting sidenote is that after it disconnects, it stays hot, the nozzle and bed don’t cool down.


2020-04-05 15:35:57,152 - SERIAL - DEBUG - Unexpected error while reading serial port: SerialException: 'device reports readiness to read but returned no data (device disconnected or multiple access on port?)' @ comm.py:_readline:1133
2020-04-05 15:35:58,160 - SERIAL - DEBUG - Connection closed, closing down monitor
2020-04-05 15:36:56,916 - SERIAL - DEBUG - Connecting to: /dev/ttyACM0
2020-04-05 15:36:56,921 - SERIAL - DEBUG - Connected to: Serial<id=0xb30662b0, open=True>(port='/dev/ttyACM0', baudrate=115200, bytesize=8, parity='N', stopbits=1, timeout=2.0, xonxoff=True, rtscts=False, dsrdtr=False), starting monitor
2020-04-05 15:36:56,922 - SERIAL - DEBUG - Send: M105
2020-04-05 15:36:56,925 - SERIAL - DEBUG - Recv: echo:Unknown command: "~"
2020-04-05 15:36:56,926 - SERIAL - DEBUG - Recv: ok
2020-04-05 15:37:01,938 - SERIAL - DEBUG - Send: G91
2020-04-05 15:37:01,941 - SERIAL - DEBUG - Send: G1 Z10.0000 F700

2020-04-05 20:25:40,428 - SERIAL - DEBUG - Unexpected error while reading serial port: SerialException: 'device reports readiness to read but returned no data (device disconnected or multiple access on port?)' @ comm.py:_readline:1133
2020-04-05 20:25:41,559 - SERIAL - DEBUG - Connection closed, closing down monitor
2020-04-05 20:39:39,260 - SERIAL - DEBUG - Connecting to: /dev/ttyACM0
2020-04-05 20:39:39,266 - SERIAL - DEBUG - Connected to: Serial<id=0xb3015610, open=True>(port='/dev/ttyACM0', baudrate=115200, bytesize=8, parity='N', stopbits=1, timeout=2.0, xonxoff=True, rtscts=False, dsrdtr=False), starting monitor
2020-04-05 20:39:39,268 - SERIAL - DEBUG - Send: M105
2020-04-05 20:39:39,273 - SERIAL - DEBUG - Recv: echo:Unknown command: "~"
2020-04-05 20:39:39,276 - SERIAL - DEBUG - Recv: ok
2020-04-05 20:39:40,324 - SERIAL - DEBUG - Connecting to: /dev/ttyACM0
2020-04-05 20:39:40,327 - SERIAL - DEBUG - Connected to: Serial<id=0xb305a7b0, open=True>(port='/dev/ttyACM0', baudrate=115200, bytesize=8, parity='N', stopbits=1, timeout=2.0, xonxoff=True, rtscts=False, dsrdtr=False), starting monitor
2020-04-05 20:39:40,328 - SERIAL - DEBUG - Send: M105
2020-04-05 20:39:40,331 - SERIAL - DEBUG - Unexpected error while reading serial port: TypeError: 'an integer is required' @ comm.py:_readline:1133
2020-04-05 20:39:40,333 - SERIAL - DEBUG - Connection closed, closing down monitor
2020-04-05 20:39:40,340 - SERIAL - DEBUG - Recv: ok T:20.62 /0.00 B:35.67 /0.00 @:0 B@:0
2020-04-05 20:39:43,045 - SERIAL - DEBUG - Connecting to: /dev/ttyACM0
2020-04-05 20:39:43,050 - SERIAL - DEBUG - Connected to: Serial<id=0xb3015610, open=True>(port='/dev/ttyACM0', baudrate=115200, bytesize=8, parity='N', stopbits=1, timeout=2.0, xonxoff=True, rtscts=False, dsrdtr=False), starting monitor
2020-04-05 20:39:43,051 - SERIAL - DEBUG - Send: M105

2020-04-05 20:40:29,120 - SERIAL - DEBUG - Recv: ok T:20.62 /0.00 B:35.58 /0.00 @:0 B@:0
2020-04-05 20:40:29,836 - SERIAL - DEBUG - Unexpected error while reading serial port: SerialException: 'device reports readiness to read but returned no data (device disconnected or multiple access on port?)' @ comm.py:_readline:1133
2020-04-05 20:40:29,837 - SERIAL - DEBUG - Connection closed, closing down monitor
2020-04-05 20:43:12,691 - SERIAL - DEBUG - Connecting to: /dev/ttyACM0
2020-04-05 20:43:12,701 - SERIAL - DEBUG - Connected to: Serial<id=0xacbc3c10, open=True>(port='/dev/ttyACM0', baudrate=115200, bytesize=8, parity='N', stopbits=1, timeout=2.0, xonxoff=True, rtscts=False, dsrdtr=False), starting monitor
2020-04-05 20:43:12,702 - SERIAL - DEBUG - Send: M105
2020-04-05 20:43:12,703 - SERIAL - DEBUG - Recv: echo:Unknown command: "~"
2020-04-05 20:43:12,704 - SERIAL - DEBUG - Recv: ok
2020-04-05 20:43:14,772 - SERIAL - DEBUG - Send: G91

I’m at the point now where I don’t trust AstroPrint with any print longer than 2 hours. I’ve tried two different USB cables. It very well could be an issue with my SKR mini board and not AstroPrint, but at the same time shouldn’t there be an option for AstroPrint to upload the print to internal printer storage?.. As opposed to “streaming” the gcode to the printer. Its chugging along and suddenly stops for no reason, and then on the AstroTouch I literally do not have to do anything, I just go into the 3D printer connection menu and it has already reconnected.

I searched the gcode for “~” and the only thing that shows up is:

; compatible_printers_condition_cummulative = ;printer_notes=~/.PRINTER_VENDOR_CREALITY./

Does anybody else have this issue or suggestion?

Thanks!
Beau

This looks like garbage in the link. These are hard to pinpoint but to me it’s clear from the logs that the printer “thinks” it received something that was not sent. The message is deformed in transit

It might be your cable, power supply, firmware or some HW problem at the printer. Take a look at this for some pointers: https://astroprint.zendesk.com/hc/en-us/articles/115001797403-Why-does-my-printer-disconnect-in-the-middle-of-a-print-