G10 tool offsets are being ignored
-
can someone please help. I've built a corexy idex printer, and there is a small offset between my X and U carriage, and for whatever reason, my G10 offset commands have no effect, whether I put them in my config.sys, or any of the other macros. Can someone please have a look for me? U carriage is off by about 4mm the positive X direction and 4mm in the Y direction. Moving the X is easy, as I just need to move the X axis limit a little. My issue is moving the Y direction, as the nozzles are not exactly the same. Here's my config.g. The G10 for tool 1 (U carriage) is on line 119...
; Configuration file for Duet WiFi (firmware version 3)
; executed by the firmware on start-up
;
; Randy's corexy idex 26 December 2021; General preferences
M111 S1 ; Debugging
G21 ; Work in millimetres
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M669 K5 ; select 5=corexyu 8=CoreXYUV mode
M555 P1 ; Set firmware compatibility to look like Marlin P1 to look like rrf
M404 N1.75 D0.6 ; Set nominal filament diameter to 1.75 and nozzle width to 0.4
M575 P0 B250000 ; Set baud rate for USB port for Octoprint
M575 P1 S1 B57600 ; enable support for PanelDue (Default B57600); Network
M550 P"Randy corexy idex" ; set printer name
;M551 P"katrinarandy" ; Set password. Use reprap for no password prompt.
M552 S1 ; enable network
M586 P0 S1 ; enable HTTP
M586 P1 S1 ; enable FTP
M586 P2 S0 ; disable Telnet
M575 P1 B57600 S1 ; Set auxiliary serial port baud rate and require checksum (for PanelDue); Drives
M569 P7 S0 ;Drive 7(XX7)
M569 P8 S0 ;Drive 8(XY8)
M569 P0 S0 ;Drive 0(UX) change to a 1 for forwards
M569 P9 S1 ;Drive 1(UY)M569 P2 S0 ;Drive 2(ZRR5)
M569 P5 S0 ;Drive 5(ZCF2)
M569 P6 S0 ;Drive 6(ZRL6)M569 P3 S1 ;Drive 3(e0)
M569 P4 S0 ;Drive 4(e1);Create U axis for second X carriage before we try to configure it, hide the V
M584 X8 Y7 Z2:5:6 U9 V0 E3:4 P4 ;this one works! X0 and Y0 are corexy X carriage. 7,8 U carriage 2=ZRR5, 5=ZCF2,6=ZRL6
M671 X300:120:-90 Y315:-60:315 F10 ;lead screws are located at drive 2 = back right corner, drive 5 at front center, drive 6 at left rear
;M208 S0 Z261.92
;Axis Limits
M208 S0 X307 Y208 U432.0 Z261.92 ;set axis maxima S0 means maxima V350 - V240
M208 S1 X-98 Y0 U0 Z-2.00 ;set axis minima S1 means minima V80;M574 X1 S1 P"xstop" ;X min active high endstop switch
;M574 U2 S1 P"e0stop" ;U homes to high end of gantryM574 X1 S1 P"e0stop"
M574 U2 S1 P"xstop"M574 Y2 S1 P"ystop" ;Y MAX active high endstop switch
;M574 Y2 S1 P"ystop" ;Y MAX active high endstop switch
M574 Z2 S1 P"e1stop+zstop+duex.e2stop" ; configure active-high endstops for high end on Z
;M574 E0 S1 ;x filament sensor
;M574 E1 S1 ;U filament sensor; Heaters
M140 H0 ; map heated bed to heater 0
M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp
M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0
M143 H0 S120 ; set temperature limit for heater 0 to 120C
M307 H0 A88.4 C265.5 D2.0 S1.00 V23.9 B0 ;disable bang-bang mode for the bed heater and set PWM limit (Values copiedM570 S120 ;after a heater has been switched on, wait 120 seconds for it to get close to the set temperature. If it takes longer than this, raise a heater fault.
M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0temp
M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S275 ; set temperature limit for heater 1 to 280C
M307 H2 R1.902 C186.7 D6.37 S1.00 V24.4 ;autotune settings of Feb 17M308 S2 P"e1temp" Y"thermistor" T100000 B4138 ; configure sensor 2 as thermistor on pin e1temp
M950 H2 C"e1heat" T2 ; create nozzle heater output on e1heat and map it to sensor 2
M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
M143 H2 S275 ; set temperature limit for heater 2 to 280C
M307 H1 R2.221 C139.3 D6.22 S1.00 V24.5 ;autotune settings of Feb 17;M305 P2 X101 ;Use thermocouple for heater P2// note for when I upgrade to a K type thermocouple
;show the MCU and stepper driver temperature, send the following commands:
M308 S10 Y"mcu-temp" A"MCU"
M308 S11 Y"drivers" A"Steppers";chamber
M308 S3 P"duex.e2temp" Y"thermistor" T100000 B4138 ; configure sensor 3 as thermistor on pin duex.e2temp
M950 H3 C"duex.e2heat" T3 ; create chamber heater output on duex.e2heat and map it to sensor 3
M307 H3 B1 S1.00 ; enable bang-bang mode for the chamber heater and set PWM limit
M141 H3 ; map chamber to heater 3
M143 H3 S100 ; set temperature limit for heater 3 to 100C;hotend Fans
;M950 F0 C"FAN0" ;create fan 0 on pin fan0
M950 F0 C"duex.FAN4" ;create fan 0 on pin duex.FAN4 because fan0 on duet is always on
M106 P0 T75 S255 H1 ;when heater 1(XHotend) reaches 75 Celcius, turn on Fan0 at 100%M950 F1 C"FAN1" ;create fan 1 on pin fan1
M106 P1 T75 S255 H2 ;when heater 2(UHotend) reaches 75 Celcius, turn on Fan1 at 100%;part fans
M950 F2 C"FAN2" ;H1 x part fan
M950 F3 C"duex.FAN3" ;H2 u part fan; Tools
;G10 notes: Pnn is tool number designated in heaters section, NOT the actual stepper drive number
;Rnn is standby temperature, Snn is Active temperature
;Tool 1 is X hotend Tool 2 is U hotendM563 P0 S"X" D0 H1 F2 ; Fan0 is thermostatically controlled, F2 is gcode controlled by tool P0
M563 P1 S"U" D1 H2 F3 ; Fan1 is thermostatically controlled, F3 is gcode controlled by tool P1
G10 L1 P1 X0 Y-40.0 Z3.55 ;initial offsets of U carriage;G10 commands have been implemented in tpost1.g instead
;G10 P1 R180 S190 ; set initial tool 1 active and standby temperatures to 0C
;G10 P1 X0 Y-132.0 Z-7.6 ;changed because it can't reach the whole width of the bed
;G10 P1 X148.7 Y-68.0 Z-3.0 ;U IDEX carriage is slightly offset from the X carriage;M563 P2 S"copy" D0:1 H1:2 X0:3 F0:1 ; define tool 2
;G10 P2 X50 Y0 U-50 S0 R0 ; set tool offsets and temperatures
;M567 P2 E1:1 ; set mix ratio 100% on both extruders
;M568 P2 S1 ; turn on mixing for tool 2;M563 P2 S"Mirror" D0:1 H1:2 X0:3 F0:1 ; define tool 2
;G10 P2 X50 Y0 U-50 S0 R0 ; set tool offsets and temperatures
;M567 P2 E1:1 ; set mix ratio 100% on both extruders
;M568 P2 S1 ; turn on mixing for tool 2;M563 P4 S"Chamber" H3
;G10 P4 R0 S0 ; just a heater to warm the interior;capacitive sensor
;Select mode 5 (P5) in the M558 command. Invert the probe output by
;adding the I1 parameter (RRF 1.16 to 2.x),
;or by prefixing the input pin name (C parameter) with ! character (RRF 3.x),
;in the M558 command
M558 P5 C"!zprobe.in" H10 F100 T2000 A2 ;enable pullup resistor(^), invert input (!), (H)Dive height 10mm,
;probing feed rate100mm/min
;travel speed between probe points 2000mm/min, A2 -probe each point twice
;M558 P9 means BLTouch P10 is stall detect. C" " is the pin input name, H5 means drop 5mm between points,G31 X38.32 Y16.15 Z-0.6 ;initial offsets to the center of the zprobe from X nozzle, redefined in find_Z_range.g
;machine
M92 X80 Y80 U80 V80 Z1600 ; set axis steps per mm
M92 E428.46:428.46 ; set extruder steps per mm
M350 X16 Y16 U16 V16 Z16 E16:16 I1 ; configure microstepping with interpolation
M566 X1200 Y1200 U1200 V1200 Z12 E120:120 ; set maximum instantaneous speed changes (mm/min)
M203 X16000 Y16000 U16000 V16000 Z800 E1200:1200 ; set maximum speeds (mm/min)
M201 X1100 Y1100 U1100 V1100 Z500 E250:250 ; set accelerations (mm/s^2)
M906 X800 Y800 U800 V800 Z800 E800:800 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout
M204 P666 T2666 ; set print and travel accel
M566 P0 ; uses jerk between all moves. yes or no.; Print settings
;M207 S1.0 F3600 Z0.2 ; Retraction
;M572 D0:1 S0.05 ; Pressure advance
; M593 F60 ; Dynamic acceleration
; M592 D0 A0.03 B0.01 ; Non linear advance
; M592 D1 A0.06 B0.03 ; Non linear advance; CPU temp calibration
M912 P0 S-11; Automatic power saving
;M911 S22 R23 P"M913 X0 Y0 U800 G91 M83 G1 Z3 E-1 F1000" ; Set voltage thresholds and actions to run on power loss; Miscellaneous
;M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
;T0 ; select first tool
;M501 ;load settings from /sys/config.override.g -
This post is deleted! -
@randyl00123 said in G10 tool offsets are being ignored:
M563 P0 S"X" D0 H1 F2 ; Fan0 is thermostatically controlled, F2 is gcode controlled by tool P0
M563 P1 S"U" D1 H2 F3 ; Fan1 is thermostatically controlled, F3 is gcode controlled by tool P1
G10 L1 P1 X0 Y-40.0 Z3.55 ;initial offsets of U carriageIt looks like you don't have a G10 for the X print head?
-
I thought that the first tool would default to 0,0, but here's what I've done, but still having G10 offsets for T1 are being ignored when I try to align the two "landing" spots. They should be the same, but are always off by a few mm.
M563 P0 S"X" D0 H1 F2 ; Fan0 is thermostatically controlled, F2 is gcode controlled by tool P0
G10 L1 P0 X0 Y0 Z0 ;X has no offsets
G10 R240 S250 ;set standby temperature at 240 and active temperature at 250
M307 H1 B0 R2.572 C150.0 D7.50 S1.00 V24.0 ;X hotend tuning parametersM563 P1 S"U" D1 H2 F3 ;Fan1 is thermostatically controlled, F3 is gcode controlled by tool P1
G10 L1 P1 X-0.5 y16.0 Z3.0 ;initial offsets of U carriage, resets in U find the dot macro
G10 P1 R240 S250
M307 H2 B0 R3.282 C74.9 D6.70 S1.00 V24.0 -
Do your homing files or tool change files modify the offets or force a position?