Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Print aborted with error message from Marlin "Error:No Checksum with line number" #490

Closed
sprior opened this issue Jun 5, 2014 · 18 comments
Labels
needs information More information is needed to further process this issue or PR

Comments

@sprior
Copy link

sprior commented Jun 5, 2014

I'm running:
pi@m2 ~/OctoPrint $ git log
commit 244128c
Merge: 9c9b98d 7bba1dc
Author: Gina Häußge osd@foosel.net
Date: Sun May 25 20:19:03 2014 +0200

I was in the middle of printing something and the print suddenly stopped for no apparent reason. I use a Raspberry Pi running Octoprint to control the printer, but it's not obvious whether it's the gcode, Octoprint, or firmware to blame. Here's the log.

Send: N6429 G1 X41.025 Y245.824 E3.5575_85
Recv: ok
Send: M105
Recv: ok
Send: N6430 G1 X41.857 Y246.406 E3.6066_91
Recv: ok
Send: N6431 G1 X53.331 Y234.932 E4.3909_95
Recv: Error:No Checksum with line number, Last Line:6428
Recv: Resend:6429
Send: N6429 G1 X41.025 Y245.824 E3.5575_85
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line:6428
Recv: Resend:6429
Send: N6429 G1 X41.025 Y245.824 E3.5575_85
Recv: ok
Recv: ok
Send: N6430 G1 X41.857 Y246.406 E3.6066_91
Recv: Error:Line Number is not Last Line Number+1, Last Line:6429
Recv: Resend:6430
Send: N6430 G1 X41.857 Y246.406 E3.6066_91
Recv: ok
Recv: ok
Send: N6431 G1 X53.331 Y234.932 E4.3909_95
Recv: Error:Line Number is not Last Line Number+1, Last Line:6430
Recv: Resend:6431
Send: N6431 G1 X53.331 Y234.932 E4.3909*95
Recv: ok
Recv: ok
Send: M105
Recv: Error:Line Number is not Last Line Number+1, Last Line:6431
Recv: Resend:6432
Changing monitoring state from 'Printing' to 'Error: Printer requested li...'
Recv: ok

@foosel
Copy link
Member

foosel commented Jun 5, 2014

