[FRC Blog] 2022 Control System Reporting, 2023 Updates, and Beta Testing

Posted on the FRC Blog ,9/9/22 by Kevin O’Connor

2022 Control System Reporting, 2023 Updates, and Beta Testing

Written by Kevin O’Connor, FIRST Robotics Competition Senior Robotics Engineer

As all of you start gearing up for the 2023 season, the Control System Team is gearing up too! We’ve got a number of updates to share with you including Usage Reporting data from the 2022 season, two notes about vision targeting in the 2023 season, and information about Beta Testing.

2022 Usage Reporting

The FIRST ® Robotics Competition software has a feature called ‘usage reporting’ that tracks what WPILib objects are created in each team’s code and reports that data back to the field when the robot is connected. Data from the 2022 season can be found here. Some notes about the data:

  • The data has been anonymized. Team numbers have been removed and the data has been re-sorted so teams are not in order by team number. Teams are in the same order on both tabs.
  • We can only track the objects teams create in code. If a team creates extra motor controllers that aren’t on the robot, they will still be captured by this system. If a team creates motor controller objects of the wrong type, that wrong type will be captured by this system.
  • Some objects naturally result in double counting (e.g. Encoders use Digital Inputs).
  • Unlike most years where the data has been provided in a single form, this year the data is provided in two separate tabs. This is due to an anomaly that was identified in the Week Zero data that occasionally resulted in data being attributed to the wrong team. While we believe fixes made to the FMS software after the Week Zero event may have resolved the cause of this, it is prohibitively difficult to verify. To mitigate this, a second form of the data has been provided that shows what was reported in a team’s last recorded match. By sourcing data from a single match, the likelihood that a team’s processed data was actually from another team is substantially reduced.
    • On the “Largest Count” tab, counted objects and TRUE/FALSE show the largest number of any given object used in any one match (i.e. if a Robot had 3 Encoders in match 1 and 2 Encoders in match 7, 3 will be reported). This means that if a team that switched motor controller types, or IMUs, or anything else during the season, the sheet will show numbers for both devices. Language and Framework report what was used in the last recorded match.
    • On the “Last match” tab, all columns show the quantity or type reported in the last recorded match of the season for that team.

New Vision Technology

Since its introduction to FIRST Robotics Competition in 2011, retroreflective tape has provided a simple vision target that teams could easily reproduce at home and reliably distinguish at events in varying lighting conditions. While these targets have served us well, they do have some issues:

  • Require robots to use bright targeting lights that may be distracting or uncomfortable for volunteers, drivers and/or audience members
  • Can sometimes be difficult to distinguish from overhead lighting or video display boards depending on how the image is processed
  • Uses a special material that teams have to acquire to practice at home.

Vision technology has advanced a long way since 2011, so when we started designing the 2023 game two years ago, we thought it might be time to try something new. The 2023 field will contain AprilTag targets in addition to retroreflective targets (more on those below) with the goal of moving away from retroreflective targets in 2024, pending a smooth implementation this season. AprilTags are a system of visual tags developed by researchers at the University of Michigan to provide low overhead, high accuracy localization for applications such as robotics. We are going to be building in support for utilizing the AprilTag library to recognize these tags using the roboRIO (see info about Beta testing this support below) and expect that many community solutions will likely be able to detect these tags as well. While we are not planning on disclosing the number or location of the tags prior to Kickoff there are some things we can tell you:

  • Family: The 2023 playing field will use tags from the Tag36h11 family. There will be no tags from any other family on the field.
  • Size: The tags will be approximately an 8 ⅛ in. square. This means that the black square is 6.5 in. from outside to outside and should be printable by teams on any standard printer.
  • Material: The tags on the playing field will be made from matte vinyl to provide a blend of durability and resistance to glare and reflections. Based on our testing, we expect teams will be able to reliably practice with printed paper targets, but there are plans to investigate making official targets available for teams to purchase.

We do not yet have a file containing properly sized target images available. To get started with testing, the 200mm PDFs of 36h11 tags found here should provide a close stand-in.

New Vision Tape

Unfortunately, it seems we’re not phasing out the retroreflective tape quite soon enough. This summer 3M informed us that the 8830 reflective tape we have been using for years is no longer in production and would not be available in the amount needed for the 2023 season. After testing multiple alternative options, we have decided to use 3M 973-10 white retroreflective tape in 2 in. width for the 2023 field. While we wanted to provide this information early to help teams in planning, we recommend holding off to see what is in the Kit of Parts (we currently anticipate being able to provide this tape, likely in FIRST ® Choice) and how the tape is used in the game before deciding to acquire a significant quantity. While the performance is certainly a bit different than the 8830 tape teams are used to, the techniques and tools to detect it should be the same.

2023 Beta Testing

