Software to consider for FRC - quasics/quasics-frc-sw-2015 GitHub Wiki

Note: The following was prompted by a question raised on the SCRA Discord server. Content is still very much under development.

Software Team laptops? Driver's stations? (*) Lab machines? Work at home? Notes
WPILib tools Yes Yes (for us) Yes Yes These are the basic tools used to write/build/deploy code for the robots.
Subversion tools Yes Yes (for us) Yes Yes Used to get/update copies of the team's code base, and to check in changes to it.
FRC Game Tools Yes Yes No No These include the driver's station software (obvious usage) and the tools to do updates to the RoboRio OS, etc.
Balena Etcher Yes Yes (for us) No No Software to take an OS image (e.g., for the RoboRio2 or a Raspberry PI) and "burn" it onto an SD card, so that it can be installed as a new OS build on some device that uses an SD card for storage. (Note that the original RoboRio doesn't use SD storage, so updating those can only be done with the NI tools and a USB cable; this is also needed to finish updating a Rio2, to set the team #.)
Radio configuration utility Yes Yes (for us) No No Used to reprogram/configure the radios on an FRC robot.
Native compiler Maybe
(Yes, for 2024)
Maybe (for us)
(Yes, for 2024)
No Maybe
(Yes, for 2024)
Needed if you're working with a Romi or XRP "training" robot, or writing other code that will run on your machine.
Putty SSH tools Yes Yes (for us) No No Used to log onto the vision coprocessors (e.g., Raspberry Pis or Beelink hardware) when configuring them or doing other work
Win32 Disk Imager Yes Yes (for us) No No Used to create backup images of SD cards (e.g., for RasPis being used as vision coprocessors), which can then be restored using "Belena Etcher".
Astyle or clang-format Optional Optional (for us) Optional Optional Code "beautifier" tools that can be used to update the formatting of code in order to keep things consistent across files. (Mr. Healy usually drops a config file into projects, which can also be used by tooling in VS Code.)
Arduino IDE Optional Optional (for us) Optional Optional The development environment for writing/debugging programs to run on Arduino hardware (e.g., for demos, or when prototyping with new sensors, lighting options, etc.)
ProtonVPN Optional Optional No Probably not Meant to allow us to get at sites that are on the default "blocklist" for the district, but have required FRC-specific documentation (or tools, VSCode extensions, etc.) that are needed for the team's work. Using ProtonVPN does require an account, but Mr. Healy has set one up for the team's use for this purpose; see him for details if needed.
TODO: other software XXX XXX XXX XXX XXX

Additional information:

  • (*) A laptop that was only used as a driver's station could get along without this, but our team tends to equip all of our laptops identically. If you're setting up a "pure" workstation, then anything marked as "Yes (for us)" can arguably be skipped.
⚠️ **GitHub.com Fallback** ⚠️