Error: Homing Failed on any G28 situation
-
Hello!
I finally got to the electronics part of my coreXY/D-Bot-mod printer and Duet is making everything so easy. I have a 0.6 on my delta that works wonders.
Anyway, I used the reprap configurator to generate an initial config, then configured the 3 independent Z-motors (I have a Duex 2 too) and did all the tests on the CoreXY setup wiki page. Everything is movnig on the right direction. Endstops also report correctly on M119 and I am using a dc42 Mini IR probe that is also working fine.
The problem is any homing that I try to do ends with "Error: homing failed". What is weird, because it actually does all the homing procedure described on homey/homex: finds the endstop, goes back, and then again slowly. What I've noticed is that it apparently doesn't change the X/Y position (reported on DW or M114) to what is supposed to be.
I tried doing a G92 X0 when the X was at the correct spot, and then if I ask to home again sometimes it will show as being on -0.0 or -0.3.
I am out of ideas to try. I don't know if it's something mechanical as are my belts wrong, or something skipping (I am 80% sure that it's fine), or if there's something involving Duex that I am unaware of, but as far as documentation go I don't even see many of those errors on a google search.
I tried to enabled debug and see via USB what was happening, but I have no idea how to read the debug output so didn't help. I see in the code that this error is described here https://github.com/dc42/RepRapFirmware/blob/c1983ffa6d33e88f491f1c21f35310fe2f3c88c8/src/GCodes/GCodes.cpp#L424 and if my C isn't failing me means that it's not recognizing that homing actually happen?
Anyway, any help here would be appreciated
This is my hardware info
Firmware Name: RepRapFirmware for Duet WiFi Firmware Electronics: Duet WiFi 1.0 + DueX2 Firmware Version: 1.20beta2 (2017-10-25) WiFi Server Version: 1.20beta2 Web Interface Version: 1.19.3
I tried to rollback to 1.19 and it had the same error. Didn't try any earlier version.
I will attach the relevant files and a debug log at the end.
[[gcode]] ; Configuration file for Duet WiFi (firmware version 1.20 or newer) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool on Thu Oct 26 2017 19:14:01 GMT-0400 (EDT) ; General preferences M111 S0 ; Debugging off G21 ; Work in millimetres G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves M555 P2 ; Set firmware compatibility to look like Marlin ; Automatic saving after power loss is not enabled M584 X0 Y1 Z2:5:6 M667 S1 ; Select CoreXY mode M208 X0 Y0 Z0 S1 ; Set axis minima M208 X240 Y240 Z200 S0 ; Set axis maxima ; Endstops M574 X1 Y2 Z0 S0 ; Define active low and unused microswitches M558 P1 X0 Y0 Z1 H5 F120 T6000 ; Set Z probe type to unmodulated, the axes for which it is used and the probe + travel speeds G31 P500 X0 Y0 Z2.5 ; Set Z probe trigger value, offset and trigger height M557 X15:285 Y15:285 S20 ; Define mesh grid ; Drives M569 P0 S0 ; Drive 0 goes backwards M569 P1 S0 ; Drive 1 goes backwards M569 P2 S0 ; Drive 2 goes backwards M569 P3 S1 ; Drive 3 goes forwards M569 P5 S0 ; Drive 5 M569 P6 S0 ; Drive 6 M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation M92 X100 Y100 Z400 E420 ; Set steps per mm M566 X900 Y900 Z12 E120 ; Set maximum instantaneous speed changes (mm/min) M203 X6000 Y6000 Z180 E1200 ; Set maximum speeds (mm/min) M201 X500 Y20 Z250 E250 ; Set accelerations (mm/s^2) M906 X1200 Y1200 Z1200 E800 I30 ; Set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Heaters M143 S260 ; Set maximum heater temperature to 260C M305 P0 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 0 M305 P1 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 1 ; Tools M563 P0 D0 H1 ; 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 ; Network M550 PD-Bot ; Set machine name M552 S1 ; Enable network M587 S"XXXXXXX" P"XXXXXXX" ; Configure access point. You can delete this line once connected M586 P0 S1 ; Enable HTTP M586 P1 S0 ; Disable FTP M586 P2 S0 ; Disable Telnet ; Fans M106 P0 S0.3 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on M106 P2 S1 I0 F500 H1 T45 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on ; Custom settings are not configured ; Miscellaneous M501 ; Load saved parameters from non-volatile memory
[[language]] ; homeall.g ; called to home all axes ; ; generated by RepRapFirmware Configuration Tool on Thu Oct 26 2017 22:19:45 GMT-0400 (EDT) ; Relative positioning G91 ; Lift Z G1 Z5 F6000 ; Course home X or Y G1 X-245 Y245 F1800 S1 ; Course home X G1 X-245 S1 ; Course home Y G1 Y245 S1 ; Move away from the endstops G1 X5 Y-5 F6000 ; Fine home X G1 X-245 F360 S1 ; Fine home Y G1 Y245 S1 ; Absolute positioning G90 ; Go to first bed probe point and home Z G1 X15 Y15 F6000 G30 ; Uncomment the following line to lift the nozzle after probing ;G1 Z5 F100
[[language]] ; homex.g ; called to home the X axis ; ; generated by RepRapFirmware Configuration Tool on Thu Oct 26 2017 22:17:09 GMT-0400 (EDT) ; Lift Z relative to current position G91 G1 Z5 F6000 G90 ; Move quickly to X axis endstop and stop there (first pass) G1 X-245 F1800 S1 ; Go back a few mm G91 G1 X5 F6000 G90 ; Move slowly to X axis endstop once more (second pass) G1 X-245 F360 S1 ; Lower Z again G91 G1 Z-5 F6000 G90
[[language]] ; homey.g ; called to home the Y axis ; ; generated by RepRapFirmware Configuration Tool on Thu Oct 26 2017 22:18:29 GMT-0400 (EDT) ; Lift Z relative to current position G91 G1 Z5 F6000 G90 ; Move quickly to Y axis endstop and stop there (first pass) G1 Y245 F1800 S1 ; Go back a few mm G91 G1 Y-5 F6000 G90 ; Move slowly to X axis endstop once more (second pass) G1 Y245 F360 S1 ; Lower Z again G91 G1 Z-5 F6000 G90
[[language]] ; homez.g ; called to home the Z axis ; ; generated by RepRapFirmware Configuration Tool on Thu Oct 26 2017 19:14:00 GMT-0400 (EDT) ; Lift Z relatively to current position G91 G1 Z5 F6000 ; Back to absolute positioning G90 ; Go to first bed probe point and home the Z axis G1 X15 Y15 F6000 G30 ; Uncomment the following lines to lift Z after probing ;G91 ;G1 Z5 F100 ;G90
[[language]] 23:48:09.464 : N103 G28 X0*89 23:48:09.466 : serial: G28 X0 23:48:09.472 : serial: G91 23:48:09.473 : serial: G1 Z5 F6000 23:48:09.473 : Transformed 10.33 15.00 15.00 to 2533 4294966829 6000 23:48:09.474 : serial: G90 23:48:09.476 : DDA: start=[10.330000 15.000000 10.000000] end=[10.330000 15.000000 15.000000] d=5.000000 vec=[0.000000 0.000000 1.000000 0.000000 0.000000] 23:48:09.476 : a=250.000000 reqv=3.000000 topv=3.000000 startv=0.000000 endv=0.000000 23:48:09.476 : daccel=0.018000 ddecel=0.018000 cks=1573749 23:48:09.476 : DMZ: dir=F steps=2000 next=1 rev=2001 interval=4192 sstcda=0 acmadtcdts=5625 tstcdapdsc=1573749 2dtstc2diva=35156246724 23:48:09.476 : accelStopStep=8 decelStartStep=1993 2CsqtMmPerStepDivA=17578124 23:48:09.476 : mmPerStepTimesCdivtopSpeed=799999 fmsdmtstdca2=0 23:48:09.476 : serial: G1 X-245 F1800 S1 23:48:09.477 : Transformed -245.00 15.00 15.00 to 4294944296 4294941296 6000 23:48:11.107 : DDA: d=255.330002 vec=[-1.000000 0.000000 0.000000 0.000000 0.000000] 23:48:11.107 : a=500.000000 reqv=30.000002 topv=30.000002 startv=0.000000 endv=0.000000 23:48:11.107 : daccel=0.900000 ddecel=0.900000 cks=8035313 23:48:11.107 : DMX: dir=B steps=25533 next=1 rev=25534 interval=5929 sstcda=0 acmadtcdts=28125 tstcdapdsc=8035313 2dtstc2diva=897644544804 23:48:11.107 : accelStopStep=91 decelStartStep=25444 2CsqtMmPerStepDivA=35156248 23:48:11.107 : mmPerStepTimesCdivtopSpeed=319999 fmsdmtstdca2=0 23:48:11.107 : DMY: dir=B steps=25533 next=1 rev=25534 interval=5929 sstcda=0 acmadtcdts=28125 tstcdapdsc=8035313 2dtstc2diva=897644544804 23:48:11.107 : accelStopStep=91 decelStartStep=25444 2CsqtMmPerStepDivA=35156248 23:48:11.107 : mmPerStepTimesCdivtopSpeed=319999 fmsdmtstdca2=0 23:48:11.162 : serial: G91 23:48:11.163 : serial: G1 X5 F6000 23:48:11.164 : Transformed 15.33 15.00 15.00 to 3033 33 6000 23:48:11.165 : serial: G90 23:48:11.166 : DDA: start=[10.330000 15.000000 15.000000] end=[15.330000 15.000000 15.000000] d=5.000000 vec=[1.000000 0.000000 0.000000 0.000000 0.000000] 23:48:11.166 : a=500.000000 reqv=100.000008 topv=50.000000 startv=0.000000 endv=0.000000 23:48:11.166 : daccel=2.500000 ddecel=2.500000 cks=187500 23:48:11.166 : DMX: dir=F steps=500 next=1 rev=501 interval=5929 sstcda=0 acmadtcdts=46875 tstcdapdsc=187500 2dtstc2diva=17578125156 23:48:11.166 : accelStopStep=251 decelStartStep=251 2CsqtMmPerStepDivA=35156248 23:48:11.166 : mmPerStepTimesCdivtopSpeed=192000 fmsdmtstdca2=0 23:48:11.167 : DMY: dir=F steps=500 next=1 rev=501 interval=5929 sstcda=0 acmadtcdts=46875 tstcdapdsc=187500 2dtstc2diva=17578125156 23:48:11.167 : accelStopStep=251 decelStartStep=251 2CsqtMmPerStepDivA=35156248 23:48:11.167 : mmPerStepTimesCdivtopSpeed=192000 fmsdmtstdca2=0 23:48:11.167 : serial: G1 X-245 F360 S1 23:48:11.168 : Transformed -245.00 15.00 15.00 to 4294944296 4294941296 6000 23:48:11.318 : DDA: d=260.329987 vec=[-1.000000 0.000000 0.000000 0.000000 0.000000] 23:48:11.318 : a=500.000000 reqv=6.000000 topv=6.000000 startv=0.000000 endv=0.000000 23:48:11.318 : daccel=0.036000 ddecel=0.036000 cks=40687804 23:48:11.318 : DMX: dir=B steps=26033 next=1 rev=26034 interval=5929 sstcda=0 acmadtcdts=5625 tstcdapdsc=40687806 2dtstc2diva=915222573252 23:48:11.318 : accelStopStep=4 decelStartStep=26030 2CsqtMmPerStepDivA=35156248 23:48:11.318 : mmPerStepTimesCdivtopSpeed=1599999 fmsdmtstdca2=0 23:48:11.318 : DMY: dir=B steps=26033 next=1 rev=26034 interval=5929 sstcda=0 acmadtcdts=5625 tstcdapdsc=40687806 2dtstc2diva=915222573252 23:48:11.318 : accelStopStep=4 decelStartStep=26030 2CsqtMmPerStepDivA=35156248 23:48:11.318 : mmPerStepTimesCdivtopSpeed=1599999 fmsdmtstdca2=0 23:48:12.210 : serial: G91 23:48:12.211 : serial: G1 Z-5 F6000 23:48:12.211 : Transformed 10.32 15.00 10.00 to 2532 4294966828 4000 23:48:12.215 : DDA: start=[10.320000 15.000000 15.000000] end=[10.320000 15.000000 10.000000] d=5.000000 vec=[0.000000 0.000000 -1.000000 0.000000 0.000000] 23:48:12.215 : a=250.000000 reqv=3.000000 topv=3.000000 startv=0.000000 endv=0.000000 23:48:12.215 : daccel=0.018000 ddecel=0.018000 cks=1573749 23:48:12.215 : DMZ: dir=B steps=2000 next=1 rev=2001 interval=4192 sstcda=0 acmadtcdts=5625 tstcdapdsc=1573749 2dtstc2diva=35156246724 23:48:12.215 : accelStopStep=8 decelStartStep=1993 2CsqtMmPerStepDivA=17578124 23:48:12.215 : mmPerStepTimesCdivtopSpeed=799999 fmsdmtstdca2=0 23:48:12.215 : serial: G90 23:48:13.895 : Homing failed
-
There is a bug with CoreXY homing in 1.20beta2. Please use 1.20beta1 or 1.19.2, at least until 1.20beta3 is available.
-
There is a bug with CoreXY homing in 1.20beta2. Please use 1.20beta1 or 1.19.2, at least until 1.20beta3 is available.
Oh welp, that solved it.
Weird that I was pretty sure I had problems with 1.19 too. I guess I didn't actually try it.
Thanks DC
-
SO, guessing it still isn't fixed in the full release as I'm using 1.2 and it's doing it on my CoreXY . . question, is it an issue really other than "reporting"? it seems to home and register actual location and all. though I guess it wouldn't go a print huh? (still building the printer and just playing with the movement, no head carriage on it yet)
-
SO, guessing it still isn't fixed in the full release as I'm using 1.2 and it's doing it on my CoreXY . . question, is it an issue really other than "reporting"? it seems to home and register actual location and all. though I guess it wouldn't go a print huh? (still building the printer and just playing with the movement, no head carriage on it yet)
It's fixed. What problem have you actually got?
-
SO, guessing it still isn't fixed in the full release as I'm using 1.2 and it's doing it on my CoreXY . . question, is it an issue really other than "reporting"? it seems to home and register actual location and all. though I guess it wouldn't go a print huh? (still building the printer and just playing with the movement, no head carriage on it yet)
It's fixed. What problem have you actually got?
Same thing he stated above, all axis home, seem fine but spit out an error 28 homing fail.
-
If you've got no head carriage fitted yet, I'm curious as to how you are homing all the axes. What does the switch status indicate in the machine control section of DWC?
-
If you've got no head carriage fitted yet, I'm curious as to how you are homing all the axes. What does the switch status indicate in the machine control section of DWC?
Simple wheel plate, actually triggger the switch manually myself for y. Not a clue what the DWC is?
-
DWC = Duet Web Control. I kind of assumed you were using that to home the printer and that's when you were seeing the error message. I'm very confused now because you said "all axis home, seem fine but spit out an error 28 homing fail". Yet you are triggering Y manually. How about Z?
The "bug" appeared briefly in 1.20 beta2. It wasn't there in 1.20 beta1 and was fixed in 1.20 beta 3 and later version including the final release. Suggest you get a bit further with the printer then get it homing all axes properly and report back if you still have an issue.
-
DWC = Duet Web Control. I kind of assumed you were using that to home the printer and that's when you were seeing the error message. I'm very confused now because you said "all axis home, seem fine but spit out an error 28 homing fail". Yet you are triggering Y manually. How about Z?
The "bug" appeared briefly in 1.20 beta2. It wasn't there in 1.20 beta1 and was fixed in 1.20 beta 3 and later version including the final release. Suggest you get a bit further with the printer then get it homing all axes properly and report back if you still have an issue.
OK, yes using the Duet Web/Browser control page.
Z and X end stops are mounted. Y is just the wire an end stop sitting on top the printer and I click it with my finger. simple testing of movement as I am designing as I build. when Z triggers the home it works fine, both X and Y spit out the error 28. Again, X is mounted so can't blame it on my setup. Also notice that when I go to home X(or Y) if I home Z first, the control panel is saying Z is homed, till the error 28 and it goes back to all 3 not being homed.
-
video- just for viewing to see what's going on and what I am likely missing?