Tronic Titans 3161 Build Thread | Open Alliance 2023

Hopefully once we are done with exams we will be branching the intake a few different ways to help speed up some key choices.

Some things we want to look at:

  • Having a large difference in roller size (4in top and basically just a hex shaft bottom)
  • Looking at adding another roller close to the pivot to help with cube intake (should allow us to have a “better” arm pose for cube pick up)
  • Lots of time spent on material choice for rollers (hopefully we can feed the hex shaft into the surgical tubing at some point)
  • Hopefully other things as well

Post 9 - Week 4 Update

Hello everyone!

Another great week for Team 3161! Although we were still held up due to delays and a few days of finishing up exams, we still managed to get a whole lot of work done for the robot. Detailed below is our fourth week of build season, as well as a quick summary. We will update our log next week with our week 5 progress, so make sure to check our thread soon!

Week four In Short:

  • CNC Workshop - Taught interested team members how to use the CNC machine and how to manufacture intricate parts
  • Wiring - Practice chassis has been completely wired.
  • Manufacturing - Started manufacturing pieces for the robot including a multitude of different pieces made for the superstructure that can start being assembled
  • Programming - Pathfinding, Dashboard, fine-tuning automation and self-centring.

Accomplishment of the week:

Check out this amazing custom dashboard we made! - See the “Programming” section for more details!


Team Scheduling & Manufacturing Scheduling

Unfortunately our team was limited in its capacity to start moving at full speed with exams still needing to be wrapped up in the first half of the week. With everyone still studying and the school organizing itself with the upcoming second semester, It was difficult to find a set time or date for the whole team to get together. With the dust settling down for week 5, we look for things to get back to normal by then.

On a more positive note, with the time we did have, we efficiently planned a manufacturing schedule to ensure that all parts were able to be built in time for our week 1 competition, and also to organize and split the work up effectively between different groups.



As week four comes to an end, we have gotten most of our general prototyping done, but will continue developing and testing new and old ideas! Here we have a new and improved pinch-roller prototype with a combination of the surgical tape roller and the smaller wheels, allowing for a more accurate and firm grip.

After seeing the strong intake abilities of the bottom roller, we fashioned a potential bottom roller design to test its potential use. It is a 1.5" drainage rubber tube with a 3d printed plug, which is wrapped around with whatever material would be the strongest, taking into account all of the experimental results.


Shown below are more prototyping details:

Testing intake with cube

(Testing back roller)

(Testing top roller)

(Back roller, but unpowered)

One aspect we wanted with this new intake design was for the game pieces to interact seamlessly together. Although we put a lot of emphasis on the cones, the cubes also had to be able to be taken in with aptitude and force. We carefully measured the interaction between all of the different rollers with the cube, and made sure that the grip felt strong enough for the game piece to be moved around with force, while also being gentle and leaving space for careful maneuvering if necessary.

Alignment Testing


(Testing high speed alignment and intake angles, along with scoring our first points)

Another detail that needed testing this week was ensuring that our intake and drivetrain could work in tandem with each other. Having worked sufficiently on each part of the bot, it was time to combine everything together and have a feel for how smooth this design would work and also see some potential issues that we hadn’t seen before. The swerve drive worked well with the intake, and gave us some considerable maneuverability. The speed and pace at which we could intake and rotate was also a great start, and with more drivers practice experience the scoring should be smooth. Our intake itself also had a good variety of angles at which it could pick up the cones, leaving it in a desirable position for auto and ground intake. In the times where the intake can’t seem to grab the cone, the swerve drive should be able to maneuver around it and try again at a different angle.

For the cone testing GIF, we had difficulties intaking due to the printed GT2 pulley we had stripping out and melting itself (as you can see in the very first photo in this section). Hopefully for next week we can devise a interim solution while we decide whether to go another route or get a metal drive pulley (Procurement rules from the school prevent us from acquiring it at the moment)

Cone intake testing

(Base of cone pickup)

The issue of getting the intake to pick up the cone from odd angles, although slightly solved from the maneuverability of the swerve drive, was still a concern of ours. The intake should be as diverse as possible, and building ourselves into a corner would be the antithesis of what the ideal intake should be like. The intake still managed to be able to pick up the cone from the very base but with some difficulty in clasping it for a longer period of time. We saw our limitations with what the intake was capable of achieving, and will surely influence our design choices in the future as we decide on how we want our arm and wrist mounted, and where to move the robot to during a game as it intakes the cone from the most surefire angle.

(Standing cone mockup on chassis)

Lots of experimentation was done with the intake on the bottom roller. Testing different materials such as surgical tape, and silicone tape as well as covering both in sawdust to simulate field debris as well as testing different speeds gave us a greater breadth of possibility on what could and should be done with the bottom roller. Each material had its own grip strength and fluidity, with the different aspects of each being taken into account when we design the competition iteration of the intake.

(Surgical tape intake)

(Silicone tape covered in sawdust)

(Clean silicone tape test)


Not much has happened this week for the overall design of the robot (Aside from the intake of course), since most of the robot at this point is “locked” for the meantime and being manufactured for assembly. However some minor work was done, including figuring out potential arm/telescope/wrist locations for pickup as well as how cone pick up from the human player’s shelf

