Error in GCode File Arrary too long



  • I am getting the following errors when loading Config:

    Error: in GCode file, line 28 column 22: array too long, max length = 1
    Error: in GCode file, line 29 column 36: array too long, max length = 1
    Error: in GCode file, line 30 column 37: array too long, max length = 1
    Error: in GCode file, line 31 column 41: array too long, max length = 1
    Error: in GCode file, line 32 column 37: array too long, max length = 1
    Error: in GCode file, line 33 column 26: array too long, max length = 1

    It is referring to these lines:

    M584 X0.0 Y0.1 Z0.2:0.3:0.4 E0.5 ; set drive mapping
    M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z4000.00 E420.00:420.00:420.00 ; set steps per mm
    M566 X900.00 Y900.00 Z12.00 E120.00:120.00:120.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z180.00 E1200.00:1200.00:1200.00 ; set maximum speeds (mm/min)
    M201 X500.00 Y500.00 Z20.00 E250.00:250.00:250.00 ; set accelerations (mm/s^2)
    M906 X800 Y800 Z800 E800:800:800 I30 ; set motor currents (mA) and motor idle factor in per cent

    I have 3 z-axis drives and 1 for x and 1 for y

    I can't figure out what the compiler is complaining about. Please advise.


  • administrators

    You have defined just one extruder in your M584 command, but provided three E values in later commands.



  • @dc42 Thanks for the assist. Here's the corrected code but I am still getting the same errors:

    M584 X0.0 Y0.1 Z0.2:0.3:0.4 E0.5
    M350 X16 Y16 Z16 E16 I1
    M92 X80.00 Y80.00 Z4000.00:4000.00:4000.00
    M566 X900.00 Y900.00 Z12.00:12.00:12.00 E120.00
    M203 X6000.00 Y6000.00 Z180.00:180.00:180.00 E1200.00
    M201 X500.00 Y500.00 Z20.00:20.00:20.00 E250.00
    M906 X800 Y800 Z800:800:800 E800 I30
    M84 S30
    M671 X-15💯215 Y190:-10:190 S0.5

    I also tried the following but still got the same errors:

    M584 X0.0 Y0.1 Z0.2:0.3:0.4 E0.5
    M350 X16 Y16 Z16 E16 I1
    M92 X80.00 Y80.00 Z4000.00
    M566 X900.00 Y900.00 Z12.00 E120.00
    M203 X6000.00 Y6000.00 Z180.00 E1200.00
    M201 X500.00 Y500.00 Z20.00 E250.00
    M906 X800 Y800 Z800 E800 I30
    M84 S30
    M671 X-15💯215 Y190:-10:190 S0.5


  • administrators

    @Weevil said in Error in GCode File Arrary too long:

    @dc42 Thanks for the assist. Here's the corrected code but I am still getting the same errors:

    M584 X0.0 Y0.1 Z0.2:0.3:0.4 E0.5
    M350 X16 Y16 Z16 E16 I1
    M92 X80.00 Y80.00 Z4000.00:4000.00:4000.00
    M566 X900.00 Y900.00 Z12.00:12.00:12.00 E120.00
    M203 X6000.00 Y6000.00 Z180.00:180.00:180.00 E1200.00
    M201 X500.00 Y500.00 Z20.00:20.00:20.00 E250.00
    M906 X800 Y800 Z800:800:800 E800 I30
    M84 S30
    M671 X-15💯215 Y190:-10:190 S0.5

    That is not corrected code, you still have 3 E values in most of the commands.

    I also tried the following but still got the same errors:

    M584 X0.0 Y0.1 Z0.2:0.3:0.4 E0.5
    M350 X16 Y16 Z16 E16 I1
    M92 X80.00 Y80.00 Z4000.00
    M566 X900.00 Y900.00 Z12.00 E120.00
    M203 X6000.00 Y6000.00 Z180.00 E1200.00
    M201 X500.00 Y500.00 Z20.00 E250.00
    M906 X800 Y800 Z800 E800 I30
    M84 S30
    M671 X-15💯215 Y190:-10:190 S0.5

    That looks like the correct code. Try it again.



  • @dc42 I tried it again. This is the error I am getting:
    Error: in GCode file, line 28 column 22: array too long, max length = 1
    Error: in GCode file, line 29 column 36: array too long, max length = 1
    Error: in GCode file, line 30 column 37: array too long, max length = 1
    Error: in GCode file, line 31 column 41: array too long, max length = 1
    Error: in GCode file, line 32 column 37: array too long, max length = 1
    Error: in GCode file, line 33 column 26: array too long, max length = 1


  • administrators

    Have you counted the lines to see which are lines 28 to 33?

    Are you sure that the file was saved successfully, and you are not actually running an older version of that configuration file? This is especially easy to do if you use M505 to switch between configurations.



  • @dc42 I have run the file from both the Web interface and the PanelDue. Both create the same errors. I am assuming the line count starts at the very first entry in the code even if it is a comment.


  • administrators

    You haven't told me which lines in your excerpt are 28 to 33.



  • @dc42 Counting from the very first entry in the code (; Configuration file for Duet 3 (firmware version 3)) here are lines 28 to 33:

    M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z4000.00 E420.00 ; set steps per mm
    M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z180.00 E1200.00 ; set maximum speeds (mm/min)
    M201 X500.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2)
    M906 X800 Y800 Z800 E800 ; set motor currents (mA) and motor idle factor in per cent

    I am also assuming a blank line (return) counts as a line



  • @dc42 I was thinking about what you said. Somehow, even though the file was saved, it appears to be looking at the old file. I prefer not to flash the board. Is there a code that would wipe residual memory, one that says ignore everything but this new code?



  • @Weevil i learnt that it sometimes will help to power cycle the board. there seem to be situations where an emergency stop or a reset is not sufficient to reload the complete config.g file and possibly others.


  • administrators

    @Weevil said in Error in GCode File Arrary too long:

    @dc42 Counting from the very first entry in the code (; Configuration file for Duet 3 (firmware version 3)) here are lines 28 to 33:

    M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z4000.00 E420.00 ; set steps per mm
    M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z180.00 E1200.00 ; set maximum speeds (mm/min)
    M201 X500.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2)
    M906 X800 Y800 Z800 E800 ; set motor currents (mA) and motor idle factor in per cent

    I am also assuming a blank line (return) counts as a line

    Either there is a very obscure bug in the firmware and nobody else is experiencing it, or the file that is being executed is not the one that you think. Please insert a command line such as:

    M117 "Hello world"

    in that sequence, so that if that really is the file being executed, that message will be output.



  • @dc42 I went ahead and wiped the SD card clean. I reloaded the files and now those errors are gone. I'm pretty sure it was something I did wrong. Thanks for the help.


Log in to reply