FRC NOMAD 6995 | 2025 Build Thread

Welcome to the NOMAD 2025 Build Blog! This is the 2nd year we are doing a build blog and we’re really looking forward to it!

Who is Team NOMAD?

Team NOMAD is an eighth-year community FRC team based in northern San Diego County, California. As a small team with usually about 15-20 students per year, we’ve embraced our size as a unique opportunity to grow together. Although this presents its own challenges with staffing projects, it allows us to cultivate an environment where everyone can explore multiple subteams and different aspects of robotics.

2024 Season Resources

Events

We are thrilled to compete in 3 regionals for the 2025 season:

Orange County Regional (Week 1)
Arizona North Regional (Week 3)
San Diego Regional (Week 4)

This will be the team’s first year competing in a Week 1 regional. We are working hard to prepare for the challenges ahead and will share more details about our preparations in a future update, so keep an eye out for further announcements as we approach the season!

What should you expect from us?

We will be providing updates multiple times a week during all stages of robot prototyping and development. So make sure to check back soon for our post after kickoff.

Like last year, we are open to questions, analysis and suggestions on our Build Thread, so please post them here!

In our next post, we’ll be sharing some goals we want to highlight, as well as what we have been doing to prepare for the 2025 season. Stay tuned!

32 Likes

Always happy to see NOMAD.

5 Likes

We’re always happy to see you too Andrew!

2 Likes

Always here ringing that bell icon for the 6995 build thread. This is one of my favorite threads each year!

6 Likes

I was expecting you to show up…

What did we do well last season that merits such high praise?

3 Likes

Excited to be playing with you in OC again! Pushing for week 1 is going to be interesting.

5 Likes

Indeed it will be interesting, especially for our build schedule, since historically we’ve had that extra week for strategy and software dev.

On the larger scale, my personal main interest has been in how the following regional pools will work out during the season—it’ll be quite fascinating how the early competitions shape these pools.

Can’t wait to dive into the REEFSCAPE competition with you at OC as well. Best of luck to 8033 as kickoff approaches!

2 Likes

yay 6995

8 Likes

I find y’all’s team fascinating from a resource allocation perspective. You build smart robots efficiently. As someone who historically builds dumb robots slowly, I’m trying to learn!

9 Likes

Thanks for the feedback! We’ll try to isolate and share some of our practices and elements of our situation that help us make good use of our workshop time. However, we have also identified that we need more workshop time in the first few days of season, which is something we haven’t had before.

1 Like

We’ve got half the puzzle figured out, but still end up making dumb robots fast. I’ll also be watching this thread.

4 Likes

What’s your definition of dumb/smart? I can personally speak to our work in automation and subsystem coordination. As for strategic design? We’re either good enough to execute weaker designs well, or we’re good at figuring out the right design on the first try. I’m not actually sure which.

5 Likes

I’d argue this doesn’t matter much, and arriving at a 6.5/10 answer quickly is good enough a lot of the time.

I was mostly hyperbolic with “dumb robots slowly”, but I certainly have some in my history. I think there’s a level of forethought that results in cohesive robots which 6995 has and 7525 is still chasing.

2 Likes

Software as a Design Concern

by @Amicus1, software mentor

Robots are nothing without the software to control them – software is necessary for every bit of robot functionality and capability.

Unfortunately, far too often, software teams have to deal with design decisions that overlook their needs, which lead to unnecessary challenges during robot development.

However, achieving harmony between the design and software teams isn’t always straightforward. On NOMAD, we try to actively bridge that gap as much as possible. In fact, software capability is a decision factor early in the design process, and the needs of our controls team help guide us toward cohesive and controllable robots.

What is Cohesion?

For the purposes of this post:

Cohesion - the ability of various parts of the robot to smoothly coordinate to perform a task.

Usually, game piece handling is the task requiring the most cohesion between degrees of freedom. We don’t consider the 8 motors of swerve to be a cohesion challenge because it’s effectively a solved problem and not a concern for our design team.

