G30 makes delta go wacky out of bounds

  • I just dusted off a delta after not using it for about a year, and went ahead and updated firmware to 1.21 while rejigging the wifi connection and such. Bed probing no longer works. Homing, jogging, extruding, etc all work fine, so I assume the issue is firmware-version related. (Maybe I'm using an old command that has changed, or something?)

    Now when I call G30 in bed.g or my start gcode -- using probe points that used to work -- the printer tries to move outside legal bounds, sends an arm horizontal, and then pretty clearly loses track of where it's supposed to be. But it looks like it does try to do the legit probing in between some wackadoodle illegal moves at the start and finish? I've tried it with and without my G31 probe offsets and that doesn't seem to make a difference.
    [https://www.youtube.com/watch?v=xWy-2z0Yy1U](link url)
    Not sure where to begin on this one?

    Here's my .g files, yeah they're a little sloppy, have just been tweaking them since the initial Duet Wifi release.

    ; Auto calibration routine for delta printers
    ; Before running this, you should have set up your zprobe Z offset to suit your build, in the G31 command in config.g.

    M561 ; clear any bed transform, otherwise homing may be at the wrong height
    ;G31 X0 Y0 ; don't want any probe offset for this
    G28 ; home the printer

    ; Probe the bed and do 6- or 7-factor auto calibration
    G30 P0 X0 Y0 Z-99999
    ;G30 P0 X-70 Y-40 Z-99999 ; X tower
    ;G30 P1 X0 Y-70 Z-99999 ; between X and Y towers
    ;G30 P2 X70 Y-40 Z-99999 ; Y tower
    ;G30 P3 X40 Y40 Z-99999 ; between Y and Z towers
    ;G30 P4 X0 Y67 Z-99999 ; Z tower
    ;G30 P5 X-40 Y40 Z-99999 ; between Z and X towers
    ;G30 P6 X-36.8 Y-21.25 Z-99999 ; half way to X tower
    ;G30 P7 X36.8 Y-21.25 Z-99999 ; half way to Y tower
    ;G30 P8 X0 Y42.5 Z-99999 ; half way to Z tower
    ;G30 P9 X-50 Y-45 Z-99999
    ;G30 P10 X-35 Y25 Z-99999
    ;G30 P11 X0 Y-40 Z-99999
    ;G30 P12 X0 Y0 Z-99999 S6 ; centre, and auto-calibrate 6 factors

    G1 X0 Y0 Z150 F7200 ; get the head out of the way of the bed

    ; Configuration file modified from Mini Kossel kit from Think3DPrint3D

    ; Communication and general
    M111 S0 ; Debug off
    M550 PTesseract ; Machine name and Netbios name (can be anything you like)
    M551 Preprap ; Machine password (used for FTP)
    ;*** If you have more than one Duet on your network, they must all have different MAC addresses, so change the last digits
    M540 P0xBE:0xEF:0xDE:0xAD:0xFE:0xED ; MAC Address
    ;*** Wifi Networking
    M552 S1 ; Enable WiFi

    M555 P2 ; Set output to look like Marlin
    M575 P1 B57600 S1 ; Comms parameters for PanelDue

    G21 ; Work in millimetres
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves

    ; Axis and motor configuration
    M569 P0 S1 ; Drive 0 goes forwards
    M569 P1 S1 ; Drive 1 goes forwards
    M569 P2 S1 ; Drive 2 goes forwards
    M569 P3 S1 ; Drive 3 goes forwards
    M569 P4 S1 ; Drive 4 goes forwards
    M574 X2 Y2 Z2 S1 ; set endstop configuration (all endstops at high end, active high)
    ;*** The homed height is deliberately set too high in the following - you will adjust it during calibration
    M665 R106.7 L184.2 B80 H240 ; 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
    M350 X16 Y16 E16 I1 ; Set 16x microstepping with interpolation
    M92 X200 Y200 Z200 ; Set axis steps/mm
    M906 X1200 Y1200 Z1200 E900 I80 ; Set motor currents (mA) and increase idle current to 80%
    M201 X2000 Y2000 Z2000 E2000 ; Accelerations (mm/s^2)
    M203 X20000 Y20000 Z20000 E3600 ; Maximum speeds (mm/min)
    M566 X1200 Y1200 Z1200 E1200 ; Maximum instant speed changes mm/minute

    ; Thermistors
    M305 P0 T100000 B3950 R4700 H30 L0 ; Put your own H and/or L values here to set the bed thermistor ADC correction
    M305 P1 T100000 B4060 R4700 H30 L0 ; Put your own H and/or L values here to set the first nozzle thermistor ADC correction GUESSTIMATE BETA FROM REPETIER
    ; M305 P2 T100000 B3974 R4700 H30 L0 ; Put your own H and/or L values here to set the second nozzle thermistor ADC correction
    M570 S180 ; Hot end may be a little slow to heat up so allow it 180 seconds

    ; PID
    M307 H0 A238.2 C561 D9.4
    M307 H1 A421.6 C127.7 D8.6

    ; Tool definitions
    M563 P0 D0 H1 ; Define tool 0
    G10 P0 S0 R0 ; Set tool 0 operating and standby temperatures
    ;*** If you have a single-nozzle build, comment the next 2 lines
    ;M563 P1 D1 H2 ; Define tool 1
    ;G10 P1 S0 R0 ; Set tool 1 operating and standby temperatures
    M92 E460 ; Set extruder steps per mm

    ; Z probe and compensation definition
    ;*** If you have a switch instead of an IR probe, change P1 to P4 in the following M558 command
    M558 P1 F250 T5000 H3 I0 R0 A1 B0 ; Z probe is an IR probe
    G31 X17.6 Y28.1 Z2.6 P500 ; Set the zprobe height and threshold
    ;*** If you are using axis compensation, put the figures in the following command
    ;M556 S78 X0 Y0 Z0 ; Axis compensation here

    M208 S1 Z-0.2 ; set minimum Z
    T0 ; select first hot end

  • Well, I generated all new config files from scratch, and that seems to have made it work again. No idea what the problem was.

    I did note a couple odd things from the configurator:

    1. Default fan setup made my nozzle blower turn 100% on at startup
    2. Delta probe point generation ignores the probe offset when it calculates points, which can make it exceed the legal effector radius maximum

  • administrators

    I'm glad you got it working. When upgrading firmware, you should read the upgrade notes for the new version and all the versions you skipped. The particular item that you missed is that the default deployprobe.g and retractprobe.g files must be deleted.

Log in to reply