Delta X/Y scaling issue
-
@camfarris said in Delta X/Y scaling issue:
The 360 is the actual length of the rods. 273.6 is the diagonal length. I just cranked the length up to 360 as a test to prove that the measurements weren't changing anything.
If the scaling didn't change, it means that you failed to change the diagonal rod length. There is no way that you should be using 273.6mm diagonal length when your rods are 360mm, unless your steps/mm value is wildly wrong - which it isn't, because your Z height is correct.
I suggest you delete your config-override.g file and make changes to config.g only, until you have a working configuration again.
-
@dc42 thanks. I'll try again and take the M501 out.
My normal calculation used to be 288 (360*.8) but it just seems odd that what worked before isn't working now.
-
@camfarris said in Delta X/Y scaling issue:
would agree, except that the steps worked just fine before replacing the board.
just verify it. measure the distance traveled by one of the carriages when you issue a command like move z +/- 100
-
@Veti issuing Z+-100 moves all 3 up and down. But that's not it. The Z is fine and produces exactly the correct height and the other 2 towers move at the same rate.
-
@camfarris said in Delta X/Y scaling issue:
@dc42 thanks. I'll try again and take the M501 out.
My normal calculation used to be 288 (360*.8) but it just seems odd that what worked before isn't working now.
I find it odd that you needed the 0.8 scaling factor before.
-
@dc42 I found that on some blog post on my last go through with this. It solved the issues with ultra skinny cubes so I assumed it was "normal".
It also lined up with my old Marlin firmware settings from the stock board before swapping out the board, effector, rods, etc
-
Update:
I went back and reset everything. Looked at more documentation. Based on this page: https://seemecnc.dozuki.com/Guide/DUET+Change+Stepper+Motor+Steps-mm/101
I set M92 X/Y/Z to 100 and got a 25mm tall cube. Went back to 80.
I then looked at my actual stepper motors to verify that they were, indeed, 1.8 degree steppers (they are). But then I looked at the power. It's slated for 1.7A instead of the 1A I had in the settings.
But, with 360mm rods in the config.g (instead of the scaled down), the cube is looking to be coming in closer. I'll know more in about 10 minutes.
Now I'm just wondering why my old settings were working in the first place.
-
I presume you are running auto calibration? The scale depends on all of the steps/mm set in M92, the rod length set in M665, and the delta radius also set in M665. Normally you set the steps/mm and rod length to the known values, and let delta calibration find the delta radius.
-
-
Update:
Latest calibration cube came out. Looks like it worked. Still no idea why the old settings used to work.
-
@camfarris said in Delta X/Y scaling issue:
@dc42 Yes. Every time I power on, I run:
G28
G30
G32 x3Mostly because I'm a little superstitious.
G28 followed by one G32 should be sufficient, if the initial M665 and M666 parameters are close to correct.
FWIW this is what I use in bed.g, using RRF 3.01beta:
; Auto calibration routine for large delta printer M561 ; clear any bed transform ; If the printer hasn't been homed, home it if !move.axes[0].homed || !move.axes[1].homed || !move.axes[2].homed G28 ; Probe the bed and do auto calibration G1 X0 Y140 Z10 F10000 ; go to just above the first probe point while true if iterations = 5 abort "too many auto calibration attempts" G30 P0 X0.00 Y140.00 Z-99999 if result != 0 continue G30 P1 X70.00 Y121.24 Z-99999 if result != 0 continue G30 P2 X121.24 Y70.00 Z-99999 if result != 0 continue G30 P3 X140.00 Y0.00 Z-99999 if result != 0 continue G30 P4 X121.24 Y-70.00 Z-99999 if result != 0 continue G30 P5 X70.00 Y-121.24 Z-99999 if result != 0 continue G30 P6 X0.00 Y-134.85 Z-99999 if result != 0 continue G30 P7 X-65.57 Y-113.57 Z-99999 if result != 0 continue G30 P8 X-112.29 Y-64.83 Z-99999 if result != 0 continue G30 P9 X-130.59 Y-0.00 Z-99999 if result != 0 continue G30 P10 X-115.90 Y66.91 Z-99999 if result != 0 continue G30 P11 X-69.45 Y120.29 Z-99999 if result != 0 continue G30 P12 X0.00 Y70.00 Z-99999 if result != 0 continue G30 P13 X60.62 Y-35.00 Z-99999 if result != 0 continue G30 P14 X-52.28 Y-30.19 Z-99999 if result != 0 continue G30 P15 X0 Y0 Z-99999 S8 if result != 0 continue if move.calibrationDeviation.deviation <= 0.03 break echo "Repeating calibration because deviation is too high (" ^ move.calibrationDeviation.deviation ^ "mm)" ; end loop echo "Auto calibration successful, deviation", move.calibrationDeviation.deviation ^ "mm" G1 X0 Y0 Z150 F10000 ; get the head out of the way
It homes the printer if it hasn't already been homed, then runs auto calibration until the deviation is low enough (which normally happens after the first time).