How do you make a robot reliable?

One of the largest issues our team had this year was having simple failures. Looking at teams like BREAD and Madtown at MBR we saw that they would have no reliability issues on field and I wanted to ask what are some things that contribute to that and how can a team get to that point?


There are tons of different factors, but one thing I want to say at the start - don’t feel pressured to compete at the same level as teams like 1323 and 5940, they are the best of the best and have years upon years of experience. With that said there are quite a few things you can do to help reliability.

  1. Try to use up to date parts, I’ve seen out of date components cause issues for teams in the past and its usually less of a headache just to buy a new up to date part than having to replace an old one at competition.
  2. Test your robot before comp, running driver practice can often find issues that were previously unknown (the more time spent driving, the better).
  3. Redundancy, if you can, try to have a backup component on the robot. If one part fails you still want to be functional.
  4. Cleaning, try to vacuum your robot out, loose metal shavings can cause a lot of pain.
  5. Maintenance, check for loose wire connections, check if your bolts are tight, and replace components if they are worn out etc.

With all of that said, your robot WILL break down. Every team has issues at one point in the season, its just about how you bounce back. You need to be able to quickly repair your robot in the heat of the competition. You will want back up parts and components.


Many reliable robots are ones built within the scope of the team. If your team has the resources and ability to make 3+ mechanisms, keep them all maintained, and execute them well, then you’re probably well on the path to making something reliable that works every match. We’re no Einstein team, but one of the big focuses this year for my students was to design a robot that was only about 2 mechanisms (besides drive train) and neither of them were new to us. We told ourselves we wouldn’t do swerve no matter how good it was because we lacked practice with it, and we cut any ideas that went beyond our strategy of cube only at all levels. This gave us a robot we could start finding the deeper issues with around Week 4.

Spending time in the offseason to do design practice and learn how different mechanisms are made in robust fashions would probably be of the most benefit. Was this your first year fielding any of the mechanisms you made for the 2023 robot (things like arms, intakes, drive base, etc)? Did you spend time researching these mechanisms if they were new to you, or did you refer to documentation and experiences from previous seasons for the more familiar parts of your robot?

Doing systems checks is always helpful as well. Dedicating time well before your first event to running the full robot, checking for potential hiccups, tuning, then pushing the robot to its limits does wonders for a team. Many of the reliable teams that you see at events have been testing these robots for weeks before they even show up. I like to think many of them have failed more times than our teams have even tried - but allowing time for that to fail in the lab, then adjusting and accounting for it, is what keeps those issues off the field.

At the end of the day, the robot you see on the field is a reflection of the experience, knowledge, and testing your team has put into it. If you’re not satisfied with any of those factors, what can you do to boost those aspects of your team’s culture this offseason?

Feel free to reach out if you have more questions!


You would actually be surprised at how many time top teams do actually have issues, the thing is that it’s hard to tell. Failures and malfunctions will happen no matter how well you have designed / built / programmed. The reason why these teams appear to almost never have reliability issues is because they properly manage and mitigate the risks of component failures. This is done in a few ways:

  1. Minimize points of failure. Make your robot rely on as few components as possible. Do you need a 3 joint arm, or can you get away with a single joint?
  2. Redundancy. If you have a single jointed arm that is your main method of moving your end effector, consider driving it with 2 motors where it will still be able to run with just one. If it only needs one chain, consider adding a second if one of them breaks. Or even on a larger scale, consider having two sperate collection mechanisms for example incase the one fails.
  3. Test and design for edge cases. Your arm might be able to hold the static load with a large factor of safety, but what if it got hit by another robot? And testing is not simply “did it work”, it’s “does it work after i run it 100 times”. Driver practice is key not only for your driver to improve, but also to see how your robot holds up over time.
  4. Perform Regular Checks Many teams go through a pre match check list before every match to make sure everything is ok. I’m sure there are plenty of examples on chief to look at.

This list could continue forever but imo these are the main things. Something I would look into is Risk Management and try implement it as a step in your design process. That way you can identify the key problem areas and use the above methods as mitigation.


Your design philosophy should include application FMEAs at a high level - think about how your robot can be abused. "What happens if we hit a wall with our intake out? How far can we tip without falling over? What happens when we run off the side of the charge station? Will our wiring get caught by someone’s arm? ". Assume everyone including your driver is trying to break the robot, and design accordingly.


Along these lines. Have a printed post-match / pre-match checklist.
If something not on the list happens, add it to the list.
Many of the times when we have had match issues, it’s when we didn’t go through a printed checklist (memory just isn’t good enough under match stress).

Some obvious ones as a start:

  • do all the chains have proper tension?
  • does pneumatic pressure build and hold?
  • do all of the controls perform the expected action?
  • is anything loose (esp wheels)?
  • are the bumpers properly fastened and sturdy?
  • Is the battery
    ** changed,
    ** fully charged,
    ** one marked for competition, and
    ** is it properly fastened into the robot?

Another helpful thing is just having time to test the robot before competition.

In my opinion the more you break on the robot practicing, the more reliable you will be at competition as you have figured out what is prone to breaking, you’ve fixed them, and you are better and faster at repairing them.


Make a robot you are confident you can finish in half the time. Are you competing week 1? That’s ~8 weeks from kickoff, so make a robot that you are confident you can complete (as in driving, scoring, auto modes, etc) by week 4 of build. Competing in week 5? Build a robot you can make in 6 weeks.

How do you know what to be confident about and what to guess about? Easy. If you’ve done it before, be realistic about how long it took last time and use that amount of time. If it’s new, consider trying something else or minimizing other aspects of your design.