End effector positions for the cone and cube did not change much in terms of a broad location from the initial crayola CAD’s from week 1 and 2, but it is good to see that’s the case. As you can see the upright cone pickup is systematically the most simple as it only requires a wrist and arm rotation, fallen cone and cube pickups will need a telescope extension though.

Cone pickup from the human player station was also looked into more, initially, we had thought that it was possible to just raise the arm for pickup, but we then realized that extension limits for the gas spring we plan to use did not allow that so we had to use a telescopic extension to pick one up.

Direct pickup from the shelf was not a priority looking back to our priority list, so the robot was not exactly designed with that in mind, but it is nice to see that we theoretically have the capability to do it.

Locations for the Radio was also looked into this week, the final location did not change much from the initial assumption we had on where it should be (mounted low in the superstructure facing out, mounting high was found to be too risky for collisions, putting it inside the superstructure was initially attractive but concerns about interference and accessibility arose.), but we figured out a way to mount it without drilling any specific holes in the extrusion or using the (somehow works) VHB tape + Zip ties, by utilizing a 3d printed case with clamping end that uses the space created by the pocketing as a passthrough for the mounting bolts.


CAD Screenshot as Week 4 wraps up, again not much change, maybe except that there is a bumper now.


This week, we started full swing into part manufacturing! After finally completing our manufacturing schedule and creating all the necessary manufacturing sheets/guides for the start of our robot, we were able to produce a lot of parts that can now be the start of assembly next week!

(Parts completed as of last Friday)

Our process for making parts is slightly different from other years, where it was mostly manual cutting, milling, drilling and the extensive use of CNC’d wood parts. A lot of our parts this year will have some form of non-wood CNC processing or be out-sourced to a sponsor, which is a first for us in a while for a full build season.

We recently acquired our CNC in 2021 and have only used it for one full season before this. We have learned a lot about using the CNC (more on that in a future update), and are aiming to use it to the best of our advantage this year. We also managed to get a manufacturing sponsor late last season on board to cut our plate/sheet-based parts, which allows us to focus more on CNC’d Extrusions, part spares, non-aluminum CNC parts or iterative parts that we need on short notice

(An example of one of our manufacturing sheets/drawings)

Our basic manufacturing starts off with us consulting the manufacturing sheets and getting the basic dimensions of the pieces worked out. Then, we move on to making the cuts, first on our mitre saw to rough cut it, and then to the mill so that the piece is sufficiently square. After that, we use the CNC for any of the more dimensionally integral holes and pocketing if need be… As you can see in the manufacturing sheets above, we plan to have holes in 1-inch faces to be match drilled with corresponding gussets to save time.

(An example of one of the extrusions with the finish on it)

In between milling and CNC ing an extrusion, we put a distinctive “swirl” finish that we started to partially implement in 2022 instead of painting. This gives the robot a more finished look as opposed to bare aluminum but also does not suffer from any wear and chipping associated with painting since this finish is sanded into the aluminum.

(Daniel (Co-Captain) posing for a photo with one of the completed parts)

(superstructure extrusions cut and waiting for cnc processing)

Hopefully we are aiming to finish most of our initial manufacturing work within the next week so we can start assembling right away when the parts we sent to our sponsor arrive.

CNC Workshop

With most of the team members not having much practice or knowledge of the CNC, a small workshop was offered to anyone interested in learning how to use the machine. This ensures that the torch of knowledge gets passed on to those in the future and multiple different people can work on the machine if necessary.

(Cutting an extrusion with the CNC)

(Homing the endmill with a probe)

This is essentially the culmination of a project we have had as a team for the past few years on fabricating parts with the CNC. With all of the practice we have had and with much more emphasis being placed on the machine and teaching it to others we are finally proud to say we have accomplished this! It is amazing to be able to craft pieces with relatively better precision than before and be confident in our craftsmanship. We can ensure that the quality of our robot pieces this year will be excellent and will surely lead to a great score in the upcoming comps.

Practice Tank Chassis

Our practice chassis has been fully set up. This practice chassis is the chassis from our 2022 robot with the non-drive components removed.

The aim for this chassis even though our final drivetrain is not a WCD is to help facilitate strategies for defence and to enable a more dynamic environment when we get to do drive practice.

Unfortunately, we had to completely disassemble our 2022 season robot for parts and for any materials that we needed for the new robot ( RIP Helios ).

(Helios’ subassemblies disassembled from the chassis)

Programming - Dashboard

One thing we really wanted to work on this year was our efficiency and our organizational skills. Being able to skillfully adapt to any situation in a competition is an extremely useful skill to have, which is why this custom dashboard was developed. It allows us to quickly change between robot autos so that we can adapt to the strategy and designs of our other team members, and better position ourselves to do better within a match.


We have a short clip showing all the features of our dashboard, along with a quick explanation from our programming lead, Pooria.

“As the lead developer on the project, I’m proud to say that the custom dashboard we’ve been working on has been designed with the goal of enhancing the overall experience for our FRC team. The visually interactive field image replaces the previous drop-down menu for choosing the autonomous path, allowing for a smoother and faster match preparation process, which reduces stress for the driving team. Not only does this new dashboard reduce the potential for human error, but it also supports the team in having a great time and building lasting memories together. The reduction of stress and streamlining of the pre-match process are key factors in creating a positive and memorable experience for all involved, which is ultimately what matters the most in a competition like FRC.”

