G31 doesn't work anymore, why? :(



  • Hi,

    Each time I print I have to add baby steps, at some point I've decided to modify G31 in config.g but it has no effect, it's always the same when I print.

    At some point I've reached G31 P100 X0 Y0 Z-0.7, but when I perform a multiple times G30 S-1, I have -0.152

    At last resort, and for the "fun" I tried to set G31 P100 X0 Y0 Z-10, but still the same O_o … very weird, I've expected to be around 10mm above the bed with G0 X0 Y0 Z0, but no, I'm touching the bed

    Did I messed up something with my config, is it a bug ?

    I'm running with 1.19.2

    config.g

    [[language]]
    ;##############################
    ;#### General preferences #####
    ;##############################
    M111 S0 ; Debugging off
    G21 ; Work in millimetres
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves
    M555 P5 ; Set firmware compatibility to look like Repetier
    M665 R182.25 L360.26 B150 H363.70 ; Set delta radius, diagonal rod length, printable radius and homed height
    M666 X0 Y0 Z0 ; Put your endstop adjustments here, or let auto calibration find them
    M208 Z0 S1 ; Set minimum Z
    
    ;##################
    ;#### Endstops ####
    ;##################
    M574 X2 Y2 Z2 S0 ; Define active high microswitches
    ## PROBE
    ; Sensitivity : M672 S105:aaa:bbb ; Current : M672 S105:20:235 ; Reset : M672 S131:131
    M558 P5 T8000 R0.4 F200 H2 ; Smart Effector ; R= Delay, F= Probe speed, H= Dive height, T= Travel speed
    G31 P100 X0 Y0 Z-10 ; Set Z probe trigger value, offset and trigger height
    M557 R140 S20 ; Define mesh 
    
    ;################
    ;#### Drives ####
    ;################
    M569 P0 S1 ; (X) Drive 0 goes forwards
    M569 P1 S1 ; (Y) Drive 1 goes forwards
    M569 P2 S1 ; (Z) Drive 2 goes forwards
    M569 P3 S1 ; (E0) Drive 3 goes forwards
    M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
    M92 X80 Y80 Z80 E405 ; Set steps per mm 
    M84 S30 ; Set idle timeout
    
    M566 X1200 Y1200 Z1200 E1200 ; (JERK) Set maximum instantaneous speed changes (mm/min)  ; old E150
    M203 X18000 Y18000 Z18000 E3600 ; Set maximum speeds (mm/min)
    M201 X3600 Y3600 Z3600 E1200 ; Set accelerations (mm/s^2) ; OLD E200
    M906 X1200 Y1200 Z1200 E1200 I70 ; Set motor currents (mA) and motor idle factor in per cent
    
    ;############################
    ;#### Extruder (ADVANCE) ####
    ;############################
    M572 D0 S0 ; Extruder 0 (D) Pressure advance default S0.1 
    ;M207 S3 R-0.05 F2500 T1200 Z0.4 ; Firmware retraction
    
    ;#################
    ;#### Heaters ####
    ;#################
    M143 H1 S260 ; Set maximum heater temperature to 300C
    M143 H0 S150 ; Set maximum bed temperature to 150C
    M305 P0 T100000 B3950 C0 R4700 ; #BED# Set thermistor + ADC parameters for heater 0
    M305 P1 X200 ; #NOZZLE# Set thermistor + ADC parameters for heater 1
    
    ;###############
    ;#### Tools ####
    ;###############
    M563 P0 D0 H1 ; Define tool 0 (P) uses extruder 0 (D) ,heater 1 (H) (and fan 0 -- default)
    G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets
    G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C
    
    ;#################
    ;#### Network ####
    ;#################
    M550 PDelta ; Set machine name
    M552 S1 ; Enable network
    M586 P0 S1 ; Enable HTTP
    M586 P1 S1 ; Enable FTP
    M586 P2 S0 ; Disable Telnet
    
    ;##############
    ;#### Fans ####
    ;##############
    M106 P0 S0 H-1 I0 F100 ; FAN 0 (P) default off (S) Thermostatic control OFF (T).
    M106 P1 T35 S1 H1 ; FAN 1 (P) triggered above 35° (T) at 100% (S) on Heater 1
    
    ;################
    ;#### CUSTOM ####
    ;################
    M501 ; Loading config-override.g
    T0 ; Default tool to be deleted at start-up
    
    

    bed.g

    [[language]]
    ; bed.g
    ; called to perform automatic delta calibration via G32
    
    M561 		; Clear any bed transform
    G28 		; Home
    G0 Z50 F4000	; Get ready for first probe.
    
    ; bed.g file for RepRapFirmware, generated by Escher3D calculator
    ; 13 points, 6 factors, probing radius: 120, probe offset (0, 0)
    G30 P0 X0.00 Y120.00 Z-99999 H0
    G30 P1 X103.92 Y60.00 Z-99999 H0
    G30 P2 X103.92 Y-60.00 Z-99999 H0
    G30 P3 X0.00 Y-120.00 Z-99999 H0
    G30 P4 X-103.92 Y-60.00 Z-99999 H0
    G30 P5 X-103.92 Y60.00 Z-99999 H0
    G30 P6 X0.00 Y60.00 Z-99999 H0
    G30 P7 X51.96 Y30.00 Z-99999 H0
    G30 P8 X51.96 Y-30.00 Z-99999 H0
    G30 P9 X0.00 Y-60.00 Z-99999 H0
    G30 P10 X-51.96 Y-30.00 Z-99999 H0
    G30 P11 X-51.96 Y30.00 Z-99999 H0
    G30 P12 X0 Y0 Z-99999 S6
    
    ;CUSTOM
    M500 		; Save to config-override
    G28 		; Home
    
    


  • Are you running the nozzle to the bed until it holds a piece of paper and then G92 Z0 first before G30 S-1?

    I have gone as far as copying G31 from config.g to override and bed.g files and it seemed to fix my pre-print bed probing.



  • @number40fan:

    Are you running the nozzle to the bed until it holds a piece of paper and then G92 Z0 first before G30 S-1?

    I have gone as far as copying G31 from config.g to override and bed.g files and it seemed to fix my pre-print bed probing.

    Yes, but with Z-10 in G31 I should be able to put my finger between the bed and the nozzle at Z0 after calibration



  • Ok, just ran a test. The only way I could get m665 to report 10mm lower was to have the -10 in the bed.g folder.

    That is -10 + the 3.336 real offset.


  • administrators

    If modifying the G31 command in config.g has no effect then it is probably being overridden by the one in config-override.g. So instead of editing config.g, send the new G31 command from the console. Then run M665 or whatever you need to test the new value. When you are happy with the new G31 values, send M500 to save it to config-override.g.



  • I can't test right know (work :)). But first of all your right there are G31 lines in configuration override! I don't know exactly why 😞

    I'll clean these 3 lines and do G31 by console and M500.

    Is there any command that could have add these G31 in config-override? The point of my question is to know if its just bad input I've made in the past, that stacked until today.

    Once cleaned up could I just rely on config.g or should I put G31 X0 Y0 Z-0.15 in bed.g and manage first layer tuning from there (bed.g)?

    [[language]]
    ; Z probe parameters
    G31 T1 P500 X0.0 Y0.0 Z-0.10
    G31 T3 P500 X0.0 Y0.0 Z0.70
    G31 T4 P500 X0.0 Y0.0 Z0.00
    
    ```; Z probe parameters in config-override.g

  • administrators

    Any time you use M500 it will write the current settings for G31, M307, M665 and a few other parameters to config-override.g.

    Whether you want to use config-override.g is up to you. If you don't, then remove the M501 line from config.g.



  • @dc42:

    Any time you use M500 it will write the current settings for G31, M307, M665 and a few other parameters to config-override.g.

    Whether you want to use config-override.g is up to you. If you don't, then remove the M501 line from config.g.

    OK I'll keep on with config-override, I'll manage G31 in bed.g I think it'll do the trick. I'll give my feedback here once tested.

    EDIT : changed the title of the thread for search purpose in the future



  • Well after putting my G31 in bed.g, and tune the value from here, every is fine 😮

    Note : don't forget M501 in config.g and using M500 after bed leveling or directly put M500 at the end of beg.g


  • administrators

    Using M500 / M501 to write to config-override.g (like older firmware used to write certain settings to EEPROM) is personal taste. Originally i did not like the idea as I prefered to edit config.g with the new settings. Recently I have started to use it a lot as its just so easy to type M500 after I have done delta calibration.



  • @T3P3Tony:

    Using M500 / M501 to write to config-override.g (like older firmware used to write certain settings to EEPROM) is personal taste. Originally i did not like the idea as I prefered to edit config.g with the new settings. Recently I have started to use it a lot as its just so easy to type M500 after I have done delta calibration.

    Same here, I think m500/501 is a good feature when you change often of nozzle, in my case I swap to Volcano or tungsten nozzle often, it's more convenient to work without rebooting the board after modifying config.g. But it's personnal taste.


Locked
 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.