Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    New experimental firmware 1.19beta10

    Scheduled Pinned Locked Moved
    Firmware installation
    12
    63
    8.0k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Yonkimanundefined
      Yonkiman
      last edited by

      I have another oddity to report with 1.19beta10:

      Sometimes when a (successful) print ends, I get a "Can't delete file 0:/sys/resurrect.g" error. It's not surprising it can't delete it (because I don't have a resurrect.g file), but I never saw that error until recently (I'm pretty sure coincident with going from beta8 to beta10). I also don't know where the [c]G10 P1 S0[/c] came from - it's not in my gcode, and the only [c]G10[/c]s I have in my Duet config files are [c]G10 P0 R0 S0[/c] and [c]G10 P1 R0 S0[/c] in my config.g file when I set up my tools. Here's the console output from a print I ran last night:

      11:12:00 PM	G10 P1 S0
      		Can't delete file 0:/sys/resurrect.g
      		Done printing file
      11:11:56 PM	Can't delete file 0:/sys/resurrect.g
      		Done printing file
      

      Here are the last lines of gcode from that print:```
      G1 X0.053 Y9.146 F540
      G1 E-8.0000 F6000
      ; layer end
      T0 ; Select Extruder 0 if not already selected
      G90 ; Switch to absolute mode
      G1 X0 Y0 Z250 E-10 F6000 ; Retract filament and raise printhead
      M104 S0 ; Turn off heater
      M84 S10 ; turn off motors after 10 seconds

      BTW, do you prefer feedback like this in this forum or as an issue in github?
      1 Reply Last reply Reply Quote 0
      • dc42undefined
        dc42 administrators
        last edited by

        Thanks, Yonkiman. I prefer issues reported here, especially for betas.

        Regarding G1 P1 S0, do you have a stop.g file, and if so, is it in that?

        I'll suppress the "Can't delete" message in the next beta.

        Duet WiFi hardware designer and firmware engineer
        Please do not ask me for Duet support via PM or email, use the forum
        http://www.escher3d.com, https://miscsolutions.wordpress.com

        1 Reply Last reply Reply Quote 0
        • dc42undefined
          dc42 administrators
          last edited by

          Chrishamm has released DWC 1.17+2 which includes the changes needed to work with the new height map. So will those of you running firmware 1.19beta10 please upgrade it to 1.19beta10+2 if you haven't already, and upgrade DWC to 1.17+2. The mesh bed compensation height map should then display correctly.

          Duet WiFi hardware designer and firmware engineer
          Please do not ask me for Duet support via PM or email, use the forum
          http://www.escher3d.com, https://miscsolutions.wordpress.com

          1 Reply Last reply Reply Quote 0
          • Yonkimanundefined
            Yonkiman
            last edited by

            @dc42:

            Regarding G1 P1 S0, do you have a stop.g file, and if so, is it in that

            Yes, I have the file; no it is not in that file. File only has the default 2 comment lines. I actually did a search for the word "G10" on my entire SD card, and it only appeared in the tool setup in config.g (as reported above) and one or two binary files.

            Speaking of which…once we successfully flash the firmware, is it safe to remove all the non-text (i.e. .bin/.zip/.rar) files from our sys directory?

            1 Reply Last reply Reply Quote 0
            • dc42undefined
              dc42 administrators
              last edited by

              @Yonkiman:

              Speaking of which…once we successfully flash the firmware, is it safe to remove all the non-text (i.e. .bin/.zip/.rar) files from our sys directory?

              Yes, although the only binary files that should be in there are the two extra .bin files for the Duet WiFi.

              Duet WiFi hardware designer and firmware engineer
              Please do not ask me for Duet support via PM or email, use the forum
              http://www.escher3d.com, https://miscsolutions.wordpress.com

              1 Reply Last reply Reply Quote 0
              • W3DRKundefined
                W3DRK
                last edited by

                Hey David, did you see my question nested up a few posts about dual-Z motor cartesian printers?

                1 Reply Last reply Reply Quote 0
                • dc42undefined
                  dc42 administrators
                  last edited by

                  @W3DRK:

                  Can this new independent Z motor leveling be used for dual Z Cartesian printers like the Prusa, OrdBot, clones, etc, or is this a Delta only feature? Seems like it could be used to automatically get the X-axis of the bed mechanically leveled, only requiring the Z motors to track Y-axis movement…

                  Yes, it's for Cartesian and CoreXY printers, not deltas.. See https://duet3d.com/wiki/Bed_levelling_using_multiple_independent_Z_motors.

                  It can also be used to tell you what adjustments to make to manual bed levelling screws, but I haven't documented how to do that yet.

                  Duet WiFi hardware designer and firmware engineer
                  Please do not ask me for Duet support via PM or email, use the forum
                  http://www.escher3d.com, https://miscsolutions.wordpress.com

                  1 Reply Last reply Reply Quote 0
                  • larsundefined
                    lars
                    last edited by

                    Did some more testing for the leveling. There might be some other bug. Feels like its still adjusting in the wrong direction…
                    I changed the probe order to match the reporting of G32 and moved the points a bit.

                    16:55:14 M98 P0:/macros/4 - Leveling Check Probe
                    Bed probe heights: -0.136 -0.441 -0.471, mean -0.349, deviation from mean 0.151
                    16:54:26 G32
                    Error: some computed corrections exceed configured limit of 0.50mm: -0.007 0.505 0.553
                    16:52:50 M98 P0:/macros/4 - Leveling Check Probe
                    Bed probe heights: -0.138 -0.439 -0.461, mean -0.346, deviation from mean 0.147
                    16:52:09 G32
                    Leadscrew adjustments made: -0.294 0.260 0.269, points used 3, deviation before 0.170 after 0.000
                    16:51:36 M98 P0:/macros/4 - Leveling Check Probe
                    Bed probe heights: 0.186 -0.203 -0.174, mean -0.064, deviation from mean 0.177
                    
                    

                    Front left lead screw (-60,-10) is connected to Z (drive 2)
                    Front right lead screw (560,-10) is connected to Y (drive 1)
                    Back centre lead screw (250,560) is connected to X (Drive 0)

                    Macro "4 - Leveling Check Probe":

                    T0
                    M401
                    G30 P0 X250 Y420 Z-99999    ; probe near a leadscrew
                    G30 P1 X420 Y80 Z-99999     ; probe near a leadscrew and calibrate 3 motors
                    G30 P2 X80 Y80 Z-99999 S-1  ; probe near a leadscrew
                    M402
                    G90
                    G1 X250 Y250
                    T-1
                    
                    ```bed.g:
                    

                    T0
                    M401
                    G30 P0 X250 Y420 Z-99999 ; probe near a leadscrew
                    G30 P1 X420 Y80 Z-99999 ; probe near a leadscrew and calibrate 3 motors
                    G30 P2 X80 Y80 Z-99999 S3 ; probe near a leadscrew
                    M402
                    G90
                    G1 Y250
                    T-1

                    M584 Y5 X7 U8 V6 E3:4 Z0:1:2 ; Set up steppers for x, y, u, v, z and e, use P4 once it works to hide V
                    M671 X250:560:-60 Y560:-10:-10 S0.5 ; Set up lead screw positions for bed leveling

                    1 Reply Last reply Reply Quote 0
                    • dc42undefined
                      dc42 administrators
                      last edited by

                      Lars, thanks for that. The corrections it wants to make now look correct - they are similar to the height errors but with opposite sign and somewhat larger magnitude - which is expected because you are probing well inside the leadscrew positions.

                      As you say, it looks like the corrections may be getting applied with the wrong sign, at least for the 2nd and 3rd screws. I'll simulate your figures on my Cartesian printer (which has only 1 Z motor) and see whether there is a problem with positive corrections.

                      EDIT: I found the problem. When it is setting the motor direction, it sets the directions of all Z motors together instead of individually. I will fix this shortly as I am keen to get this feature working properly.

                      Duet WiFi hardware designer and firmware engineer
                      Please do not ask me for Duet support via PM or email, use the forum
                      http://www.escher3d.com, https://miscsolutions.wordpress.com

                      1 Reply Last reply Reply Quote 0
                      • dc42undefined
                        dc42 administrators
                        last edited by

                        Lars, please try DuetWiFiFirmware 1.19beta10+3, available here https://dl.dropboxusercontent.com/u/19369680/DuetWiFiFirmware.bin.

                        Duet WiFi hardware designer and firmware engineer
                        Please do not ask me for Duet support via PM or email, use the forum
                        http://www.escher3d.com, https://miscsolutions.wordpress.com

                        1 Reply Last reply Reply Quote 0
                        • larsundefined
                          lars
                          last edited by

                          21:45:43 M98 P0:/macros/4 - Leveling Check Probe
                          Bed probe heights: -0.275 -0.663 0.068, mean -0.290, deviation from mean 0.299
                          21:45:15 G32
                          Error: some computed corrections exceed configured limit of 0.50mm: 0.260 0.969 -0.344
                          21:44:34 M98 P0:/macros/4 - Leveling Check Probe
                          Bed probe heights: -0.274 -0.659 0.049, mean -0.295, deviation from mean 0.289
                          21:43:43 G32
                          Leadscrew adjustments made: 0.136 0.486 -0.174, points used 3, deviation before 0.210 after 0.000
                          21:42:42 M98 P0:/macros/4 - Leveling Check Probe
                          Bed probe heights: -0.148 -0.339 0.041, mean -0.149, deviation from mean 0.155
                          21:41:57 G32
                          Leadscrew adjustments made: 0.043 0.230 -0.082, points used 3, deviation before 0.094 after 0.000
                          21:41:19 M98 P0:/macros/4 - Leveling Check Probe
                          Bed probe heights: -0.010 -0.112 0.054, mean -0.023, deviation from mean 0.069
                          
                          

                          Firmware Name: RepRapFirmware for Duet WiFi
                          Firmware Electronics: Duet WiFi 1.0 + DueX5
                          Firmware Version: 1.19beta10+3 (2017-07-21)
                          WiFi Server Version: 1.19beta9
                          Web Interface Version: 1.17+2

                          1 Reply Last reply Reply Quote 0
                          • Yonkimanundefined
                            Yonkiman
                            last edited by

                            Just in case they got lost in all the back-and forth, here are the two issues I'm still seeing with 1.19beta10+2 & DWC 1.17+2:

                            1. M666 in config.g doesn't execute/"stick" - after a reboot M666 is always reset to [c]Endstop adjustments X0.00 Y0.00 Z0.00, tilt X0.00% Y0.00%[/c]. I don't have a config-override.g file or an M501 command in my config.g. M665 in config.g works as expected.

                            2. My prints are now ending with a "Can't delete file 0:/sys/resurrect.g" error, and the final lines in my gcode are not executed:

                            G1 X0.053 Y9.146 F540
                            G1 E-8.0000 F6000
                            ; layer end
                            T0		; Select Extruder 0 if not already selected
                            G90		; Switch to absolute mode
                            G1 X0 Y0 Z250 E-10  F6000	; Retract filament and raise printhead
                            M104 S0		; Turn off heater
                            M84 S10		; turn off motors after 10 seconds
                            
                            ```I'm guessing it might have to do with the [c]T0[/c], because the print completes, but the printhead doesn't move up and the heater doesn't turn off. I'll try a print without the [c]T0[/c] tomorrow and see if the problem goes away.
                            1 Reply Last reply Reply Quote 0
                            • larsundefined
                              lars
                              last edited by

                              David, any chance you could add the probe point data in the output together with the adjustment for the leveling?

                              1 Reply Last reply Reply Quote 0
                              • dc42undefined
                                dc42 administrators
                                last edited by

                                @lars:

                                21:45:43 M98 P0:/macros/4 - Leveling Check Probe
                                Bed probe heights: -0.275 -0.663 0.068, mean -0.290, deviation from mean 0.299
                                21:45:15 G32
                                Error: some computed corrections exceed configured limit of 0.50mm: 0.260 0.969 -0.344
                                21:44:34 M98 P0:/macros/4 - Leveling Check Probe
                                Bed probe heights: -0.274 -0.659 0.049, mean -0.295, deviation from mean 0.289
                                21:43:43 G32
                                Leadscrew adjustments made: 0.136 0.486 -0.174, points used 3, deviation before 0.210 after 0.000
                                21:42:42 M98 P0:/macros/4 - Leveling Check Probe
                                Bed probe heights: -0.148 -0.339 0.041, mean -0.149, deviation from mean 0.155
                                21:41:57 G32
                                Leadscrew adjustments made: 0.043 0.230 -0.082, points used 3, deviation before 0.094 after 0.000
                                21:41:19 M98 P0:/macros/4 - Leveling Check Probe
                                Bed probe heights: -0.010 -0.112 0.054, mean -0.023, deviation from mean 0.069
                                
                                

                                Firmware Name: RepRapFirmware for Duet WiFi
                                Firmware Electronics: Duet WiFi 1.0 + DueX5
                                Firmware Version: 1.19beta10+3 (2017-07-21)
                                WiFi Server Version: 1.19beta9
                                Web Interface Version: 1.17+2

                                This is strange. I set up my bench system, configured as a CoreXY with your leadscrew positions and motor assignments:

                                M584 Y5 X7 U8 V6 E3:4 Z0:1:2         ; Set up steppers for x, y, u, v, z and e, use P4 once it works to hide V
                                M671 X250:560:-60 Y560:-10:-10 S0.5  ; Set up lead screw positions for bed leveling
                                
                                

                                I created a bed.g file like yours, except that I put the initial probe height errors that you reported in it:

                                G30 P0 X250 Y420 Z-0.010  
                                G30 P1 X420 Y80 Z-0.112    
                                G30 P2 X80 Y80 Z0.054 S3  
                                
                                

                                I set my Z steps/mm to 3200 so that 1mm movement is 1 revolution of the motor. I have flags on the motor shafts so that I can see the movement. I loaded firmware 1.19beta10+3. I sent G92 X0 Y0 Z10 as I don't have any means of homing this setup.

                                When I run G31, I get this:

                                Leadscrew adjustments made: 0.002 0.185 -0.117, points used 3, deviation before 0.072 after 0.000
                                
                                

                                I can see the X motor moving clockwise very slightly, the Y motor moving clockwise a little less than 1/5 of a turn, and the Z motor moving anticlockwise a little less than 1/8 of a turn. I checked that when I command +Z movement, the rotation is clockwise. So it all looks correct.

                                Please can you check a few things:

                                1. Is the maximum Z speed in your M201 command in config.g achievable?

                                2. Are you certain that you have the motors connected to the driver outputs in the order listed? Bear in mind that the order of driver outputs along the edge of the Duet is 2 1 0 3 4 (i.e. Z Y X E0 E1) not 0 1 2 3 4.

                                3. Can you see the leadscrews moving by about the correct amount, in the correct direction?

                                Duet WiFi hardware designer and firmware engineer
                                Please do not ask me for Duet support via PM or email, use the forum
                                http://www.escher3d.com, https://miscsolutions.wordpress.com

                                1 Reply Last reply Reply Quote 0
                                • dc42undefined
                                  dc42 administrators
                                  last edited by

                                  @Yonkiman:

                                  Just in case they got lost in all the back-and forth, here are the two issues I'm still seeing with 1.19beta10+2 & DWC 1.17+2:

                                  1. M666 in config.g doesn't execute/"stick" - after a reboot M666 is always reset to [c]Endstop adjustments X0.00 Y0.00 Z0.00, tilt X0.00% Y0.00%[/c]. I don't have a config-override.g file or an M501 command in my config.g. M665 in config.g works as expected.

                                  2. My prints are now ending with a "Can't delete file 0:/sys/resurrect.g" error, and the final lines in my gcode are not executed:

                                  G1 X0.053 Y9.146 F540
                                  G1 E-8.0000 F6000
                                  ; layer end
                                  T0		; Select Extruder 0 if not already selected
                                  G90		; Switch to absolute mode
                                  G1 X0 Y0 Z250 E-10  F6000	; Retract filament and raise printhead
                                  M104 S0		; Turn off heater
                                  M84 S10		; turn off motors after 10 seconds
                                  
                                  ```I'm guessing it might have to do with the [c]T0[/c], because the print completes, but the printhead doesn't move up and the heater doesn't turn off. I'll try a print without the [c]T0[/c] tomorrow and see if the problem goes away.
                                  

                                  Thanks for your report.

                                  I can't reproduce the M666 problem, it works on my delta. Please share your config.g file. If you run M98 Pconfig.g subsequently, does it pick up the correct M666 settings?

                                  I don't know why the last few lines of gcode are not being executed. Is tool 0 active at the end, or is some other tool active? Do you have anything in the tool change files for tool 0?

                                  The "Can't delete" message will be fixed in the next beta.

                                  Duet WiFi hardware designer and firmware engineer
                                  Please do not ask me for Duet support via PM or email, use the forum
                                  http://www.escher3d.com, https://miscsolutions.wordpress.com

                                  1 Reply Last reply Reply Quote 0
                                  • Yonkimanundefined
                                    Yonkiman
                                    last edited by

                                    1. My M666 command wasn't "taking" because I put it before my original block of mechanical configuration commands, one of which was [c]M666 X0 Y0 Z0 ; put your endstop adjustments here, or let auto calibration find them[/c]. So the first M666 was just getting clobbered (PEBCAK).

                                    2. I was also wrong about the issue at the end of a print. I'd switched printing profiles to one that (I didn't notice this at the time) didn't have an ending script with a Z raise. Then when the print finished without moving the head off the print, I looked at the gcode console and saw the "Can't delete" error, so I assumed they were related, and then I managed to look at the wrong gcode when I was "confirming".

                                    Dave, one of these days I swear I'm going to stop wasting your time and actually be helpful… I really appreciate your patience.

                                    1 Reply Last reply Reply Quote 0
                                    • dc42undefined
                                      dc42 administrators
                                      last edited by

                                      No problem!

                                      Duet WiFi hardware designer and firmware engineer
                                      Please do not ask me for Duet support via PM or email, use the forum
                                      http://www.escher3d.com, https://miscsolutions.wordpress.com

                                      1 Reply Last reply Reply Quote 0
                                      • larsundefined
                                        lars
                                        last edited by

                                        @dc42:

                                        Please can you check a few things:

                                        1. Is the maximum Z speed in your M201 command in config.g achievable?

                                        2. Are you certain that you have the motors connected to the driver outputs in the order listed? Bear in mind that the order of driver outputs along the edge of the Duet is 2 1 0 3 4 (i.e. Z Y X E0 E1) not 0 1 2 3 4.

                                        3. Can you see the leadscrews moving by about the correct amount, in the correct direction?

                                        1. I halved all the vales and retested with same result:

                                        M566 Z12
                                        M203 Z200
                                        M201 Z125
                                        
                                        

                                        2. Yes, rechecked again.

                                        3. All lead screws move in the wrong direction. I do estimate they turn about what it says but in the wrong direction…
                                        Edit: If you look at the result from my last post it shows the test probing confirms that they all turn the wrong way on my printer...

                                        M569 P0 S0 ; Drive 0 Z
                                        M569 P1 S0 ; Drive 1 Z
                                        M569 P2 S0 ; Drive 2 Z
                                        M569 P3 S0 ; Drive 3 E0
                                        M569 P4 S0 ; Drive 4 E1
                                        M569 P5 S1 ; Drive 5 Y
                                        M569 P6 S1 ; Drive 6 V
                                        M569 P7 S1 ; Drive 7 X
                                        M569 P8 S1 ; Drive 8 U
                                        M569 P9 S1 ; Drive 9
                                        
                                        ```Edit 2: In your test was M569 PX S0 or S1?
                                        1 Reply Last reply Reply Quote 0
                                        • dc42undefined
                                          dc42 administrators
                                          last edited by

                                          Hi Lars, I think you are right, I had the corrections in the wrong direction. Please try DuetWiFiFirmware 1.19beta10+4, available at https://dl.dropboxusercontent.com/u/19369680/DuetWiFiFirmware.bin.

                                          Duet WiFi hardware designer and firmware engineer
                                          Please do not ask me for Duet support via PM or email, use the forum
                                          http://www.escher3d.com, https://miscsolutions.wordpress.com

                                          1 Reply Last reply Reply Quote 0
                                          • larsundefined
                                            lars
                                            last edited by

                                            @dc42:

                                            Hi Lars, I think you are right, I had the corrections in the wrong direction. Please try DuetWiFiFirmware 1.19beta10+4, available at https://dl.dropboxusercontent.com/u/19369680/DuetWiFiFirmware.bin.

                                            [[language]]
                                            07:53:56 M98 P0:/macros/4 - Leveling Check Probe
                                            Bed probe heights: -0.001 0.008 -0.002, mean 0.002, deviation from mean 0.005
                                            07:53:12 M98 P0:/macros/4 - Leveling Check Probe
                                            Bed probe heights: -0.003 0.005 -0.001, mean 0.000, deviation from mean 0.003
                                            07:52:38 G32
                                            Leadscrew adjustments made: -0.023 0.025 0.002, points used 3, deviation before 0.012 after 0.000
                                            07:51:53 M98 P0:/macros/4 - Leveling Check Probe
                                            Bed probe heights: -0.021 -0.006 0.003, mean -0.008, deviation from mean 0.010
                                            07:51:18 G32
                                            Leadscrew adjustments made: 0.325 0.014 -0.374, points used 3, deviation before 0.167 after 0.000
                                            
                                            ```I do believe its working!
                                            I guess it might offset the center point from Z=0 if it is not on the plane made up of the 3 probings? I included it as a fourth point to minimize this but I guess one could include a rehome of Z in the bed.g…?
                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA