IDEX Homing problem
-
Hello, I have just finished a Idex design printer and can't figure out why the homing is having issues. Homing is great when you first turn the printer on and home from fresh boot. If you try and home it a second time after it's homed it start the X axis where it's currently located and only homes the U axis. Everything else seems to be okay. I'm just working this out and it could have other issues.
; Configuration file for Duet 3 MB 6HC (firmware version 3.3)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool v3.3.16 on Wed Jul 05 2023 00:34:45 GMT-0500 (Central Daylight Time); General preferences
M575 P1 S1 B57600 ; enable support for PanelDue
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"BNC3D W50" ; set printer name
;M918 P1 E4 F2000000 ; configure direct-connect display; Network
M552 P0.0.0.0 S1 ; enable network and acquire dynamic address via DHCP
M586 P0 S1 ; enable HTTP
M586 P1 S0 ; disable FTP
M586 P2 S0 ; disable Telnet; Drives
M569 P0.0 S1 ; physical drive 0.0 goes backwards
M569 P0.1 S1 ; physical drive 0.1 goes backwards
M569 P0.2 S0 ; physical drive 0.2 goes forwards
M569 P0.3 S1 ; physical drive 0.3 goes backwards
M569 P0.4 S0 ; physical drive 0.4 goes backwards
M569 P0.5 S0 ; physical drive 0.5 goes backwards
M584 X0 Y1 Z2 U3 E4:5 ; set drive mapping
M350 X16 Y16 Z16 U16 E16:16 I1 ; configure microstepping with interpolation
M92 X80 Y80 Z1583 U80 E562:562 ; set steps per mm
M566 X1200 Y1200 Z24 U1200 E1200:1200 ; set maximum instantaneous speed changes (mm/min)
M208 X432 Y310 U432 Z350 ; Set axis maxima (adjust to suit your machine)
M208 X-45 Y0 U-45 Z-0.2 S1 ; Set axis minimum (adjust to make X=0 and Y=0 the edge of the bed)
M203 X9000 Y9000 Z180 U9000 E300:300 ; set maximum speeds (mm/min)
M201 X500 Y500 Z100 U500 E250:250 ; set accelerations (mm/s^2)
M906 X1680 Y1680 Z1330 U1680 E1000:1000 I50 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Endstops
M574 X1 S1 P"!io4.in" ; configure active-high endstop for low end on X via pin io4in
M574 Y2 S1 P"io3.in" ; configure active-high endstop for low end on Y via pin io3.in
M574 U2 S1 P"!io7.in" ; configure active-high endstop for low end on Z via pin io5.in
M574 Z1 S2 ; Define Z to use Probe. Home to Min.; Z-Probe
M950 S0 C"io5.out" ; Create a servo pin on io5
M558 P9 C"io5.in" H5 F400 T5000 ;A5 ; set Z probe type to unmodulated and the dive height + speeds A=Attemps
G31 P25 X-28.00 Y-13.00 Z1.738 ; set Z probe trigger value, offset and trigger height, more Z means closer to the bed
;M557 X15:400 Y15:300 S40 ; define mesh grid
M557 X5:400 Y5:275 P5 ; Define a 5x5 bed mesh;HEATERS
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
;M301 H0 S1.00 P10 I0.1 D200 T0.4 W180 B30 Use PID on bed heater
M307 H0 A252.2 C635.5 D7.0 S1.0 V0.0 B0 ; enable bang-bang mode for the bed heater and set PWM limit
M140 H0 ; map heated bed to heater 0
M143 H0 S150 ; set temperature limit for heater 0 to 150CM308 S1 P"temp1" Y"thermistor" T500000 B5100 C1.19622e-7 ; configure sensor 1 as thermistor on pin temp1
M950 H1 C"out1" T1 ; create nozzle heater output on out1 and map it to sensor 1
M307 H1 A577.4 C221.2 D5.8 S1.0 V23.9 B0 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S375 ; set temperature limit for heater 1 to 450CM308 S2 P"temp2" Y"thermistor" T500000 B5100 C1.19622e-7 ; configure sensor 2 as thermistor on pin temp1
M950 H2 C"out2" T2 ; create nozzle heater output on out2 and map it to sensor 2
M307 H2 A577.4 C221.2 D5.8 S1.0 V23.9 B0 ; disable bang-bang mode for heater and set PWM limit
M143 H2 S375 ; set temperature limit for heater 1 to 450CM308 S3 P"temp3" Y"thermistor" T100000 B3950 ; configure sensor 3 as thermistor on pin temp2
M950 H3 C"out3" T3 ; create chamber heater output on out3 and map it to sensor 3
M307 H3 B0 S1.00 ; disable bang-bang mode for the chamber heater and set PWM limit
M141 H3 ; map chamber to heater 3
M143 H3 S60 ; set temperature limit for heater 3 to 60C; Fans
M950 F0 C"out4" Q500 ; create fan 0 on pin out4 and set its frequency
M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
M950 F1 C"out5" Q500 ; create fan 1 on pin out5 and set its frequency
M106 P1 S0 H-1 ; set fan 1 value. Thermostatic control is turned off
M950 F2 C"out7" Q500 ; create fan 2 on pin out7 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 H2 T45 ; set fan 3 value. Thermostatic control is turned on
M950 F4 C"out9" Q500 ; create fan 0 on pin out4 and set its frequency
M106 P4 S0 H-1 ; set fan 0 value. Thermostatic control is turned off; LEDs
M150 X1 C"led" ;T1 F3000000 ; create a RGB Neopixel LED strip on the LED port and set SPI frequency to 3MHz; Tool configuration section of config.g
; Create a tool that uses the low end (X) carriage
M563 P0 D0 H1 F0 S"Left" ; tool 0 uses extruder 0, heater 1 and fan 0
G10 P0 X0 Y0 Z0 S0 R0 ; set tool 0 offsets and temperatures
;G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C; Create a tool that uses the high end (U) carriage
M563 P1 D1 H2 X3 F2 S"Right" ; tool 1 uses extruder 1, heater 2, fan 2, and maps X to U
G10 P1 Y0 U0 Z0 S0 R0 ; set tool 1 offsets and temperatures
;G10 P1 R0 S0 ; set initial tool 0 active and standby temperatures to 0C; Create a tool that prints 2 copies of the object using both carriages
M563 P2 D0:1 H1:2 X0:3 F0:2 S"Copy" ; tool 2 uses both extruders, hot end heaters and fans, and maps X to both X and U
G10 P2 X50 Y0 U-50 S0 R0 ; set tool offsets and temperatures
;G10 P2 R0 S0 ; set initial tool 0 active and standby temperatures to 0CM567 P2 E1:1 ; set mix ratio 100% on both extruders
;M563 P0 D0 H1 F0 S"Left" ; define tool 0 Left
;G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets y was .45
;G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C
;M563 P0 D0 H1 F0 s"Left" ; tool 0 uses extruder 0 and heater 1 and fan 0
;G10 P0 X0 Y0 Z0 S0 R0 ; set tool 0 offsets and temperatures
;G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C;M563 P1 D1 H2 X3 F2 S"Right" ; define tool 1 Right
;G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets (.5BMG) (-1.45)
;G10 P1 R0 S0 ; set initial tool 0 active and standby temperatures to 0C
;M563 P1 D1 H2 X3 F2 S"Right" ; tool 1 uses extruder 1 and heater 2 and maps X to U, use fan 2 as the print cooling fan
;G10 P1 U0 Y0 Z0 S0 R0 ; set tool 1 offsets and temperatures
;G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C
; Custom settings;M563 P2 D0:1 H1:2 X0:3 F0:2 S"Copy" ; define tool 2 Copy
;G10 P2 X90 Y0 U-90 S0 R0 ; set tool 2 axis offsets (WAS 105)
;M567 P2 E1:1
;M568 P2 S1 ; turn on mixing for tool 2 ; set mix ratio 100% on both extrudersM376 H10
; Miscellaneous
M575 P1 S1 B57600 ; enable support for PanelDue
M501 ; load saved parameters from non-volatile memory
M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
M591 D0 P2 C"!io1.in" S1 ; filament switch High when filament present
M591 D0 ; display filament sensor parameters for extruder drive 0M591 D1 P2 C"!io2.in" S1 ; filament switch High when filament present
M591 D1 ; display filament sensor parameters for extruder drive 0
T0 ; select first tool; homeall.g
; Called to home all axes; BLTouch preperation
M280 P0 S160 ; Precautionary alarm release
M280 P0 S90 ; Ensure the pin is raised; Switch tool if required
if state.currentTool !=0
T0 P0 ; Switch to Tool0 which carries the Z-Probe (P0 skips tool files);Home X
G91 ; relative positioning
G1 H2 Z10 F6000 ; lift Z relative to current position
G1 H1 X-475 F1800 ; move quickly to X axis endstop and stop there (first pass)
G1 X5 F6000 ; go back a few mm
G1 H1 X-475 F360 ; move slowly to X axis endstop once more (second pass)
G90 ; absolute positioning;Home U
G91 ; relative positioning
;G1 H2 Z5 F6000 ; lift Z relative to current position
G1 H1 U475 F1800 ; move quickly to U axis endstop and stop there (first pass)
G1 H2 U-5 F6000 ; go back a few mm
G1 H1 U475 F360 ; move slowly to X axis endstop once more (second pass)
G90 ; absolute positioning; Home Y
G91 ; relative positioning
;G1 H2 Z5 F6000 ; lift Z relative to current position
G1 H1 Y310 F1800 ; move quickly to X axis endstop and stop there (first pass)
G1 Y-5 F6000 ; go back a few mm
G1 H1 Y25 F360 ; move slowly to X axis endstop once more (second pass)
G90 ; absolute positioning; Home Z using the Z-Probe
M290 R0 S0 ; Reset baby-stepping to 0
G1 X216 Y155 F6000 ; Move T0 to probing point (X5, Y5), including probe offset
G30 ; Probe the bed and set Z to the probe offset
G1 X-475 F6000 ; Move X1 back to parked position -