Lots of ways to do it. If its an option, might consider replacing the Geneva mechanism with a servo to rotate the carousel. Then you just command that axis to a position for each tool and you will know what position it is in because you have encoder feed back. Calculate the steps per so one unit in the axis is on tool slot. Tool 1, G0 C1.000, tool 2 G0 C2.000, etc. Can home to the index pulse of encoder, do an offset of that to line with tool slot, much faster than Geneva mechanism, etc. lots of benefits.