Clearly something was wrong with that flight. Even pretake-off you can already see an unbalance. This problem is critical enough to where the drone completely flips over without actually leaving land. To attempt to solve this problem I reconnected the ESC wires and labeled each motor and its corresponding ESC. Hopefully for more organization in the future, the wires will be easier to follow. Turned out, most of the wires were in the wrong spot on the PixHawk. Oops.. Correctly wiring it back together fixed the problem entirely.
The position hold did not work if flipped in mid flight. For some reason the drone would begin to roll towards the right. We tried to let it go and hope it would stop.. (SPOILER). It didn't stop, but thankfully in the "Position Hold" mode could be overridden by the manual controls. What did work, was using the flight mode before take off. Flip the switch, THEN take off. It held perfectly. (image: no hands on the transmitter, while the drone hovered, holding its position)
The other flight mode I tested was RTL, this would make the drone stop its mission, hover over the takeoff location, and carefully landed. It worked smoothly.
There were three different missions tested this week after the "general flight" issue was relieved. One was a simple mission that flew to four waypoints (like a path it must follow) around the football field. After that worked I added in something a little different. I added a land feature, following with a delay, and then a takeoff to continue to the next way point. This would represent a sampling sequence. Land and hold in the water, delay to run the pump and valve, and then takeoff. It worked (for the most part). The only difference would be the altitude. What did not work in this sequence was the delay. The 20 second delay once landed, was only a 2 second delay (at most). The takeoff was almost immediate once landed. I tried to decrease the time (seconds) by 5. For some reason the delay was longer. To account for the issue I tried to use ArduPilot (Mission Planner) instead of QGroundControl.
This mission would run the Land, Delay, and Takeoff sequence twice, just running from a new program. It did not work. The delay was too long. By then, the drone had disabled itself. We tried to continue the mission by setting the command through Mission Planner, but the drone re-homed. I jumped to the "RTL" switch without realizing that the waypoints were the same. Although I ruined the mission, something new was discovered. The "RTL" switch could override a mission. I feel like I discovered a hidden jewel. I'm glad I was quick to flip that switch.
After many fails, "pit stops," delay (issues), and more, the year has finally come to a close. I am not done with this project. I promised to myself I would finalize the Ala Wai Drone, and I will. I have a lot of work to be done: more testing with the GPS (maybe I create a dock that can change heights to relatively match the altitude of the tide), a better float solution (while still remaining more professional that a pool noodle), and have an autonomously working water sampling drone (possibly from a dock - just a random idea). I plan to work on it over the summer anytime I can. I will also be attempting to create a swerve pod as a summer project as well. This is not the end, it will be finished and polished into a final project whether it is done over summer or when I graduate.
As a side note ~ I will be presenting this at the EdTech Conference Tuesday, June 5.