Odd behavior after upgrade

  • Hi all,

    Just upgraded my Duet from 2.02 to 2.05.1. I use a Capacitive Z-Probe for Z homing and probing. I am printing on a sheet of borosilicate glass that is fairly flat. Z is homed with the probe in the dead center of the bed.

    After upgrading I am getting really weird behavior when I probe the bed. I am getting this warning:

    Warning: the height map has a substantial Z offset. Suggest use Z-probe to establish Z=0 datum, then re-probe the mesh.
    4 points probed, min error 0.138, max error 0.225, mean 0.182, deviation 0.033
    Height map saved to file heightmap.csv

    And when I look at the height map it shows the 4 probe points floating above the Z=0 mark:

    4 Probe Points

    I normally probe with four points multiple times so I can adjust the four corners of my bed as close to 0 as possible. After that I apply glue stick and then probe again with thirty-six probe points to build the height map. This might be excessive, but this process has worked well for me. When I switch it to the 36 probe points things get even weirder though. My height map ends up looking like this:

    36 Probe Points.PNG

    The above was also done with the glass completely clean with no glue stick on it. Prior to upgrading my height map never looked like this. I am not sure if I missed something in the upgrade notes about settings I need to change or something or if this is a bug. Below is my config.g:

    ; General preferences
    G90                                      ; Send absolute coordinates...
    M83                                      ; ...but relative extruder moves
    ; Network
    M550 P"CR-10S"                            ; Set machine name
    M551 P"Password:                       ; Set password
    M552 S1                                  ; Enable network
    M586 P0 S1                               ; Enable HTTP
    M586 P1 S0                               ; Disable FTP
    M586 P2 S0                               ; Disable Telnet
    ; Drives
    M569 P0 S0                               ; Drive 0 goes forwards
    M569 P1 S0                               ; Drive 1 goes forwards
    M569 P2 S0                               ; Drive 2 goes forwards
    M569 P3 S0                               ; Drive 3 goes forwards
    M569 P4 S1 
    M350 X16 Y16 Z16 E16 I1              ; Configure microstepping without interpolation
    M92 X80.00 Y80.00 Z1600.00 E409 ; Set steps per mm
    M566 X500.00 Y500.00 Z30.00 E120.00      ; Set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z180.00 E2400.00  ; Set maximum speeds (mm/min)
    M201 X900.00 Y900.00 Z200.00 E5000.00      ; Set accelerations (mm/s^2)
    M906 X800.00 Y1100.00 Z800.00 E800.00 I30 ; Set motor currents (mA) and motor idle factor in per cent
    M84 S30                                  ; Set idle timeout
    ; Axis Limits
    M208 X-6 Y-10 Z0 S1                         ; Set axis minima
    M208 X300 Y300 Z400 S0                   ; Set axis maxima
    ; Endstops
    M574 X1 Y1 Z0 S1                            ; Set active high endstops
    ; Z-Probe
    M574 Z1 S2                               ; Set endstops controlled by probe
    M558 P5 H5 F300 T6000 I1                 ; Set Z probe type to switch and the dive height + speeds
    G31 P500 X65 Y0 Z2.729                 ; Set Z probe trigger value, offset and trigger height
    M557 X65:235 Y65:235 S34                ; Define mesh grid
    ;M557 X65:235 Y65:235 S170  
    ; Heaters
    M307 H0 B0 S1.00                         ; Disable bang-bang mode for the bed heater and set PWM limit
    M305 P0 T100000 B4138 R4700              ; Set thermistor + ADC parameters for heater 0
    M143 H0 S120                             ; Set temperature limit for heater 0 to 120C
    M305 P1 T100000 B4138 R4700              ; Set thermistor + ADC parameters for heater 1
    M143 H1 S286                            ; Set temperature limit for heater 1 to 280C
    M307 H0 A81.3 C675.5 D0.3 S1.00 V13.3 B0
    M307 H1 A260.1 C120.4 D5.6 S1.00 V13.6 B0
    ; Fans
    M106 P0 I0 F500 H-1                 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S1 I0 F500 H1 T45                ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
    ; Tools
    M563 P0 D0 H1                            ; Define tool 0
    G10 P0 X0 Y0 Z0                          ; Set tool 0 axis offsets
    G10 P0 R0 S0                             ; Set initial tool 0 active and standby temperatures to 0C
    ; Miscellaneous
    G29 S1
    T0                                       ; Select first tool

    I started this config several years ago and based it off the online configuration tool at the time.

  • Moderator

    @CthulhuLabs said in Odd behavior after upgrade:

    ; Miscellaneous M501 G29 S1 T0 ; Select first tool {1}

    The warning about the Z Datum and the floating heightmap is because you are loading the heightmap at the end of config.g before the bed has been probed. Remove the G29 S1 from the end of config.g. The proper place for it is either at the end of your homeall if you want it to be active at all times, or in your slicer start gcode (or start.g in the /sys folder) if you only want it active for a print.

    The waves you see in the 36 point heightmap would indicate some backlash is present in your setup such that the probe is changing height as it changes directions on the X axis. Check your mount, belts, idlers, etc for any play.

  • So moving the G29 S1 did nothing, but fixing the backlash did. The eccentric spacer on my X carriage moved some how which is weird as I was printing on it just fine yesterday. I think the nylock nut needs replacing. So thank you. Glad it was something simple I overlooked.

  • Moderator

    Would help to see your homeall and bed.g if you're using it. G29 S1 in the config.g may only be half of it.

  • homeall.g :

    ; homeall.g
    ; called to home all axes
    ; generated by RepRapFirmware Configuration Tool v2 on Tue Nov 20 2018 10:49:57 GMT-0500 (Eastern Standard Time)
    G91                     ; relative positioning
    G1 Z5 F6000 S2          ; lift Z relative to current position
    G1 S1 X-305 Y-305 F1800 ; move quickly to X or Y endstop and stop there (first pass)
    G1 S1 X-305             ; home X axis
    G1 S1 Y-305             ; home Y axis
    G1 X5 Y5 F6000          ; go back a few mm
    G1 S1 X-305 F360        ; move slowly to X axis endstop once more (second pass)
    G1 S1 Y-305             ; then move slowly to Y axis endstop
    G90                     ; absolute positioning
    G1 X100 Y150 F6000        ; go to first bed probe point and home Z
    G30                     ; home Z by probing the bed
    G29 S1
    ; Uncomment the following lines to lift Z after probing
    ;G91                    ; relative positioning
    ;G1 S2 Z5 F100          ; lift Z relative to current position
    ;G90                    ; absolute positioning


    ; bed.g
    ; called to perform automatic bed compensation via G32
    ; generated by RepRapFirmware Configuration Tool v2 on Tue Nov 20 2018 10:49:56 GMT-0500 (Eastern Standard Time)
    M561 ; clear any bed transform
    G29  ; probe the bed and enable compensation

  • So I am still having problems with this. The 4 probe points are still floating above the Z=0 location, and when I print my first layers are not as squished down to the bed as they used to be.

  • Moderator

    Have you redone your z probe trigger height calibration recently?


  • Yes I did.

    There seems to be error between the Z homing, and the bed probing. For instance I just configured the probing to do 9 points. The center point is the same spot that Z homes. I then homed Z and then immediately probed the bed. I then got the values from heightmap.csv. Without changing anything I homed Z again and probed the bed and got the heightmap.csv values again. Here are the results:

    1st probe:
    0.000, -0.026, 0.049
    0.011, 0.017, 0.026
    0.032, 0.012, 0.066

    2nd Probe:
    -0.036, -0.057, 0.016
    -0.024, -0.010, -0.008
    0.000, -0.018, 0.035

    What is interesting is the height map seems to have the same contour, but different offsets. Like the second height map is fairly evenly -0.03 mm lower than the first on all probe points. I am not really sure what exactly this means though.

  • Moderator

    Please can you test the repeatability of your z probe by running the macro outlined here: https://forum.duet3d.com/topic/6962/m48-measure-z-probe-repeatability-and-print-to-serial-output/5?_=1585676517737

  • M292
    G32 bed probe heights: 0.017 0.018 0.017 0.017 0.020 0.020 0.019 0.019 0.018 0.020, mean 0.018, deviation from mean 0.001

  • So I altered the Macro to this:

    M291 P"Probe will be tested 10 times and return mean and standard deviation. Ok or Cancel?" R"WARNING" S3 ; User must click OK or cancel.
    G30 P0 X150 Y150 Z-9999
    G1 X100 Y150 F6000
    G30 P1 X150 Y150 Z-9999
    G1 X200 Y150 F6000
    G30 P2 X150 Y150 Z-9999
    G1 X150 Y100 F6000
    G30 P3 X150 Y150 Z-9999
    G1 X150 Y200 F6000
    G30 P4 X150 Y150 Z-9999
    G1 X200 Y200 F6000
    G30 P5 X150 Y150 Z-9999
    G1 X100 Y100 F6000
    G30 P6 X150 Y150 Z-9999
    G30 P7 X150 Y150 Z-9999
    G30 P8 X150 Y150 Z-9999
    G30 P9 X150 Y150 Z-9999 S-1

    To see if adding in movement operations would have a major influence on the results while still probing the same point. Here are the results:

    G32 bed probe heights: 0.028 0.029 0.039 0.034 0.032 0.037 0.036 0.036 0.037 0.038, mean 0.035, deviation from mean 0.004

  • Moderator

    At least we know the probe itself is consistent, but there still appears to be some backlash in your mechanics.

  • I am just confused where this is coming from. I have checked X, Y, and Z and I cannot feel any slop.

  • hi @CthulhuLabs did you find resolution for this. I have exact same behavior when upgrading from 2.02 to 2.051
    also no mechanical issue to be detected


Log in to reply