Techniques for providing singularity escape and avoidance are disclosed. In one embodiment, a method for providing control moment gyroscope (CMG) attitude control singularity escape includes calculating a Jacobian A of a set of control equations, calculating a measure of closeness to a singularity, and comparing the calculated closeness to a threshold value, when the calculated closeness is less than or equal to the threshold value, recalculating the Jacobian A. Recalculating may include determining a new direction of virtual misalignment of β and γ, recalculating the Jacobian inputting the new direction of the virtual misalignment, recalculating the measure of closeness to a singularity, and comparing the measure of closeness to the threshold value. Further, the method may include calculating a gimbal rate command if the of closeness is greater than the threshold value and generating a torque from the gimbal rate command to control the attitude of a satellite.