Many issues after upgrading to 3.0 RC-12



  • I have just finished running the upgrade to get from 2.05 up to 3.0 RC-12. Currently, I have quite a few issues that I am struggling to get through. I am using the reprap firmware configuration tool, although I have a feeling that it is not yet working correctly for this firmware?

    • The first was the X and Y axis refusing to home. I was able to fix the X axis after changing to the following: M574 X1 S1 P"!xstop" ( X now works)
    • Y axis still will not home. After clicking home, the bed will drop a bit, and the Y axis will move towards the endstop about 5mm and then say "Error G0/G1: Insufficient axis homed"
    • Another issue is one I have always had... not sure how to fix. My X endstop is actually OFF the bed, meaning the home would be actually +15mm from the endstop. Not sure how to correctly set this in firmware?

    Here is my endstop config (note that currently only my X will home correctly):

    ; Endstops
    M574 X1 S1 P"!xstop"                                    ; configure active-low endstop for low end on X via pin xstop
    M574 Y1 S1 P"!ystop"                                    ; configure active-low endstop for low end on Y via pin ystop
    M574 Z1 S2                                             ; configure Z-probe endstop for low end on Z
    

    Next issue is the BLTouch. If I hold in the Y endstop to trick it into thinking it has homed correctly, the Z will attempt to home. The BLTouch will deploy correctly and the bed will start to raise, however the BLTouch will never trigger as detected. So the hotend would crash into the bed.

    Any help appreciated. Sitting here confused for a few hours already, especially with the endstops.

    (will post configs below, char limit)



  • Here is my old 2.x config:

    ; 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 Tue Dec 17 2019 00:47:57 GMT-0500 (Eastern Standard Time)
    
    ; General preferences
    G90                                               ; send absolute coordinates...
    M83                                               ; ...but relative extruder moves
    M550 P"Hypercube"                                ; set printer name
    M564 H0                                           ;allow movement before homing
    M667 S1                                           ; select CoreXY mode
    
    ; Network
    M550 Phypercube ; Set machine name
    M552 S1; Enable network
    M552 S1; P0
    
    M586 P1 S1                              ; enable FTP
    M586 P2 S1                              ; enable Telnet
    
    ;M551 P"............"
    
    ; Drives
    M569 P0 S1                                        ; physical drive 0 goes forwards
    M569 P1 S1                                        ; physical drive 1 goes forwards
    M569 P2 S1                                        ; physical drive 2 goes forwards
    M569 P3 S1                                        ; physical drive 3 goes forwards
    M569 P4 S1                                        ; physical drive 4 goes forwards
    M584 X0 Y1 Z2 E3:4                                ; set drive mapping
    M350 X16 Y16 Z16 E16:16 I1                        ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z400.00 E86:86                  ; set steps per mm
    M566 X1600 Y1600 Z12 E120:120                     ; Set maximum instantaneous speed changes (mm/min)
    M203 X8000 Y8000 Z180 E1200:1200                  ; Set maximum speeds (mm/min)
    M201 X4000 Y4000 Z250 E2000:2000                  ; Set accelerations (mm/s^2)
    M906 X800 Y800 Z800 E900:900 I30                  ; set motor currents (mA) and motor idle factor in per cent
    M84 S30                                           ; Set idle timeout
    
    ; Axis Limits
    M208 X0 Y0 Z0 S1                                  ; set axis minima
    M208 X300 Y300 Z230 S0                            ; set axis maxima
    
    ; Endstops
    M574 X0 Y0 S0                                    ; set active low endstops
    M574 Z1 S2                                       ; set endstops controlled by probe
    
    ; Z-Probe
    M307 H7 A-1 C-1 D-1                               ; disable heater on PWM channel for BLTouch
    M558 P9 H5 F500 T4000 X0 Y0 Z1                    ; set Z probe type to bltouch and the dive height + speeds
    M558 P9 H5 F100 T2000
    G31 P25 X20 Y5 Z2                               ; set Z probe trigger value, offset and trigger height
    M557 X20:275 Y5:275 S92                          ; define mesh grid
    
    ; Heaters
    M143 S280 ; Set maximum heater temperature to 260C
    M305 P0 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 0
    M305 P1 T100000 B4725 C0.0000000706 R4700 ; Set thermistor + ADC parameters for heater 1
    M305 P2 T100000 B4725 C0.0000000706 R4700 ; Set thermistor + ADC parameters for heater 2  
                                
    
    ; 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 H-1 				  ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P2 S1 I0 F500 H1:2 T100 			  ; Set fan 2 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
    M563 P1 D1 H2 					  ; Define tool 1
    G10 P1 X-18.5 Y.7 Z0 				  ; Set tool 1 axis offsets
    G10 P1 R0 S0 				          ; Set initial tool 1 active and standby temperatures to 0C
    
    ; Custom settings are not defined
    
    
    


  • @TheBasedDoge You could try removing the "!" so it looks like this.

    M574 X1 S1 P"xstop"			             ; _RRF3
    M574 Y1 S1 P"ystop"			             ; _RRF3
    

    HTH

    Paul



  • Here is my new 3 config so far

    ; Configuration file for Duet WiFi (firmware version 3)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v2.1.8 on Sun May 10 2020 13:55:08 GMT-0400 (Eastern Daylight Time)
    
    ; General preferences
    G90                                                    ; send absolute coordinates...
    M83                                                    ; ...but relative extruder moves
    M550 P"Hypercube"                                      ; 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 forwards
    M569 P2 S1                                             ; physical drive 2 goes forwards
    M569 P3 S1                                             ; physical drive 3 goes forwards
    M569 P4 S1                                             ; physical drive 4 goes forwards
    M584 X0 Y1 Z2 E3:4                                     ; set drive mapping
    M350 X16 Y16 Z16 E16:16 I1                             ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z400.00 E86.00:86.00                 ; set steps per mm
    M566 X900.00 Y900.00 Z12.00 E120.00:120.00             ; set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z180.00 E1200.00:1200.00        ; set maximum speeds (mm/min)
    M201 X500.00 Y500.00 Z20.00 E250.00:250.00             ; set accelerations (mm/s^2)
    M906 X800 Y800 Z800 E800:800 I30                       ; set motor currents (mA) and motor idle factor in per cent
    M84 S30                                                ; Set idle timeout
    
    ; Axis Limits
    M208 X0 Y0 Z0 S1                                       ; set axis minima
    M208 X300 Y0 Z0 S0                                     ; set axis maxima
    
    ; Endstops
    M574 X1 S1 P"!xstop"                                    ; configure active-low endstop for low end on X via pin xstop
    M574 Y1 S1 P"!ystop"                                    ; configure active-low endstop for low end on Y via pin ystop
    M574 Z1 S2                                             ; configure Z-probe endstop for low end on Z
    
    ; Z-Probe
    M950 S0 C"exp.heater7"                                 ; create servo pin 0 for BLTouch
    M558 P9 C"zprobe.in+zprobe.mod" H2 F120 T6000          ; set Z probe type to bltouch and the dive height + speeds
    G31 P500 X20 Y5 Z2.5                                   ; set Z probe trigger value, offset and trigger height
    M557 X15:300 Y15:300 S20                               ; define mesh grid
    
    ; Heaters
    M308 S0 P"bedtemp" Y"thermistor" T100000 B4138         ; configure sensor 0 as thermistor on pin bedtemp
    M950 H0 C"bedheat" T0                                  ; create bed heater output on bedheat and map it to sensor 0
    M143 H0 S120                                           ; set temperature limit for heater 0 to 120C
    M307 H0 B1 S1.00                                       ; enable bang-bang mode for the bed heater and set PWM limit
    M140 H0                                                ; map heated bed to heater 0
    M308 S1 P"e0temp" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 1 as thermistor on pin e0temp
    M950 H1 C"e0heat" T1                                   ; create nozzle heater output on e0heat and map it to sensor 1
    M143 H1 S280                                           ; set temperature limit for heater 1 to 280C
    M307 H1 B0 S1.00                                       ; disable bang-bang mode for heater  and set PWM limit
    M308 S2 P"e1temp" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 2 as thermistor on pin e1temp
    M950 H2 C"e1heat" T2                                   ; create nozzle heater output on e1heat and map it to sensor 2
    M143 H2 S280                                           ; set temperature limit for heater 2 to 280C
    M307 H2 B0 S1.00                                       ; disable bang-bang mode for heater  and set PWM limit
    
    ; Fans
    M950 F0 C"Part Fan" Q500                                   ; create fan 0 on pin fan0 and set its frequency
    M106 P0 S0 H-1                                         ; set fan 0 value. Thermostatic control is turned off
    M950 F1 C"Hotend" Q500                                   ; create fan 1 on pin fan1 and set its frequency
    M106 P1 S1 H1:2 T100                                   ; set fan 1 value. Thermostatic control is turned on
    
    ; Tools
    M563 P0 S"Right Nozzle" D0 H1 F0                       ; 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"Left Nozzle" D1 H2 F0                        ; define tool 1
    G10 P1 X0 Y0 Z0                                        ; set tool 1 axis offsets
    G10 P1 R0 S0                                           ; set initial tool 1 active and standby temperatures to 0C
    
    ; Custom settings
    M575 P1 B57600 S1                                      ;paneldue settings
    ;M564 H0                                                ;allow movement before homing
    
    
    
    


  • @PaulHew If I do this the endstop is inverted, it thinks its triggered until I click it. The actual endstops seem to be working fine. It's just that when I home it it won't actually travel more than 5mm into the homing direction for some reason



  • @TheBasedDoge
    Z-Probe

    My CoreXY config for reference

    M558 P9 C"^zprobe.in" H5 R1 F120 T6000 A5 S0.02  ;BLTouch connected to Z probe IN pin
    M950 S0 C"duex.pwm1"				             ;BLTouch Servo (S0) on duet pwm1
    G31 X2 Y42 Z1.605 P25                            ; Customize your offsets appropriately - do a paper test, and put the probed value in the Z value here
    M557 X30:280 Y30:280 S20
    

    I have edited yours, try this.

    ; Z-Probe
    M558 P9 C"^zprobe.in" H5 F120 T6000   A5 S0.02       ; set Z probe type to bltouch and the dive height
    M950 S0 C"exp.heater7"                                 ; create servo pin 0 for BLTouchG31 P500 X20 Y5 Z2.5                                   ; set Z probe trigger value, offset and trigger height
    M557 X15:300 Y15:300 S20                               ; define mesh grid
    
    


  • @TheBasedDoge Are your endstops on the Duex board?



  • Everything is plugged into the Duet itself. I have no extra add on boards.

    The Z-Probe modification you posted I think did the trick, it seemed to probe fine if I do homeall while manually holding down the y endstop. Still having the y issue.



  • @TheBasedDoge try homing the axis individually first. HomeX HomeY HomeZ. Homeall might need some work.
    Have you posted homeall?



  • ; homeall.g
    ; called to home all axes
    ;
    ; generated by RepRapFirmware Configuration Tool v2.1.8 on Sun May 10 2020 13:55:08 GMT-0400 (Eastern Daylight Time)
    G91 ; relative positioning
    G1 H2 Z2 F6000 ; lift Z relative to current position
    G1 H1 X-305 Y-5 F3600 ; move quickly to X or Y endstop and stop there (first pass)
    G1 H1 X-305 ; home X axis
    G1 H1 Y-5 ; home Y axis
    G1 X5 Y5 F6000 ; go back a few mm
    G1 H1 X-305 F300 ; move slowly to X axis endstop once more (second pass)
    G1 H1 Y-5 ; then move slowly to Y axis endstop
    G90 ; absolute positioning
    G1 X-5 Y10 F6000 ; go to first bed probe point and home Z
    G30 ; home Z by probing the bed

    ; Uncomment the following lines to lift Z after probing
    ;G91 ; relative positioning
    ;G1 Z2 F100 ; lift Z relative to current position
    ;G90 ; absolute positioning

    Maybe this is the issue. I don't know why Y says -5 but x is -305?



  • Just incase your axis is over the other side of the bed, it needs to know how far it can go. It is only a homing move, not bed dimensions!

    As I mentioned. try home 1 axis at a time, please. then we can tweak homeall



  • Ok for individual homes:

    Homex - works fine
    Homey - error, insufficient axis homed
    homez - error, needs to home y.



  • without you finger on x and Y? 🙂



  • My X and Y endstops

    ;Endstop Configuration
    M574 X1 S1 P"xstop"			             ; _RRF3
    M574 Y1 S1 P"ystop"			             ; _RRF3
    
    


  • if the endstops are not engaged what does it say in
    Machine specific - Endstops? in DWC



  • Yeah, that is without my finger on any endstops.

    But just to see what would happen, i did this.

    Changed:
    G1 H1 Y-5 ; home Y axis
    G1 X5 Y5 F6000 ; go back a few mm
    G1 H1 X-305 F300 ; move slowly to X axis endstop once more (second pass)
    G1 H1 Y-5 ; then move slowly to Y axis endstop

    To:
    G1 H1 Y-305 ; home Y axis
    G1 X5 Y5 F6000 ; go back a few mm
    G1 H1 X-305 F300 ; move slowly to X axis endstop once more (second pass)
    G1 H1 Y-305 ; then move slowly to Y axis endstop

    now it's working! I changed it in homey also.

    oh its working in machine specific - endstop also... it changes correctly based on the trigger



  • Well, another problem of course. The fans are not working:

    New fan code:

    ; Fans
    M950 F0 C"Part" Q500 ; create fan 0 on pin fan0 and set its frequency
    M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
    M950 F1 C"Hotend" Q500 ; create fan 1 on pin fan1 and set its frequency
    M106 P1 S1 H1:2 T100 ; set fan 1 value. Thermostatic control is turned on

    old 2.x fan code which worked

    ; 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 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P2 S1 I0 F500 H1:2 T100 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on



  • my fans for comparison

    ; Fans
    M950 F0 C"fan0"						;Part Cooling Fan
    M106 P0 H-1 				
    ;
    M950 F1 C"fan1" Q500                           ;Hotend Fan
    M106 P1 S1 H1 T40
    ;
    M950 F2 C"fan2"						;_RRF3_ define fan2
    M106 P2 H-1
    
    


  • That worked for part fan, hotend fan is still not working for some reason. I also have dual extrusion. The only change i made was adding H1:2

    ; Fans
    M950 F0 C"fan0" ;Part Cooling Fan
    M106 P0 H-1
    ;
    M950 F1 C"fan1" Q500 ;Hotend Fan
    M106 P1 S1 H1:2 T40

    EDIT: ah nevermind, im dumb. I had the fan plugged into the fan2 the entire time



  • Ok, I am making progress on getting everything working, still a few issues.

    Does anyone know how I can tell the duet to home X, hit the endstop, move over 15mm and tell that to be the X home position? reason being, my endstop for X is actually too far off the bed.



  • @TheBasedDoge said in Many issues after upgrading to 3.0 RC-12:

    Does anyone know how I can tell the duet to home X, hit the endstop, move over 15mm and tell that to be the X home position? reason being, my endstop for X is actually too far off the bed.

    https://duet3d.dozuki.com/Wiki/Gcode#Section_G92_Set_Position. So home X, move it 15mm, then use G92 X0.


  • Moderator

    @TheBasedDoge said in Many issues after upgrading to 3.0 RC-12:

    my endstop for X is actually too far off the bed.

    You can also use a negative value for your M208 X minima such that 0 is the edge of the bed and the negative value is when the endstop is triggered.



  • @deckingman said in Many issues after upgrading to 3.0 RC-12:

    G92 X0

    Ok, this did the trick perfectly, now the nozzle is lined up with the corner of the bed. Thank you!

    Next issue..... When I run my G29 it skips the back half of the bed entirely. I suspect I have something set wrong with the offsets or mesh config but I must not be understanding the math correctly

    G29
    Warning: Skipping grid point (20.0, 215.0) because Z probe cannot reach it
    Warning: Skipping grid point (70.0, 215.0) because Z probe cannot reach it
    Warning: Skipping grid point (120.0, 215.0) because Z probe cannot reach it
    Warning: Skipping grid point (170.0, 215.0) because Z probe cannot reach it
    Warning: Skipping grid point (220.0, 215.0) because Z probe cannot reach it
    Warning: Skipping grid point (270.0, 215.0) because Z probe cannot reach it
    Warning: Skipping grid point (270.0, 265.0) because Z probe cannot reach it
    Warning: Skipping grid point (220.0, 265.0) because Z probe cannot reach it
    Warning: Skipping grid point (170.0, 265.0) because Z probe cannot reach it
    Warning: Skipping grid point (120.0, 265.0) because Z probe cannot reach it
    Warning: Skipping grid point (70.0, 265.0) because Z probe cannot reach it
    Warning: Skipping grid point (20.0, 265.0) because Z probe cannot reach it
    24 points probed, min error -0.018, max error 1.523, mean 0.769, deviation 0.410
    Height map saved to file 0:/sys/heightmap.csv
    

    Here are my definitions for Z probe offsets and mesh

    ; Z-Probe
    M950 S0 C"exp.heater7"                                 ; create servo pin 0 for BLTouch
    M558 P9 C"^zprobe.in" H5 F120 T6000   A5 S0.02       ; set Z probe type to bltouch and the dive height
    G31 P500 X20 Y5 Z2                                   ; set Z probe trigger value, offset and trigger height
    M557 X20:290 Y15:290 S50                               ; define mesh grid
    

    My bed is a 300x300. I set it to 290x290 to allow for room for it to not hit the bed clips


  • Moderator

    Make sure your probe offset is correct. -X to the left, +X to the right. -Y to the front, +Y to the back.

    https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe#Section_Measuring_Probe_X_Y_Offset



  • Ah ok, that was wrong. my probe is front right of the primary nozzle, so i changed it now to read y-5

    Still having the same issue, back third of the bed will not probe

    G29
    Warning: Skipping grid point (20.0, 215.0) because Z probe cannot reach it
    Warning: Skipping grid point (70.0, 215.0) because Z probe cannot reach it
    Warning: Skipping grid point (120.0, 215.0) because Z probe cannot reach it
    Warning: Skipping grid point (170.0, 215.0) because Z probe cannot reach it
    Warning: Skipping grid point (220.0, 215.0) because Z probe cannot reach it
    Warning: Skipping grid point (270.0, 215.0) because Z probe cannot reach it
    Warning: Skipping grid point (270.0, 265.0) because Z probe cannot reach it
    Warning: Skipping grid point (220.0, 265.0) because Z probe cannot reach it
    Warning: Skipping grid point (170.0, 265.0) because Z probe cannot reach it
    Warning: Skipping grid point (120.0, 265.0) because Z probe cannot reach it
    Warning: Skipping grid point (70.0, 265.0) because Z probe cannot reach it
    Warning: Skipping grid point (20.0, 265.0) because Z probe cannot reach it


Log in to reply