The Control System Team is again inviting teams to Beta Test this season’s software prior to Kickoff in order to help us iron out any bugs prior to the season. In addition to testing the continual year-to-year WPILib software updates, Beta teams will be able to try out the AprilTag integration with WPILib in all three major languages (though this may not be available in the initial Beta release).

The “Open Beta” format trialed last year proved successful, and we will be staying with that format again this year. This means that there will be no limit on the number of teams admitted to the Beta program. Teams will still have to complete an application and designate a small number of individuals to access the site where the beta software is going to be hosted. Any team that submits a complete, reasonable application will be accepted. Similar to testing in previous seasons, there will be a list of testing tasks and we strongly encourage teams to complete, and provide feedback on, these tasks in order to help us make sure the software is well tested prior to the season. Feedback must be submitted by early December for inclusion in the Kickoff release, but teams may continue testing until Kickoff.

The first release of Beta software is expected to be available around the second week of October. Teams completing the application prior to October 3rd should expect to receive further information about accessing the beta site on or before October 7th. Applications completed after October 3rd will be processed 1-2 times per week. The application process will close on December 16th to allow us to focus on preparing for the season.

27 Likes

Looks at fake stock ticker and sees Limelight puts at an all time high.

Way out of my league to know enough about it but the AprilTags seem really cool and something that is also more recognized by the general public for use.

10 Likes

Discussing the vision changes here: Visual Fiducials in Future FRC Games - #283 by marshall

FYI, for non-beta teams, PhotonVision still has beta builds that include AprilTags, so you can still test them out. (Don’t use the RIO if you can help it)

4 Likes

Our long national nightmare is over

16 Likes

Very curious to see how teams develop (be it by researching existing implementations or working from the ground up) methods to track the AprilTags. As we all know, lighting can vary substantially from event to event (and in some cases, match to match). With the retroreflective tape, the target was illuminated making it relatively easy to filter out most of the image by simply reducing the cameras exposure.

I know extremely little in the ways of computer vision (or programming for that matter), so perhaps lighting will be less of an issue than I’m anticipating. Very excited to see what comes of these changes over the next few years!

3 Likes

I believe one of the main benefits of these sorts of tags is they are easier to detect in adverse lighting conditions.

3 Likes

I am very curious to see how the different tag ids will be used in each game.

Just great… I’ve been forced to cancel our order of t-shirts with our new abstract logo design:

55 Likes

Hopefully, there will only be one of each id on the field, and they will be in fixed, visible positions, making it easy to reference the robot position off of them.

3 Likes

With the addition of visual fiducial’s could it could allow for extreme automation of movement allowing for extremely little driver control this year. This of course would be based on the location and amount of them on the field and processing power.

2 Likes

Yes, sort of. You can determine your robot’s position on the field fairly accurately, but because there’s 5 other robots and game pieces all over, that’s not necessarily enough to automate.

2 Likes

Yep. You also need to know the locations of the other robots and game pieces to formulate an effective motion plan.

Is there a consolidated list of what is in the 2023 Beta content? Will the existing 3rd party plug-ins be compatible or will we need new ones?

FWIW, I am intending to have an updated version of RobotPy available for this year’s beta, so if you’re interested in using Python this year sign up! Will be posting more on CD about this later this weekend.

3 Likes

I don’t know what lit a fire in Manchester, but next time I drive by I should check that the place is still there… they’ve been making so many good changes and moving so fast I’m shocked friction hasn’t bit them! How many years ago did @marshall try and retire retro-tape? I remember @solomondg doing a SIFT demo on a desktop PC strapped to a robot in 2017, how far we’ve come that a first party solution with fiducials is finally getting some love.

The time is in sight where there’ll be no more blinding green lights; I can hardly wait.

14 Likes

They took out “Cotton Eyed Joe”. “Blinding Lights” is next up.

9 Likes

Vendor dependencies are basically never binary-compatible from year to year, at a minimum they generally need to be re-built against the latest WPILib and build system even if nothing has substantially changed. If you encounter a 2022 vendor dependency that happens to work for 2023 that’s just sheer luck.

Most vendors do their best to have a beta version available soon after the FRC beta starts. We (CTR) will likely have ours available within the first week of beta. (Emphasis on likely, it’s beta for everyone :slight_smile: )

4 Likes

Planned for early beta releases (non-exhaustive):

  • AprilTags (obviously)
  • NetworkTables v4
  • C++20
  • Java 17
  • 3D geometry classes
  • ComputerVisionUtil class
  • Linear Time-Varying controllers for unicycles (Ramsete replacement) and diff drives

Maybe by late beta:

  • Optimization/trajectory optimization
  • Data log visualization tool (basic features)
17 Likes

Are we getting a new and improved toolchain?

That’s the plan (GCC 12.x)

1 Like