Lots of promising features that will aid with our participation this season.


I hope that you all had as much fun reading this post as we had working on the robot this week. As always, lots of luck and love to all of the competing teams this year. Make sure to check out our thread next week for the week 5 update and for more Team 3161 updates!


How are you doing the swirl finish on those parts? We use a rotary sander on our parts to get a matte finish, but this seems like a very nice alternative


Hi Ari, we will make a quick video tomorrow showing how to achieve this finish!


Post 10 - Shooting Cones!

Hello Everyone!

This is just a small post to showcase some testing we did today of shooting cones. We’ve found that although possible it is challenging to do it consistently as there are to many variables that you must control (speed of shooter, robot position, the orientation of cone etc).

Shown below are GIFs of successful shots

Cone shoot 1
(successful shot 1)

Cone Shoot 2
(successful shot 1) (followed by missed shot – this highlights how inconsitant it can be as nothing was changed between these 2 shots)

Shown below are GIFs of missed shots

Click Here

Cone Miss 1

Cone Miss 2

Cone Miss 3

Cone Miss 4

I hope you found this interesting or helpful! Also, stay tuned for our Week 5 Recap!


Post 11 - Aluminum Swirl Pattern Tutorial

Hello Everyone!

This is just a quick post to highlight our most first video tutorial which shows teams how to put a very simple – yet very attractive swirl pattern on box tubing. If you have any questions about the process please let us know, we are happy to help!

Also stay tuned for our week 5 recap! Will be coming out very shortly!


Awesome video, thank you for taking the time to make it.


Very nicely done!

I wanted add: this process is called ‘engine turning’ and can be performed with a number of different tools. I have found that if I wear nitrile gloves during and after the process (until aluminum’s natural oxide layer reforms) I can avoid staining the parts with finger oils.

Looking forward to seeing this all together!


Post 12 - Week 5 Update

Hello Everyone!

Week 5 was a very productive week for Team 3161, with production and manufacturing moving ahead with a fast pace. We got our parts that were sent to Sable back and began cleaning and preparing for assembly. Lots of fast paced action finally reaching the shop. Detailed below is our fifth week of build season, as well as a quick summary. We will update our log next week with our week 6 progress, so make sure to check our thread soon!

Week Five In Short:

  • Design - Models built to verify the strength of the arm
  • Manufacturing - Production and manufacturing of pieces for the superstructure and core robot elements
  • Production & Assembly - Parts received from our Manufacturing sponsor have arrived and have been prepped for assembly.
  • Programming - Setting up pose estimation, Intake-Wrist prototype integration, and trying out initial autonomous routines with the testbot.

Accomplishment of the week

We received and started prepping all of our sheet metal parts! A huge thanks to our metal fabrication sponsor “Sable Metal Fabrication”!


With the help of one of our team mentors, we ran a set of simulations, called Finite Element Analysis, that simulated the stresses and loads that our intake arm extrusions would theoretically face. This was mainly done to evaluate if we have gone too aggressive with our planned pocketing or not. It was a bit of a complicated process to understand as team members with a limited post-secondary engineering background but we had two main simulations explained to us;

One simulation set shows the Von Mises stress that the arm will experience, it is the “theoretical measurement of the estimated stress within a material”, different materials behave differently when placed under pressure and tension. The stress-strain curve was explained to us, and after calculations of our given material, we managed to find suitable proof that our arm would be able to handle the strain and validated that our pocketing was fine in the end.

(Stress-Strain Curve)

(This screenshot shows the Von Mises Stresses that our 2nd stage arm will face when extended. Simulation says the maximum Von mises stress is 9.81 MPa and the Yield stress is 275 MPa. A factor of safety of ~28)

(This screenshot shows the Von Mises Stresses that our 1st stage arm will face when extended. Simulation says the maximum Von mises stress is 24.09 MPa and the Yield stress is 275 MPa. A factor of safety of ~11)

The second set of simulations explains the maximum displacement or bending the arm will get when it is loaded

(This one shows the Maximum displacement (bending) our 2nd stage arm would experience with a full theoretical load (maximum intake weight) when extended. The estimated maximum displacement is 0.6406 mm)

(This one shows the Maximum displacement (bending) our 1st stage arm would experience with a full theoretical load (maximum intake weight+2nd Stage) when extended. The estimated maximum displacement is 0.4422 mm)

These representations are examples of the results of the calculation, which provides us with a sense of confidence that our design should be able to theoretically handle some of the forces the arm will experience.

On another note, we have done work to add refinements derived from prototyping data to our “competition” intake design. Several elements were changed from the interim design used as a reference for designing the rest of the robot, The material was switched from 0.184 Aluminum plates to 6mm Polycarbonate plates (mainly due to in house capability and fast turnaround vs having it go through our manufacturing sponsor, which allows us to iterate between versions within days or even hours, vs up to 2 weeks), Spacing and wheels determined from the prototypes added into the design as well (3 inch staggered wheels and surgical tubing lined flexible tube was determined to be optimal as of now).

(Snippet of the new intake while it is being CADded, some details need to be determined still before it can be considered competition-ready, but we hope to solve enough details for this version so it can be made and tested next week.)

Manufacturing & Production

