[3.5.0-rc.1] 1HCL + Drivers on MB6HC in Delta not simultaneous
-
Hey guys,
i'm running a
delta printer
MB6HC + SBC
2x 1LC (print head & dry box)
1x 1HCLThe 1HCL is for experimental reasons on one of the delta axis (X, front left), the other two axis (Y front right, Z rear) are driven by the MB6HC itself.
Sending a g1 command g1 x0 y450 from x0 y-450 results in a bow, not a straight line as the X axis with the 1HCL is moving different from the Y axis. Movements parallel to coordinate Z are straight as should be, from the beginning to the end.
Though that: printing in that setup works well!On 3.4.6. everything worked flawless.
drives part of the config.g, identical between 3.4.6 and 3.5.0-rc1:
G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"T--" ; set printer name ;M665 L1137.564:1137.564:1137.564 R495.543 H2100.501 B500.0 X0.546 Y0.045 Z0.000 M665 L1060.000:1060.000:1060.000 R495.543 H1704.000 B500.0 ;M665 L1060.000:1060.000:1060.000 R495.543 H1686.000 B500.0 ; M666 X0.808 Y-1.053 Z0.245 A-0.30 B0.28 M950 P20 C"out0" M42 P20 S1 G4 S1 ; Drives ;M569 P0.0 S0 ; physical drive 0.0 goes forwards M569.1 P123.0 T3 ; 1HCL with mag enc M569 P123.0 D2 S1 ;D2 for spreadcycle ;M569 P123.0 D4 S1 ; 1HCL in D4 closed Loop and S1 Motor is not reversed ;M569.5 P123.0 S2000 A0 R2000 D24830 V0 ; 1HCL PID Tuning values: are they right here? M569 P0.1 S0 ; physical drive 0.1 goes forwards M569 P0.2 S0 ; physical drive 0.2 goes forwards ;M584 X0.0 Y0.1 Z0.2 E121.0 ; without 1HCL map motors to drivers in the Format: AxisBoard.Driver1:Driver2 M584 X123.0 Y0.1 Z0.2 E121.0 ; 1HCL map motors to drivers in the Format: AxisBoard.Driver1:Driver2 M350 X256 Y256 Z256 E16 I1 ; M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X800.00 Y800.00 Z800.00 E569.4 ; M92 X50 Y50 Z50 E569.4 ; set steps per mm ;M566 X500 Y500 Z500 E1000 P1 ; M566 X2000.00 Y2000.00 Z2000.00 E2000.00 ; set maximum instantaneous speed changes (mm/min) ;M566 X1000 Y1000 Z1000 E1000 P1 M566 X800 Y800 Z800 E1000 P1 M203 X30000 Y30000 Z30000 E30000 ;M203 X48000.00 Y48000.00 Z48000.00 E36000.00 ; set maximum speeds (mm/min) M201 X2500.00 Y2500.00 Z2500.00 E3000.00 ; 11.07.2023 ; M201 X2000.00 Y2000.00 Z2000.00 E3000.00 ; M201 X4000.00 Y4000.00 Z4000.00 E2000.00 ; set accelerations (mm/s^2) ;M906 X1800 Y1800 Z1800 E900 I30 M906 X4000 Y4000 Z4000 E900 I30 ; M906 X4000 Y4000 Z4000 E900 I99 ;improves nothing on old drives ; M906 X1800 Y1800 Z1800 E900 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ;M204 P250 T1000 ;M204 P250 T600 M204 P2500 T2500 ; Axis Limits M208 Z0 S1 ; set minimum Z M579 X1.0071 Y1.0063 ; Endstops M574 X2 S1 P"io1.in" ; configure active-high endstop for high end on X via pin io0.in M574 Y2 S1 P"io2.in" ; configure active-high endstop for high end on Y via pin io1.in M574 Z2 S1 P"io0.in" ; configure active-high endstop for high end on Z via pin io2.in ; Z-Probe M558 P8 C"^121.io0.in" H5 F300 T18000 ; set Z probe type to switch and the dive height + speeds G31 P500 X0 Y0 Z19.0 ; set Z probe trigger value, offset and trigger height ;G31 P500 X0 Y0 Z19.5 ; KlickyTract set Z probe trigger value, offset and trigger height M557 R480 S48 ; define mesh grid; Original R450 S45; R450 S90 is a good for a fast check, not suitable for mirrorprinting; R480 S45 is too many points ; Heaters M308 S0 P"temp0" Y"thermistor" A"Build Plate" T100000 B4138 ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"out1" T0 Q10 ; create bed heater output on out1 and map it to sensor 0 ;M307 H0 B0 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit M307 H0 A34.5 C661.6 D3.4 S1.00 V24.3 B0 ; alt: M307 H0 R0.152 K0.349:0.000 D60.31 E1.35 S1.00 B0 ; PID-Tuning for Bed at 72C M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M308 S1 P"121.temp0" Y"pt1000" A"Print Head" T100000 B4138 ; configure sensor 1 as thermistor on pin 121.temp0 M950 H1 C"121.out0" T1 ; create nozzle heater output on 121.out0 and map it to sensor 1 ;M307 H1 R1.940 K0.298:0.000 D7.57 E1.35 S1.00 B0 V22.7 ;PID-Tuning Hotend 260°C im kalten Drucker mit ASA; war original: M307 H1 B0 S1.00 ;disable bang-bang mode for heater and set PWM limit M307 H1 R2.028 K0.427:0.000 D7.72 E1.35 S1.00 B0 V22.6 ; PID-Tuning Head 2 mit 250 C direkt ueberm kalten Druckbett mit PLA ;M309 P121.0 S500 ; FeedForward Regler Tool Number Akzeptiert er nicht. Probiert: P121.0 P0 P1 M143 H1 S340 ; set temperature limit for heater 1 to 280C ;CABINET SENSOR BOARD M950 J11 C"122.io2.in" M950 J12 C"122.io0.in" M308 S10 P"122.temp1" Y"thermistor" A"Cabinet" T100000 B4138 ; configure cabinet thermistor on pin 121.temp1 M581 P11 T1 R1 S0 M581 P12 T1 R1 S0 M308 S11 P"122.temp0" Y"thermistor" A"Cabinet CHE" T100000 B4138 ; configure cabinet heater eleeedment thermistor on pin temp1 M950 H2 C"122.out0" T10 ; create cabinet chamber heater output on out2 and map it to sensor 11 M307 H2 R0.094 K0.268:0.000 D12.22 E1.35 S1.00 B0 ; new one by Ca ; M307 H2 B0 S1.00 ; enable pwm mode for the cabinet chamber heater and set PWM limit M950 H3 C"nil" T11 M570 H2 P3600 ; Heater fault detections M141 H2 ; map cabinet chamber to heater 12 M143 H2 P0 S69.5 A2 ; M143 H2 P1 S70 A0 ; M143 H2 S80 ; set temperature limit for heater 2 to 80C M950 F13 C"122.out2" Q500 ; create fan 3 on pin out8 and set its frequency M106 P13 S1 H11 T20:70 C"Cabinet Fan" L0.7 X1.0 ;Led lights definitions M150 X0 P150 S192 R30 U30 B30 ;S = number of leds total = 162 P = brightness 0..255 >> 0 = off R U B values are 1/3 or led 0..255 M950 P22 c"out5" Q100 ;Led top M950 P21 c"!out4" Q100 ;Led sides M42 P22 S0.2 ;Led Top 10% ;Toolboard extruder definition M569 P121.0 S1 ;Extruder goes forward M584 E121.0 ;Drive mapping to toolboard M92 E571.00 ;e-steps extruder ;Toolboard accel meter definition M955 P121.0 I16 ; Fans M950 F0 C"121.out1" Q500 ; create fan 0 on pin 121.out1 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"121.out2" Q500 ; create fan 1 on pin 121.out2 and set its frequency M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on M950 F2 C"out9" Q500 ; create fan 2 on pin out9 and set its frequency M106 P2 S1 H1 T45 ; set fan 2 value. Thermostatic control is turned on M950 F3 C"out8" Q500 ; create fan 3 on pin out8 and set its frequency M106 P3 S1 H-1 ; set fan 3 value. Thermostatic control is turned on ; Tools M563 P0 D0 H1 F0 ; define tool 0 G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C M912 P0 S-20 M911 S22 R23.5 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss M570 H0 T30 P240 ;Allow bed to slowly heat up and not go into error ; Custom settings are not defined M593 P"EI3" F26 ;M593 P"none" ; 11.07.2023; M593 P"zvddd" F18 ;Value Visit Ca M572 D0 S0 M501
I will link a video later on, its to big to be attached.
Thanks in advance!
Fabian -
@DavidG_68kg_PLA This is one of the RRF limitations at the moment. I'm surprised it worked in 3.4.6. See https://docs.duet3d.com/User_manual/RepRapFirmware/CAN_limitations#temporary-limitations
The tower motors of a delta printer cannot be driven via CAN-connected expansion boards. Workaround: use M669 to enable segmentation with short (e.g. 1mm) segments.
If you already have segmentation enabled (I can't see your M669 command in what you posted), please post your full config.g.
Ian
-
@droftarts Hi Ian, thanks for your answer!
added the rest of my config in the first post.
There is no M669 set, the delta kinematics are set by M665.
How am I supposed to use M669?
Which value to set for Parameter S? Or leave it, to have maximum possible Segments per second?
How to determine the minimum segment length? is that the length of the segment that my effector travels or of the slides on the axis?Place it after M665 in the config?
-
@DavidG_68kg_PLA try something like
M669 S1 T1
-
@DavidG_68kg_PLA yes place it after the M665 command. Try M669 S100 T1.
-