Marlin: [BUG] [bugfix-2.0.x] [Viki2+Re-ARM] Write to SD failed with "Error:No Checksum with line number, Last Line: 0"

Created on 18 Jun 2019  路  7Comments  路  Source: MarlinFirmware/Marlin

Latest bugfix-2.0.x
Re-ARM
Viki2 display
SD card reader enabled on that display: #define LPC_SD_LCD

**Writing a file to SD on Viki2 through UART failed with error:

Error:No Checksum with line number, Last Line: 0'**

Example:
> M28 ttt.gco
> echo:Now fresh file: ttt.gco
> Writing to file: ttt.gco
> G92
> Error:No Checksum with line number, Last Line: 0
> G92
> Error:No Checksum with line number, Last Line: 0
> G92
> G92
> Error:No Checksum with line number, Last Line: 0
> Error:No Checksum with line number, Last Line: 0
> M29 ttt.gco
> Done saving file.

After that there is an empty file on the SD.
Reading file list and printing from this SD works just fine.
Write to the same SD via direct access with Panucatt WiFi Backpack also works good.
config.zip

Most helpful comment

Thank you friends!
Simplify3D works good with this setting for now. File uploaded without errors.
But with the old Marlin 1.1 everything worked without these settings.
I could not find any mention of checksums and line numbers in the command description at http://marlinfw.org/docs/gcode/M028.html
Seems this was not a bug but a feature. ;)

All 7 comments

What program are you using to send the file to the SD card? I'm pretty sure that when you use the M28 command Marlin expects all following commands (that are to be written to the file) to have a line number and checksum (other than the terminating M29). You can see the code that enforces this here... https://github.com/MarlinFirmware/Marlin/blob/bugfix-2.0.x/Marlin/src/gcode/queue.cpp#L677

I've tried to upload files via interface of Simplify3D and latest ESP3D-WEBUI.
Both with same error in console.

Do those programs have options to specify line numbers and checksums when sending code to a printer you may need to enable that. I'm pretty sure that Octoprint, Repetier host and pronterface work with M28.

@thinkyhead should M28 allow uploads without line numbers and checksums?

Simplify3D doesn't enable checksums by default, so you'll have to go into Tools -> Firmware Configuration -> Communication -> Advanced and check the Include line numbers and checksums (for ASCII G-Code only) box.

Screen Shot 2019-06-20 at 12 15 37 AM

Thank you friends!
Simplify3D works good with this setting for now. File uploaded without errors.
But with the old Marlin 1.1 everything worked without these settings.
I could not find any mention of checksums and line numbers in the command description at http://marlinfw.org/docs/gcode/M028.html
Seems this was not a bug but a feature. ;)

should M28 allow uploads without line numbers and checksums?

No. It is meant to capture print jobs, not to expose a general SD file utility. Checksums and line numbers are essential to validate the data. You wouldn't want to write garbage to your SD card. Another point of this check is to distinguish between immediate commands sent from the console during a print job, and the actual lines of the print job.

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

alexxy picture alexxy  路  192Comments

paulpenney picture paulpenney  路  549Comments

Roxy-3D picture Roxy-3D  路  497Comments

revilor picture revilor  路  370Comments

d2crafty picture d2crafty  路  212Comments