This week was a huge pace change and pivot point for the team. With the start of semester 2 and the academics settling back down, we began hosting daily meetings and for longer hours. With all of this extra time and manpower, production blazed forward and we really started to get a sense of momentum.

At the beginning of the week, before we received our sponsorship piece, we finished the majority of the superstructure and arm pieces that needed to be made in the shop. Lathe parts were manufactured efficiently with each piece being given to a student who would then take charge of Lathing, Boring and Tapping the piece. Getting these done quickly before our order came in with the majority of the pieces was a huge boon for efficiency and organization.

We received our Sable order, one of our new sponsors for this year, near the end of the week and quickly jumped on the opportunity to move forward with assembly and production. A majority of the pieces needed to be deburred, sanded down and cleansed with alcohol. Lots of different ongoing projects and different groups of people working on a wide variety of gave us a taste of the hectic nature of build season that was greatly missed.

(Students sanding down gussets and plates)

The belly pan took a huge amount of time and effort due to all of the holes and slots that needed to be filed down. Thanks to all of the hard work and effort however, the wiring and electrical components of the robot will be able to move forward smoothly.

(Students deburring the parts received from Sable)

A superstructure mock-up was able to be made this week with the arrival of the parts. We finally got a physical representation of what all of our cad and planning work had been for and also provided us with a sense of scale on what the size of the final robot design would be like.

This, in turn with the arm pieces, gave us a nice overall representation with how big the final design will be with the actual parts, and also a feel on how much more integration and building is like, with many other subteams relying on mechanical to begin more work such as programming and electrical.



Programming this week started with mounting the limelight and setting up pose estimation on our test robot. In the process of doing so, photonvision was installed on our limelight and calibrated with two different resolutions; 320x280 and 640x480. This was done to test the performance.

Based on our testing, 320x280 gave us about 3m of accuracy and 30 frames per second before glitching out. With the 640x480 resolution, we were able to get to 5m of accuracy with 5 to 7 frames per second. Ultimately, we settled on 320x280 as it was able to provide us with faster response time. However, this is not final and we might change the resolution based on our needs in the future when we go to practice fields, as pose estimation doesn’t require us to have vision responses all the time. It’s just for path corrections.

For pose estimation verification, we first ran it without vision feedback and tried to stop the robot from moving while the wheels were able to slide on the floor. Which gave us false results as it thought it was moving, but in reality, it was stationary. For our second test, we added vision measurements to our pose estimation class and ran the test again, this time the pose estimation didn’t change even though the wheels were sliding on the ground and the robot was stationary

Another big portion of programming this week was getting our auto system work with other subsystem integrations such as the Intake.

This was our first auto test:

Here we tested to ditch the cone while the robot moved forward to grab another piece. Although we’re getting promising results, This test needs to be done on a carpet and a cube as well to see how the game pieces react to the carpet.

Our second auto test:

Here we tried to shoot the cone while half of the robot was on the community zone line and to see how we can reduce our cycles during auto. Shooting from this distance and with our relatively low-fidelity prototype, wasn’t consistent; However this will be solved once we add the Arm and a higher-fidelity intake to the robot.

Our third auto test:
Here we tested the 1 cone auto without shooting it from the community zone line. Will probably stick with shooting as it’s faster and cooler; However it’s worth noting that the auto speeds are limited to 0.5m/s for testing purposes and would need to test all the autos again with the competition configuration to see which is faster.


I hope that you all had as much fun reading this post as we had working on the robot this week. As always, lots of luck and love to all of the competing teams this year. Make sure to celebrate Valentine’s Day with your team and demonstrate your appreciation for each other. Make sure to check out our build thread next week for the week 6 update!



Can you share the meshing of your FEA models please?

Are you pocketing 1/8in wall tube or 1/16in wall tube?

1 Like

We can share once the mentor who helped is no longer busy.

Edit: Also its 1/8" wall tubing.

1 Like

I’ve modeled a tubing for FRC in a large number of configurations and have always found that un-pocketed 1/16 wall tubing is lighter and/or stronger than pocketed/lightened 1/8in wall tubing. Thus you may want to consider making those parts from un-lightened 1/16th tubing.

If you’re interested I’d be happy to repost some of my results here.

1 Like

I think we didnt have a source for 1/16" tubing at that size at the time. But i will most certainly bring it up in the meeting! Thanks

Edit: took a look at our typical suppliers and none of them have 4x4x1/16" aluminum tube. So very likely thats our reasoning.

1 Like

1/16” wall 6061 2x1 is very difficult to source in Canada, the only good source is Studica (They stock Andymark products) for $50CAD/6ft


Post 13 - Week 6 Update

Hello Everyone!

This week held massive progress for our robot. With a majority of the wiring and coding being completed, all that is left is final touches and some design tweaks as difficulties arose. Detailed below is our sixth week of build season, as well as a quick summary. We will update our log once we have made solid so make sure to check our thread soon!

Week SixIn Short:

  • Design - Temporarily descoping robot design due to some issues that arose
  • Electrical - Wiring of the Chassis and of the Superstructure
  • Assembly - Completed superstructure, chassis and some of the arm assembly

Programming - Integration with new intake and chassis, debugging scouting app

Accomplishment of the week

This week we are proud to share our functioning competition chassis! Assembled, wired and functioning within 3 days with only 1 connection issue to troubleshoot, a first for the team! - Check the “Electrical” section for more details!


