An important source of information for decision making in FIRST® Robotics Competition is the “Usage Reporting” data collected by the control system. This feature tracks what WPILib objects are created in each team's code and reports that data back to the field when the robot is connected. This data was used extensively in the RFP and development process that led to Systemcore in addition to driving rules changes, WPILib decisions, and more.
Usage Insights
While we will continue to analyze the data in various ways over the coming weeks and months, here are a couple initial insights from the Usage Reporting that might drive change moving forward:
- Only a single user of the KitBot code used the separate classes version, moving forward we will only provide the inline classes version (with a new Blocks version likely added as well)
- A handful of older devices requiring explicit legality reported low usage in 2026 (<1%) including Talon, Venom, and Victor SP. We’ll look into whether we should remove these from the rules to reduce the size of the list. This is not quite as straightforward as the 0 usage devices we removed last year, so we cannot yet commit to whether we will remove them or not. More information will be released later this year.
- Pneumatics usage remained quite low this season (~3.5%). The pneumatics section of the rules is quite substantial, driving complexity for teams and inspectors, so this low usage will drive a review of whether we should make changes to re-incentivize pneumatics use or remove it entirely.
Usage Data
Data from the 2026 season can be found in this zip folder (file automatically downloads). 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. Network Tables client data has been removed.
- 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. A very small number of clearly erroneous entries (e.g. 255 USB cameras) were corrected, but errors of this type certainly still remain.
- Some objects naturally result in double counting (e.g. Encoders use Digital Inputs).
- Counted objects and TRUE/FALSE show the largest number of any given object used in any one match (i.e. if a robot plays match 1 with 3 Encoders and match 7 with 2 Encoders, 3 will be reported). This means that if a team switched motor controller types, or IMUs, or anything else during the season, the sheet will show numbers for both devices. Items like Language, Framework, and Dashboard report what was used in the last recorded match.
- The Quest data is inferred from NetworkTables client names. The “Other cameras” column is a conservative estimate based on NetworkTables client names. These may not capture all uses of these devices.
As noted above, we will be using this data over the coming months and share out updates of any changes to legal devices prior to Kickoff.