Examples of designs with cohesion concerns
  • Hand-offs that require one or both ends to be in a particular position. This relies on the position mechanism, is slightly complex to sequence efficiently, and is probably slow by comparison in practice when factoring in time needed to bring the mechanisms into alignment.
  • Designs with potential physical interferences if controlled incorrectly. This can be an arm hitting the floor before its hardstop, or an elevator colliding with an intake, etc. The best case is that every mechanism can be driven through its whole range without interfering with other mechanisms doing the same.
  • Designs with several necessary steps between receiving a game piece and being ready to score it. Though sometimes this is inevitable, generally, the more complex the sequence of touch-it/own-it/score-it, the trickier and slower the design will be to coordinate.

Cohesion is about the whole-robot integration. Even if you have perfectly controllable individual subsystems, an overall design with weak integration and coordination will struggle.

What is Controllability?

Generally speaking:

Controllability - the capability of each degree of freedom to achieve and maintain a given behavior quickly, precisely, and consistently.

Examples of designs with controllability concerns:
  • Mechanisms with significant backlash, flexibility, or feedback delay. If there is variation in the output that’s not being captured with feedback, the robot cannot account for it.

  • A fast but weak shooter pivot that struggles to handle the torques of shooter wheels spinning up or a game piece passing into the shooter. Example: our 2024 shooter pivot, where we had to strengthen the gearbox and the PID.

  • A pivot or elevator with too much mass being moved around, such that it’s hard to accurately and quickly position it. Example: our 2023 telescoping arm, especially with on-roboRIO motion profiling.

  • A pivot or elevator with too little mass being moved around, such that holding a game piece makes a significant difference in the mechanism dynamics.

  • A mechanism with mechanical resistance that is hard to model, such as an energy chain pulling a turret back toward a particular position Example: our 2022 turret, where the energy chain hung down and had to be lifted as the turret rotated.

  • A position mechanism where the encoder is too low-resolution to achieve the desired precision. Example: our 2024 shooter pivot needed an external encoder, since 18:1 and 42 counts per motor revolution only gave us about half-degree resolution.

There are many reasons why a mechanism might be hard to accurately tune, more than can be covered here. It is worth trying to eliminate well-understood issues early in the design process.

Before moving on, it is important to stress that cohesion and controllability issues in a concept are not deal-breakers. They must be balanced with the manufacturing and programming resources of the team. The issues must also be analyzed in the context of the game. If a given task does not require too much precision or consistency, perhaps a less controllable mechanism might be fine, especially if that mechanism works better for other requirements.

How We Prioritize Cohesion and Controllability

or, why programmers should do CAD review

We want to minimize risk and focus on design cohesion and controllability early in the design process, preferably before an archetype is even decided. One component of our approach to this is that our software lead and mentors evaluate each subsystem and archetype concept early in the CAD process.

Elements of the Review

  • Identify controllability and cohesion issues in the concepts.

  • Start a discussion about feedback for each mechanism (external encoder, zeroing, etc.)

  • Identify ways that a position mechanism could be reduced to a drive-to-hard-stop mechanism.

  • Evaluate the scoring sequence: steps and end conditions, independence of subsystems, additional sensors.

    • Simpler scoring sequences are better for autonomous performance and make bare-minimum functionality less complex.
Scoring sequence example from 2024

We decided against an architecture like Unqualified Quokkas, with an arm that had to go down, intake, stop the note before the shooter wheels, raise the arm, and then shoot it. Though the Quokkas and many teams made it work, my reaction as a programmer was that this sequence is nontrivial to program for autonomous, even with note-path sensors. It also has mutual exclusion between being ready to intake and ready to shoot, since the whole arm has to move between those states. With the arm also used for climbing, it was geared for torque, not for speed. This is a case where cohesion is not about doing everything with one degree of freedom.

Instead, our desired balance of mechanical simplicity and performance led to a focus on separate mechanisms with straightforward coordination.

|624x468.00000000000006

Our final design had more degrees of freedom than the Quokkas design, but was much simpler in sequencing in the most basic case: the shooter pivoted separately from the intake and could aim correctly as a default action, the intake could pivot down independently, and we simply spun up our wheels and ran every roller in our note path at near-max speed for the duration of our 4-close-note auto path.

