Mid-air printing after the first layer



  • I purchased a duet WiFi last December as an upgrade from the stock melzi board I was using but am struggling with the transition. The first layer of my prints goes down OK but as soon as the 2nd layer starts, the Z height drops and the rest prints in mid air ... I've spent many hours reading through forums and was able to fix other issues before this but think I've hit a wall on this one --- hoping I can get some advice on what to look at next - thanks in advance!

    Setup

    • Printer: TronXY X5s - coreXY, 12v with mostly mechanical upgrades
    • no Z probe or mesh bed (manual bed leveling)
    • Slicer == Cura 4.1.1 (start/end gcode below)

    Notes

    • If I remove this line from my Cura starting gcode, the first layer will also start printing in the air:
    G0 X0 Y5 Z0.3 F3000 ; get ready to prime
    

    Wasn't sure which files I should have posted so my apologies for the wall-of-text below

    FILES

    Full gcode of the Calibration Cube I'm trying to print: 2020.02.09_Cura-4.1.1_calibration-cube.gcode

    config.g

    ; Configuration file for Duet WiFi (firmware version 2.03)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v2.1.4 on Mon Dec 23 2019 20:39:37 GMT-0800 (Pacific Standard Time)
    
    ; General preferences
    G90                                     ; send absolute coordinates...
    M83                                     ; ...but relative extruder moves
    M550 P"TronXY X5S"                      ; set printer name
    
    M667 S1                                 ; select CoreXY mode
    
    ; Network
    M552 S1                                 ; enable network
    M586 P0 S1                              ; enable HTTP
    M586 P1 S0                              ; disable FTP
    M586 P2 S0                              ; disable Telnet
    
    ; Drives
    M569 P0 S1                              ; physical drive 0 goes forwards
    M569 P1 S1                              ; physical drive 1 goes backwards
    M569 P2 S0                              ; physical drive 2 goes forwards
    M569 P3 S0                              ; physical drive 3 goes forwards
    M584 X0 Y1 Z2 E3                        ; set drive mapping
    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 Z80.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 I30            ; set motor currents (mA) and motor idle factor in per cent
    M84 S60                                 ; Set idle timeout
    
    ; Axis Limits
    M208 X0 Y0 Z0 S1                        ; set axis minima
    M208 X320 Y320 Z400 S0                  ; set axis maxima
    
    ; Endstops
    M574 X1 Y1 Z1 S0                        ; set active low and disabled endstops
    
    ; Z-Probe
    M558 P0 H5 F120 T6000                   ; disable Z probe but set dive height, probe speed and travel speed
    ;M557 X15:215 Y15:195 S20                ; define mesh grid
    
    ; Heaters
    M140 H0                                 ; remap heated bed to heater 0
    M307 H0 B1 S1.00                        ; enable bang-bang mode for the bed heater and set PWM limit
    M305 P1 T100000 B4138 R4700             ; set thermistor + ADC parameters for heater 1
    M143 H1 S280                            ; set temperature limit for heater 1 to 200C
    M305 P2 T100000 B4138 R4700             ; set thermistor + ADC parameters for heater 2
    M143 H2 S100                            ; set temperature limit for heater 0 to 100C
    M305 P0 T100000 B4138 R4700             ; Set thermistor + ADC parameters for heater 0
    M143 H0 S120                            ; Set temperature limit for heater 0 to 120C
    
    
    ; Fans
    M106 P0 S0 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 F0                        ; define tool 0
    G10 P0 X0 Y0 Z0.3                       ; set tool 0 axis offsets
    G10 P0 R0 S0                            ; set initial tool 0 active and standby temperatures to 0C
    
    ; Custom settings are not defined
    M501                                    ; load config-override.g
    
    

    config-override.g

    ; config-override.g file generated in response to M500 at 2020-01-15 17:54
    ; This is a system-generated file - do not edit
    ; Heater model parameters
    M307 H0 A123.5 C549.2 D1.4 S1.00 V12.0 B0
    M307 H1 A403.4 C160.9 D4.5 S1.00 V12.1 B0
    M307 H2 A340.0 C140.0 D5.5 S1.00 V0.0 B0
    M307 H3 A340.0 C140.0 D5.5 S1.00 V0.0 B0
    M307 H4 A340.0 C140.0 D5.5 S1.00 V0.0 B0
    M307 H5 A340.0 C140.0 D5.5 S1.00 V0.0 B0
    M307 H6 A340.0 C140.0 D5.5 S1.00 V0.0 B0
    M307 H7 A340.0 C140.0 D5.5 S1.00 V0.0 B0
    G10 L2 P1 X0.00 Y0.00 Z0.00
    G10 L2 P2 X0.00 Y0.00 Z0.00
    G10 L2 P3 X0.00 Y0.00 Z0.00
    G10 L2 P4 X0.00 Y0.00 Z0.00
    G10 L2 P5 X0.00 Y0.00 Z0.00
    G10 L2 P6 X0.00 Y0.00 Z0.00
    G10 L2 P7 X0.00 Y0.00 Z0.00
    G10 L2 P8 X0.00 Y0.00 Z0.00
    G10 L2 P9 X0.00 Y0.00 Z0.00
    

    homeall.g

    ; homeall.g
    ; called to home all axes
    ;
    ; generated by RepRapFirmware Configuration Tool v2.1.4 on Mon Dec 23 2019 20:39:37 GMT-0800 (Pacific Standard Time)
    G91                     ; relative positioning
    G1 H2 Z1 F200           ; lift Z relative to current position
    G1 H1 X-325 Y-325 F6000 ; move quickly to X or Y endstop and stop there (first pass)
    G1 H1 X-325             ; home X axis
    G1 H1 Y-325             ; home Y axis
    G1 X5 Y5 F6000          ; go back a few mm
    G1 H1 X-325 F360        ; move slowly to X axis endstop once more (second pass)
    G1 H1 Y-325             ; then move slowly to Y axis endstop
    G1 H1 Z-405 F360        ; move Z down stopping at the endstop
    G90                     ; absolute positioning
    G92 Z0                  ; set Z position to axis minimum (you may want to adjust this)
    

    bed.g

    ; bed.g
    ; called to perform automatic bed compensation via G32
    ;
    ; generated by RepRapFirmware Configuration Tool v2.1.4 on Mon Dec 23 2019 20:39:37 GMT-0800 (Pacific Standard Time)
    ;M561 ; clear any bed transform
    ;G29  ; probe the bed and enable compensation
    

    CURA starting gcode

    ;M117 Homing Printer...
    M107                ; Start with the fan off
    G90                 ; absolute positioning
    M82                 ; set extruder to absolute mode
    G28                 ; home all
    G1 Z1.0 F300        ; move Z 1.0mm away from the bed
    M117 Priming Nozzle...
    G0 X0 Y5 Z0.3 F3000 ; get ready to prime
    G92 E0              ; reset extrusion distance
    G1 X150 Y50 E5 F900 ; prime nozzle
    G92 E0              ; zero the extruded length
    G1 F9000 ;
    M117 Printing now...
    

    CURA ending gcode

    M104 S0
    M140 S0
    ;Retract the filament
    G92 E1
    G1 E-1 F300
    G28 X0 Y0
    M84
    

  • Moderator

    Your steps per mm for z is still set to 4000 which is the default from the configurator and is definitely wrong for your printer.

    Do you know the lead of your lead screw? Is the z motor 1.8 or 0.9? You'll need to know that to figure out the right value. Or if you know what it used to be with the old board and firmware.



  • Is the z motor 1.8 or 0.9?

    • pretty sure the z motor is 1.8

    Do you know the lead of your lead screw?

    • do you mean the thread pitch?

    Whenever I lost power to my old board, I would have to reset the steps per mm using [M92 E100.24] -- does that help?
    [edit] nvm -- that's the extruder value ... think I remember the M503 showing 90 for X,Y,Z


  • Moderator

    @RMCK I’m pretty sure you’ll need to know for sure

    G92 e100 would be seeing the extrude position. Probably was using absolute extrusion. Not the same thing at all.


  • Moderator

    You can set it to different values and then command the z axis to move a set amount and see how far it goes by measuring.

    Don't move it very far or fast at first and be ready to kill the power.

    400 is a common value. Maybe start with that.



  • oh man, yeah it is WAY off ... I'll look up how to set this properly



  • that was it - I changed my steps from 4000 to 400 and it's working now! thanks a lot for the help!


Log in to reply