Unable to Home the Y axis - BLV CoreXY Machine
-
I'm building a BLV 3D printer and just powered it up a few days ago and am starting to configure everything. I have the X sensor on the left and the Y sensor in the rear left. I'm using optical sensors. The bed is 310mm x 310mm. I can't for the life of me get past homing the Y axis.
From the web interface, clicking Home Y: It goes back to rear left, makes the Y optical sensor then just stops. The next move should be a G1 H1 Y-5 but it just sits there with the sensor made.
I can manually issue another positive G1 Y+1 and it will move forwards beyond where it triggered the sensor but any negative moves do nothing with no errors. It is definitely making the sensor, the Duet board's Estop LED goes out and the Web interface reports it made.
I have to reset the board to allow Y to move after that. I can issue M564 S0 H0 and manually move the motors in all directions. I don't see any difference between homex.g and homey.g other than the directions.
Homing the X axis works perfectly according to the code. X goes left, makes the optical sensor, moves right 5mm, then left at the much slower rate and makes the sensor. My axis are all moving in the correct directions. I'm absolutely puzzled and have tried increasing the distances beyond the build plate size up to .
My config.g, homex.g and homey.g are attached for viewing if anyone has a solution, Please help!Board: Duet WiFi 1.02 or later + DueX5
Firmware: RepRapFirmware for Duet 2 WiFi/Ethernet 3.0beta12 (2019-11-02b1)
Duet WiFi Server Version: 1.23; homex.g
; called to home the X axis
;
G91 ; relative positioning
G1 H2 Z5 F6000 ; lift Z relative to current position
G1 H1 X-315 F1800 ; move quickly to X axis endstop and stop there (first pass)
G1 X5 F6000 ; go back a few mm
G1 H1 X-315 F360 ; move slowly to X axis endstop once more (second pass)
G1 H2 Z-5 F6000 ; lower Z again
G90 ; absolute positioning; homey.g
; called to home the Y axis
;
G91 ; relative positioning
G1 H2 Z5 F6000 ; raise Z relative to current position
G1 H1 Y315 F1800 ; move quickly to Y axis endstop and stop there (first pass)
G1 Y-5 F6000 ; go back a few mm
G1 H1 Y315 F360 ; move slowly to Y axis endstop once more (second pass)
G1 H2 Z-5 F6000 ; lower Z again
G90 ; absolute positioningConfig.g:
; Configuration file for Duet WiFi (firmware version 3)
; executed by the firmware on start-up
;; General preferences
M80 ; enable PS_On Pin for Solid State Relay Operation - Required to keep SSR turned on
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"BLV Cube 3D Printer" ; set printer nameM667 S1 ; select CoreXY mode
; Network
M552 S1 ; enable network
M586 P0 S1 ; enable HTTP
M586 P1 S0 ; disable FTP
M586 P2 S0 ; disable Telnet; Drives
M569 P0 S0 ; physical drive 0 goes forwards
M569 P1 S0 ; physical drive 1 goes forwards
M569 P2 S1 ; physical drive 2 goes backwards
M569 P3 S0 ; physical drive 3 goes forwards
M569 P4 S0 ; physical drive 4 goes forwards
M569 P5 S1 ; physical drive 5 goes backwards
M569 P6 S0 ; physical drive 6 goes forwards
M584 X0 Y1 Z2:5:6 E3:4 ; set drive mapping
M350 X16 Y16 Z16 E16:16 I1 ; configure microstepping with interpolation
M92 X200.00 Y200.00 Z400.00 E2700.00:2700.00 ; set steps per mm
M566 X600.00 Y600.00 Z24.00 E40.00:40.00 ; set maximum instantaneous speed changes (Jerk) (mm/min)
M203 X2000.00 Y2000.00 Z600.00 E1200.00:1200.00 ; set maximum speeds (mm/min)
M201 X3000.00 Y3000.00 Z100.00 E120.00:120.00 ; set accelerations (mm/s^2)
M906 X1200 Y1200 Z1200 E800:800 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Set up each Z-axis Leadscrew location
M671 X-59.5:371.5:371.5 Y154.5:261.5:36.5 S5 ; leadscrews at rear left, front middle and rear right; Axis Limits
M208 X0 Y0 Z0 S1 ; set axis minima
M208 X320 Y320 Z300 S0 ; set axis maxima; Endstops
M574 X1 S1 P"xstop" ; configure active-high endstop for low end on X via pin xstop
M574 Y1 S1 P"ystop" ; configure active-high endstop for low end on Y via pin ystop
M574 Z1 S2 ; configure Z-probe endstop for low end on Z; Z-Probe
M558 P1 C"zprobe.in" H5 F120 T6000 ; set Z probe type to unmodulated and the dive height + speeds
G31 P500 X0 Y0 Z1.21 ; set Z probe trigger value, offset and trigger height
M557 X15:215 Y15:195 S20 ; define mesh grid; Heaters
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 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit
M308 S1 P"spi.cs1" Y"rtdmax31865" ; configure sensor 1 as RTD via CS pin spi.cs1
M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
M143 H1 S280 ; set temperature limit for heater 1 to 280C
M307 H1 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit
M308 S2 P"spi.cs2" Y"rtdmax31865" ; configure sensor 2 as RTD via CS pin spi.cs2
M950 H2 C"e1heat" T2 ; create nozzle heater output on e1heat and map it to sensor 2
M143 H2 S280 ; set temperature limit for heater 2 to 280C
M307 H2 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit; Fans
M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
M106 P0 S0 H-1 C"Right Nozzle" ; set fan 0 value. Thermostatic control is turned off
M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
M106 P1 S0 H-1 C"Left Nozzle" ; set fan 1 value. Thermostatic control is turned off
; M950 F2 C"fan2" Q500 ; create fan 2 on pin fan2 and set its frequency
; M106 P2 S0 H1 T2010 C"Chimera Fan" ; set fan 2 value. Thermostatic control is turned on for left and right nozzles; Tools
M563 P0 S"Right Extruder" D0 H1 F0:1 ; 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
M563 P1 S"Left Extruder" D1 H2 F0:2 ; define tool 1
G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets
G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C; Custom settings are not defined
; Miscellaneous
T0 ; select first tool -
please check manually with M119 that all your endstops work correcyly
-
Veti, thanks for the support and the test to try. I'm fairly new to the RepRap systems and need all the help I can get. From what I'm reading in these beta forums, I see that homing has been an issue but it seems that some have worked around it. Here are my results: First with no endstops triggered, second with Y triggered, third with X triggered and fourth with X and Y triggered. All seems good.
Question: CAN anything inside of config.g affect the way homing works? My current config.g is part of this post and something tells my noob mind that config.g may be the issue. Is this possible? When I first started this project I was using the latest stable version 2 firmware and it worked perfectly at least when doing the X and Y homing. I've not even made it to the Z homing which will use the IR sensor. I don't have the machine completely built yet and not all functions are configured. I'm stuck on the homing issue and don't want to move forward until I get it working. Anyone? Please help! What else can I check or test? I really hate to revert back to version 2 firmware.
M119 Endstops - X: at min stop, Y: not stopped, Z: not stopped, Z probe: not stopped
M119 Endstops - X: at min stop, Y: at min stop, Z: not stopped, Z probe: not stopped
M119 Endstops - X: not stopped, Y: at min stop, Z: not stopped, Z probe: not stopped
M119 Endstops - X: not stopped, Y: not stopped, Z: not stopped, Z probe: not stopped -
@wkellyo said in Unable to Home the Y axis - BLV CoreXY Machine:
M574 Y1 S1 P"ystop" ; configure active-high endstop for low end on Y via pin ystop
Your description of the printer would indicate that your Y endstop is on the high end of the axis travel, but your M574 command is saying that it's at the low end. So when you home Y, it thinks it's at the low end of Y travel, not the high end. You can confirm by looking at the Y position as displayed in the DWC. When you home to Y max it should say the Y position is 320 based on your M208 Y maxima, but I bet you'll find that when you home Y it actually says the Y position is Y0.
SwitchM574 Y1 S1 P"ystop"
toM574 Y1 S2 P"ystop"
Switch
M574 Y1 S1 P"ystop"
toM574 Y2 S1 P"ystop"
-
@wkellyo I think you have your X endstop set as a min endstop with X1, which looks correct with your homex.g, but your homey.g infers that your Y endstop should be set as a max endstop. In config.g change to M574 Y2 S1 P"ystop"
See https://duet3d.dozuki.com/Wiki/Gcode#Section_M574_RepRapFirmware_Num_3
Ian
-
@Phaedrux said in Unable to Home the Y axis - BLV CoreXY Machine:
Switch M574 Y1 S1 P"ystop" to M574 Y1 S2 P"ystop"
Y2, not S2, that’s for a probe!
Ian
-
@droftarts said in Unable to Home the Y axis - BLV CoreXY Machine:
@Phaedrux said in Unable to Home the Y axis - BLV CoreXY Machine:
Switch M574 Y1 S1 P"ystop" to M574 Y1 S2 P"ystop"
Y2, not S2, that’s for a probe!
Ian
Of course, you're right!
-
@Phaedrux said in Unable to Home the Y axis - BLV CoreXY Machine:
Of course, you're right!
Very rare I catch you out!
Ian
-
You guys Rock! I guess I had too many late nights and missed such a simple change. I now realize the Y endstop is indeed at the rear left of the machine as looked at from above, but... It's Positive and that's what I missed in the endstop configuration as you all have pointed out. I changed the Y1 to Y2 and lo and behold.. It works! Thanks to each of you for taking the time to dig through my config.g file and finding this!! Bless you all and merry christmas!!!
Kelly