We still ended up needing a note path sensor if we wanted to stop the note at the right spot (shown in the picture) before it went too far into the shooter. However, it was only a single beam break under the front fixed roller, and we were able to place it so that the note being just past the beam break meant the note was touching neither the intake rollers nor the shooter rollers, and both pivots were unobstructed. Our entire autonomous game piece handling was sequenced using only that sensor for detecting when the note had been received and when it was on its way to the shooter.

Conclusion

Creating a robot that operates efficiently and consistently on the field requires plenty of forethought. It is all too easy for designers to create something that is hard to control or coordinate, just because they are unaware of the needs and capabilities of the controls team. We address this by bringing our controls team leadership in early to make their needs known and to help the designers create a robot with a simple, efficient, and repeatable sequence of operation.

As a general takeaway, cohesion in design goes beyond controls feedback. If your team’s mentality is that the mechanical team just has to build whatever the CAD team designs, and the software team has to program whatever the mechanical team builds, and the drive team has to use whatever controls the software team designs, this is a recipe for struggle. Though we can’t fully reverse those relationships in the season timeline, it is best to consider each sub-team as a client for the previous one, not a customer. Communication across sub-teams is critical when creating something that meets everyone’s needs.

32 Likes

@Amicus1 Now that 6995 has had a chance to step back from on- and off- season activities, what is the biggest lesson learned from that season? How do you all expect that will shape approaching 2025?

3 Likes

2025 Preseason Code Release

During the WPILib Beta we started our Phoenix Swerve drivebase code. It’s been public on Github the whole time and will remain so, but just to be safe, here’s the link:

Robot-2025

We’ll share more about our tech stack this year as the season progresses.

1 Like

2025 Season Goals

Success in FRC isn’t about building robots – it’s about building a process. We believe that setting clear goals are essential for this process – and also because robots don’t build themselves (yet!). To set the tone for our 2025 season, we asked each of our sub-teams a few questions about the upcoming season:

  1. What is one goal for your sub-team for 2025?

  2. What is the biggest lesson learned from 2024? How will that shape your approach to 2025?

  3. What is one thing from the 2024 season and/or off-season your sub-team wants to continue or expand for 2025?

Build Blog Goals

Although we started as a mentor-written blog for our first year, we fell behind on posting. This year, we’ve made it a goal to consistently produce informative, student-led content to serve as a valuable source of knowledge.

Individual answers
  1. Produce consistent, informative content that can become a knowledge source for our own team as well as our Chief Delphi audience.

  2. We started this as a mentor-written blog for its first year. We fell significantly behind our posting schedule hopes. For 2025, we have a few students who will be writing much of the blog content.

  3. Before 2024 kickoff, we did a series of deep dives on perennially useful topics. We hope to be able to share similar posts during the season.

Video Production / Media Goals

Last year we learned that short vertical media tends to do better on our socials, while longer videos don’t do as well. To fill some other gaps, we’re also planning to integrate some promotional videos for our team as well as cross-platform content to engage our sponsors, attract future team members, and expand our audience.

Individual answers
  1. Create an advertorial-style promotional video for the team. This video will be similar to the official FIRST video and will feature interviews with students, along with clips showcasing our activities, such as building the robot and competing at regional events. The video will be 2-3 minutes long, and we plan to film clips during the season. We can put it on our website, and share it with sponsors and those interested in joining the team. In addition to this promotional video, we will also create a robot reveal video and a season recap video.

  2. The biggest lesson learned for 2024 is short, high-quality, vertical media typically receives more engagement on Instagram, while longer videos usually don’t do as well. In 2025, we plan to create four types of Instagram content: sponsor recognition, robot build clips, trends, and updates. These will be shared in two formats: short reels to reach a wider audience, and photo carousels to connect with sponsors and those close to the team. This strategy will help Instagram’s algorithm differentiate between the two types of content. If the photo carousels receive fewer views, it won’t negatively impact the performance of our reels.

  3. We will continue to build relationships with other teams so we can create videos that we can tag them in, as well as being tagged in their videos. Additionally, we will continue to explore cross-posting our videos on platforms beyond Instagram, such as YouTube Shorts, to reach a wider audience.

Strategy/Scouting Goals