If the robot you built this year wasn’t finished halfway between kickoff and your first regional, you need to reduce scope in the future. I know it can feel demeaning to be told to “do less” or that you tried to do “too much”, especially when the message is most spread from top teams, but it’s not meant to knock you down. Teams need time to grow, and that time cannot be skipped. Robots are complex, and what seems simple and straightforward in one regard may have hidden issues that only appear later down the line. Also watch out for the “one-time” failures. It’s easy to fall into the trap of looking at an isolated issue and claiming that the cause of the issue was a fluke and wouldn’t happen again. I’ve done this a lot myself. It’s easy to miss out on the core issues in your process that cause / don’t account for these “external” issues only to run into similar problems the following year. I was once on a team where we would have “unique, one-time, out-of-our-hands” issues every single year, and only looking back do I now see the systemic issues in our processes that made us susceptible to those issues.

tl;dr: Know what you can do, do what you know.


I just wanted to ask if there are any simple ways to fix minor reliability issues or small tweaks someone could make to their robot to ensure consitency? For example at MBR this year, 5940 (BREAD) had a dedicated member on their team who would simply zip tie the battery leads together to make sure that it wouldn’t come loose for teams on their alliance and some teams adding blue tape over unused ports on the RoboRIO to make sure no dust got stick in it.

1 Like

Keeping with the theme of batteries and reliable power connections, it would also be a good idea to make sure all robots on your alliance have a properly fastened battery strap that anchors their battery to somewhere on the chassis or superstructure.
Needless to say, it can get pretty inconvenient when one of your alliance partners becomes useless for the rest of the match once they become detached from their battery (just happened last weekend at Greater Boston actually).

In a pinch, you can make a pretty solid strap out of a carabiner, zip ties, and Paracord or string. In an even tighter pinch, duck tape will do the trick.

All these little details matter.

Battery connections, radio connections, wires in vulnerable places near mechanisms, placement of main breaker and critical components (i.e. pneumatics) . And this is before we get into software, mechanical design, or match play.

This all matters so much in the long term, one of the many reasons top teams stay on top, they pay attention to all the little stuff.


I find most failures come from the electrical system

  1. Check all connections for loose strands of wire that didn’t make it’s way into a connector otherwise you risk shorts (Use ferrules if you can)
  2. Do a light tug test on all connections to make sure they are connected properly, don’t pull so hard you break something though
  3. Tape off all exposed ports on your RIO and other devices
  4. Hot glue ALL your electrical connections and make sure you use the little clips on your CAN/PWM connections all the motors/controllers now come with! A recent one we discovered we didn’t do but failed on us in practice was the USB wire between the RIO and CANivore
  5. Zip Tie your battery connection together

Honestly it comes down to experience and learning from past mistakes.

For example, we didn’t crimp our battery terminals hard enough one time and they pulled out mid match, so now we have a Milwaukee battery lug crimper that I borrow to crimp battery lugs.

Another example is when I made some supports too small and they bent. Now they are thicker and bigger to prevent that, which I will apply to future designs.

And at the very least, just practice with your robot and practice hard. Find anything and everything that will break, and improve it


I have too much experience with unreliable robots, please let me tell you what I’ve learned.

Most importantly enclose and secure your electronics. Wires coming loose is the main concern. Ziptie it all down tight and cover it all up. We used a cut off milk crate. Oh, it looks like trash. It’s not pretty, but it worked. I cannot overstate how vital it is to keep your electronics secure. Check every little wire after each match; get paranoid about it. You don’t need a fancy ferrule crimping kit, just tighten it all down with zipties, who are your new best friends. We had zero electrical problems this year. It’s a career first for me.

Change the battery after every match. First thing after you get to the pit take the battery out and replace it with one fresh off the charger. If a battery gets ran down completely consider it garbage. Dodgy batteries will ruin you.

Drive trains are far more agile and powerful than they were my first seasons. Which is objectively awesome. But that means we’re all gonna have to beef up our bumpers. We took a big hit from a heavyweight robot our first match that knocked a gearbox out! So I think we’re going to use bumpers that cover the entire perimeter next year.

You’ve asked such a great question!

An important thing about systems checks.

Do them immediately after your match! We do them using the battery still on the robot from the completed match when we arrive back to the pit.

If the point of a system check is to identify issues, you want to identify those issues with as much time as possible to fix them.


On the software side of things, make sure to test edge case scenarios to be ready for anything.

This season one of our allience partners in an upcoming qual match came to our pits and asked us to disable our autonomous, we disabled most of the autonomous routine and the robot did not work in teleop for some reason.

I second the advice about solid electrical construction. Brushless motors, swerve, and an open field with incentives to traverse it rapidly made for a rough game this season, but as a CSA, I see issues in this area every year.

Ask teams your scouts identify as super reliable to show you their robot, when there’s time. Pay attention to all the details, especially everything on the primary power loop – all of your batteries/leads, main breaker, PDH. And, also everything on the path to power your radio (small fuses, RPM, PoE cable, …), your roboRIO, and any onboard Ethernet switch. And, be super careful with your CAN bus.

There are many ways to make things work, but far fewer ways to make them work reliably under these conditions, and damage can accrue over the course of a season. Be ready to make quick but solid repairs. When something odd happens, take the chance to learn as much as you can and really try to get to the bottom of things. Then, take the opportunity to improve processes, techniques, troubleshooting skills, etc. Be sure to pass along knowledge and advice as more experienced students graduate.

The less complicated, the better. It sounds counter intuitive…I think it works.

The other thing is make things modular. If you suspect it will break…make it easier to swap out.

And as someone has mentioned…HOT GLUE connectors! Glue them and that is something that you SHOULDN’T have to worry about. We are talking radio, RSL, and things like them.

Please no duct tape.

We wondered why our robot was driving funny. Turns out it had sucked in duct tape.