ROVolution Blog

T200 Solution

A major hurdle we encountered when conducting our thrust test for the T200s was that motors were inexplicably stalling. Specifically, 3 out of our 8 thrusters were showing major issues with stalling and proved to be completely unreliable. Upon some further investigation and troubleshooting, we found that the problem was very unusual for three reasons:

  1. Thrusters were stalling regardless of their age/corrosion. A brand new thruster was also stalling
  2. Swapping out the ESCs did not make a difference and the PWM signals coming from the Raspberry Pi Pico were perfect
  3. Sometimes thrusters wouldn’t work at a specific PWM value but would at others. Specifically, turning thrusters in reverse seemed to be a challenge

I decided to consult the Blue Robotics forums to see if I could find a solution. I got a prompt reply from Blue Robotics engineer Tony White who suggested that the issue was most likely in the wiring of the electronics. He advised me to check that I had a common ground between my Raspberry Pi Pico and the ESC and T200 thruster, as well as informing me that long alligator clips could be creating an issue in my power supply. Upon fixing both of these things, it seemed to be the alligator clips that were causing the issue. When creating a direct connection between the ESC and T200 phase wires, the issue disappeared for the new thruster. However, the older thrusters were still having some slight stalling, and I believe this is due to the immense corrosion in the phase wires. I tried stripping the wires down as much as I could, but at least one of them would remain corroded even close to the base. We will need to strip the wires of these faulty thrusters all the way down until the corrosion is gone and extend all the wires to the length of one metre by soldering on fresh 18AWG cable.

Blog image
aa

Electronics Tray

With the frame of the ROV constructed, the next key component is the brains of the ROV, the electronics. The electronics of the ROVolution ROV are housed in the BlueRobotics capsule enclosure. The electronics of course cannot just be placed into the capsule, they must rest on an electronics tray.

This week, I have been working closely with Konstantin, Head Electrical Engineer, to design the tray for the electronics. As it stands, we have successfully created a CAD model of the tray that attaches directly to the flange. This model has also been cut and tested to ensure it fits snugly into the capsule.

The next step is to create holes for the electrical components to fit onto. The tray must be able to hold the following components:

  • Raspberry Pi
  • Pi - Hat
  • 8 ESCs for T200s
  • Power Board
  • Gripper Board
  • Linear Actuator Driver
  • pH Sensor Board

Most of the 3D CAD Models of these components have been created by Konstantin. Whilst he finalizes the final pieces, I will be working on implementing them in a strategic manner onto the electronics tray to ensure that all the pieces fit whilst keeping wire management in mind. Once the positioning has been finalized, I can add extrusions onto the design to allow for points of attachment. Finally, these cuts will be applied to the actual real-life component which will help finalize the design.

aa

T200 Thrust Test Setup

Throughout the year, I emphasized to our main software engineer, Ahmed, how important it was for us to be able to stabilize the ROV with PID as most high-scoring teams on the product demonstration had something like that, and it makes sense for many precision tasks that came out. However, we already came across multiple problems. A mentor that has a PhD in ROVs came up to us telling us how our max current draw is extremely low and it was important to assume maximum thrust from all thrusters to divide the current draw for each. We later on asked other teams on the Discord server, and they disagreed, saying that we should assume that there is no limit until it exceeds the limit, which it should then split the current (probably because this is a pool competition rather than an actual ROV). I’m not too sure about the specifics, but I believe it was also important to know the general thrust output of each thruster based on the PWM signal in case they were different. I watched a video from the Brick Experiment Channel that has a clever solution to measuring the force applied. Thus, we created a setup like shown below, where we used lego to connect a 3D printed part that is bolted on to the T200. There were a few problems with this setup that we are planning on improving. At the start, the T200 didn’t run because of problems with the code. Then, when it ran, it was stalling (like sometimes twitching, sometimes moving), but when we rotated it the other way, it spun normally. So, Omar kickstarted the T200 by moving it and it spun normally. Also, the lego extends out from the scale and is connected by tape, the scale tilts due to the T200.

Thus, we will improve the setup by adding weights on one side and redo everything.

Blog image
Blog image
Blog image

Sealing the Float