Looking back at last year, we realized how important it was to make our own unique scouting approach so our data collection fits our needs. We’re planning to continue creating our own unique app and data collection this year. We’re also planning to train our team to scout with comprehensive training on data interpretation and our scouting methods.

Individual answers
  1. Train our new students to scout and train our returning students to be even better. We are aiming to provide comprehensive training on how to properly scout matches and interpret data.

  2. In the 2024 season, we tried multiple new scouting methods, including using other teams’ apps and the integration of schedules. However, we found out that these external processes and systems didn’t exactly line up with what worked best for our team. We learned that we needed to customize our own unique scouting approach so our data collection is properly tailored to the needs of our team.

  3. Although we learned that customizing our scouting approach works best for our team, we recognize the value of observing other teams’ scouting apps. This year, we’re also planning to continue looking into other teams’ scouting apps to gain insights into features and methods that could improve our own customized data collection.

Business Team Goals

It’s quite easy to wait and be told what to do, but because a lot of what business does is organization and management, it’s important to be proactive. This coming year, we’re planning to give each member an area of expertise to take charge of and train others on simultaneously.

Individual answers
  1. Develop a system to split tasks into categories and have at least one experienced person and one training person in each category. For example, someone experienced in grant writing could be training someone else in grant writing while also being trained in event planning.

  2. We learned that it’s easy to wait to be told what to do, but since a lot of what business does is organization and management, we all need to be proactive and take charge of different projects. So, in 2025, we plan to combine the previous two answers and give each business member an area of expertise to take charge of, learn for themselves, and then train others on. We also plan to have midweek virtual meetings to lay out a plan for the next workshop, so as to not waste time in the morning drawing up a new to-do list each week.

  3. Last year, we began to focus on training students in grant applications and chasing sponsorships. Previously, that had been a mentor-led field with student assistance. Finding and applying for established grants could be a focus area for a particular student in 2025, while forming connections with potential sponsors who don’t have a grant portal could be another focus area.

Software Team Goals

We learned last year that fixing issues of unreliable hardware shortcomings is often more expensive than improving the hardware. This year, we want to efficiently use our time and focus on our use of autonomous systems and continue using logging and simulation tools.

Individual answers
  1. Improve and increase our use of autonomous systems, both in and out of the autonomous period itself. We want to incorporate advanced software solutions to optimize our tele-op periods alongside our autonomous software routines.

  2. 2024 taught us that software can’t resolve issues stemming from unreliable or subpar hardware. Asking software to fix issues of unreliable or subpar hardware is often an infinite time sink without great results.

  3. Last year, we appreciated the value logging and simulation provided to diagnosing robot performance efficiently. We want to continue using logging and simulation to minimize time necessary on the robot. We are also expanding our usage of Kraken X60 motors and the CTRE ecosystem, which significantly improved our performance last offseason.

Mechanical Team Goals

Last year we learned how important it was to design electrically-solid robots (sufficient wire slack, account for system vulnerability, etc.). Prioritize building a durable, impact-resistant robot with solid wiring and continue to employ advanced fabrication techniques.

Individual answers
  1. Build a durable robot that is capable of taking heavy impacts while not losing its high speed functionality. A robust build is essential for high performance.

  2. In 2024, we learned how important it was to design robots that were easy to wire and had good cable management. Wire systems must include sufficient slack to prevent tension-related issues and account for the vulnerabilities of Ethernet systems to static discharge.

  3. We want to continue to expand our usage of advanced fabrication tools like 3D printing, CNC machining, and polycarbonate prototyping. We used all three of these quite effectively in our 2024 season and offseason, and they enabled us to create precise components for all of our robots. Manufacturers like Fabworks will remain central to producing our robots, providing us the ability to iterate and put a solid robot out quickly.

CAD Team Goals

During the 2024 season, we fell behind schedule on creating the robot design, which set back the rest of the technical teams and delayed our robot production. Since most of these problems stemmed from design interferences and clearance, we’re planning on employing top-down designing through layout sketches to mitigate this.

