Z reading wrong



  • 0_1559596486925_aec47765-a44e-4023-aba2-236542b49d59-image.png

    My first layer height is .32. When I started printing, it showed .32. After baby-stepping rapidly, I got the following error, and the Z display now shows .4 instead of .32. I've seen this happen before.

    0_1559596441172_1901f79a-d0a8-47f0-a0df-1851f40d0a75-image.png

    0_1559596394698_12c34c5e-f7c3-4d61-b77e-f730251af337-image.png


  • administrators

    please post your config.g



  • I also just realized it causes the print to skip forward some undetermined number of lines. It happened again while I started a new print and one of the loops of the skirt got skipped.

    M929 P"log.txt" S1
    ; Configuration file for Duet WiFi (firmware version 1.21)
    ; executed by the firmware on start-up
    ; edited by JP 15/4/19 between the *'s
    ; generated by RepRapFirmware Configuration Tool v2 on Fri Feb 08 2019 11:05:GMT-08S1 00 (Pacific Standard Time)
    
    M667 S1; CoreXY mode
    M584 X0 Y1 Z5:6:7:8 E3:4 P3
    M671 X-69.5:-69.5:370.04:370.04 Y46.75:340:342.0:52.5 S10
    M376 H2
    ; General preferences
    G90                                                  ; Send absolute coordinates...
    M83                                                  ; ...but relative extruder moves
    
    ; Network
    M550 P"NOTPromega"                                   ; Set machine name
    M552 P"lilpaw" S1                                    ; Enable network
    M586 P0 S1                                           ; Enable HTTP
    M586 P1 S1                                           ; Enable FTP
    M586 P2 S1                                           ; Enable Telnet
    
    ; Drives
    M569 P0 S0                                           ; Drive 0 goes backwards
    M569 P1 S1                                           ; Drive 1 goes backwards
    M569 P2 S0                                           ; Drive 2 goes backwards
    M569 P3 S0                                           ; Drive 3 goes forwards
    M569 P4 S0                                          ; Drive 4 goes forwards
    M569 P5 S1                                           ; Drive 5 goes forwards
    M569 P6 S1                                           ; Drive 6 goes forwards
    M569 P7 S1                                           ; Drive 7 goes forwards
    M569 P8 S1                                          ; Drive 8 goes forwards
    M569 P9 S1                                          ; Drive 8 goes forwards
    
    ;**********************
    M92 X159.864275 Y159.864275 Z400 E3800:3800         ; Set steps per mm
    M350 X16 Y16 Z16 I1				; Configure microstepping (before setting steps/mm) without interpolation
    M350 E16:16 I1
    
    
    
    
    M566 X750 Y750 Z150.00 E6:6      ; Set maximum instantaneous speed changes - jerk (mm/min)
    M203 X48000.00 Y48000.00 Z1200.00 E2400.00:2400.00   ; Set maximum speeds (mm/min)
    M201 X1000.00 Y1000.00 Z300.00:300.00:300.00:300.00  E120:120        ; Set accelerations (mm/s^2)
    M906 X1680.00 Y1680.00 E800.00:400.00 I60  ; Set motor currents (mA) and motor idle factor in per cent
    M906 Z1400.00:1400.00:1400.00:1400.00
    M84 S30                                              ; Set idle timeout
    ;*********************
    
    ; Axis Limits
    M208 X0:275 Y0:345 Z0:343.60
    
    
    
    ; Endstops
    
    M574 X2 S1; Set x end-stops types (S1 is active high, applied to X) optical
    M574 Y2 S0 ; Set y end-stops types (S0 is active low, applied to Y) mechanical
    M574 Z1 S1
    
    
    ;M915 Z S-20 F0 H200 R1; stall detection
    
    ; Z-Probe
    M558 P4 I1 H2.5 F180 T3000  ; Set Z probe type -- Enable LIMIT SWITCH
    ;M558 P1 H1.2 F300 T12000 B0 ; IR sensor
    ;M558 P10 ; stall detection
    
    G31 P500 X16.9 Y58.844046 Z1.75                          ; Set Z probe (limit switch) trigger value, offset - take 2 off of Y after new frame is installed
    ; M556 S50 X0 Y0 Z0                                    ; Set orthogonal axis compensation parameters
    M557 X18.5:270 Y58:354.626 S18                              ; Define mesh grid
    
    ; 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 B4388 C7.060000e-8 R4700                                    ; Set thermistor + ADC parameters for heater 1
    ;M305 P1 T10000 B3435  C7.060000e-8 R4700 
    ;M305 P1 T100000 B4725 C7.06e-8
    M305 P1 T100000	B4725 C7.06e-8  ;  <-- E3D
    M305 P2 T100000	B4725 C7.06e-8  ;  <-- E3D
    
    ;M305 P1 T100000 B4693 C0.6643439816e-7 <-- calculated
    ;M305 P1 T100000 B4893 C0.6643439816e-7
    M143 H1 S285                                         ; Set temperature limit for heater 1 to 500C
    M143 H2 S285                                         ; Set temperature limit for heater 2 to 500C
    
    ; Fans
    M106 P3 S0 I0 F500 H-1                               ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P4 S0 I0 F500 H-1
    M106 P1 S0 I0 F500 H1 T100:180 X255 B0                             ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P2 S0 I0 F500 H2 T100:180 X255 B0                             ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
    
    ; Tools
    M563 P0 S"Left" D0 H1 F3:4                            ; 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
    M563 P1 S"Right" D1 H2 F3:4                              ; Define tool 1
    G10 P1 X33.8 Y0 Z0                                     ; Set tool 1 axis offsets
    G10 P1 R0 S0                                         ; Set initial tool 1 active and standby temperatures to 0C
    
    ; Automatic power saving
    M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000"   ; Set voltage thresholds and actions to run on power loss
    
    ; Custom settings are not configured
    
    ; Miscellaneous
    M501                                                 ; Load saved parameters from non-volatile memory
    
    M302 P1 ; allow cold extrude retract
    
    ;M572 D0:1 S0.1
    
    M307 H3 A-1 C-1 D-1 ; make PWM1 a servo
    ;M42 P3 S128 F50; set value for servo
    M42 P3 
    

  • administrators

    @gnydick said in Z reading wrong:

    ; Axis Limits
    M208 X0:275 Y0:345 Z0:343.60

    You need to allow small negative Z values if you want to babystep down by more than the first layer height.



  • @dc42 this seems like a multifaceted bug.

    Since baby stepping doesn't update the Z position, it shouldn't be updated here, even because of another error.

    Axis min and max shouldn't be related to baby stepping limits. This plays perfectly into my suggestion of why baby stepping should be implemented differently. It's a fix, temporary or not, to the current position. Obviously if the first layer is at .2 and for whatever reason you need to baby step down more than .2 it means that the extruder is .4 or more away from the bed. Since that's the case, there's no reason to enforce the axis dimensional limits on the adjusted position because the adjusted position should still be within bounds.

    Basically, if the head is at .45 but should be at .2, why would the system think I'm trying to move past 0 when I baby step down by .25 to move it to .2?



  • @gnydick said in Z reading wrong:

    there's no reason to enforce the axis dimensional limits on the adjusted position because the adjusted position should still be within bounds.

    odds are it wouldn't hold true on the other end of the travel limit - or if it does then the machine isn't configured properly to begin with and babystepping is the wrong "remedy"



  • @bearer That's not what would happen. If the axis dimension limit applied to the "assumed to be" Z position, then everything should be fine on both ends of the axis.


Log in to reply