diff --git a/y2022/vision/camera_definition.py b/y2022/vision/camera_definition.py
index 911418b..35b1161 100644
--- a/y2022/vision/camera_definition.py
+++ b/y2022/vision/camera_definition.py
@@ -116,14 +116,17 @@
             T = np.array([-10.25 * 0.0254, -5.0 * 0.0254, 27.5 * 0.0254])
     elif team_number == 9971:
         if pi_number == "pi1":
-            camera_yaw = 178.0 * np.pi / 180.0
-            T = np.array([0.0 * 0.0254, 8.5 * 0.0254, 34.0 * 0.0254])
+            camera_yaw = 180.0 * np.pi / 180.0
+            T = np.array([-9.5 * 0.0254, 3.25 * 0.0254, 35.5 * 0.0254])
         elif pi_number == "pi2":
             camera_yaw = 0.0
-            T = np.array([-9.0 * 0.0254, -3.5 * 0.0254, 35.5 * 0.0254])
+            T = np.array([-9.0 * 0.0254, -3.25 * 0.0254, 35.5 * 0.0254])
         elif pi_number == "pi3":
             camera_yaw = 90.0 * np.pi / 180.0
-            T = np.array([-8.0 * 0.0254, 3.0 * 0.0254, 32.0 * 0.0254])
+            T = np.array([-10.5 * 0.0254, -5.0 * 0.0254, 29.5 * 0.0254])
+        elif pi_number == "pi4":
+            camera_yaw = -90.0 * np.pi / 180.0
+            T = np.array([-10.5 * 0.0254, 5.0 * 0.0254, 28.0 * 0.0254])
     else:
         glog.fatal("Unknown team number for extrinsics")
 