These days, I have been working on sealing and joining the gripper and the float. So far, the o-ring seal has been successful, which shouldn’t be surprising but is definitely surprising to me. For the float flange, I designed it so that there would be a flat surface (the acrylic) and it compresses the o-ring towards a resin printed groove. From what I read, the optimal compression should be a 25% compression, and allowing DeepSeek to do all the math (ID=88mm, OD=95mm, CS=3.5mm), the groove depth should be around 2.5 mm, and the groove width should be around 4 mm. However, due to the lack of experience, I made the groove depth more shallow at 2 mm with a max compression of 42.9%. This way we could always increase the pressure in case it doesn’t work but it doesn’t go above 42.9% to avoid damaging the o-ring further (in case a team member is assigned with assembling the float).

Yesterday, I finished sealing the flange with epoxy and the nitrile rubber o-rings arrived, so Omar and I added the o-rings and compressed the o-ring with a few bolts (we didn’t have enough hex nuts, so we couldn’t fill the 12 holes, but rather did around 5 that were evenly spaced, but the final should probably have all 12 to distribute the pressure on the o-ring). Because Omar didn’t understand how the o-rings worked, they didn’t leave a gap in some areas of the face seal (and the 3mm acrylic kind of bends). This may cause the o-ring to degrade. After some DeepSeek calculations, the gap between the flanges should be around 0.5 mm to 1 mm.

Blog image
aa

Regarding the Recent Procedural Issues

This text is summarized by ChatGPT and accounts the recent procedural issues with a significant impact on our progress.

Chronological Documentation of Events

At the beginning of the academic year in September 2024, the MATE ROV competition team, known as ROVolution, was formed through a structured process. The team operated under the mentorship of a faculty advisor, with members contributing approximately 20 hours per week to the project. Team formation followed a merit-based selection procedure that included formal sign-ups through SchoolsBuddy during designated cycles, followed by interviews to assess candidate qualifications and team fit.

The team established clear operational protocols from the outset. Original members who have put in significant time and effort were held to strict procedural standards, including mandatory SchoolsBuddy registration. The faculty advisor emphasized compliance with these protocols, threatening to remove members who failed to follow proper registration procedures or attend Wednesday meetings. This created an understanding that team membership was contingent upon adherence to established procedures.

The team progressed significantly with their ROV project throughout the first two seasons (cycles), developing team dynamics based on shared commitment and workload distribution. Members invested substantial effort despite the challenges of balancing their IB coursework with competition preparations. By March 2025, the team was approaching project completion, having established effective workflows and responsibilities among existing members.

In March 2025, during Season 3 of the competition cycle, tensions emerged when the faculty advisor instructed the team to interview potential new members. The team conducted these interviews as requested, identifying one candidate as suitable while determining that others, including a late-applying student, would not contribute effectively to the team at this advanced stage of project development.

Despite the team's assessment, the faculty advisor unilaterally decided to add the late-applying student to the team. She informed the student of his acceptance before consulting with the team and subsequently mandated that the team accept him. When team members questioned this decision, the faculty advisor justified it by claiming that the student had been "unlucky" during Season 1 sign-ups due to "full teams" and deserved a chance. However, upon direct inquiry with the student, team members discovered he had not actually signed up during Season 1 but had instead decided to join in Season 3 after much of the project work had been completed.

This created significant frustration among team members who had been investing substantial time and effort since the beginning of the year. The team already faced challenges with workload distribution, including dealing with an existing member who contributed minimally. They expressed concern that adding another late-entry member would further complicate their established dynamics and create additional "free-rider" problems that would demoralize the team and reduce overall productivity.

As tensions escalated, team members expressed their frustrations in private group chats. These discussions included some inappropriate language, threats to remove their contributions to the project in order to force the student's removal, plans to gather evidence, and suggestions to disassociate from the school program. The conversations also contained characterizations of the student as "unsigma" and claims that he was "good at glazing teachers," implying he gained favor through flattery rather than merit. Additionally, there were suggestions that the faculty advisor had engaged in "backdooring" or circumventing proper procedures to favor certain students.

These private discussions did not include bigotry or direct harassment, but did contain elements that could be interpreted as creating an unwelcoming environment, indirect defamation, and threats of self-sabotage.

One team member, who maintained a friendship with the student, attempted to resolve the growing tension by directly confronting the student about the problem. During this confrontation, the team member showed the student select portions of these private conversations—specifically dialogues about potential self-sabotage and expressions that could be perceived as hatred toward the student. The team member advised the student to voluntarily leave the team in light of these underlying tensions.

Importantly, these private conversations were not initially leaked completely to the administration. The student had given a glimpse of the content of the conversation. The administration became aware of their full content only after the first mandatory meeting, which explains the confusion during that initial meeting as the teachers did not yet have specific evidence of problematic communications.

