Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Delta Calibration & Mesh calibration

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    2
    5
    351
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Deltasquareundefined
      Deltasquare
      last edited by

      Delta Calibration & Mesh calibration, those two have given me some headache since a while.

      Sometimes when I do a calibration run the speed for a probing suddenly changes, it is usually far slower than usually and therefor does not trigger the zprobe in the same way as the other points in my piezoprecision setup.

      This happens randomly at different points.

      Is anyone familiar with this behavior or do I need to give more detailed information?

      1 Reply Last reply Reply Quote 0
      • Phaedruxundefined
        Phaedrux Moderator
        last edited by

        give more detailed information

        Results of M122 and M98 P"config.g"

        config.g, homedelta.g, bed.g, slicer start gcode, image of your current heightmap. other printer details.

        Z-Bot CoreXY Build | Thingiverse Profile

        1 Reply Last reply Reply Quote 0
        • Deltasquareundefined
          Deltasquare
          last edited by

          @Phaedrux said in Delta Calibration & Mesh calibration:

          config.g, homedelta.g, bed.g, slicer start gcode, image of your current heightmap. other printer details.

          M122
          === Diagnostics ===
          RepRapFirmware for Duet 3 MB6HC version 3.2.2 running on Duet 3 MB6HC v0.6 or 1.0 (SBC mode)
          Board ID: 08DJM-956L2-G43S8-6JTDA-3S06N-1B2YD
          Used output buffers: 4 of 40 (12 max)
          === RTOS ===
          Static ram: 149788
          Dynamic ram: 61788 of which 108 recycled
          Never used RAM 147148, free system stack 178 words
          Tasks: Linux(ready,75) HEAT(blocked,317) CanReceiv(blocked,817) CanSender(blocked,371) CanClock(blocked,352) TMC(blocked,51) MAIN(running,1203) IDLE(ready,19)
          Owned mutexes: HTTP(MAIN)
          === Platform ===
          Last reset 00:27:22 ago, cause: power up
          Last software reset at 2021-03-18 17:59, reason: User, GCodes spinning, available RAM 146940, slot 2
          Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task Linu Freestk 0 n/a
          Error status: 0x00
          Aux0 errors 0,0,0
          Aux1 errors 0,0,0
          MCU temperature: min 22.7, current 44.8, max 44.8
          Supply voltage: min 24.0, current 24.0, max 24.2, under voltage events: 0, over voltage events: 0, power good: yes
          12V rail voltage: min 12.2, current 12.2, max 12.2, under voltage events: 0
          Driver 0: position 77876, standstill, reads 42020, writes 14 timeouts 0, SG min/max 0/0
          Driver 1: position 77876, standstill, reads 42020, writes 14 timeouts 0, SG min/max 0/0
          Driver 2: position 77876, standstill, reads 42020, writes 14 timeouts 0, SG min/max 0/0
          Driver 3: position 0, standstill, reads 42022, writes 14 timeouts 0, SG min/max 0/0
          Driver 4: position 0, standstill, reads 42022, writes 14 timeouts 0, SG min/max 0/0
          Driver 5: position 0, standstill, reads 42022, writes 14 timeouts 0, SG min/max 0/0
          Date/time: 2021-03-22 10:19:48
          Slowest loop: 0.63ms; fastest: 0.05ms
          === Storage ===
          Free file entries: 10
          SD card 0 not detected, interface speed: 37.5MBytes/sec
          SD card longest read time 0.0ms, write time 0.0ms, max retries 0
          === Move ===
          DMs created 125, maxWait 0ms, bed compensation in use: none, comp offset 0.000
          === MainDDARing ===
          Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
          === AuxDDARing ===
          Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
          === Heat ===
          Bed heaters = 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
          === GCodes ===
          Segments left: 0
          Movement lock held by null
          HTTP* is doing "M122" in state(s) 0
          Telnet is idle in state(s) 0
          File is idle in state(s) 0
          USB is idle in state(s) 0
          Aux is idle in state(s) 0
          Trigger* is idle in state(s) 0
          Queue is idle in state(s) 0
          LCD is idle in state(s) 0
          SBC is idle in state(s) 0
          Daemon is idle in state(s) 0
          Aux2 is idle in state(s) 0
          Autopause is idle in state(s) 0
          Code queue is empty.
          === CAN ===
          Messages queued 6497, send timeouts 0, received 19480, lost 0, longest wait 1ms for reply type 6031, free buffers 48
          === SBC interface ===
          State: 4, failed transfers: 0
          Last transfer: 3ms ago
          RX/TX seq numbers: 57188/57188
          SPI underruns 0, overruns 0
          Number of disconnects: 0, IAP RAM available 0x2c884
          Buffer RX/TX: 0/0-0
          === Duet Control Server ===
          Duet Control Server v3.2.2
          Code buffer space: 4096
          Configured SPI speed: 8000000 Hz
          Full transfers per second: 0.24
          Maximum length of RX/TX data transfers: 4036/648
          

          M98 P"config.g" just gives back the same line in the console.

          ;config_real.g funktioniert mit Simplify3D
          
          ; Configuration file for LPU02b Duet 3 (firmware version 3) by JT. 26.01.2020 
          ; executed by the firmware on start-up
          ;
          ; generated by RepRapFirmware Configuration Tool v2.1.8 on Fri May 15 2020 18:21:38 GMT+0200
          
          
          ;General preferences
          G90                                                                             ; send absolute coordinates...
          M83                                                                             ; ...but relative extruder moves
          M550 P"LPU02"                                                                   ; set printer name
          ;M665 L472.5 R310 H394.75 B160 X0 Y0 Z0			        			 	    	;(Höhe plz. 394,75; war 393.3) Set delta radius, diagonal rod length, printable radius and homed height B105 (R242.28 L408.55)
          ;M666 X0 Y0 Z0 A0 B0		                                                         ; put your endstop adjustments here, or let auto calibration find them
          M665 L472.500:472.500:472.500 R275.330 H394.765 B160.0 X-0.400 Y0.021 Z0.000
          M666 X0.460 Y-0.367 Z-0.093 A0.00 B0.00
          ;Raspberry Pi; user: yy; password: xxx
          ;password for attached raspberry pi
          
          ; Drives
          M569 P0 S0                                                                                  ; physical drive 0 goes backwards; x-Stepper
          M569 P1 S0                                                                                  ; physical drive 1 goes backwards; y-Stepper
          M569 P2 S0                                                                                  ; physical drive 2 goes backwards; z-Stepper
          M569 P3 S1                                                                                  ; physical drive 3 goes forwards
          
          M584 X0 Y1 Z2 E3:4:5 ;W6 A7 B8 C9                                                           ; set drive mapping
          M350 X16 Y16 Z16 E16						                                                ; configure microstepping with interpolation
          
          M92 X100.00 Y100.00 Z100.00 E424.20														; set steps per mm
          ;M92 W1500 A84 B84 C84																	; set steps per mm
          M566 X1200.00 Y1200.00 Z1200.00 E1200.00:1200.00:1200.00								; set maximum instantaneous speed changes (mm/min)
          ;M566 W800 A1200 B1200 C1200	   														; set maximum instantaneous speed changes (mm/min)
          M203 X36000.00 Y36000.00 Z36000.00 E3400.00:3400:3400 									; set maximum speeds (mm/min)
          ;M203 W2000 A6000.00 B6000.00 C6000.00													; set maximum speeds (mm/min)
          M201 X900.00 Y900.00 Z900.00 E1000.00:1000.00:1000.00									; set accelerations (mm/s^2)
          ;M201 W500.00 A600.00 B600.00 C600.00    												; set accelerations (mm/s^2)
          M906 X1800 Y1800 Z1800 I100																; set motor currents (mA) and motor idle factor in per cent
          ;M906 A700 B700 C700 I90 																; set motor currents (mA) and motor idle factor in per cent
          M906 E700:700:700 I30;  W500 															; set motor currents (mA) and motor idle factor in per cent
          M84 S30                                                         						; Set idle timeout
          
          ;Axis Limits
          ;M208 X-5:200 Y0:200 Z0:90 									; set axis minima and maxima X Y Z
          M208 Z0 S1                                                  ; set minimum Z
          ;M208 W0:50 S0												; Set minimum
          ;M574 W1 S3													; Set active high endstops 2, low endstops 1, S3 load detection
          
          ;Endstops
          M574 X2 S1 P"io0.in"
          M574 Y2 S1 P"io1.in"
          M574 Z2 S1 P"io2.in"                                         ; axis max (2), NC endstops(1)
          
          ;Z-Probe 
          M558 P1 I0 C"!io3.in" H5 R0.20 F350 T6000                      ; set Z probe type to unmodulated and the dive height + speeds
          G31 P600 X0 Y0 Z-0.175                                       ; set Z probe trigger value, offset and trigger height
          M557 R120 S20                                                  ; define mesh grid
          
          ; HEATERS
          ;;Bed heater
          M308 S0 P"temp0" Y"thermistor" T100000 B4700	; configure sensor 0 as thermistor on pin temp0
          M950 H0 C"out0" T0								; create bed heater output on out0 and map it to sensor 0
          ;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
          M143 H0 S120									; set temperature limit for heater 0 to 120C
          
          ; TOOLS
          ;SingleToolSetup
          ;;ToolHeater
          M308 S1 P"1.temp2" Y"thermistor" T100000 B4138	; configure sensor 5 as thermistor on pin 1.temp2
          M950 H1 C"1.out2" T1							; create nozzle heater output on 1.out2 and map it to sensor 5
          M307 H1 B0 S1.00								; disable bang-bang mode for heater  and set PWM limit
          ;; M308 S1 P"temp1" Y"thermistor" T100000 B3950	; Ino Paul
          ;; M950 H1 C"out6" T1							; Ino Paul			
          ;; M307 H1 R36.066 C10.4 D0.25 S1.00 V24.0		; Ino Paul
          M143 H1 S260									; set temperature limit for heater 5 to 280C
          
          ;;TOOLFAN
          M950 F2 C"out9" Q500							; create fan 0 on pin out9 and set its frequency
          M106 P2 H1 T40								; set fan 0 value. Thermostatic control is turned off
          
          ;;PARTFAN
          M950 F0 C"1.out7" Q500							; create fan 0 on pin out9 and set its frequency
          M106 C"Partcooler" P0 S1 H-1					; set fan 0 value. Thermostatic control is turned off
          
          ;LED
          M950 F4 C"out8" Q500							; create fan 0 on pin out9 and set its frequency
          M106 C"LED" P4 S1 H-1					; set fan 0 value. Thermostatic control is turned off
          
          
          ;;SINGLETOOL
          M563 P0 S"SingleTool" H1 D0 F2e					; define SingleTool
          G10 P0 R20 S215									; Tool number 6, Standby temperature 20, Active temperature 215
          G10 P0 X0 Y0 Z0									; set tool 6 axis offsets
          
          ; bed.g
          ; called to perform automatic delta calibration via G32
          ;
          ; generated by RepRapFirmware Configuration Tool v2.1.4 on Thu Dec 12 2019 21:34:19 GMT+0100 (Central European Standard Time)
          M561 ; clear any bed transform
          ; Probe the bed at 3 peripheral and 3 halfway points, and perform 6-factor auto compensation
          ; Before running this, you should have set up your Z-probe trigger height to suit your build, in the G31 command in config.g.
          G30 P0 X0 Y84.9 H0 Z-99999
          G30 P1 X73.53 Y-42.45 H0 Z-99999
          G30 P2 X-73.53 Y-42.45 H0 Z-99999
          G30 P3 X0 Y42.4 H0 Z-99999
          G30 P4 X36.72 Y-21.2 H0 Z-99999
          G30 P5 X-36.72 Y-21.2 H0 Z-99999
          G30 P6 X0 Y0 H0 Z-99999 S6
          ; Use S-1 for measurements only, without calculations. Use S4 for endstop heights and Z-height only. Use S6 for full 6 factors
          ; If your Z probe has significantly different trigger heights depending on XY position, adjust the H parameters in the G30 commands accordingly. The value of each H parameter should be (trigger height at that XY position) - (trigger height at centre of bed)
          
          
          
          

          Slcier Start gcode is irrelevant as of now, as it does not need to run to get this wonky behaviour.

          The one most reliable error I can provoke it to repeatedly do is after commands in this order:

          G28
          G1 Z10 F10000
          G30
          G32
          G29

          than it does the mesh bed and at some point it slows to a crawl and presses down hard on the piezos...

          ![alt text](Bildschirmfoto 2021-03-22 um 11.41.24.png image url)

          1 Reply Last reply Reply Quote 0
          • Deltasquareundefined
            Deltasquare
            last edited by

            Bildschirmfoto 2021-03-22 um 11.42.41.png

            It usually happens at this point first.

            1 Reply Last reply Reply Quote 0
            • Phaedruxundefined
              Phaedrux Moderator
              last edited by Phaedrux

              very strange.

              I notice you're using probe type P1 for the piezo, which is intended for analog probes with feedback.

              I believe it's more common to use P8 for digital mode for the piezo. Perhaps there is erroneous analogue feedback/interference at those points causing it to slow down as it approaches.

              Can you test with P8?

              How is your piezos mounted? What type?

              This is a probe with an analog output connected to the Z probe connector. The probe output must rise as it gets closer to the bed, unless you use parameter I1 in the M558 command to indicate that the probe output falls as it gets closer to the bed (the I1 parameter is supported in firmware 1.16 and later). The control signal is driven HIGH.

              P1 specifies an unmodulated or smart IR probe, or any other probe type that emulates one (probe output is an analog signal that rises with decreasing nozzle height above the bed). If there is a control signal to the probe, it is driven high when the probe type is P1.

              Z-Bot CoreXY Build | Thingiverse Profile

              1 Reply Last reply Reply Quote 0
              • First post
                Last post
              Unless otherwise noted, all forum content is licensed under CC-BY-SA