Design Changes

Unfortunately, Due to a compounding number of elements, such as scheduling delays out of the team’s control, manufacturing issues associated with the telescoping arm and programming wanting more time to do work on the robot, we had to re-scope our whole system for our week 1 competition so that it is way simpler and can be done faster.

We decided we wanted a fully operational robot for week one, even if it meant we had to scale down some functionality such as l3 scoring and some ground pickup functionality, rather than show up with a barely functional robot (as we unfortunately have experienced before, so we hope to avoid that this year).

An interesting insight is that this temporarily re-scoped robot still manages to meet most of our priority list goals set in week 1 of build.

(Configuration Render)

We devised a simpler arm composed of two pieces of 2 x 1 0.095 6061 Extrusion attached together with bolts which will function as a simple stick on which the intake will be attached. Although not exactly as advanced as we hoped for, it will be simple enough to deal with for Georgian until we can complete our original arm for waterloo (we decided to outsource some parts that we had difficulty manufacturing for that arm to a new sponsor, but their lead times and other team concerns meant that we had to go with the simpler arm as explained before)

(New Arm in CAD)


With the bellypan having been filed down at the beginning of the week, we quickly moved forward with starting to wire the chassis. We have had difficulties in the past with robots shutting down due to can errors and wiring faults, which really motivated us to make sure to make this wiring clean and concise. The plans for the can, 12 gauge and 22 gauge power were all pre planned out and checked to make sure it created a short and clean route.

(Bellypan in first stages of wiring)

Since we already had a practice chassis built in the off season, we just simply took off the components piece by piece and started ziptieing and using screws to hold them on. The sparkmaxes were placed in separate corners to help mitigate the amount of wiring needed to connect the power to the MK4i swerve modules, and also to help with separating the can wiring into separate “groups”. The can runs from the roborio, to our pigeon gyro, to then going from each pair of sparkmaxes and their respective cancoder on top. This pattern of sparkmax to cancoder follows for each successive grouping to finally terminate at the pdh. We turned off the resistor in the pdh and will attach a separate resistor at the end of the arm to terminate. With this patterning, even if there is a can failure with the superstructure and arm, we are still able to drive the chassis. The power ran to the mini power module, with each cancoder using a separate run instead of combining them all into one in case of failure.

(Bellypan attached to the rest of the chassis, in the process of being wired)

One interesting thing to note for our wiring was the use of Wagoes to attach the wires. We wanted to eliminate the use of soldering both to save time but to also have flexibility available to us in case of emergencies when in between matches. They feel strong and have functioned perfectly for us so far. We used zip tie squares onto the chassis to help organise the wires, leaving us with a clean wiring and should eliminate any potential issues that could come from the electrical side of the robot design.

(Example of Wagoes being used in the process of wiring)

Moving forward, we wanted to start integrating the wiring to the motor and controllers of the intake and arm. Since our radio is on the superstructure itself, we had a radio cover printed to prevent damages. Once the final touches are completed on the superstructure and the breaker has been safely mounted, the wiring should be completed.

We also started attaching the superstructure to the chassis itself to begin the final stages of design, and also for finishing up the last pieces of wiring.

(Beginning of wiring integration planning with superstructure attached)


As we got the plate parts from our manufacturing sponsor (Sable) and had them properly prepared, we started assembling the superstructure in week 5, and we finished them this week.

We also started planning and practicing integration with the rest of the robot once the chassis was made online.


(New Arm semi integrated into the bot, showing both starting configurations and L2 scoring configurations.)

Hopefully for next week we get most of the bot assembled and wired, as well as the competition intake cut, assembled and integrated, so we can begin integration and autonomous testing, as well as driver selection and practice.


This week was more of a mechanically focused week, which meant that there was not much programming to do as everything was being set up for final tuning and testing. Our programming subteam helped with finishing wiring the new chassis and making sure that the IDs were properly updated with new values, and also worked on modifying the code to perform with the new electronics ( the pdh, mpm, rpm etc).

With the arm and intake system also being mostly finished, some of the code was also written and modified to reflect the new situation. The subteam worked on writing code to test our arm prototype and its integration with other systems, and also to figure out the inverse kinematics for the new arm and how much pid and force they will need to properly balance and lift itself. The programming lead also managed to test the scouting app we will use for the upcoming season to collect info, and fixed some prevalent bugs along the way.


We have taken great strides this week in our robot construction and assembly this week, and we are eager to compete at our week 1 competition at Georgian College with our completed design. As always, lots of luck and love to all of the competing teams this year. Make sure to check out our build thread soon for our finalised week 1 competition robot design post!


Post 14 - Week 7 Update

Hello Everyone!

The students had a very busy week and weekend working with the robot, but they had to also study so I am temporarily filling in for one of the students who usually posts these updates.

Unfortunately had to abandon the collapsible details we usually have for these updates due to videos not embedding properly with them.


This week held massive progress for our robot. With a majority of the wiring and coding being completed, all that is left is final touches and some design tweaks as difficulties arose. Detailed below is our seventh week of build season, as well as a quick summary. We will update our log once we have made more progress and go to competition next week so make sure to check our thread soon!

Week 7 In Short:

  • Assembly and Integration - Finishing up last minute changes and getting the bot ready for testing and tuning
  • Driver’s Practice - Getting our drive team set up and lots of time on the field.
  • Programming - Setting Presets, Autos, Lots of debugging and fine tuning

