Firmware 3.4.5 axis mapping bug
-
I have 4 extruders - 2 gantries, 4th tool is mapped to Axis U->Y A->X.
When I calibrate, I dial in the min/max of each axis --
I send the tool to the middle of the bed with G1 X300 Y300 Z60 -- it sits above a camera I can see the nozzle in. All works fine, until if I do G28 A -- it homes A, then if I do G1 X300 Y300 Z60, it does nothing -- it does a tiny little move, but it should be moving A across from -30 to 300, it's not. It used to prior to 3.4.5 -- earlier 3.4 release worked fine with that calibration procedure. Oddly enough same exact calibration works with axis U, V,W -- but A has this oddity. -
@kazolar
The only difference I know off between UVW and A axes is: that ABC axes are rotary axes by default and you have to change that in your config. -
@o_lampe I set up all axis to be linear
M584 Y0.5:0.0 R0
M584 U0.4:0.1 R0
M584 X0.2 R0
M584 V0.3 R0
M584 W2.0 R0
M584 A1.0 R0
M584 Z2.2:2.1:1.2:1.1 R0
M584 E101.0:102.0:103.0:104.0 R0
And after A axis is homed, when I tell it to go to center it goes from -34.7 to 299.4 in a micro-move -- basically instantly.Also this was not an issue prior to 3.4.5, it was working fine with 3.4.1, and rotary mapping was introduced earlier.
-
Can you share your full config.g?
-
-
@kazolar does it work if you downgrade to RRF version 3.4.4 ? Which Duet are you using?
-
-
@kazolar if this issue is occurring on a Duet 3 Mini5+, please see https://forum.duet3d.com/post/302699.
-
@dc42 I finally got around to re-testing this. I downgraded to 3.4.2 (that was the major release I found quickly with all the web archives)
The problem went away, I was re-calibrating the machine and switching to 9mm belts and to mechanical switches to replace optical switches (my own experiment trying to find repeatable calibration, unrelated to the issue), so took a while to test again. The calibration process is adjusting UVWA axis home positions to match XY coordinate space. Now all is put back together. Am on 3.4.2 -- all works fine. I did a couple of rounds of homing A and then re-issuing G1 command with X Y coordinate for the toolhead A is mapped to, and it works properly. My config is duet3 6HC, 2 EXP3HC, and 4 toolboards. A axis is on the 1st expansion board. W axis is on the 2nd expansion board, 3.4.5 had no issue with UVW axis, but had a problem with A axis. 3.4.2 works fine now. -
@kazolar It would be helpful to us if you could try with the updated 3.4.5 version that dc42 described in this thread:
https://forum.duet3d.com/topic/30814/homing-issues-with-rrf-3-4-5-on-duet-3-mini?_=1673273623319
It would be good to confirm that the issue in 3.4.5 is resolved now for you. Thanks!
-
@T3P3Tony sorry it took me a while to test, but the problem persists with the updated 3.4.5
Command is switch to tool 4 --
T3
issue G1
G1 X300 Y300 -- toolhead goes to the correct location
G28 A -- home the assigned X
toolhead homes -- this is not the issue
G1 X300 Y300 -- toolhead doesn't come back to X300 -- this is the problemPS I downgraded to 3.4.4 -- Same issue.
I kept going back -- I ended up going back to 3.4.0 until the problem went away -
@kazolar you seem to have inconsistent results, you reported first tat reverting to 3.4.2 solved the problem and later that you had to revert to 3.4.0.
I suspect this issue has nothing to do with firmware versions, but instead depends on conditions when you power up the printer. Please use M122 B# to get the firmware and bootloader details of each expansion board, where # is the CAN address of the board. If any of the expansion boards have old bootloader versions, I suggest you update them to version 2.4.
-
@dc42 yes bootloader is 2.3 -- I expected that it would get updated during the various firmware updates I preformed, didn't even occur to check. Will update now and try latest firmware
-
@dc42 I did the full test during lunch. Can confirm now I am on the 2.4 bootloader.
Here is the gcodeG28
G32
T0
G1 X300 Y300 F20000
T3
G1 X300 Y300 F20000
G28 A
G1 X300 Y300 F20000Last line is where A doesn't go to 300 it makes a little squeak and says it went there. Note A in all cases in DWC shows home position -34.7, even when it's being operated by T3.
3.4.5 didn't work for me, I went backwards in order 3.4.4, 3.4.2, 3.4.0 -- power cycling after each complete flash. Only 3.4.0 worked and the last gcode line moved the toolhead to X300.
I tried upgrading from 3.4.0 to 3.4.2 -- and same result, last line didn't work. I reverted to 3.4.0. And it works again.here is homea.g in case it's remotely helpful
G91
G1 A-700 F6000 H1
G1 A3 F500 H2
G1 A-10 F300 H1
G1 A0.2 F3000 H2
G90here are tool definitions
M563 P0 D0 H1 F0 ; Define tool 0 to use extruder drive 0 and heater 1
M563 P1 D1 H2 X4 F2
M563 P2 D2 H3 Y3 X5 F4
M563 P3 D3 H4 Y3 X6 F6note this is only a problem with A axis, UVW which represent my other mapped axis do not have this issue -- so in the gcode above I can replace T3 with T1 or T2 and replace A with U V or W and the last line will work fine.
-
@dc42 I installed 3.5 beta 2. The problem appears to have been fixed.
-
@kazolar thanks for confirming this.
-
@dc42 hopefully you know what changes made it work now.