Boxford Toolchanger WITH Index -need help-

26 Oct 2022 05:54 #255080 by hitchhiker
Good morning!


I use a Emco Pcturn 50 with retrofit to mach3.
The toolchanger is a 6 position ratchet style turret with a pawl thats lock when the turret steps back.
Original is a dc motor used. I change to a nema17 stepper.
I add a sloted disc with a lightbarrier to refernce the turret.
In mach3 i home the turret and Toolnumber 1 is selected.
The slot (Index) is adjusted to toolposition 1 locked.

I start with the boxford toolchanger comp.
I adjust the steps for rotating from tool to tool and adjust the steps for locking.

tool1 is the master tool. x0 z0 offsets in tooltable

but now i want:

when i home the turret on Startup .. tool1 is set and shown and g43 is send.

when i send m6t2 the g43 must be send automatic to get the correct offset from the tooltable.

tool 1 3 and 5 are external tools.
tool 2 4 and 6 are internal tools.

if i change from a external tool i need first move x away and then z.

if i change frome a internal tool i need first move z away and then x.

to get all this working on linuxcnc i need some help.

on mach3 it was easy to code the macro for the toolchange,go to toolchange position,home on start and set tool1....

but i want to leave mach3 behind.. over the years i look to go arround from linuxcnc but from week to week i saw so many problems with mach3 that i start to convert to linuxcnc.... after some weeks with linuxcnc and manual toolchanger i got accurate parts.. in mach3 was it luck...

i hope someone have the time and the joy to help me :)


Please Log in or Create an account to join the conversation.

26 Oct 2022 09:49 #255085 by andypugh
You should be able to use the "carousel" component for your toolchanger.

There is no need to home it in the way you describe, the component will home it and then go to the correct tool position on the first tool change command.

To automaticaly apply the tool offsets and issue the M6 with only a "T" command requires a simple remap entry in the INI file, but I suggest that as a second step after getting the toolchanger working.

Which hardware interface are you using? Which IO pins are the tool position and tool-1 indicators connected to?

Please Log in or Create an account to join the conversation.

26 Oct 2022 09:54 #255086 by tommylight
Tools should be diferentiated in CAM software, so before a tool change is called to move away from the material, at least that is what i think, not much experience with CNC lathes, yet.
I have 12 tools, same as you, odd ones are external and even ones are internal/drilling/boring.
Now you reminded me about this, i have a Mazak Micro Slant 15, if i mess something it will mess a lot! :)
Anyone with more experience, please let us know how we go about it. Thank you.
BTW, i intend to use Andy's lathe macros, will have to add another feature to cut hydraulic gaskets, so i will report back, whenever that happens.

Please Log in or Create an account to join the conversation.

26 Oct 2022 11:35 #255089 by hitchhiker
hi andy

i use the parallelport with a 12/5 parallel interface.

i have no toolposition. i only have turret homed or better tool 1 indicator.

its not connected in the hal. this is what i must done next.

but i dont know to what i must connect it.

in mach3 the disc rotate.. find the slot.. drives back.. and the pawl is locked.
i step a little bit over the ratchet.. then it drives back and its locked.

but how can i do this in linuxcnc..

its homing A-axis.

but the a axis only drive forward to search or go to a tool. backward is locking.



Please Log in or Create an account to join the conversation.

26 Oct 2022 14:18 #255100 by andypugh
You can potentially do this as an A-axis, using the tool-1 sensor as a home switch and adding the A axis to the homing sequence (In the INI file)

Or you can try using the carousel component, but would need the newer version that is included in v2.9 (not yet released) of LinuxCNC as that includes a "counts" mode that uses stepgen or encoder counts to calculate the position. You can download that version here: and then install it on your system with "sudo halcompile --install carousel.comp"

If using an A axis then you will need a G-code remap of the T (or possibly M6) commands.
Remapping is a big subject, but you only need a small part of it.
For a lathe you probably only really want to do the things in 5.8 (remap of T)

This is much like the macro you say that you had in Mach3, except it is done either as a G-code routine, or as a Python routine. Or possibly a bit of both.
The following user(s) said Thank You: Masiwood123

Please Log in or Create an account to join the conversation.

26 Oct 2022 15:40 #255103 by hitchhiker
mmmh i was thinking i can change the most ( if internal tool then first move z and then x or if external tool move first x then z) inside the boxford.comp.....


Please Log in or Create an account to join the conversation.

26 Oct 2022 16:23 #255105 by andypugh
You can't really move axes inside HAL components.
So, that part would need to be done in G-code in a remap routine.
O<change> SUB
  O100 IF [#<tool> MOD 2 EQ 1] 
      G0 X100
      G0 Z 200
  O100 ELSE
     G0 Z 200
     G0 X 100
  O100 ENDIF
{Rest of routine}
O<change> ENDSUB
The following user(s) said Thank You: tommylight

Please Log in or Create an account to join the conversation.

26 Oct 2022 22:25 #255142 by hitchhiker
today i was playing with homing the turett.

i have a disc with a slot.. a lightbarrier.

when linux find the slot its go back... turett is loose...

in mach3.. same setup... but when it goes back i drive 0.5mm forward and 0.75mm back. then tool 1 is locked... and safe.... tool1 is set and ready...

how can i done this in linux?!

the slot only marks tool1.
the locking over the pawl are 2 extra moves.

next thing is... how can i do a pyvcp that home the a axis in this process?

this is the only thing what is missed..
without a homed turret which is locked in tool 1 and tool 1 is set i cant go forward.

i dont know how to make this with the boxford toolchanger.comp.....

please help...


Please Log in or Create an account to join the conversation.

27 Oct 2022 06:19 #255164 by hitchhiker
Good morning!

yesterday.. after i wrote the last reply.. i decide to restart the toolchanger coding.

i wired all as a a axis...
the stepper and the lightbarrier.
then i played with some homing sequenzes.

i found out that all can work like in mach3.

i home the turret (a axis) then i go some steps forward and then go back.
turret is locked.

the slot in the disc marks the position of tool 1.
the forward and backward move is need to lock against the pawl.

its all by hand! no m6t1 etc.

when i now compile toolchanger.comp from the boxford turret comp i cant home because i get error... i read that the problem is hijacking the stepgen of axis a... dont understand why...


is it possible to home the a axis with a command over the mdi?

when i home the a axis like descriped above.. i close linux... compile the toolchanger.comp and add all to the .hal.. and i run linuxcnc with the manual homed turret to tool 1 all works perfect.

i need to link the manual homing together with the toolchange comp...

if i not home the turret but jog to the position tool1 locked ..again the complete toolchanger works correct.

thats why i ask if its possible to home the A axis when i dont have it in the traj/coordinates...

i see only x and z in my linuxcnc axis screen.

the stepgens linked the a axis only in the .hal.

thats why i asked if its possible to use a pyvcp button to home the turret and lock it and then set the actual tool to number 1.

please please help...i am realy near to my working mach3 setup. thanks :)

Please Log in or Create an account to join the conversation.

27 Oct 2022 12:34 #255182 by andypugh
There are three separate options:

boxford comp -> Doesn't really handle homing, it looks like it was meant to but the logic is missing. It could easily be added.

A-axis and G-code subroutine: Needs T command remap, will home normally but all the tool change logic needs to be converted to G-code commands.

carousel.comp -> Doesn't use an A-axis but drives the motor directly. Handles homing. Needs the latest (unreleased) version to use step counts as position feedback.

You need to pick one of these, but only one of these. Mix-and-match is just going to lead to frustration.

Please Log in or Create an account to join the conversation.

Time to create page: 0.390 seconds
Powered by Kunena Forum