I just pushed a commit making sure commands are always sent with checksum during printing (as discussed on the mailinglist), how ever on further look I think the issue might rather be caused by both the resend request and the ok that follows it being interpreted as a go ahead by OctoPrint to send the next command, whereas the printer is not of that opinion. As a workaround until that bloody new comm layer is finally done (it's getting close, had my first successful prints with it on monday, pretty consistent :)) I introduced the "swallow ok after resend" option under Settings > Features -- do you have that enabled?

@foosel
Copy link
Member

foosel commented Jun 5, 2014

For reference: 3ee745d <- always sends checksum while printing

@sprior
Copy link
Author

sprior commented Jun 5, 2014

I don't have access via the web interface at the moment, but I didn't see anything in my config.yaml that would indicate the "swallow ok after resend" has been changed from whatever its default value is.

@foosel
Copy link
Member

foosel commented Jun 5, 2014

If it was different from the current default it would have to look something like this:

feature:
  swallowOkAfterResend: false

So if you really don't have it set to false and the default applies, you should have that enabled. Now that's odd. Do you have a bit more above the first quoted lines from the terminal log by chance?

@sprior
Copy link
Author

sprior commented Jun 5, 2014

from my config.yaml:
feature: {}

Sorry,. I don't have any more of the terminal log.

foosel added a commit that referenced this issue Feb 20, 2015
Might be a good solution for people affected by #166, #470, #490 until commRefactoring branch is ready for prime time. No solution for #553 since that needs proper queueing and blocking command detection.
@foosel
Copy link
Member

foosel commented Mar 3, 2015

Please test if that still occurs with current devel

@foosel foosel added needs information More information is needed to further process this issue or PR and removed status:accepted labels Mar 3, 2015
@thaytan
Copy link

thaytan commented Apr 16, 2015

I'm getting similar looking errors with current git master, with 'swallow first OK after resend' enabled:

Send: N55 G1 X70.590 Y105.806 E3.30715*96
Recv: ok
Send: N56 G1 X70.798 Y106.145 E3.32160*98
Recv: ok
Send: N57 G1 X71.083 Y106.833 E3.34864*108
Recv: Error:No Line Number with checksum, Last Line: 56
Communication timeout during printing, forcing a line
Send: N58 M105*26
Recv: echo:Unknown command: ""
Recv: ok
Send: N59 M105*27
Recv: Error:No Line Number with checksum, Last Line: 56
Communication timeout during printing, forcing a line
Send: N60 M105*17
Recv: echo:Unknown command: ""
Recv: ok
Send: N61 M105*16
Recv: Error:No Line Number with checksum, Last Line: 56
Communication timeout during printing, forcing a line
Send: N62 M105*19
Recv: echo:Unknown command: ""
Recv: ok
Send: N63 M105*18
Recv: Error:Line Number is not Last Line Number+1, Last Line: 56
Recv: Resend: 57
Send: N57 G1 X71.083 Y106.833 E3.34864*108
Recv: ok

@foosel
Copy link
Member

foosel commented Apr 16, 2015

@thaytan I took the liberty to format your log to make it more readable. That looks like a valid communication problem to me. The "No Line Number with checksum" implicates that your printer did not receive the N57 part in N57 G1 X71.083 Y106.833 E3.34864*108. The several echo:Unknown command: "" in there also make me suggest to check your cables. Something's going wrong there that's not caused by software (at least not on the sending side).

@thaytan
Copy link

thaytan commented Apr 16, 2015

Switching to a different USB port and moving the USB cable seems to work better indeed.

@foosel
Copy link
Member

foosel commented Jun 3, 2015

Closing since assuming this is now fixed by the extensive changes in the comm layer (no feedback, no choice)

@foosel foosel closed this as completed Jun 3, 2015
@d00616
Copy link

d00616 commented Sep 13, 2015

I'm not the opener of this issue but i had the same problem. After updating this was solved for me. Thanks.

@FormerLurker
Copy link

I'm getting a similar lockup. Here is my log:

Recv: ok
Send: N90930 G1 X130.525 Y110.956 E0.01892105
Recv: Error:No Checksum with line number, Last Line: 90928
Recv: Resend: 90929
Recv: Error:Line Number is not Last Line Number+1, Last Line: 90928
Recv: Resend: 90929
Communication timeout during an active resend, resending same line again to trigger response from printer. Configure long running commands or increase communication timeout if that happens regularly on specific commands or long moves.
Send: N90928 G1 X130.950 Y110.281 E0.01077
108
Recv: Error:Line Number is not Last Line Number+1, Last Line: 90928
Recv: Resend: 90929

I've been developing a plugin, and I thought it might be causing problems, but I uninstalled it, rebooted and got the same issue at a different point during my print. Any ideas?

@foosel
Copy link
Member

foosel commented Jan 18, 2018

Original Prusa? See #2285 and prusa3d/Prusa-Firmware#331. In any case a firmware issue (your firmware is missing an ok after the resend request). Workaround for that firmware bug is available and described in both of the tickets linked above.

@FormerLurker
Copy link

You are 100% correct. I investigated the logs and see the same problem you have discovered. I'm SO glad it's not my plugin (or your wonderful print server). Also, thank you for being so responsive!

@hoegge
Copy link

hoegge commented Jan 28, 2018

The workaround does not seem to work in my case (octoprint 1.3.6. on octopi 0.14, Prusa i3 MK2s, FW: 2.13)

Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39686
Recv: Resend: 39687
Recv: ok
Recv: Error:No Line Number with checksum, Last Line: 39686
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39687
Recv: Resend: 39688
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39687
Recv: Resend: 39688
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39687
Recv: Resend: 39688
Recv: ok
Recv: Error:No Line Number with checksum, Last Line: 39687
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39687
Recv: Resend: 39688
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39687
Recv: Resend: 39688
Recv: ok
Recv: Error:No Line Number with checksum, Last Line: 39687
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39687
Recv: Resend: 39688
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39687
Recv: Resend: 39688
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39687
Recv: Resend: 39688
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39687
Recv: Resend: 39688
Recv: ok
Recv: Error:No Line Number with checksum, Last Line: 39687
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39687
Recv: Resend: 39688
Recv: ok
Recv: Error:No Line Number with checksum, Last Line: 39687
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39687
Recv: Resend: 39688
Recv: ok
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39688
Recv: Resend: 39689
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39688
Recv: Resend: 39689
Recv: ok
Recv: echo:Unknown command: "83"
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39688
Recv: Resend: 39689
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39688
Recv: Resend: 39689
Recv: ok
Recv: Error:No Line Number with checksum, Last Line: 39688
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39689
Recv: Resend: 39690
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39689
Recv: Resend: 39690
Recv: ok
Recv: Full RX Buffer
Recv: Error:No Line Number with checksum, Last Line: 39689
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39689
Recv: Resend: 39690
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39689
Recv: Resend: 39690
Recv: ok
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39689
Recv: Resend: 39690
Recv: ok
Recv: Error:No Line Number with checksum, Last Line: 39689
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39689
Recv: Resend: 39690
Recv: ok
Recv: Error:No Line Number with checksum, Last Line: 39689
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39689
Recv: Resend: 39690
Recv: ok
Recv: Error:No Line Number with checksum, Last Line: 39689
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39689
Recv: Resend: 39690
Recv: ok
Send: N39687 G1 X115.397 Y94.832 E0.00676*90
Send: N39688 G1 X115.130 Y94.524 E0.00672*84
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:No Line Number with checksum, Last Line: 39689
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Send: N39687 G1 X115.397 Y94.832 E0.00676*90
Send: N39688 G1 X115.130 Y94.524 E0.00672*84
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Send: N39687 G1 X115.397 Y94.832 E0.00676*90
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39689
Send: N39688 G1 X115.130 Y94.524 E0.00672*84
Recv: Resend: 39690
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: ok
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39689
Recv: Resend: 39Error:Line Number is not Last Line Number+1, Last Line: 39689
Printer requested line 39 but no sufficient history is available, can't resend
Changing monitoring state from 'Printing' to 'Error: Printer requested line 39 but no sufficient history is available, can't resend'
Send: N39687 G1 X115.397 Y94.832 E0.00676*90
Recv: Resend: 39690
Send: N39688 G1 X115.130 Y94.524 E0.00672*84
Recv: ok
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:No Line Number with checksum, Last Line: 39689
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39689
Recv: Resend: 39690
Send: N39687 G1 X115.397 Y94.832 E0.00676*90
Recv: ok
Send: N39688 G1 X115.130 Y94.524 E0.00672*84
Recv: ok
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:No Line Number with checksum, Last Line: 39690
Send: N39687 G1 X115.397 Y94.832 E0.00676*90
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39688 G1 X115.130 Y94.524 E0.00672*84
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:No Line Number with checksum, Last Line: 39690
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39687 G1 X115.397 Y94.832 E0.00676*90
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39688 G1 X115.130 Y94.524 E0.00672*84
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39687 G1 X115.397 Y94.832 E0.00676*90
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39688 G1 X115.130 Y94.524 E0.00672*84
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39688 G1 X115.130 Y94.524 E0.00672*84
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39688 G1 X115.130 Y94.524 E0.00672*84
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39688 G1 X115.130 Y94.524 E0.00672*84
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39688 G1 X115.130 Y94.524 E0.00672*84
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39688 G1 X115.130 Y94.524 E0.00672*84
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39688 G1 X115.130 Y94.524 E0.00672*84
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39688 G1 X115.130 Y94.524 E0.00672*84
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39689 G1 X114.838 Y94.239 E0.00672*94
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Send: N39690 G1 X114.523 Y93.976 E0.00676*82
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691
Recv: Error:Line Number is not Last Line Number+1, Last Line: 39690
Recv: Resend: 39691```

@FormerLurker
Copy link

@hoegge, slice without the 'Linear Advance' profile and turn the workaround you were using off. I've had the most success that way myself. Not sure if it's necessary, but I also changed the Filament Settings->Custom G-Code to: M900 K0

@tcurdt
Copy link

tcurdt commented Jan 28, 2018

@FormerLurker not sure why one would consider changing the "Linear Advance" on the slicing on this issue. That does not make much sense to me at all.

@FormerLurker
Copy link

Odd isn't it. It seems as though linear advances taxes the CPU and causes serial issues on the mk2 and mk3 using the latest firmware. See: prusa3d/Prusa-Firmware#331

@github-actions github-actions bot locked as resolved and limited conversation to collaborators May 29, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
needs information More information is needed to further process this issue or PR
Projects
None yet
Development

No branches or pull requests

7 participants