Team 3467 2025 Build Blog

2024 Off-Season Project: Black Cherry

This off-season, we built Black Cherry (a 1678 clone robot (link to their CAD) with various Windupifications™) as a practice project for the 2025 season. The goal was to experiment with the design practices of top-tier teams, refine our processes, and learn from the inevitable challenges that come with building one of the most complex robots to touch the Crescendo field.

Here’s a breakdown of the project and the lessons learned along the way:

The Why:

Summary

There was a combination of reasons that led to us deciding to build an offseason robot the most notable being:

  • Nocturne yearns for retirement. Our 2024 robot Nocturne had struggled to stay on the field since the end of the New England Championship. We used our alpha robot less than we did in 2023 due to the number of last-minute changes and wiring issues with that robot. We’ve put Nocturne through a little over 110 matches, and with the nature of the 2024 game, it was only a matter of time before it became very challenging to keep it surviving through the rest of the season.
  • 2025 Build Practice: We feel we are in a good position going into 2025 but still have some areas where we lack expertise, and it’s always great to get hands-on experience with the hardware and software of top-tier teams that you wouldn’t otherwise.

As for why we chose to replicate 1678 specifically:

  • Building an Elevator: Our team has not built an elevator since 2018, and that was not the most successful Windup machine :fearful:.
    image
    We have successfully avoided building an elevator since then, but we really needed to learn how to do linear motion right, especially in the age of COTS elevator solutions.
  • Over bumper intake: In past years, we’ve built a few over bumper intakes. The 2019 intake was before integrated encoders became the norm (used limit switches and an external encoder for control), and the 2020-2022 intakes were all pneumatically actuated. We’d never run a “simple” motor driven pivot using the integrated encoders on modern brushless motors.
    We know 2024 was the year of under bumper as the intake meta, but we saw this as a learning opportunity for future seasons given the prevalence of over bumper intake in most games.
  • New skills to develop: The 1678 CAD used round tubing with tube nuts, a rack-and-pinion for the shooter pivot, a new bumper mounting system to try, etc. Really from the ground up their design was full of small details and ambitious packing we’ve never dared try in-season before.

What we Changed:

We made a few changes to the mechanical design of the robot:

Roller inserts

We elected to use the 6328-style rollers for the Intake and Amp systems.

Elevator changes

The one system we redesigned from the ground up to use more COTS products and try to limit the number of unique machined parts Citrus used was the elevator. We used several parts from The Thrifty Bot elevator kit, WCP elevator bearing blocks, slightly different sprockets, and used a common hex shaft at the top to support the upper set of sprockets. We somehow overlooked that this hex shaft prevented us from running the energy chain the way 1678 did, preventing us from fitting under the stage by ½”:

We re-designed to add some printed parts rather than custom plates to support the top of the elevator:

Compared to the original Citrus CAD:

Shooter changes

We swapped the lanturn gear that 1678 uses on their rack and pinion for some “normal” spur gears. We didn’t love the toothpick plates they use to support the outside of the pivot so we thought that doubling up on the rack/pinion might help give the support they’re getting from the toothpick plates.
Citrus Version:

Our version:

We also added a torsion spring pushing up on the shooter from the Y-split to try to reduce slop in the shooter pivot.

Y-split rollers

Throughout the season, 1678 switched what wheels they were using on their Y-split rollers. We tweaked it from what they had in CAD, adding some SpinTakes. We found this to be more consistent for us during testing.

LaserCAN

The release of Grapple Robotics LaserCan interested us and we decided to use it on the Y-split instead of traditional beam breaks. So far the only issues we have had with them are note dust getting stuck in the centering wedges that they are looking through. Our solution has been to turn down the sensor zone and clean them out frequently.
Something we love about these sensors is the live feedback they provide when powered with a flashing amber light indicating if the sensor is tripped and increases as objects get closer.
Great feature and fantastic way to check your systems when disabled. Check them out from The ThriftyBot!

CANopy

Custom Swerve CAN PCB adapter boards (CANopy). More on these in the future.

The Nubbin'

We had issues with the surgical tubing running from the Y-split to the intake being fragile. Eventually, someone thought of the idea of putting a simple “tongue” on the front Y-split roller (similar to what we used on our 2022 intakes). The tongue uses pulleys driven off the roller and an elastic ziptied from the tongue to a structural hex shaft. We are very happy with how this turned out after our initial tests. To start the match, it rotates back so the gray roller is tucked behind the main intake roller until we deploy the intake.

The nubbin is spring-loaded with surgical tubing pulling the hex standoff at the back toward standoff here marked in yellow:

Centering Wedges

3DP Y-split centering wedges: Instead of bending polycarbonate plates to create centering wedges like 1678 did, we designed a 3D print that sits against the Y-split plate and makes use of captured nuts for fastening.

