Our second season did not have a promising start. We started our season pretty late and we did not have a plan on what we were going to do. While building our robot, we heavily relied on trial and error. Consequently, this did not work because in our first competition we placed third to last. Although we were disheartened with this result, we were determined to improve and perform better in the next tournament. After the tournament, we discussed what went well and what went wrong in the tournament. Using that information, we were able to create a plan for the next few months. We designed mechanisms on our robot using CAD beforehand which helped greatly since we were able to efficiently order the parts and build the mechanisms. We also spent a week testing our robot and doing driver practice. Our drivers were able to perform well in the competition due to their extensive practice. However, due to some unfortunate mistakes, we were not able to advance into the semi-finals. Nevertheless, we quickly prepared for our last competition. However, we had another stroke of bad luck. It seems we had not registered for the last competition. Thus our season was brought to an abrupt end.

The beginning of the season

We started off the season pretty late, but that did not stop us. We watched the FTC Video over and over again and broke down the video together as a team. We sketched out our ideas on a chalkboard and we started organizing all of our parts from the last season and put them into drawer bins, so we stay organized throughout the season.


We used Android Studio to code our robot for the season. Along the season we didn't have issues coding, however, the hardware did not work in compliance with the code. We coded the 4 mecanum wheels, Arm, linear slide, Compliant Wheels, and the many servos! We were new to Mecanum Wheels, so we took some time in coding and understanding/testing the code out for those wheels. We also used Gyro in the Robot during autonomous so the robot could run smoothly during the season. Overall the software side of this season was working out for us, but we still ran into small issues during the competition.

Build for the season

Our build started with a basic chassis and used motors which we directly drove to power the wheels. We then switched to mecanum wheels which we still directly drove. After realising direct driving the wheels actually harms the motors, we attempted to power the wheels using the chain and sprocket. We had a lot of trouble with this so we switched to a belt and pulley which created more space on our robot to keep mechanisms. We also had a lot of trouble with space on our robot. We needed the space on top of our robot because that was where the skystones would go through. To solve this problem, we used polycarbonate side plates to attach the REV expansion hub. Another ingenious idea we had was our slapper. We noticed the compliant wheels would not intake the skystone all the way into our robot so we designed a slapper to push the stone to the desired place once the compliant wheels had intaked the stone. Also, we had troubles with the compliant wheel adapter because it kept on slipping off so we used super glue to stop the wheels from coming off. We had issues with the materials that should be used for the ramp. For example, we have tried using cardboard and polycarbonate which wasn’t sturdy or creating friction once the robot was moving. In the end we used a metal plate because it was the most sturdy option we had.

Initial Robot

We created a simple robot for our first competition. The robot had the ability to scan the blocks and detect the one with the image and was able to pull the block with the hook arm 50% of the time. The arm was also able to pull the foundation and during autonomous we would use the arm to pass blocks to the alliance team. We used 4 motors, 4 Mecanum Wheels, one servo, and one expansion hub.

final robot

The robot that we have built has many different mechanisms to help us succeed in the tasks for the challenge. Our robot has a linear slide with a gripper, intake with a slapper, and belt and pulley system. The linear slide is composed of x-rails that go up and down with the power of a motor; the gripper is used to grab the block from our robot and place it on the foundation. The intake is composed of compliant wheels that are attached to motors that spin in two directions (one for intaking the stone and one for out taking the stone if it is in a bad position). The belt and pulley are used to connect the wheels in our robot so we can only use two motors instead of four so we can have more space on our robot to keep our products in. Our final robot contains 4 servos and 5 motors. Two of the servos that are used in the robot are used for our gripper for the arm. Another servo that was used was for the slapper on our robot, which hits the sky stone after intake to have the right position for the arm to grab it. The last servo that was used on our robot was for the hook so it can grab the foundation. The motors were used for the intake, linear slide, and the wheels of our robot. Our robot had a lot of aspects and took a lot of time in building the robot and it was worth the time we put in!