Following the confrontation between the team member and the student, the faculty advisor organized a mandatory meeting that included the Principal and other faculty members and administration. Team members were pulled from their classes without prior notice to attend this meeting, denying them any opportunity to prepare responses.

During this initial meeting, the faculty advisor focused primarily on issues of inclusivity rather than specific accusations of misconduct. She presented her interpretation that the team had violated the school's inclusivity principles by resisting the student's addition to the team. She referenced the student handbook's definition of inclusivity, suggesting it required unconditional acceptance of all interested students. The Principal, lacking complete context of the situation, lectured the students on school values based on the limited information available to him.

The atmosphere of the meeting was intimidating, designed to pressure the team into confessing to exclusionary behavior rather than facilitating an open discussion about the circumstances. The administration did not present specific evidence of harassment or bullying during this meeting, as they had not yet received the full chat logs. Instead, they made general assertions about the team's unwelcoming attitudes toward new members.

At the conclusion of this first meeting, the administration requested evidence of team communications, after which they received the complete chat logs containing the problematic statements.

After receiving and reviewing the chat evidence, the faculty advisor organized a session with the team to instruct them on preparing written confessions or defenses. This follow-up meeting, unfortunately, failed to provide the clarity or resolution team members had hoped for.

The meeting primarily consisted of vague accusations without substantive evidence. Faculty supervisors made references to "harassment," "bullying," and violations of "inclusivity" principles without providing specific examples or clear definitions of how these terms applied to the team's actions. This created a challenging environment where team members were expected to defend themselves against undefined allegations.

One faculty member communicated that an important lesson from this situation was that "the world is an unfair place" and that accepting new team members at a supervisor's direction is totally normal. Team members found this messaging contradictory to the school's stated values around inclusivity and creating welcoming environments, as it essentially normalized hierarchical decisions that could undermine team cohesion.

When asked about the late-applying student's previous expression of interest in Season 1, the faculty advisor strongly affrimed that he had expressed interest during Season 1 or even the previous year during prop building. This was confusing and formal registration through SchoolsBuddy during Season 1 remains unverified. Some team members noted that the student may have expressed interest but from previous conversations with him, it was unlikely that he had signed up formally on Schools Buddy, as was required by many members.

Faculty administration defined "inclusivity" as requiring the unconditional acceptance of all interested students regardless of timing, procedures, or skill level. When team members attempted to draw parallels to other competitive scenarios (such as joining a sports team midseason), faculty redirected the conversation to focus on the team's alleged misconduct rather than addressing the substantive question about reasonable boundaries for inclusion in competitive teams.

When team members attempted to further seek clarification about the specific nature of the accusations or the administration's perspective on the situation, they were silenced or redirected. The faculty advisor stated that the meeting was only about the student's perspective. However, this approach created a situation where team members felt they were defending against ambiguous charges with no opportunity to understand the specific concerns being raised.

The team was required to submit written defenses with very little time to prepare, which led to significant stress and confusion. They now had to respond to specific accusations based on private communications that they had not anticipated becoming part of the disciplinary process. Moreover, only select lines from their written defenses or confessions could be used against them, rather than considering the full context of the defense.

A subsequent meeting was held with the administration, during which the team would potentially face severe consequences for their actions. Prior to this meeting, at approximately 9:00 AM, an email was sent to team members' parents informing them of potential suspension and other disciplinary actions. Parents were given until 4:00 PM the same day (a workday) to raise any objections, a timeframe that many parents found difficult to accommodate due to professional obligations.

During this meeting, the faculty member that manages extracurricular activities stated that he would not be hearing any counterargument or clarification as the team's opinion had already been provided in the form of the essay (the team members were silenced when attempting to present their perspective). He expressed that the content of the leaked messages was so inappropriate he "doesn't want to say the word as a woman is in the room." He characterized the team's behavior as "collusion to exclude" the student, which he deemed "absurd." He emphasized that participation in extracurricular activities was "a given privilege" rather than a right, and that students lacked the authority to determine team composition.

The faculty member cited specific sections from the student handbook, stating that he had identified at least two Category Two violations and suggesting that some members' behavior constituted Category Three misconduct--the most serious level that could result in suspension or expulsion. He explicitly threatened suspension as a potential consequence.

