Skip to main content

32 posts tagged with "build season"

View All Tags

· 2 min read

Hello all, apologies for the lack of blog post on Tuesday. I left early for slightly personal reasons and no-one thought to make one in my absence. But I am back today, and ready to recount the events of the night:

  • Auto Work (Me, Griffin, Rowan): A lot of auto work was done. I just made two autos and then fought with Github for a while. The other two were making paths until they started working on the sensor instead.
  • Sensor Research (Zach, Griffin, Rowan): Initially this was just researching the minimum range of the planned distance sensor. More specifically, what happened when something got within minimum range. Then it turned out that we would need to download the required vendor libraries onto every single computer. We decided not to use that sensor. (For those in the future who might be looking for distance sensor options, it was the Revlib 2M Distance Sensor.) Then we started working on a new sensor and it's stuff until that broke.
  • More Limelight Work (Serena, Davey, Rowan): We are finally out of limelight hell for the moment. Averaging math was done so now we can have accurate positioning. Neural net stuff can wait.

Es geht. (I'm learning German.)

· 2 min read

Today was a day of sensors, limelights, and pain. Especially the latter, because I have a headache.

  • Indexer Work (Me, Xiaohan):Tthe indexer is the part of the robot responsible for transfering the notes from the intake to the shooter. It now has a subsystem and a mostly functional command.
  • Sensor Conversation (Xiaohan, Rowan): We have determined what sensors we would like on the robot. We want a distance sensor, a Hall Effects sensor, and three limelights.
  • Path Automation (Griffin): The robot now has a variety of paths it can use for activating the amp or climbing.
  • Automatic Climbing (Serena): The climber has been revamped to deal with the fact that one arm of the climber will come into contact with the chain first. This involves a voltage reader.
  • Limelight work (Me, Davey, Zach): This was one very long annoying process. The morning was spent trying to train a neural net to recognise a ring, which kept failing to recognise the difference between a normal note and a high note. After lunch was more attempted training of the limelight before we found a site called Roboflow, which we thought would solve our problem. It did not, as none of the available file types were compatible with limelight. Then it turned out that we were just importing images to train something else, and that either there are two different .vpr files or that the limelight is compatible with Vocaloid. Then the limelight OS needed to be updated. Then we had to spend another hour screwing around with file types to try and get CVS. Then it turned out that Tensorflow (both standard and lite) files don't like getting turned into anything. The day ended without it being done.
  • Autoaim Stuff (Rowan): The autoaim works now.

· One min read

Today the intital driver tryouts occured for the season. They were using Moirai, which has been stripped down to just a drivetrain. I wasn't really involved outside of running batteries down to the gym. Anyway, other things that happened:

  • Intake finishing (Griffin and I): We finished the intake, adding all of the various methods to RobotContainer. In addition, Evan showed us how to make the triggers actually work properly and not throw unsupported exception errors as soon as we turned it on.
  • Limelight work (Xiaohan, Zach, Davey, Griffin, Rowan): We have twin limelight capability now. The plan is to either use one for Apriltag tracking (so the robot knows where it is) and one for a neural net (so it can automatically pick up game peices), or both for Apriltags.
  • Autoaim testing (Rowan, Serena): The autoaim program was going to be tested, but then a drive motor seized up. We are 99% sure it's a motor problem, not a code problem.
  • Angle math (Rowan): Rowan did the math to find the shooter's required angle based on distance.

I need sleep.

· 2 min read

Today, half the team went to normal practice while the other half went to Week 0. Week 0 is a special competetion to make sure that FIRST's game software works/get newbies up to speed with normal competiton stuff/any other reason I missed. I was on the group that stayed at Great River, so I will let someone who went to week 0 explain what happened there. Things that happened back at the shop:

  • Light stuff (CornerGremlin and Rowan): There wasn't a ton to do, so people tested light strips.
  • Endeffector stuff (All three of us): This has a lot to do with the week 0 stuff. After some testing, it was determined that the ski plow did [DATA EXPUNGED] to either stablize the charging station or push cones and cubes around. CornerGremlin and I messed with the motore to get them working (although not without first accidently breaking them). Rowan actually programmed the thing so that it would work with autonomos.
  • Arm stuff (Rowan and I): Given lack of other stuff to do, we started working on the arm. Rowan did most of the work, I offered random bits of adivce and patched an issue with the controller. Said work included firmware updates and testing.

(If anyone who went to the competetion wants to write something, Put Description Here).

One more practice until Duluth.

Also, tomorrow is my birthday!

· 2 min read

Outside is a snowstorm, inside is music. CornerGremlin is apparently just our musician and tradition-person. Not sure how to describe it, but she has created several things likely to be programming traditions in the future. These include:

  • The creation of the programming mantra. The core is 'save, deploy, enable', but it is changed at every practice.
  • The song list! Programming now listens to music. It is selected by people writing songs on the board, and then playing them via speakers hooked up to someone's phone. For now, that someone is CornerGremlin. The speakers are from the film studies class usually happening in this room.
  • The Pink Panther Loop. The first song played is always the Pink Panther theme. It is played on repeat until someone gets annoyed. We keep track of how many loops and who turns it off. The current record is 16 loops until I stopped it. Future posters, update this if the record changes. For actual programming stuff that happened today:
  • Week 0 Packing (Me): I packed a box of stuff for the Week 0 group. It had laptops, charging cables, spare AprilTags, PS4 controllers, and etc.
  • Light Work (New Trio): The light work of today involved actually planning where the lights will go. There was also wiring.
  • 'SuperSubsystem' (Yours Truly™): Yours Truly™ created a subsystem example code containing all subsystems. It can work with anything, although I do wonder which specific bits would work if you hooked it up to a board.

Don't expect anything on Thursday, in-person practice probably isn't happening due to snowstorm.

· One min read

Today was a day of sound and light. Mostly because CornerGremlin's new job is to play music. Anyway, things that happened:

  • Lights for human player (Augie and CornerGremlin): We worked on setting up a light strip to match the color of either a cone or a cube so the human player knows what to put on the field.
  • More Skiplow Testing (Mowi and Yours Truly™): This allows us to move a cone or cube, as well as stabilize the charging station. Today's edits were to the control assignments.
  • Feature Flags (Yours Truly™, code merged by Captain 23): Yours Truly™ was working on feature flags all week, check the Valentine's Day post for details.
  • Musical Motors (Mowi, Yours Truly™, Augie, and CornerGremlin): We all worked on getting the motors to play music, because they can do that. The easy part was picking songs and converting them to CHRP. The hard part was getting the syntax to work with a Phoenix Pro. It still isn't done.

Now Programming has music to equal Build! Ops kind of just does very dramatic karaoke.

· One min read

We're fixing a bot and the walls are off white. Things that happened today:

  • General Subystem Patching (me): I spent the first chunk of practice fixing random things in the code. I started with testing the skiplow. The one error encountered was caused by the solenoids being mapped to 2, 3, and 1 instead of 5, 4, and 3. Afetr that, I fixed the arm code to use CANSparks instead of Talon SRXs.
  • Lights (Rowan): Rowan spent practice working on the lights code. Turns out that circuit boards don't play nice with code for an entire robot. But he got it working and purple. And then make them dance.
  • Swerve Drive (Captain 23 and CornerGremlin): These two continued working on the swerve drive. We now have more autos! Captain 23 also worked on hooking up Apriltags to the swerve drive.
  • Yours Truly™ was at drive practice for most of the day, if he wants to add programming stuff that he did he can do that. Edit 2/18/2023: Yours Truly™ was working on feature flags.

You know, I thought that next week was Duluth. Brain fart!

· One min read

The most important thing that happened today was filling out the We See You form. It's a short form the mentors send out to make sure that everyone on the team is being seen and heard, as well as to give team members a chance to reflect. Other things that happened today:

  • Code Polishing (Me): This started as SkiPlow testing, but then went in a completely different direction. By ther end of practice, I had synced all the subsystems to one PS4 controller and deleted the now-defunct intake code.
  • Cancoders (CornerGremlin and Mowi): CornerGremlin and Mowi made it so that all of the wheels would line up when the robot was enabled.
  • Feature Tags (Yours Truly™ and Quinn): Yours Truly™ will explain this. And that I will! Feature flags are essentially togglable subsystems. The drivetrain, arm, skiplow and more have a little slider to them. I think its pretty cool and each files get saved to the RoBorio and so you set them once and only go back to change them anytime you have to turn on or off a subsystem.
  • Lights (Rowan): Rowan continued working on the ID lights from last time.

Take care!

· 2 min read

This blog post has two sections. The first is written by "[REDACTED]", and covers some of the events prior to the extended bag day section of practice. The second is by Yours Truly™, and covers the events of the latter half of practice. Things that happened earlier:

  • Pneumatics testing (me): I spent the morning helping Build test pneumatics by enabling the robot. After a few instances of accidentally pressing spacebar and e-stopping the robot, I just left a laptop with build.
  • Skiplow solenoid adjustment (me): I adjusted the skiplow from the existing double-solenoid system to singe solenoids, as well as allowing the left and right arms to move independently.
  • Limelight coordinate testing (Yours Truly™ and Captain 23): Yours Truly™ and Captain 23 spent most of practice working on turning the limelight coordinates into something usable. I will let Yours Truly™ describe it in more detail.
  • Swerve Preferences (New Trio): The new trio named all the swerve modules. This means that it's easier to trade out modules if/when they break, because then each module can simply be assigned as front left/front right/back left/back right.

Apologies, I have to leave now.


Yours Truly™

HAHAHAHAHAAAA I stayed past the 4:00 time and Oh boy did not much more get done.

We wrapped up the rest of the work, I continued working on the limelight, the whole lining up this is really cool. Rowan also worked on lights, but they weren't working by the end of the night so who knows how thats gonna go, but I have high hopes. Actually, the idea for lights this year is kinda cool with our lights being in a yellow triangle for cones and a purple square for cubes. I'm kinda excited for how this one is gonna go! :) besides that, the Swerve tuning got done-ish and some more planning (For when we get the robot) got done. I had to leave at 8:30 and the robot was not even done at the time. I'm writing this currently as an afterthought and I was what, 15 minutes early? The robot got done at 8:45 and we await the robot on Valentines day!

· One min read

Today was a very happy day for programming, as a lot of code got merged from the branches on to main. This included code for the endeffector, arm, and most importantly the Swerve Drive. It is finally done!

On the other hand, the more things change the more they stay the same. We worked on limelight code. Captain 23 started work on telling the robot to move to given coordiantes. I was supposed to work on turning limelight data into coordinates, but I just added a network table and tried to parse the syntax from the website.

Meanwhile, Yours Truly™, Rowan, and Mowi worked on PID tuning the old TEST robot. That went well. CornerGremlin was working on swerve wiring.

Unraveling.