8:00 AM – 9:30 AM

We got to the pool at 9:50 AM. We were delayed because of an electrical issue causing the computer not to receive power. I had tested the robot last night and today morning and everything was working ok. After we put the capsule on for the first time, the issue came up. I spoke with Lilly over the phone and we discovered that the wires supplying power to the terminal block attached to the main bus had come loose. We put the wires back in and screwed them in tightly to resolve the issue. When transporting the robot to the pool, we partially broke the battery mount; the battery capsule is currently wobbly. We also screwed in the marker dropper cover with longer screws than usual since it was hard to do so with the short screws we were using.

9:50 AM – 10:30 AM

At the pool, we first put the robot in without the battery to check for leaks. We confirmed there were no leaks. We observed bubbles coming from underneath the camera – maybe the sonar mount? We checked the buoyancy, and it was okay; no tuning was required.

We tested the marker dropper. We found that the bottom screw on the cover blocked the hole for the marker dropper, so we removed it. The cover was secure with only the top two screws, so we think we can avoid puting a third screw in the bottom entirely to guarantee there will not be any blocks for the markers. We then dropped the marker a few times by sending commands manually through the Arduino IDE, and it went down fairly straight and quickly. During our testing, the 3D printed arm attached to the servo came off. We should consider attaching using a more secure method.

11:30 AM – 1:30 PM

In this session, we focused entirely on testing the yaw. We conducted numerous tests – some with controls enabled and the robot holding depth, some with controls enabled but Drew holding the robot steady (against the will of the thrusters), and some without controls enabled and Drew simply holding the robot steady at the corner of the pool or on the floor of the pool.

Here are our observations from the tests:

  • Yaw issue is definitely not fixed, in spite of the IMU config changes.
  • When controls is enabled and the robot is free to move as it wants, the robot slowly turns while the yaw reported by the IMU stays the same.
  • When controls is not enabled and the robot is held steady, the yaw drifts for the first few minutes – about 10-15 degrees – and then stabilizes.
  • We even tested yaw on land at the pool. We jostled the robot a bit in roll and pitch. The yaw then changed by several degrees, even though we didn’t change the yaw by any significant amount.
  • Yaw drifted because IMU’s Z angular velocity stayed positive more often than negative, or vice versa.

What we concluded from these results is that when the robot gets jostled, it creates yaw drift for the next few minutes. If the robot is then held steady, the yaw stabilizes. However, when running with controls, even if PID is well-tuned, the robot will constantly jostle itself, leading to a continuous accumulation of yaw error.

Other Notes

  • We’ve recorded several bag files of our IMU tests to analyze later or send data to VectorNav.
  • PID roll, pitch, and Z oscillate so they could use some tuning. Didn’t test X or Y.
  • Humidity stayed between 65-70 during the second session. Temperature slowly climbed from 82F to 95F.
  • After the pool test, we opened the capsule and did not observe any water inside it.


  • No leaks at all. The epoxy on the old DVL port seems to have fixed the leak issue.
  • Buoyancy is good.
  • Marker dropper works and drops straight.
  • Recorded large amount of yaw data.


  • Need new battery mount.
  • Double-check nail polish on sonar mount.
  • Need more secure attachment method for servo arm 3D print.
  • Yaw issue is persistent. We should try recalibrating the IMU.