The faculty member repeatedly asserted that MATE ROV was "not a competition but rather for everyone to learn," despite the team's understanding that they were preparing for a competitive event with regional qualifications at stake. He further explained that TKS was a department of KAUST, implying that any dissociation from TKS would constitute a dissociation from KAUST itself. When discussing the team's previous selection process, he dismissed the importance of the interviews we had conducted, stating that we were "not an independent business" and therefore shouldn't have autonomy over member selection. He also claimed that any sponsorships we had secured were obtained through the school's connections rather than through the team's own efforts.

The faculty advisor then outlined a plan for "reuniting the team," which included mandating the team to hire three additional members with specific diversity requirements. She then spoke about how the team was "in shambles" and implied that the situation must have affected all members significantly. When pressed about the diversity requirements for new hires, she offered contradictory guidance. She initially stated that while she personally disliked being viewed as a "diversity hire," neutral hiring processes would naturally achieve diversity. However, she then pivoted to argue that we should prioritize diversity over skill in the team's selection, suggesting that any justification based on merit alone indicated bias, particularly toward Grade 11 boys.

She specifically mandated that we must hire at least one female student to demonstrate inclusivity, adding that all three new members could be girls, but not necessarily boys since the team already included male students. When team members questioned this approach further, she reiterated that participation was a "privilege" and that we needed to demonstrate inclusive values rather than focusing on qualifications. Before concluding, she instructed that details of this disciplinary situation were not to be discussed outside the meeting.

The team expressed confusion over accusations of bias due to their consistent commitment to neutrality in member selection across genders, races, and grade levels. They have actively recruited female participants and included students from various grades through a structured interview process, maintaining that expertise remains their primary consideration. The limited participation of girls and students from certain grade levels stems not from discrimination but from individual preferences—some prioritize a team's competence while others seek a more comfortable environment working alongside friends. The team believes internal decisions reflect natural student autonomy in choosing teams aligned with personal goals rather than bias. Faculty members never explicitly defined the purpose of MateROV. Thus, the team thought that it was to compete and win rather than to teach due to the requirement to compete to qualify for the internationals competition and the faculty advisor's emphasis on the importance of the interview process and behavioral expectations.

Several parents of the students engaged in discussions with the faculty advisor. One parent, in particular, expressed that the student's actions were entirely unjustified. Although she had accepted the meeting invitation, she claimed to have a 'test' and left abruptly during the conversation. In separate discussions with other parents, she also stated that this would be the final consequence the students would face.

Shortly after these disciplinary meetings, a further conflict arose regarding a beach cleanup event that had been planned approximately one month in advance before the conflict. The team had organized this community service initiative with multiple supervisors, including the faculty advisor, Boy Scout leaders trained in first aid, and appropriate safety equipment including first aid kits, extra water, sunscreen, trash bags, and gloves.

The team promoted the event on Instagram to encourage broader community participation. The faculty advisor expressed strong disapproval of this social media promotion, citing concerns about liability and supervision. She characterized the cleanup as a "school-related activity" requiring formal registration and approval processes, despite the team's understanding that it was a student-led community service initiative similar to other Service in Action activities that regularly occurred at the school.

The faculty advisor insisted on receiving completed registration forms from all participants, which proved difficult to obtain on short notice. When team members failed to meet with her during their 30-minute lunch period (which was particularly challenging during Ramadan when many students attended mosque), the faculty advisor directly contacted the Boy Scout supervisor and unilaterally canceled the beach cleanup event.

This action further reinforced the team's belief that they were being subjected to double standards and punitive measures that went far beyond the original dispute over team membership—much like when she barred them from using sponsorship funds to purchase ROV parts due to alleged non-compliance with disciplinary protocols.

Underlying Systemic Issues Throughout the Conflict

Throughout these events, several systemic issues emerged that complicated the situation:

Misrepresentation and Misinformation
The faculty advisor had apparently led the student to believe he had been "selected by the ROVolution team" when in fact he was added unilaterally by the faculty advisor herself. This misrepresentation created unnecessary animosity between the student and the team, as team members perceived the student as having circumvented established procedures rather than understanding he had been misled about the selection process.

Inconsistent Application of Rules
The team observed significant inconsistencies in how rules and policies were applied. Original team members were threatened with removal for procedural violations like missing SchoolsBuddy registration, while the student faced no consequences for bypassing the Season 1 application process entirely. The team was held to strict standards regarding meeting attendance and registration protocols, while exceptions were made selectively for other students.