Individual answers
  1. Design a simple and competitive robot within our given timeframe, as well as implement a new part-naming and BOM system, which will hopefully improve the transition between CAD and mechanical.

  2. In 2024, we fell behind schedule, which set back the mechanical, and software sub-teams. Most of these problems stemmed from interferences and other clearance issues. To mitigate this, we have been working hard learning about layout, or “master”, sketches, which significantly helps with integration.

  3. One thing the CAD team would like to continue utilizing in the 2025 season is top-down design. Top-down design is a CAD methodology where the overall structure of the robot is defined first, and the individual parts & subsystems are designed within the framework. This is achieved through a series of layout sketches, which are then modeled around in their respective part studios. This methodology improves subsystem integration and makes our design process more parametric.


As we dive into REEFSCAPE, we’re committed to growing and achieving new heights. We’re super excited to share in this with our sponsors, fellow teams and the ChiefDelphi community!

11 Likes

Alpha Bot/Preseason CAD Release

As we get ready for kickoff, we’re excited to share our plans for the season and how we’re making changes to our build strategy to make the most of our time!

Alpha Robot

One major change we’re making this year is that we’re trying out an alpha bot approach for the first time. This is a prototyping robot built early in the season that is designed to test gamepiece interaction and handling.

The first goal of the alpha bot is to have a moving platform for prototypes, especially for intaking pieces at speed. In years past, pushing the game piece into the intake wasn’t a representative test. In prior seasons, our software team struggled to get enough time with the robot. Thus, we came up with the secondary goal of making the alpha bot drivebase identical to our final bot in terms of electrical and mechanical hardware for swerve. This will allow our programmers to begin working on autonomous pathing and testing from day 1, while the rest of the robot is being built.

CAD Release: Drivebase + Electronics

With this approach change in mind, we’ve already started preliminary CAD work on our drivebase for the season already: Onshape Link.

Over the past few weeks, we’ve developed a solid foundation to hit the ground running for next year’s game with a few key assumptions to guide our design. We’re planning for:

  1. A relatively flat field (terrainless)

  2. Fast driving is necessary (we are using MK4i L3+ Krakens)

  3. Heavy impacts likely

This is what we came up with:

Our drivebase is a compact 26”x26” brainpan-style frame using Kraken X60 MK4i L3+ swerve modules. Generally, we go with a smaller drivebase because we like to make our robots compact and durable without breaking the weight budget. We have thought quite a bit about electronics placement, and are almost finished with our final layout. Wiring pass-throughs, bolt locations, and pocketing remain on the to-do list. In addition to the structure of our drivebase, we have designed TPU cases for sensitive components (e.g. Rio, Pigeon, CANivore) as well as custom dust covers to protect our swerve gearboxes.

Detailed version below:

The drivebase we created is a brainpan style 26”x26” frame, with Kraken X60 drive and steer for MK4i L3+. Our CAD team spent some good time making sure the electronics layout would be easy to work on, with smart electronics placement, and cable management for all our wiring. We have made many 3D printed models for our electronics, to provide secure mounting for sensitive components like the Rio, CANivore, and Pigeon 2.0. TPU cases for all of these should hopefully both mitigate shock loads from bumper-to-bumper collisions as well as securely hold the electronics upside down, fastened to our brainpan.

In addition to the 3DP cases we have made for securely mounting electronics, we also looked to adopt dust covers for our swerve drive gearboxes. Last year, plenty of teams used dust covers like these to keep grease in and carpet dust (and occasionally some loose wires) out of their gears. Of the publically available cad models, we couldn’t find any that mounted Kraken x60’s facing inwards that worked for the L3+ ratio for MK4i so we made some. The top dust cap and camera mounts are slightly modified versions of 8033’s configurable MK4i:

Onshape Link

We’ve also made a case for the Orange Pi 5:

Onshape Link

This is a modified version of Redux Robotics’ case for the Orange Pi 5 which was tweaked to accommodate either a Pololu or Zinc-V buckbooster, to be assembled with plastic tapping screws instead of M3 hardware.


On kickoff day, we will decide if what we have created so far works for the REEFSCAPE challenge. If not, this was a great exercise to help us think about wire pathing and electronics layout. If we choose correctly, we have saved ourselves a week of CAD time. We’re confident this preparation will set us on the right course for our REEFSCAPE voyage.
We wish you all a great kickoff tomorrow. Good luck to everyone!

10 Likes