Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login
    1. Home
    2. Deltasquare
    • Profile
    • Following 1
    • Followers 0
    • Topics 9
    • Posts 54
    • Best 1
    • Controversial 0
    • Groups 0

    Deltasquare

    @Deltasquare

    1
    Reputation
    10
    Profile views
    54
    Posts
    0
    Followers
    1
    Following
    Joined Last Online

    Deltasquare Unfollow Follow

    Best posts made by Deltasquare

    • Duet2 Wifi & Duet 3 Repeatability Issues

      Hello!

      Some may have followed the z-probe issue I had, unfortunately it wasn't the z-probe after all, rather a coordinate system problem.

      When i repeatedly probe the same spot 100 times I get a strong drift of the coordinate system. So much so I get a funny looking curve that shows a drift of apprx 200-300 mue for roughly the first 30 attempts and than levels out. You may think this is not important as I will not be probing the same point 100 times ever anyway, however when doing the mesh bed leveling, 30 points that are constantly off a couple of mue give you a very tilted bed. Let alone when you are using more than one tool.

      So the first thing I did was to eliminate the "Idle" Setting, setting the I Value from 30 to 100. This resulted for me in a reduction of the drift of roughly 100 mue leaving me with a total drift of apprx. 150 mue. This is the whole test including the setup I used that you may verify. 150mue is still too much for my taste, as it should actually be 0 or at least oscillating around a value and not drifting into one direction.

      I have the same issue with my duet3 on a similar system, with only a 150 mue drift. I also set up a klipper, using the same drivers, with the same result. Inly my Kossel Mini running on the Mega/Ramps/Marlin setup does not have this issue.

      Please if anyone has an idea, please let me know what you think could be causing this drift!

      Best regards!
      DSQ

      posted in Tuning and tweaking drift coordinate system repeatability
      Deltasquareundefined
      Deltasquare

    Latest posts made by Deltasquare

    • RE: Delta Calibration & Mesh calibration

      Bildschirmfoto 2021-03-22 um 11.42.41.png

      It usually happens at this point first.

      posted in Tuning and tweaking
      Deltasquareundefined
      Deltasquare
    • RE: Delta Calibration & Mesh calibration

      @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)

      posted in Tuning and tweaking
      Deltasquareundefined
      Deltasquare
    • Delta Calibration & Mesh calibration

      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?

      posted in Tuning and tweaking
      Deltasquareundefined
      Deltasquare
    • RE: New heater tuning algorithm

      @MikeS
      I am 100% sure. 😄
      However it's not quite up there with the Marlin engine in sophistication.... but close. 😉

      posted in Beta Firmware
      Deltasquareundefined
      Deltasquare
    • RE: New heater tuning algorithm

      What is the limit to the PID values that are available?
      I have a very fast heater and would like to use the integrated PID tuning, but unfortunately it heats too quickly (3 seconds to target temp), until now I have only gotten errors. "not heating at expected rate"...

      posted in Beta Firmware
      Deltasquareundefined
      Deltasquare
    • RE: Tool Changing - Storing and retrieving z-offsets

      Thank you!

      This helps with displaying the offset, but should the offset displayed not switch around depending on the chosen tool?

      Is the bug "tool offset honored but not displayed correctly" not fixed yet?

      Regards

      posted in General Discussion
      Deltasquareundefined
      Deltasquare
    • Tool Changing - Storing and retrieving z-offsets

      Hey there!

      So I have an issue with the tool changing capability of my printer as I cant seem to make heads and tails of the tool offset function in conjunction with the coordinate system.

      I planned to use one coordinate system for machine commands that shall not be altered by the tool offset., however the tool offsets persisted and so a tool drop of, after homing G30 S-2 was not possible.

      Now, to pick up tools, I knock all relevant commands into G53 (unaltered machine coordinate system). This works kind of.

      My tools are of slightly different sizes and I cycle trough the tools and use the G30 S-2 command on each to properly set Z=0 for each of them. Now the funky stuff happens. I have not found a function/gcode to print the current offset of the tool. However I can switch off the tool (T-1 P0). As I have not moved the tool yet, it should report back the position the tool has relative to the position without the tool offset.

      This is an approximation of what I ran:

      T0                         ; call tool 0
      G1 X0 Y0 Z10 F9000         ; Move to center ready for probe
      G30 S-2                    ; probe bed and set tool offset
      G1 X0 Y0 Z10 F9000         ; Move to safe position
      

      Now my position is X0 Y0 Z10 with the tool. Next step is to switch into a non-tool-offset

      T-1 P0                       ; deactivate tool
      

      Nw the funny thing happens: My position is X0 Y0 Z10. However this should be the actual position plus (or minus) the tool offset. Now when I activate the tool again.

      T0 P0                       ; activate tool
      

      I get X0 Y0 Z10.88.

      T-1 P0                       ; deactivate tool
      

      I get X0 Y0 Z10. Even though it should now show me the position with the tool offset.
      So when the tool is activated the first time its at Z10, when I deactivate it stays at Z10 which I think it shouldn't . When I reactivate the tool it adds the offset. And voila, I got nearly one mm offset where there was not supposed to be one.

      This shows me a couple of things:

      1. The tool offset is in there somewhere, which is good.
      2. The tool offset is associated with the tool, which is good too.
      3. The tool offset is only added after I deactivate the tool and reactivate it, which is not good.
      4. I cannot find out the tool offset this way as it is unreliable and not reasonable.

      My probing is in the heated bed at the bottom and provides reasonably accurate results (< 30mue @ 100 reps ), so I can rule this out.

      As of now I solved this problem with hard coding the z-offsets of the tools into G10. However this is not an longterm option as I intend to switch around the tools frequently.

      If you know your way around this issue, please help me!

      posted in General Discussion tool offsets tool change tools coordinate system
      Deltasquareundefined
      Deltasquare
    • RE: Duet2 Wifi & Duet 3 Repeatability Issues

      But if the printer was just warming up and I do a G28, than probe again another 100x it shouldnt do the same drift again, or am I mistaken?

      posted in Tuning and tweaking
      Deltasquareundefined
      Deltasquare
    • RE: Duet2 Wifi & Duet 3 Repeatability Issues

      Hi David and thanks for joining in!

      I am afraid it is not the speed, as I have already reduced it to F150 which is rather slow. The problem persists whether I measure with dial gauge OR with piezo precision z-probe. The coordinate system slumps as a whole as I show in this video. Don't follow it along all the time, rather download it (its large) and use a slider in a local program to move it from one pause to the next. You will see that the coordinate system as a whole is lowering itself down.

      I just made a test without any resistance other than the weigth of the delta-kinematic and the linear rail bearing. I did not measure the position this time, in order not to scew the results, but attached a camera so I was able to record the turning angle of the motor. Drifting of the coordinate system yet again.

      Unfortunately no, it is losing only 150-300mue. My setup is a 16T pulley with a GT2 belt, so circumference is 32mm. Motor is 200 Steps (1.8°) thus 32/200=0,16mm/step.

      If it was in fact only losing multiples of 160mue (0,16mm) it would mean at least 640mue (0,64mm) for a lost step.

      My settings are as follows:

      ; General preferences
      G90							; Send absolute coordinates...
      M83							; ...but relative extruder moves
      M665 R242.280 L408.55 B105 H471.703 X0.054 Y-0.053 Z0	; Set delta radius, diagonal rod length, printable radius, homed height
      M666 X-0.01 Y0.31 Z-0.30 A0.48 B-0.52				; Put your endstop adjustments here, or let auto calibration find them
      
      ; Drives
      M584 X0 Y1 Z2 E3:4:5 W6 A7 B8 C9			; Drive Mapping
      M569 P0 S1						; Drive 0 goes forwards A-Tower
      M569 P1 S1						; Drive 1 goes forwards B-Tower
      M569 P2 S1						; Drive 2 goes forwards C-Tower
      M569 P3 S1						; Drive 3 goes clockwise Extr 1
      M569 P4 S1						; Drive 4 goes clockwise Extr 2
      M569 P5 S1						; Drive 4 goes clockwise Extr 3
      M569 P6 S1						; Drive 6 goes forwards Function X
      M569 P7 S1						; Drive 7 goes forwards cA
      M569 P8 S1						; Drive 8 goes forwards cB
      M569 P9 S1						; Drive 9 goes forwards cC
      M350 X16 Y16 Z16 A16 B16 C16 I1				; Configure microstepping with interpolation (C16)
      M350 W16 E16:16:16 I1					; Configure microstepping with interpolation
      M92 X100 Y100 Z100 A84 B84 C84			; Set steps per mm (100 bei 16fach)
      M92 W1500 E438:450:450					; Set steps per mm (E bei 5mms, B2D Extruder 263.00)
      M566 X1200.00 Y1200.00 Z1200.00 A1200 B1200 C1200	; Set axis maximum instantaneous speed changes (mm/min) before adapt 3000
      M566 W1200 E1200.00:1200:1200				; Set extruder & x-stepper max instant speed changes (mm/min)
      M203 X60000.00 Y60000.00 Z60000.00 A10000.00 B10000.00 C10000.00	; Set maximum speeds (mm/min)
      M203 W3000 E3400.00:2000:2000				; Set maximum speeds extruders & wechsler (mm/min)
      M201 X900.00 Y900.00 Z900.00  A600.00 B600.00 C600.00	; Set accelerations axis (mm/s^2) before tune 2500 (C900.00)
      M201 W900.00 E1000.00:1000.00:1000.00			; Set accelerations extruders & x-stepper (mm/s^2) before tune 2500
      M906 X1428.00 Y1428.00 Z1428.00 I100			; Set axis motor currents (mA) at 85% of max Amps/Phase and idle factor in per cent
      M906 A700 B700 C700 I90					; Set c-stepper motor currents (mA) and idle factor in per cent
      M906 W500.00 E1275.00:1275.00:1275.00 I30		; Set x-stepper and extruder motor currents (mA) and idle factor in per cent
      M84 S30							; Set idle timeout
      
      posted in Tuning and tweaking
      Deltasquareundefined
      Deltasquare
    • RE: Duet2 Wifi & Duet 3 Repeatability Issues

      @T3P3Tony Any thoughts on this?

      Further food for thought: I am running all this with 17HS19-1684S1 Stepper motors from Stepperonline. Could it be the motors & their quality/inductance/resistance or maybe they are just broken?

      Here is a spec-sheet of a comparable motor from another supplier as the stepperonline resource pdf is a broken link.

      posted in Tuning and tweaking
      Deltasquareundefined
      Deltasquare