Power Imbalance and Intimidation
Administrative meetings were conducted in ways that maximized intimidation rather than fostering constructive dialogue. The team was consistently denied adequate preparation time, confronted with accusations that evolved as new evidence emerged, threatened with serious disciplinary consequences including suspension, and silenced when attempting to seek clarification or present alternative perspectives.

Contradictory Directives
The team received contradictory guidance throughout the conflict. the faculty advisor simultaneously criticized "diversity hires" as contrary to merit while mandating hiring decisions based explicitly on gender and grade level. The team was told MATE ROV was "not a competition" despite its competitive structure with regional qualifications. They were instructed to conduct interviews and make membership decisions, then overruled and criticized for the decisions they made.

Misapplication of School Policies
School policy on inclusivity was arguably misinterpreted. The student handbook defined inclusivity as providing "equitable access to opportunities and resources," not unconditional acceptance regardless of qualifications or timing. The team's interview-based selection process was consistent with equitable access, as it applied the same standards to all applicants.

Similarly, accusations of Category Three misconduct appeared disproportionate to the actual behaviors in question. While the private communications certainly contained inappropriate language and problematic suggestions, they did not clearly constitute the "persistent pattern of significantly harming or holding back the learning of others" that the handbook identified as Category Three misconduct. The chat evidence revealed frustration, poor judgment, and inappropriate planning, but lacked elements of bigotry or direct harassment that would typically warrant the most severe disciplinary measures.

Aftermath

Following these events, the student ultimately joined a Grade 9 team instead of the original ROVolution team. According to reports from the Grade 9 team, the student showed limited engagement with MATE ROV activities, often playing Minecraft during meeting times rather than contributing to the project. This raised questions about whether the intense conflict had been necessary, given the student's apparent level of interest in the competition. In fact, the faculty advisor had another discussion with the student and a few team members on the situation. When asked how he felt, he said "he doesn't care" and it shouldn't be taken so far.

Meanwhile, the ROVolution team learned a difficult lesson about institutional power dynamics and the consequences of expressing discontent, even in private communications. The experience left them with the understanding that maintaining positive relationships with authority figures may sometimes require subordinating their own perspectives on fairness and procedural consistency—a lesson about organizational politics that came at significant emotional cost. After a reflection, the team acknowledged that the problem would have been solved quickly by complying to the faculty advisor rather than going through a crucible and a kafkaesque battle of perserving one's ego.

The team's subsequent activities, including community service initiatives, faced heightened scrutiny and additional administrative barriers, suggesting that the repercussions of the conflict extended beyond the immediate issue of team membership to affect all aspects of the team's operations and community engagement.

aa

Figuring out how use CURA to print TPU

As a part of the manufacturing team, one of the biggest headaches we had was figuring out how to use the Ultimaker Printers to print out our TPU springs without it completely failing. And looking back, I’d say it;s because we weren’t properly trained on them; we technically did but there's so much to learn about these printers (such as the dual extrusion, the printer cores, bed leveling, etc.), we simply didn’t have enough time to get through all of it, and at the time it seemed pretty unnecessary.

The first issue that I had to overcome was the bed leveling. Often the prints wouldn’t adhere to the print bed, and ultimately fail, which was due to an issue with the machine itself, hence the PCL staff helped us fix that. The next issue was printer core in the Ultimaker printers. The printer core refers to the extruder used for filaments, and each specific filament has their own preferred printer core, which after a lot of trial and error with the PCL staff, we learnt that the optimum for TPU was AA 0.4. Finally the final issue I had to overcome was dual extrusion; essentially when printing complex shapes such as our springs, there needs to be a lot of support, which TPU is not good for, hence I had to learn to configure the printer such that it would print supports in another filament (such as Breakaway white), to ensure we had a clean print. With all of them obstacles sorted out, I now hope that 3D printing on the Ultimaker will be significantly easier.

aa

HDPE Cutting

