Rigging Pistons Mounted to Rotating Bases

Need to rig a piston where each half is mounted to a different mesh that rotates on different axis. With regular pistons this could be accomplished with Damped Tracks, but this won't be enough in this case.

When either Foot_main_bone_l or Back_toe_left_l rotate, Back_toe_piston_base_left and Back_toe_piston_upper_mount_left_l need to rotate to align the Back_toe_piston_upper/lower_left bones to align. The Example_pose demonstrates what the end goal of both halves of the piston aligning when the foot rotates.

When Damped track isn't enough, an IK chain can do the job:

In my example I added A2 to bridge between A1 and A3, and moved B3 and A3 to be perfectly aligned with their pistons.

Set every bone as connected parent of the previous bone in the chain.

Then add to A3 an IK chain of 3 bones targeting the head of B2, add to B3 an IK chain of 3 bones targeting the head of A3, select all 6 involved bones one by one and lock their IK rotations as needed:

A1: X and Z locked

A2: X,Y,Z locked

A3: no locks

B1: X and Z locked

B2: Y and Z locked

B3: no locks

• Did you align A3 and B3 to align in pose or edit mode? Commented May 24 at 1:36
• In edit mode, they need to be aligned in rest pose. Commented May 24 at 6:19
• Sorry for the late response, but for this step "Then add to A3 an IK chain of 3 bones targeting the head of B2", are you selecting A3 then B2 and using Shift + I (Add IK), or are you adding extra IK bones in the same position as B2? Commented May 27 at 21:34
• No extra bones, select B2, shift select A3 (A3 has to be the Active bone), press Shift I, change "Chain Lenght" value from 0 to 3. Commented May 28 at 6:47
• <img src="https://blend-exchange.com/embedImage.png?bid=QPW6W1KQ" /> Commented May 28 at 6:55