Other changes
  • Lightened Belly Pan (for wire management)
  • Spray Painted Citrus Bot! (if you won’t do it @Michael_Corsetto then we’ll paint it for you)

Challenges:

This robot is extremely compact, which served us several novel challenges, especially for our electrical team. There are 6 independent degrees of freedom to work around. Some of these don’t move during a match, but pivot out of the way to access other areas of the robot.

Challenges
  • We initially did not pass the Isolated Frame requirement in R611. Our Orange Pi mounting was a little too compact with the screws contacting the frame of the robot. Thankfully this was discovered during a robot inspection at the Governor’s Cup but it made for quite a surprise.

  • We miscounted our PDH slots! Originally we planned to use the Mini Power Module to power sensors on our robot. Citrus did not… and we learned why. In total there are 20 Krakens on this robot and on wiring the last mechanism we realized our 20th slot was filled. We changed over to using two VRMs to power devices.
    |540x587.5

  • Because the robot is just so compact, the RIO and PDP are stacked on top of each other, both of which are underneath the Y-split: The Citrus Y-split is built to flip out to give access to the electronics, but that still leaves the PDP very difficult to access. To solve this, we designed and printed a custom 3dp hinge so that we could flip the RIO out to do quick fixes:

Failures at the offseasons

At the NH Governor’s Cup and River Rage, we experienced:

  • Three forms of Intake failures

    • Bent intake plates. Typically the intake still works fine if it’s bent, but taking a hard hit causes greater impacts to other components.

    • Pulleys breaking has been the pain point of the intake. At the Governor’s Cup, the pulleys in the 2” leading polycarbonate roller broke repeatedly. We had two issues with the first being the flanges of the pulleys breaking easily. We suspected when taking hits and the intake was flexing the belts were putting a high degree of strain on the flanges until they failed. The second was a 3D printed spacer to retain the need bearings had an OD slightly too big so it could contact the printed pulley spinning next to it. We’d see it melt into the pulley or start spinning itself and melt into the lexan creating a live axle that could cause the bolts holding the roller on to back out. For River Rage, we moved to use a flanged bearing from Amazon, made the pulley wider to allow the belts to walk, increased the flange thickness, and adjusted our printer settings.

    • At River Rage we saw an increased failure in small pulleys with the ⅜” Thunderhex bearings being too large to leave enough material support. For our upcoming events we are moving from PA6-CF20 to TPU and transitioning the bearing on the pulley side to a bushing so we can increase material support.

  • Because of all the intake failures, by River Rage, we had 2 spares built up. From our third qualification match through Match 11 of playoffs, a new intake was put on for each and every match. The last over-bumper intake we did in 2022 was a lengthy swap we couldn’t always get done in time.
    The Citrus intake is designed to be swapped quickly with just 6 bolts.
    We timed a few of our swaps as sub-5 minutes: 2 minutes to remove/install the intake and 3 minutes for wiring. We highly recommend teams check out their CAD for how they’ve designed the mechanism to be removable quickly (good given we’ve had to swap it so frequently). Overall, very happy with what we’ve learned through adapting 1678’s intake and it’s been a big confidence boost that despite so many failures, every time we get the robot back on the field with a working intake in minutes.
    |540x719.9716313590912

  • Our LaserCANs lost power in the playoffs at River Rage from a cut power wire.

  • In some intense matches, the shooter can go askew and skip teeth in our rack. When this happens we can still Feed, Amp, and Trap but it is limiting.

The Results!

Governor's Cup
  • At the Governor’s Cup, we ranked 5th and were the 1st overall pick by our friends 5813 Morpheus and picked 7674 RaiderBots to round out our alliance. We lost in the first round of the lower bracket and fought our way to the Finals tiebreaker to win our third Governor’s Cup in a row!
River Rage
  • At River Rage, we introduced four new drivers to our qualifying rounds and all did a great job taking Black Cherry for a spin. We ranked 20th, were the first overall pick by our friends 6328 Mechanical Advantage, and selected 4905 Andromeda One and 8724 Mayhem from the Great Pumpkin as the 3rd and 4th members of the alliance. We then went undefeated in the playoffs!

We’ll be taking Black Cherry this weekend to Battle of the Bay and Girls Behind the Glass up in Alton, NH for the final matches of our Crescendo season!

Would We Do This Again?

No… just kidding.

For the 2024-2025 team we have no regrets going so outside our comfort zone. This project was a huge learning experience for the students and mentors. We saw younger students step up and have safe space to learn when cloning simple mechanisms while our more experienced students were challenged with redesigning entire systems from scratch. We tried a plethora of new techniques in the most ambitious robot we have built in 15 years.

The project also built up more respect for 1678 ) and how easy they make it look). It was also a good reminder of why machines this complex are not for us right now.

