Hey Mark @markalanevans, hey Alex @suprak,
G43 takes optional H argument with tool number, but without H uses last tool selected with Tx M6.
I tried to reproduce it by using:
G21
G10 L1 P1 Z12 ; set 12 mm tool length offset for tool 1
T1 M6 G43 ; select tool 1 and switch on tool length offsets
Now when requesting which tool is selected:
(debug, Selected tool: #<_selected_tool>)
it returns the correct tool number, but when requesting whether tool offsets are active:
(debug, Tool offsets are on: #<_tool_offset>)
it should return 1 when tool length offset is on, but returns always 0. Why?
But on the next motion command, the 12 mm tool offset is active, it is shown in the “offsets” column.
When requesting the tool offset for Z axis:
(debug, Z tool offset: #5403)
it correctly returns 12 mm.
I defined a second tool 2 with
G10 L1 P2 Z14 ; set 14 mm tool length offset for tool 2
T2 M6 ; select tool 2
then the tool offset is reported correctly with 14 mm. When I then switch back to tool 1:
T1 M6
then after a motion command it’s back to 12 again:
(debug, Z tool offset: #5403)
So the tool data defined by the operator with G10 L1 (Set Tool Table) are stored by the Onefinity Controller and are called from the tool table on subsequent tool changes.
PS: Sorry, in fact I was answering to your post in this thread