Toolchanger Setup Continue...
-
I use G10 L2 now to define the offsets from the HRP:
G10 L2 P0 X0 Y0 Z2
I tested a bit, the tip of the nozzle is ruffly 2mm deeper than the z-probe. I expected to see a jump of the z high when I select T0 than but nothing happens when I select T0. Z is still at 2mm when the nozzle barely touching the bed. Did I miss understand something?
Cheers, Chriss
-
@Chriss I'm not that familiar with coordinate system usage (it's more of a CNC thing), but I don't think you should be using G10 P0 L2. This is setting coordinate system (L2) 0 (P0) to the XYZ offsets. However, coordinate systems are numbered 1 to 9, and the default coordinate system is 1. See https://docs.duet3d.com/User_manual/Reference/Gcodes#g10-set-workplace-coordinate-offset-or-tool-offset and https://docs.duet3d.com/User_manual/Reference/Gcodes#g54-select-coordinate-system
L2: this sets the origin of the coordinate system number specified by the P parameter (1 to 9) to the specified X, Y, Z... values
Initially, coordinate system 1 is in use, and all coordinate systems have zero offset from the machine coordinates.
L2 is usually used to set workpiece offsets in CNC machining operations.
This page https://docs.duet3d.com/User_manual/Tuning/Defining_tool_and_Z_probe_offsets doesn't say to use L2. Use L1, or no L parameter as L1 is the default, with the P parameter for the tool number.
Ian
-
@droftarts Thanks for grounding me again. I may have misunderstood the docu of G10.
I may have overlooked that:
In your G10 tool offset setting commands (these G10 commands have axis letter parameters and a P parameter but no L parameter), specify the offsets of the nozzle or cutting head relative to the HRP.
I will drop the L parameter than and see how it behaves than.
Cheers, Chreers
-
@droftarts I'm a bit confused about the concept behind that offset to be honest. My tools get picked up and dropped off correctly as long as I have no offset configured.
It turns into a nightmare if I have offsets configured for obvious reasons.
So I tend to change the offset now in the tpost file and turn it back to X0 Y0 in the tfree file but that seams to me like a ugly hack. It would be far more convenient if the offset would be removed automatically removed when the tfree gets executed.Cheers, Chriss
-
@Chriss what you want is to use G53 in front of yiur G1 commands in your toolchange files. That means it considers the G1 command to be in machine coordinates, not tool coordinates, so doesnt apply the offsets.
More generally have you read up on the E3D toolchanger and motion system? You could probably get 90% of the eay there with your comissioning by just cribbing their config files and setup guides. No point reinventing the wheel! There are probably similar materials also available for the Jubilee and other toolchanger printers if you look too.
https://github.com/e3donline/RepRapFirmware-SD
https://e3d-online.zendesk.com/hc/en-us/sections/6186313376413-ToolChanger-Motion-System
-
@engikeneer Thanks for the tip with G53, that is indeed what I was looking for. I id implemented "my way" in the meantime which simply sets the offset to x0y0 in the tool files. But that is a ugly hack indeed.
I had a look at the e3d's git repo to get some ideas how they did it. And they do not use they do not use the G53 there, which is a bit surprising. The command may be to new for their retired product.Anyway, I will work on the calibration for now and will play with the G53 later.
-
@Chriss Have you seen the e3d toolchanger configuration files created by dc42? They may be of interest:
https://github.com/Duet3D/RRF-machine-config-files/tree/master/E3D_Tool_ChangerThe associated blog posts might also be worth reading:
https://miscsolutions.wordpress.com/2020/03/02/converting-the-e3d-tool-changer-to-duet-3-with-hemera-tools-part-1/ -
@gloomyandy Yes, I saw Davids configs indeed. I use many of his plastic parts for my Hemeras and did some modding on them. But thanks for bring them back up.
I always struggle a bit with using other peoples configs to be honest. I like to understand how things work in detail. And this printer is not a new build, I convert a RR VCore into a toolchanger, so I have a working config and need to add the toolchanging "only". Anyway, I used Davids settings for the coupler and some more ideas. But you are right, I have overlooked the G53 in his tools related files.
Cheers, Chriss
-
@Chriss for clarification, the HRP of an E3D toolchanger is normally taken to be the position of the Z probe switch on the tool pickup.
I use G53 in the tfree and tpost files because I prefer to use machine coordinates in those files, not nozzle coordinates. That means I can adjust the nozzle offsets for each tool to get perfect registration between all the nozzles, without having to update the tool change files every time I adjust them.
G53 is not needed in the tpre files because there is no tool loaded at that point, so no tool head (i.e. nozzle) offsets to apply.
HTH David
-
@Chriss For an explanation of 'HRP' (Head Reference Point) see https://docs.duet3d.com/en/User_manual/Tuning/Defining_tool_and_Z_probe_offsets
Ian
-
@droftarts Thanks... That helped indeed a lot to get a better/full understanding about the concept.
@dc42 Thanks for the further explanation David! I understand it now and I switched over to the G53 concept in the meantime. Going "my way" was not very successful.
I have a other questions about the tool change itself. The Prusa slicer, which I use here, acts a bit stupid in my understanding, It sets the tool with G10 to the standby filament temp instead using M568 and the R option. I do that manually via the start code now, like this:
M568 P0 R{global.tool0_standby} M568 P1 R{global.tool1_standby} M568 P2 R{global.tool2_standby} M568 P3 R{global.tool3_standby}
That works so far and I'm happy. But now comes Prusa into the game. The slicer change the temperate of the tool to standby temp now. That should not be a problem because I changed the standby in the start code. You see the "T1" than which does the tool change drill. Next is a G10 with P1 which is OKish. And the next M116 is my problem.
[...] G1 E-1 F7200 ; Filament-specific end gcode G10 S100 P0 ; set temperature ;cooldown T1 ; Filament gcode G10 S215 P1 ; set temperature M116 ; wait for temperature to be reached [...]
The M116 makes the printer to wait till the previous tool has reached its designated temperature which is the standby temp than (100°C in this case). That confuses me a bit. I understood M116 that it does not wait for "parked" tools since 3.5 anymore:
Note that in v3.5, the scope of tool heaters to wait for is limited to the heaters of the currently selected tool of the selected motion system.
I'm not sure how to overcome that to be honest. The only thing I can think of is to change the main temperature back to the printing temp via the tfree script. But not sure to what will lead me that.
Any ideas?
Cheers, Chriss