Accomplishment of the week

This week we are proud to share our completed and fully functional robot! Able to score on all 3 Levels (Except Cube L3 for now) and functioning well.

Robot Name

With the robot being completed, it was time for us to pick a name for the bot and start the official branding. We wanted to continue with our naming theme of the ancient Greek titans, so it limited our choices to a select few. With a small amount of debate, we soon came to an agreed consensus.

So, without further ado, please welcome the 3161 2023 bot …. Krios! The titan of constellations, we thought this name would perfectly suit the theme of the game about making patterns on the grid, or ‘constellations’.

Assembly and Integration

The early portions of this week were dedicated to finalising the mechanical portions of the robot, with fine tuning and debugging following. We had a stint of bad weather and snow storms, which required us to finish wiring at our team captain’s home. All that was required was finishing up the CAN for the arm and wrist controllers, and also finishing up providing power for all motors and electronics required. We attached the RSL, and also included colour sensor wires and any other wires needed in a nice cable protector travelling up the arm.

Krios all wired and dressed up in cable protectors.*


Robot Currently weighs around 101 lb with battery (88.75 lb w/o) which means we have plenty to play with in terms of additional counterweight.

We discovered a potential way to accidentally tip the robot:

This means we had to set soft limits as well as go through adding ballast in the chassis to counteract the arm

Initial Cycling Tests with Defense (important to note that this defense test looks to be mostly invalid in sections where the robot is trying to score due to protected zones):

We unfortunately found it very difficult to intake cubes and score them without them getting stuck.

See in the video how it tries to further intake the cube when it’s supposed to be releasing it, we believe this is due to the counter rotating nature of the intake rollers and a structural element to keep the cube from touching the top roller and/or a 3rd roller behind the two existing ones (also theoretically enables L3 Cube) would fix the issue (this made us focus primarily on cones for the weekend).

Before we wrapped up to go to the practice field, we tested our intake’s robustness, and based on our tests, we are delighted that it can take some hits with no damage that affects its operation.

Besides these few small issues and the bumpers still need to be made, Krios is fully functional and is fully built for more advanced testing and compete!


With finally being done assembling, wiring, and initially testing the robot, it was time to calibrate the code and get some hands-on practice in preparation for our events. With a big thank you to the Robodrome and 5406 for letting us use their practice field. We managed to test a huge variety of different situations and even play a few simulated matches with other visiting teams.

Krios at the practice field with intake resting

We tested three main methods of cone/cube acquisition in the human player stations; from the shelf, directly dropped from the chute for ground pickup and the robot docked to the chute for quick cone intake.

Human player shelf cone intake

This intake method should eliminate the randomness of having cones tip and fall over while falling in the human player chute, and provide a fast and more efficient cycle while going to and from the grid

Our human player started practicing how to consistently drop cones in a specific orientation for ground pickup

Cycle Videos:

We also did mock matches with other visiting teams in the field, it was very productive and helped us and them gain a lot of insights on the dynamics of the field with multiple robots in play. but due to one of the teams not yet revealing their robot for this year, we unfortunately cannot show videos we recorded that are associated with these matches or tests that have their robots visibly identifiable in the background.


Programming this week was focused on testing all of their code and ensuring that everything is running safely and smoothly.

At the practice field, programming spent time preparing and testing the multiple autos we were aiming for with our auto selection dashboard. We calibrated the different measurements and paths necessary to have a fully functional auto and for the ability to adapt to other team’s requirements and capabilities.

Auto testing videos:

(first attempt “oops”)

(L3 + L1)

(Failed attempt at L3+L1)

(L2+L1 tests)

In Conclusion

This week was full of exciting and anxious energy as we near the end of the 2023 build season. We are preparing and doing lots of practicing to do well in our week 1 competition at Georgian College with our completed design. As always, lots of luck and love to all of the competing teams this year. Make sure to check out our build thread soon for any other robot updates and our week 1 comp post!


Post 15 - Georgian College

Hello everyone! We competed at our week 1 event, Georgian College, which was a MASSIVE success for the team! We had so much fun playing matches and seeing the fruit of our labour and hard work that we put in during the build season. Braving through one of the harshest storms of the winter season, we still had a huge turnout for the event and a large number of our team members made it to Barrie safely. We had an absolute blast in Barrie and we are extremely excited to share our success and appreciation of the FRC community with you all.

Event Finalists and The Impact Award

We are so very proud to be winners of the Impact award at Georgian College! Thank you to all of the lovely support we have received thus far to take us to this point and for being the reason we managed to earn this award. We are also so happy to have been the event finalists along with 8731 and our alliance captain, 1325. Huge thank you to them for being a strong and formidable alliance and we thoroughly enjoyed working with them in this endeavour. We really appreciate everyone who reads and provides guidance to us on this thread and throughout the community.

Qualification Matches

Although our qualification results were not what we had initially hoped, with us ending in the 12th spot during qualifications, we knew that our robot was performing at a very consistent level at teleop and if we were able to keep this consistency and speed, we would be able to hold a strong position as a fast complimentary L2 bot that would be a good match to a consistent L3 bot.