Over the course of the past 2 weeks, we have unfortunately suffered from delays in the manufacturing process. These delays came with the difficulty in cutting one of our key frame components; the HDPE side plates. These side plates are simply a 2D cut onto 3D material. Our first instinct was to lasercut the material as this was the most efficient and precise method. Unfortunately, after extensive research, we learned that HDPE releases toxic fumes that are dangerous for both the operator of the laser cutter and the laser cutter exhaust mechanism itself. Our next idea was to use the waterjets available at HFL to cut the HDPE. These were ideal as they operated similarly to laser cutters but used high pressure jets of water to cut through the material. In this way, no toxic fumes would have been released. Unfortunately, the water jets that were available were under maintenance due to technical errors in their water output. We then met with Woodrow and Ali to discuss how we could possibly cut the HDPE side plates. They suggested using the Woodpecker CNC machine available at the IFL. This also operated similarly to a laser cutter but was more manual and operated using a drill bit. To help us with this we acquired the help of Jamaal at the IFL. Jamaal helped us to develop our Fusion 360 design using the manufacturing tab to create a suitable file for the CNC to read. We first prototyped this design on some spare plywood of 8mm thickness at IFL. The major issues we ran into are listed below:

  • Z axis starting position was too low and required us to manually adjust the Gcode to manually set the Z starting position
  • Different sized holes on the HDPE side plate file meant that we had to continuously change drill bits throughout the cutting process
  • HDPE plate size was almost the exact dimension of the HDPE material available. This forced us to center our design on the corner of the material to leave ourselves as much clearance as possible

Today as we were cutting the HDPE side plate, we realized we had made a huge mistake. We accidentally centered the cut file 4 mm to the right of the corner of the HDPE material. As a result, every bolt hole was adjusted 4mm to the right. This could have caused a huge problem as the HDPE side plate would not have fit on the available material and would also not have connected properly to the Aluminium. To combat this, we simply recentered the design and cut the bolt holes again. We ensured to adjust any dimensions to ensure that no holes overlapped. As a result, one of the HDPE side plates has two sets of bolt holes. This might end up working in our favor as it provides modularity which can be used for ballast or even attachment of tooling. Additionally, the extra set of holes serve as a powerful reminder of the struggles and challenges we had to overcome to get to where we are as a team today. This is a powerful symbol that our ROV incorporates.

aa

Waffling about TPU printed spring

I received the TPU prints (finally!). Apparently the manufacturing team had a huge difficulty in printing in TPU. They printed with the wrong extruders at PCL multiple times, so it took a few weeks for the parts to come. In fact, they even printed my part in durable resin once, but I thought the material was a bit too stiff.

The TPU print was very bad quality since Shiva chose the wrong support material, but it helped me recognize the problems and potential solutions. I explained everything in the 7-minute yap session here because Ahmed wanted to know what's going on (also something I forgot to mention: the first design was actually inspired by a hinge compliant mechanism I saw before where it is a circle, then I realized the shape is basically the same shape as when the spring is being compressed). As stated in the video, I’m not a professional mechanical engineer and compliant mechanisms are far beyond what I can do, so most of the stuff is just either yap or just pure instinct (hopefully the design works though).

aa

Frame Design

Although the CAD model of the frame design was completed a while ago, I wanted to talk about the design choices. Because we don’t have a lot of experience with the frame, I wanted to make it as structurally sound as possible. Despite the functionality, I ruled out Atisam’s unique design and opted for something that has been done before. I read through the technical documentation of many teams mainly from the explorers class and I found Callibro’s, CityU’s, and Blue Robotics’ designs appealing due to their simplicity, which includes two planes made of aluminum or HDPE with HDPE side plates. The top plane is for the electronic capsule and motors, which were in a typical 6 or 8 motor configuration. We chose 8 motors for 6 degrees of freedom, auto stabilisation, and the ability to pitch for the gripper and other tooling (especially as our gripper is extremely long and it would be impractical to tilt it). To save space, Ahmed wanted to build PCBs and a custom watertight box for electronics similar to many of the teams, but I also ruled this out because I was scared of waterproofing due to inexperience. Instead, we used the watertight capsule by Blue Robotics and found a method of placing it in a way that reduces space by bending the aluminum as seen in the images below, which was provided by Shiva from a meeting with a PCL staff.

For the bottom plate, we wanted to ensure structural stability but also decrease the mass similar to Callibro’s SeaHawk. I recalled from a video that Voronoi patterns were used in nature and they were rather strong. We used this Voronoi generator with specific coordinates from the json file to create a pattern to be used for our ROV. Additionally, we had a modular tooling board to fit different tools with bolts.

Finally, I added as many bolt holes as possible to ensure modularity in case we needed something.

Here is the step file. Here are videos of the manufacturing team laser cutting aluminum and CNC cutting

Blog image
Blog image
Blog image
Blog image
Blog image
aa

Float Design

