I'm having problems finding the right sort of joint for my shoulder connection. It is a flat surface on the side of the mech body and I need to create a joint with maximum movement rotating: up, down and to have a possible butterfly style movement.the joint will be above and behind my arm like an exoskeleton.
A 2 degree of freedom shoulder joint can be called a gimbal or pan-tilt. It can be modeled with a universal joint (aka U-joint).
Usually, the third degree of freedom to twist the arm can be added a little further down the arm with no loss of generality. Because the axis of rotation still intersects the other two.
But the human shoulder joint is actually much more complicated than just 3 DOF. It is what allows you to shrug.
You might be interested in the "Anthrobot" designs by Mark Roshiem. Specifically the Omni-Wrist III "wrist". (A wrist can also be used as a shoulder). He has many different versions of this joint mechanism. This one is driven by linear actuators which might suit your needs. These joint designs are nice because there is free space down the center of the joint where the axes intersect. This allows for cable routing or maybe a human arm.
He also has a few books on robot joint design which are very interesting. I highly recommend "Robot Evolution: The Development of Anthrobotics".