TCP Issue with Shared Waypoint

I have an issue where it doesn’t seem that the TCP is updating and tracking properly.
I have a RobotIQ dual head gripper on and I have separate TCPs setup for each gripper, which the info came straight from RobotIQ. (G1 and G2). I have a third TCP setup for the tool flange which position is all zeroed out.

I have a simple program that uses a SET with no action to set the TCP.
I then have a Move J with a single way point.
This is duplicated 3 times and I only change the TCP in the SET command.
Waypoint 1 is shared between the 3 moves.

When I run the program, it doesn’t seem the robot is moving correctly. I would expect the active TCP to move to the WAYPOINT1 which is shared between the 3 moves but this doesn’t happen. The only time the move is correct is when I am using TCP for G1 as that is what I had active when I set the waypoint.

Am I doing something wrong? Or is there a setting somewhere that isn’t active?



When using multiple TCPs I STRONGLY advise you to never use the “Use Active TCP” option in the Move Node. Explicitly call out which TCP you want to use for that move.