Throughout some of our early matches, we realised that there was a lack of communication between the Human Player and the rest of the drive team. We used the LEDs present on our robot and made them flash different colours in accordance with what game piece we wanted, with purple being cubes and yellow being cones. This system seemed to work alright, but during intaking often the robot position would be off and it would have to move closer in order to have proper orientation and get the cones. We hope to improve this for UWaterloo, our next event.

Scouting and strategy went smoothly thanks to our scouting app, Manto, that our programming lead developed to move away from paper scouting. It quickly lets us record information on matches and gather enough information to make informed decisions during matches and for strategically developing ideas for specific matches. We got a huge wealth of information that let us make informed decisions, and the qr-code based system easily lets us catalogue and collect the information. Although we were not alliance captains during selections, it was still a great boon to have all this knowledge and help our eventual alliance captain in the event pick our third team to complete the alliance.

Semi-Finals & Finals

We were picked by 1325, the 3rd Alliance Captain as first pick to be in their alliance for the playoffs, along with 8731 as the second pick. We were so grateful to accept their invitation and we were blown away by our performance as a team along with 8731. With a huge amount of enthusiasm, we stepped into the semi-finals.

Making it through match 4 and 8, We won unchallenged throughout the semi-finals. Our team combination of 1325 scoring on L3 while we filled up links on L2 was a match made in heaven. We won points swiftly and efficiently, while 8731 played a solid defense against the opposing alliances. Lots of tense and stressful moments which all led up to Match 11. Going up against the Number 1 Alliance was a huge challenge but with lots of skill and some fouls on their end, we managed to beat them and move on to the finals. What a rush!

It was such an honour to be able to play at the finals rounds and take full advantage of the Georgian college event. It was big for the team as it was the farthest we went through in an event since GTR West in 2012, 10 years ago. We went up against great sportsmanship and we all tried our hardest to win the event and get the blue banner. Unfortunately we did lose both final matches even after beating Alliance 1 previously, but we tried our hardest and showcased what we are capable of and on how successful our season has been so far.

Final 2 - 2023 ONT District Georgian Event - YouTube

Again, Huge thank you to 8731 and 1325 for the amazing experience and for the strong performance! We won’t ever forget what we have done together. Big congratulations to the winning alliance of 4039, 1114 and 7659! It was a well fought battle and they definitely deserved the win.


One of the most exciting moments of the event for us was being able to win the Impact Award! Through a strong essay, great presentation and a culmination of many years of team effort allowed us to earn this award. We are extremely grateful to the community and our sponsors for getting us up to this point, and for everyone else who has gotten us up to this point. Being qualified for DCMP was a great relief for our time and gives us time to really hone the presentation and get our delivery perfect. Having the Impact Award be our first blue banner was a very exciting moment as a team and we hope to be able to move forward with our presentation.

Next Steps

Even though we performed just as great as we had hoped, there are always things to improve on for the next time, in our case the UWaterloo event in a few weeks time.

Improved and Faster Auto Routines:
Our Auto routines for this event were done without any vision aids, and while it was mostly functional, it made us have to slow the auto down, hindering more ambitious functions and had the potential to miss the scoring platforms or intaking the game pieces if the robot unexpectedly hit an obstacle. We also unfortunately did not have an auto balancing mode ready for the first event and that proved to be very disadvantageous to us. So we plan to mostly use the break between the two events to improve on this and implement vision processing and pose estimation to our routines so it can be faster, more consistent, fault-tolerant, and hopefully enable us to do more ambitious modes such as the much internally-coveted 2 game piece + balance auto.

More Human Player - Driver/Operator Coordination:
A greater form of communication between the HP and the rest of the drive team is a must, as getting a faster cycle time will give us more time to fill up any other links, and any miscommunication can contribute to the match outcome. We plan to improve this by getting more practice time and human player familiarization of the robot led codes, as well as adding improvements to the overall system.

Shelve the Telescoping Arm, Keep and Improve the current System:
We have decided to stick with our current system and maybe make some small tweaks for better intaking and outtaking. The original telescoping arm design that we planned to initially implement after this event, has been left to the side for potentially the rest of the season, as any more drastic mechanical changes could cause even more issues and a greater hassle.

Faster Cycling and More Consistent L3 Cone Scoring:
Our L3 cube scoring has been surprisingly consistent enough, although our L3 cone scoring needs improvement. With more driver practice and the implementation of software fixes and possibly scoring aids, the L3 Cone scoring should hopefully become almost as consistent as our L2 Cone and L2/L3 Cube scoring while also improving our L2 cone and cube cycle speed.

Better HP Cube Routines
We noticed that our Human Player Cube pickup is a bit sluggish and suboptimal for our goals, we plan to hopefully rectify this by exploring methods to add a set point in the arm and wrist that enables a direct hand-off of cubes from the human player station to the intake, like what we currently have for the cone.


After all of the excitement and fun with the event, it was time to celebrate and reward ourselves for all of our hard work this season. With some well deserved treats and lots of cheering, we feel ready to take on the rest of the season. Thank you all so much for reading and supporting our team and for being the reason we are able to have such a large impact on the community. As always, lots of love and luck to all competing teams and we hope you can join us as we look forward to a successful rest of the season


Post 16 - Georgian College Recap Video

Hello everyone! We just wanted to share our most recent video which is a recap of our experience at the Georgian College Event. We hope you enjoy it!