The float design has been one of my main projects in MateROV since last year. Last year, we were very lost as we had no prior experience or help from others. We had no idea how a buoyancy engine worked, and articles such as the wikipedia article used methods that seemed impractical. After reading the preview mission task that required the measurement of depth, our team came up with gyro, laser pointers, and sonar. Thankfully, we found a guide from instructables and decided to use syringes to modify the buoyancy. Our float consisted mainly of scrap pieces lying around, such as syringes, stepper motors that were scavenged from defunct 3D printers, and a long bolt. Additionally, we were able to 3D print parts in the TKS design room and our mentor bought us 3.5 inch PVC. The design had an electronics compartment and a buoyancy engine compartment (my friend advised me to separate the electronics from the buoyancy engine even though we didn’t know proper methods of waterproofing, so the two compartments would inevitably be stuck together with epoxy). Because the float PVC was not transparent, it was impossible to tell whether the inside was waterproofed, and we had to sometimes go by luck (for example pouring in epoxy to waterproof the syringes). The syringes were extremely difficult to pull and lubricants such as WD40 somehow made it less smooth. Thus, we had to scrap our first float because the syringes were attached to the float. Additionally, because we were using a long bolt, it was extremely difficult to couple the bolt head to the stepper motor. We messed up the coupler a few times and hours before the regional competition, we had to EpoPutty the stepper motor directly to the bolt, where it's stuck to this day (a lot of things were done extremely last minute. For example, the electric engineer literally soldered the fuse in parallel at 3am before the regional competition). Finally, we noticed that the stepper motor had absolutely no torque at all (e.g if you gently tapped the stepper motor it would’ve stopped) and even if we minimized the errors there would be no way for the float to work. Also, this year we found out that the pressure sensor we bought from Amazon didn’t work.

This year, I used a similar mechanism but addressed all the issues:
- The entire float is able to be taken out like an electronics tray in a capsule while having proper O-ring face seals
- To decrease loss in efficiency, I used structural beams made of stainless steel to align the syringes with the stepper motor
- Used bolts from the stepper motor instead of holding it with a 3D print
- Bought a stepper motor that has relatively high torque, lead screw set that was of high quality, and a fairly transparent PVC pipe
- Expanded the hole of the syringe to decrease the force (because I am using tubing, I needed the outer circle of the syringe to make a connection. Thus, I expanded the size of the entrance by removing the middle part of the syringe. The method used was inspired by a tale I heard about a person using needles to drill holes into postage stamps to make it easier to rip. I did the same using a hammer, a nail, and pliers to yoink the part out)
- Created a more accurate way of holding the syringe heads with 3D prints instead of drilling into the it by hand
- Used tubing rather than directly epoxy the float, which will probably allow for syringe removal if necessary
- Added a tonne of space for the electronics at the top
- Using a universal coupler for slight alignment issues (we haven’t tested this yet)

Although it may not be the final version, here is the STEP file.

Right now, I’m waiting for the manufacturing team to finish the prints and for the o-rings to arrive. I’m very excited to turn the theoretical CAD files into reality! In the future, I would like to use a compact and more reliable mechanism to push and pull syringes as shown in this video by the Lego Experiment Channel. I may also experiment with other methods shown in another video.

aa

Control System Communication Protocols

One of the primary requirements of our control system was communication between a Raspberry Pi and the Raspberry Pi Pico. The reason we decided to use a Raspberry Pi along with a separate microcontroller was that there were insufficient hardware PWM (Pulse Width Modulation) channels on the Raspberry Pi to control all the servos and thrusters on the ROV along with ADC (Analog to Digital Conversion) for the pH sensor. The Pico would offer a compact and efficient solution to the lack of hardware control and take some processing load off of the Raspberry Pi, which would already handle 4-5 camera inputs and control telemetry from the surface laptop.

Initially, I decided on the I2C protocol for communication between the Pi and the Pico as it had the highest data rate of the ones on the Pico. However, I noticed that the language I was programming the pico in, Micropython, did not support I2C slave mode. This was an issue because the I2C protocol requires a controller and a peripheral, and setting the Raspberry Pi as a peripheral device also proved challenging. Thus, I decided to rewrite my Pico code in C++ using the Raspberry Pi Pico SDK. Despite setting up slave mode on the Pico with an interrupt handler, I could not get this connection to work. I used the same processes as the various examples I saw online.

Thus, I took an alternative approach and decided to use the UART communication protocol. I got this working much faster and resolved the data transfer issues quickly.

aa