We’ve found great success the past few seasons focusing on “W8” and simplicity in terms of what we’re confident pulling off in season. This experience with new mechanisms and styles of construction will stay with us, however, and maaaaaaaybe we’ll have an additional degree of freedom in our future designs (this is NOT a license to design a turret next season @burbozo3467)

For other teams considering an offseason robot project we highly recommend it. In 2026 we may not go as complex as a 1678 machine, but a simpler concept will likely become our new offseason training method.

In the coming weeks expect a few more updates on software, project management, and other aspects of the project we may have left out.

60 Likes

GIF of this feature in action:

14 Likes

13 Likes

We’re all honored that you committed so hard to this build, and impressed at how well you pulled it off. The attention to detail really shines though here. The 6328 rollers, SpinTakes, and especially the nubbin are such great changes to this robot. I showed some kids a picture of the nubbin this weekend at CCC and the response was a unanimous “why didn’t we do that?”

This is the failure mode that caused us to add the popsicle sticks on the outside of the shooter. I think it happened in all 3 finals matches at SVR.

We press 1/16" dowels into those pulleys to help do some torque transfer through the print layers and keep pulleys from breaking at that flange. We still see failures sometimes, but way less often.

Welcome to the struggle bus :slight_smile:

17 Likes

I wonder why you and Citrus had so much challenge with these. As far as I can tell they’re similar in design to ours, and we didn’t have any of ours fail (and they were only PLA). Were the failing pulleys on the rollers that were subject to impacts outside the perimeter?

Same. It’s nice to be in good company. I’m still shocked the shooter can flex enough to skip 12DP teeth. I like the Citrus solution with the “popsicle sticks” joining the sector gear center with the outside of the pinions - I wish we had thought of that @BordomBeThyName.

1 Like

The pulleys we are breaking are on the over bumper intake outside of the frame perimeter.

The forces the intake can see in this game are brutal so we expected that the pulleys to be the weakest point across the intake. To save some money, we used this project to consume our stockpile of metal Versa Roller. So our intake has a little less give than Citrus’ who was running polycarbonate rollers. That certainly isn’t doing us any favors.

The pulleys we ran in-season on our under bumper intake were fine. I think we only broke less than three after our first district event.

2 Likes

Gross :face_vomiting:

Who am I kidding, this robot looks amazing, I’m very impressed with how the clone turned out, and all the ways you improved upon the design. Thanks for the great write up and including Citrus in y’alls journey.

Best,

-Mike

20 Likes

It could just be a factor of how thin the section is. We see the most failures on this plane of the smallest intake pulley.

I am allotted one good idea per month, that was March’s.

14 Likes

Maybe. It looks like ours is a little thicker in the middle. Did you have a second bearing on the inboard side of the pulley (we used TTB thunderhex bushings):

1 Like

How was the bushing retained? Press/Glue/something else?

CA (instant) glue yeah. We also had to run a sanding flap wheel through the bushings because as-bought they were a little too tight on the shaft.

1 Like

We have a very different stackup. We run a 1/4" button head through the whole thing, and use my absolute least favorite design element which is a nylock that you have to tighten just enough to retain everything.

Red - button head
Blue - nut
Green - 1/4 x 1/2 bearing
Purple - Spacers to isolate contact to the inner race

4 Likes

One thing I picked up from @Kevin_Ainsworth (who in turn got it from someone else I think) is to press some thin dowel pins through holes in that thin section (if you can squeeze them in) to stabilize the print on those fused layers (assuming FDM). Another option would be to press a thin walled aluminum pipe that is larger than the ID of the bushings/bearings. All you are trying to do is take the torsional loading off of those layers. Not a surprising solution, but a useful trick.

In 2023 the 2451 battering ram and intake had those pins. I dont think there was a failure all season.

4 Likes

Awe. It helps to read.

I do rememer Mike coming by the 2451 pits at 2023 worlds, not sure if that trick was known to you all at that point or discovered independently. Either way it is useful knowledge.

2 Likes

OK yeah - that would be much more vulnerable to radial loads, because it doesn’t have the continuous axle through the whole thing. All of the bending moments have to pass through the 3D print.

2 Likes

FWIW we didn’t design to dowel pin the pulley originally.
At SVR, we broke the pulley and didn’t have a spare.
We used two small drill bits which were subsequently cut to length (Dremel and abrasive wheel) inserted into the holed drilled by that bit and two part, quick dry expoxy to bond the broken halves together.
It was a pit fix and it worked for the remainder of the event.
…I’m hopeful that particular pulley is still intact somewhere in the shop!

…we have not replaced the two drill bits in our set :frowning:

3 Likes

What was the split of Citrus code vs Windup code on the bot by the time you hit River Rage? I’m assuming over 90% Citrus, but figured I’d ask.

Assuming mostly Citrus code, any high-level learnings on the coding/controls front that you could share?

You made the bits drill their own graves!!!

1 Like

more like a tomb!