Pre-Waterloo Update

Hello everyone!

Today is the day, the team is loading in the robot into the Waterloo event later in the day and although sorry for the lack of updates the past 2 weeks with a mid-semester break and a busy couple of days preparing afterwards, we have made some strides into improving our robot for Waterloo, and we are really excited for what’s to come in this event!

A Summary

Upon the conclusion of the Georgian event, we set a couple of goals we want to achieve going into waterloo, and these included:

Improved and Faster Auto Routines

We have successfully implemented vision and pose estimation to the system after a moderately painful week of debugging, tuning and planning. As a result we have devised 3 main autos to work with for this event; an L2 2.5 Game piece + Balance, an L2 3 Game piece “Link” Auto, and a cable protector side auto.

More Human Player - Driver/Operator Coordination and Better HP Cube Pickup

Had a series of practice runs to help familiarize HP/Driver coordination more, leading to less cone handoff issues and a faster cube HP Intake run.

Shelve the Telescoping Arm, Keep and Improve the current System

Kept our goal which was pretty easy and simple, although the CNC’d telescope extrusions were delivered to us (it looks so nice oh my, see below for a photo of it), we plan on using it as an offseason project instead…

Faster Cycling and More Consistent L3 Cone Scoring

Unfortunately a more consistent L3 cone scoring was found to be difficult and requires large enough mechanism changes that would eat too much time and undo some progress software has made(given we only had about a week to work with since the other week was march break for us), so we decided to only do L3 cones on an extraordinary basis for this event.

However we were able to do a series of driver practice runs that improved our cycle times at endgame relative to what we were already achieving at Georgian, an important thing to note though is that this was done with no defense, so we will see how much defense will bring down that number for us.

Cone and Cube Intake position improvements

We have noticed that our cube and upright cone intake setpoints at georgian were suboptimal, leading the intake to miss slightly overinflated cubes or tip upright cones, rather than intake them in. So we introduced some minor changes to improve their reliability.

We also tried installing centering guides into the cone intake, although albeit a bit fragile in the early iterations, it works well in centering the cone, avoiding the variations associated with the roller intakes and resulting in a faster and more consistent teleop and auto cone scoring.

Cycling tests

Below are a series of cycling tests that we have done, again huge thanks to 5406 for letting us use their practice field.

These tests allowed us to find out that we were able to cycle a full L2 grid + some L1 or L3 cube in one full match (assuming a 2 game piece auto), which is really promising but as noted above, this is without defense so we will see.

We also found out that in our case, the fastest way to fill L1 is using cones and not cubes.

One of these videos had another person manning HP instead of our HP, and it shows that practice and coordination is really important if we want a fast and consistent human player cycle time.

In some of the videos, it seemed that we had difficulty intaking ground tipped cones, which is not that much of a deal given our focus is more on chute pickup at the moment, but it was later found to be a wrong setpoint.

We have found out that the inconsistency associated with our L3 Cone is too high, which is why we do not really want to use it unless really needed. Something to look onto again and solve after Waterloo though.


We initially had issues about having to mirror pathplanner pathing, causing issues and possibly requiring us to do 2 separate paths per side for an auto, this issue took a while to fix but was eventually fixed by creating a custom python script that just mirrors the path.

Videos of some of the autos we have done, playing with various times and techniques so we can obtain a faster and more consistent autonomous

L2 “Link” run, even though it lasts slightly more than 15s in this video, we managed to get it down to about 13s at the conclusion of yesterday.

L2 2 game piece balance runs, a series of videos showing numerous attempts at trying to test this auto mode

One thing to note is that this practice field is in rough shape. One of our mentors had to hold the charge station up so it didn’t get stuck when we climbed (some of the videos they failed). The barrier isn’t straight and moves so it’s not even easy to align correctly at the start and there is only 1 mark to place game pieces down (where the cube was) so the cone was measured and best guessed.

So a lot of those near misses are seeming like they are poor field alignment. So hopefully later after load in today, we can get practice matches in to make little tweaks to the pathing.

Overall we are very happy with the results, this is the most advanced auto setup the team has had in its 13+ year history and it is something that is very significant to the team.

Other Stuff that happened in the 2 weeks

We have made pit collateral hopefully done in time for this event, showing the basic features of the robot when explaining them to judges or interested folks in the pits.

Also our 2023 robot page is up at: 2023 Season | Team 3161 - Tronic Titans

Telescope Extrusions CNC’d by a sponsor, unfortunately these won’t be on the bot for the official season, hopefully in the offseason it will be!


We swapped our green compliant wheels for custom gold wheels for the rest of the season.


Found a potential failure mode in our intake belts, we believe this is due to a lack of current limiting in the system and have implemented changes to prevent that for Waterloo.

In Conclusion

This week was full of work and dedication in order to prepare for our next event, and was very neat seeing what other teams have done for week 2 and week 3, we are really excited for what Waterloo has to offer since there are a lot of very strong teams in the lineup. As always, lots of luck and love to all of the competing teams this year. Make sure to check out our build thread soon for any other robot updates and our waterloo recap post!


Absolutely amazing work 3161! Im blown away with the progress you’ve made this season!! I’m hoping to be able to swing by Waterloo tomorrow afternoon and pick your brains on a few things :sweat_smile:.

Best of luck this weekend!!