Releases: wpilibsuite/allwpilib
WPILib 2022.1.1 Beta 1 Release
Getting Started
This is the initial beta release of WPILib for the 2022 season. This requires the 2022 v2.2 roboRIO image (either roboRIO 1 or roboRIO 2).
Check out what's new for 2022 and jump directly to the WPILib installation guide.
A list of known issues with this release can be found here and in Beta 1, the following are broken:
- Romi support does not work
- On-robot debugging does not work (sim debug works) (wpilibsuite/vscode-wpilib#471)
- Deploying to a roboRIO 2 fails with
Missing Target!
. As a workaround, addcheckImage = false
to the roboRIO block in build.gradle (wpilibsuite/GradleRIO#536)
If you're starting from a 2021 robot project, you will need to import it to create a 2022 project. The import process is particularly important for 2022, as it will try to make a number of automated corrections for the various breaking package moves that happened in 2022.
MD5 Hashes
314554398cb4876d26ab5a111867f5d1 WPILib_Linux-2022.1.1-beta-1.tar.gz
e981f73d3cccc1163b1a3539693f215d WPILib_Windows32-2022.1.1-beta-1.iso
1e2195890ec19e36be63d93852f50adc WPILib_Windows64-2022.1.1-beta-1.iso
79a7fb0fe32b773ed4c643ba160dee48 WPILib_macOS-2022.1.1-beta-1.dmg
SHA256 Hashes
6f28db5f3efcc2cf87826d529b2dea5cffcd8202d6a44c03e17b3dda60d62a32 WPILib_Linux-2022.1.1-beta-1.tar.gz
def1a5b874f85e9c55d586f81ae2a30896b2d6d2816aa44ddc5734c5ebfbd343 WPILib_Windows32-2022.1.1-beta-1.iso
95bca0c7de6723cb2011515096738dd5366a187477dfbf204ec598d6ac2231a4 WPILib_Windows64-2022.1.1-beta-1.iso
cc2bcbb7b77567ed30a66c21fc1e2b35e4e1dbf3b5ba21250e5600ef99114168 WPILib_macOS-2022.1.1-beta-1.dmg
WPILib 2022.1.1 Alpha 3 Prerelease
v2022.1.1-alpha-3 Version 2021.1.1-alpha-3
WPILib 2022.1.1 Alpha 2 Prerelease
Alpha release for use by vendors only.
- Requires 2022 image (v2.x)
Errata
/usr/local/frc/bin/frcRunRobot.sh
must be edited on the 2022 Rio image (see below) for programs to run- Need internet connectivity on initial build (Maven artifacts currently missing from installer)
- Simulation launching doesn't work
- C++ tools don't work
frcRunRobot.sh fix
The last 3 lines of /usr/local/frc/bin/frcRunRobot.sh
are:
/sbin/start-stop-daemon --start \
--pidfile /var/run/natinst/FRC_UserProgram.pid \
--make-pidfile --exec /bin/bash -- \
-l -c "exec $PROG $ARGS 2>&1 | FRC_ConsoleTee | tee /var/local/natinst/log/FRC_UserProgram.log"
The last line must be edited (as admin) to remove "exec", resulting in:
-l -c "$PROG $ARGS 2>&1 | FRC_ConsoleTee | tee /var/local/natinst/log/FRC_UserProgram.log"
WPILib 2021.3.1 Release
This is an update release of WPILib for the 2021 season.
The documentation for WPILib is located at https://docs.wpilib.org/ (if you have trouble accessing this location, https://frcdocs.wpi.edu/ is an alternate location with the same content)
If you're new to FRC, start with Getting started.
If you're returning from a previous season, check out what's new for 2021 and jump directly to the WPILib installation guide.
A list of known issues with this release can be found here.
What's New in 2021.3.1 (since 2021.2.2)
WPILib
- HolonomicDriveController: Fixed atReference() behavior (#3163), fixed initial heading behavior (#3290)
- (C++) Added RobotController::GetBatteryVoltage(); this already existed in Java (#3179)
- Added SimDeviceSim constructor overloads (#3134)
- Added DoubleSolenoidSim and SolenoidSim classes (#3177)
- Require non-zero positive value for PIDController period (#3175)
- Change KOP drivetrain simulation weight to 60 lbs (#3228)
- Fixed Compressor sendable properties (#3269)
- FieldObject2d: added setTrajectory() method (#3277)
- AnalogEncoder: added channel constructor (#3273)
Math
- Added methods to concatenate trajectories (#3139)
- (Java) Significantly speed up trajectory loading (#3257)
- (Java) Added kg-lb conversions to Units.java (#3203)
- Added custom residual support to EKF (#3148)
- Added pose estimator overload for vision and std dev measurement (#3200)
- Fixed order of setting the gyro offset in pose estimators (#3176)
- Fixed typo in quintic spline basis matrix
- Removed ControllerUtil (#3169)
Commands
- RamseteCommand: Output zero if command is interrupted (#3216)
- (Java) Change CommandBase.withName() to return CommandBase (#3209)
Examples
- Fixed Ramsete Controller example (#3142)
- Made DriveDistanceOffboard example work in simulation (#3199)
- Used more logical elevator setpoints in GearsBot example (#3198)
- Fixed odometry update in SwerveControllerCommand example (#3310)
CameraServer
- Added polled support to listeners; Java VideoListener now uses a Java thread (#3133)
- Added USB camera change event (#3123)
HAL
- Added function for changing HAL Notifier thread priority (#3218)
Glass / Simulation GUI
- Plots
- Field2d enhancements (#3234)
- Added support for pose lists > 255/3 in length
- Improved drag selection, especially with closely overlapping objects
- Drag selection of corner now also highlights center of object with smaller circle
- Added multiple object display styles (box, line, closed line, track)
- Line and arrow settings (color, weight) are now configurable
- Added tooltip for object name, index, x, y, rotation
- Added context menu for pose edit/add/remove
- Can now view/edit in feet or inches as well as meters
- Object selectability is now configurable
- Fixed duplicate names (#3233)
- NetworkTables
- Fixed crash on Windows caused by long double arrays (#3242)
- Fixed setting of empty double array (#3208)
- String chooser: Clear value of deleted entries (#3178)
- Don't block GUI when changing settings (#3226)
- Allow disable of server option in settings (#3227)
- Added "copy to clipboard" button in log view (#3274)
- Ensure window will be initially visible on screen (#3256)
- Sim GUI
PathWeaver
- Added the 2021 field image (wpilibsuite/PathWeaver#208)
- Added an option to go back to the Welcome screen (wpilibsuite/PathWeaver#222)
- The default path now defaults to 25% of the field width and height (wpilibsuite/PathWeaver#226)
- Waypoint properties Y coordinate now matches WPILib coordinates (bottom left is 0,0) (wpilibsuite/PathWeaver#217)
- Editing waypoint properties now no longer results in a save popup if nothing is changed (wpilibsuite/PathWeaver#229)
- When a new path is clicked on, the first waypoint is now selected (wpilibsuite/PathWeaver#218)
- Added dark mode (wpilibsuite/PathWeaver#231)
- Drag and drop fixes (wpilibsuite/PathWeaver#256), (wpilibsuite/PathWeaver#251)
- Work around , separator issue in some locales by forcing US locale (wpilibsuite/PathWeaver#257)
- Resize alert dialogs to fit contents (wpilibsuite/PathWeaver#240)
- Renamed "Path Group" to "Autonomous Routines" (wpilibsuite/PathWeaver#219)
- "Reverse" now reverse the waypoints in the path to make the robot go backwards, rather than altering the waypoint order (wpilibsuite/PathWeaver#227)
- Fixed bug with exporting non-meter units as meters (wpilibsuite/PathWeaver#259)
GradleRIO
- Updated image mismatch error to be more user-friendly (wpilibsuite/GradleRIO#495)
VS Code
- Require a valid folder name and team number when creating a project (wpilibsuite/vscode-wpilib#443)
RobotBuilder
- (C++) Fixed export of Xbox button (wpilibsuite/RobotBuilder#380)
- (Java) Fixed declaration of SpeedControllerGroup (wpilibsuite/RobotBuilder#385)
- (C++) Removed duplicate subsystem includes in RobotContainer (wpilibsuite/RobotBuilder#386)
- (C++) Fixed type detection (wpilibsuite/RobotBuilder#387)
Installer
- Use new location for downloading VS Code (wpilibsuite/WPILibInstaller-Avalonia#164) (also fixed in 2021.2.2 updated artifacts)
Hashes
MD5 Hashes
e0c152da3834a22093aa3c475e565a27 WPILib_Linux-2021.3.1.tar.gz
47682d4a782135cc40227cdb40401503 WPILib_macOS-2021.3.1.dmg
b1657cdb177ec7969a1f83500b3ac7ad WPILib_Windows32-2021.3.1.iso
298d52a77aedea9d50c74d0a8e0fe990 WPILib_Windows64-2021.3.1.iso
SHA256 Hashes
1443a74be28e25d254720532fcad26e1742d5c2830fdf335e72d524bfba72d73 WPILib_Linux-2021.3.1.tar.gz
4e30c81a3e898551d07aff90d7b0f26bdc4cfb646f133c7b904926c7dc29bb2c WPILib_macOS-2021.3.1.dmg
0d6d9af9c8579fbf0e1c88f8d4596982d28bedd447855573504d462f846ea7e1 WPILib_Windows32-2021.3.1.iso
b56c3b9dd9d26393015c71ede8033ee4b1ec85f65b871a7e6f17258dbc8e54b8 WPILib_Windows64-2021.3.1.iso
WPILib 2021.2.2 Release
This is an update release of WPILib for the 2021 season.
The documentation for WPILib is located at https://docs.wpilib.org/ (if you have trouble accessing this location, https://frcdocs.wpi.edu/ is an alternate location with the same content)
If you're new to FRC, start with Getting started.
If you're returning from a previous season, check out what's new for 2021 and jump directly to the WPILib installation guide.
A list of known issues with this release can be found here.
What's New in 2021.2.2 (since 2021.2.1)
WPILib
Simulation GUI
- Fixed macOS 10.14 compatibility
- Fixed window scaling on macOS retina displays (#3135)
- Added right click popup menu for keyboard joystick settings (#3119)
Math
- Fixed Rotation2d equality operator (#3128)
Examples
- Fixed typos in SwerveControllerCommand and MecanumControllerCommand examples (#3104)
- Fixed segmentation fault in GearsBot C++ example (#3111)
- Removed negation of ArcadeDrive in the C++ Getting Started example (#3102)
GradleRIO
- Deploy C++ programs with permissions to set real-time thread priority (wpilibsuite/GradleRIO#486)
RobotBuilder
- Fixed InstantCommand when no subsystem is specified (wpilibsuite/RobotBuilder#366)
- Fixed C++ export of XboxControllerButton (wpilibsuite/RobotBuilder#369)
- Make subsystems public in RobotContainer (wpilibsuite/RobotBuilder#370)
What's New in 2021.2.1
WPILib
Simulation
- Added support for setting maximum value for keyboard joysticks in Simulation GUI (#3083)
- Added SimInt and SimLong wrappers for int/long SimValue (#3066)
- Added reset() method to SimValue (#3064)
- Documentation improvements (#3079)
Math
- Added optimize() method to SwerveModuleState (#3065)
- Added RKF45 integration (more stable than Runge-Kutta for systems with large elements in A or B matrices) (#3047)
- [C++] (BREAKING CHANGE) Changed from std::array to wpi::array to enable compile time size checking of array parameters (#3087)
Bug Fixes
- [C++] Added missing function RoboRioSim::ResetData() (#3073)
- [examples] Don't continually set setpoint in PotentiometerPID examples (#3084)
- [examples] Fixed StateSpaceDifferentialDriveSimulation and SimpleDifferentialDriveSimulation example trajectories (#3081)
- [sim] Fixed wouldHitLowerLimit() in elevator and arm simulation classes (#3076)
Glass / Simulation GUI
PathWeaver
- Added field images for the 5 Infinite Recharge @ Home Autonomous Challenges (wpilibsuite/PathWeaver#200)
RobotBuilder
- Set Subsystem name for C++. This allows LiveWindow items to be grouped by subsystem (wpilibsuite/RobotBuilder#356)
Hashes
The builds have been reuploaded as of 3/24 to resolve an issue with VS Code Downloading.
MD5 Hashes
AE84CB6A74D840A43644B4072C64B923 WPILib_Linux-2021.2.2.tar.gz
D1B6A6BD77987ECFC7B4A1E26C3B7A92 WPILib_macOS-2021.2.2.dmg
88650D703A23421B5DAF64CE423AB920 WPILib_Windows32-2021.2.2.iso
FCAD169766CB295A8848407059A55D25 WPILib_Windows64-2021.2.2.iso
SHA256 Hashes
DC9730C87D82634001209937010FF9810016101D0315684CD40F60423402BA5F WPILib_Linux-2021.2.2.tar.gz
11F70C4DDF0AE55701DFDDBC19412746D8B538B0397756363AE6B19CDD897C3B WPILib_macOS-2021.2.2.dmg
671B683CA92AE4087E1990C6E792261B5E625A5BDD370465676BA07D45BDD7DD WPILib_Windows32-2021.2.2.iso
123C6A656CF683CC39815709A40022E14A7DD8665C1EB0541E95A0F7C418E8CD WPILib_Windows64-2021.2.2.iso
WPILib 2021.2.1 Release
This is an update release of WPILib for the 2021 season.
The documentation for WPILib is located at https://docs.wpilib.org/ (if you have trouble accessing this location, https://frcdocs.wpi.edu/ is an alternate location with the same content)
If you're new to FRC, start with Getting started.
If you're returning from a previous season, check out what's new for 2021 and jump directly to the WPILib installation guide.
A list of known issues with this release can be found here.
What's New in 2021.2.1
WPILib
Simulation
- Added support for setting maximum value for keyboard joysticks in Simulation GUI (#3083)
- Added SimInt and SimLong wrappers for int/long SimValue (#3066)
- Added reset() method to SimValue (#3064)
- Documentation improvements (#3079)
Math
- Added optimize() method to SwerveModuleState (#3065)
- Added RKF45 integration (more stable than Runge-Kutta for systems with large elements in A or B matrices) (#3047)
- [C++] (BREAKING CHANGE) Changed from std::array to wpi::array to enable compile time size checking of array parameters (#3087)
Bug Fixes
- [C++] Added missing function RoboRioSim::ResetData() (#3073)
- [examples] Don't continually set setpoint in PotentiometerPID examples (#3084)
- [examples] Fixed StateSpaceDifferentialDriveSimulation and SimpleDifferentialDriveSimulation example trajectories (#3081)
- [sim] Fixed wouldHitLowerLimit() in elevator and arm simulation classes (#3076)
Glass / Simulation GUI
PathWeaver
- Added field images for the 5 Infinite Recharge @ Home Autonomous Challenges (wpilibsuite/PathWeaver#200)
RobotBuilder
- Set Subsystem name for C++. This allows LiveWindow items to be grouped by subsystem (wpilibsuite/RobotBuilder#356)
Hashes
MD5 Hashes
2f7c551bcadd1c4adcb82f066f145175 WPILib_Linux-2021.2.1.tar.gz
b506714010c31c743a5bd37fd286677b WPILib_macOS-2021.2.1.dmg
d430473984e84e622fad76f643c054da WPILib_Windows32-2021.2.1.iso
4f7407f8a34f8bc9fae8d4c16099df5b WPILib_Windows64-2021.2.1.iso
SHA256 Hashes
79a48e98d75c0b7ec11d12c40b3d86a2c0b9464d06641d2d9539f9430889f0e1 WPILib_Linux-2021.2.1.tar.gz
1bde5e860245a6922d695c7be7363ce804f89dc49428f8c8a7cd15e8849c59af WPILib_macOS-2021.2.1.dmg
8a0fcfae9f3eed70b33ab9a56f60a1c7c03e5cf78763256a4c7675a5d20fbc89 WPILib_Windows32-2021.2.1.iso
388d25a0b0cc312546df1c00f51b87c1552ed87eb7367cd2ed058faf6170c0af WPILib_Windows64-2021.2.1.iso
WPILib 2021.1.2 Kickoff Release
This is the kickoff release of WPILib for the 2021 season.
The documentation for WPILib is located at https://docs.wpilib.org/ (if you have trouble accessing this location, https://frcdocs.wpi.edu/ is an alternate location with the same content)
If you're new to FRC, start with Getting started.
If you're returning from a previous season, check out what's new for 2021 and jump directly to the WPILib installation guide.
A list of known issues with this release can be found here.
MD5 Hashes
0cec128110d0a91fd76738f20590a185 WPILib_Linux-2021.1.2.tar.gz
a3bbdc8ac5bd15afdfa37bcfd04f9643 WPILib_macOS-2021.1.2.dmg
ccdef9ab133d08acd924fabf12948a56 WPILib_Windows32-2021.1.2.iso
06ffe5360c06972b5607f4d288035cf2 WPILib_Windows64-2021.1.2.iso
SHA256 Hashes
4ce16d9002674528ffb5b1019fc199d7089886477e08bb5d8bc183915ce2ca25 WPILib_Linux-2021.1.2.tar.gz
15f287032590ca6bd2e50bc7536e021df01658ec1d4eb6f08ebcedcb6db7417c WPILib_macOS-2021.1.2.dmg
d367e7e4ca0c5cbf3bb5764ccb70c8a62cb64e7692b9af98c752a7f62b609020 WPILib_Windows32-2021.1.2.iso
2a72f16dc2ee098b1871d2ec8ef2ef9baa70f08bf606cada1690c92dae8fe585 WPILib_Windows64-2021.1.2.iso
WPILib 2021.1.1-Beta-4 Release
Getting Started
This is the beta 4 (pre-kickoff preview) release of WPILib for the 2021 season.
If you're new to FRC, start with Getting started.
If you're returning from a previous season, check out what's new for 2021 and jump directly to the WPILib installation guide. The 2021 release uses a new download format and installer application.
A list of known issues with this release can be found here.
If you're starting from a 2020 robot project, you will need to import it to create a 2021 project.
MD5 Hashes
b17672b78778ec7d48ca6dfa787e4b78 WPILib_Linux-2021.1.1-beta-4.tar.gz
3c0154a5507ff7affb4d18d5687a5b5d WPILib_macOS-2021.1.1-beta-4.dmg
32284015f23b250428b1b6ef886d886a WPILib_Windows32-2021.1.1-beta-4.iso
8e2ceaed85b4afafbbd3aaf9a9b13dc1 WPILib_Windows64-2021.1.1-beta-4.iso
SHA256 Hashes
62abaa5aed5e11d76023d618141a101d54a96242d832cb6ccdf5442e21bffb20 WPILib_Linux-2021.1.1-beta-4.tar.gz
ffe0a9c93ae3bb2c9815f82b9f939c8eb58c4f387ee671fba31388e44bd677cf WPILib_macOS-2021.1.1-beta-4.dmg
1064f3705f7217b66a06747117d2cb4303be6438530e049c956fae5a2f827ba3 WPILib_Windows32-2021.1.1-beta-4.iso
48b454b9a2e806ba9304cf8d6df1cb359a8737732834c860d3b334b4a8398744 WPILib_Windows64-2021.1.1-beta-4.iso
WPILib 2020.3.2 Release
Getting Started
Download the appropriate file for your platform and see the installation instructions at Getting started.
For this release, it's okay to skip reinstalling Visual Studio Code, JDK, and the compiler if you already installed them with a previous release.
After you install the update, VS Code will prompt you when opening an older 2020 project whether or not you want to upgrade it to 2020.3.2.
What's Changed In This Release (since 2020.2.2)
WPILib
Java
- TrapezoidProfile: Fixed aliasing of m_initial to result in calculate() (#2284)
- Added more detail to RuntimeLoader failure message (#2309)
- Fixed null check order in SendableRegistry (#2314)
- Added methods for getting the color of an AddressableLED (#2366)
C++
- Removed "Set Camera Server Shared" message (#2285)
- Added missing include to ShuffleboardEventImportance.h (#2310)
- Added support to circular_buffer for types that are not implicitly convertible from int (#2350)
- Fixed two cases in circular_buffer where a reference was being returned to a constant (#2350)
- Made units of TrapezoidProfile public (#2342)
C++ and Java
- Don't create a duplicated state at knot points when generating trajectories using quintic splines (#2307)
- Added setEnabled method to RamseteController (#2313)
- Added hasElapsed and advanceIfElapsed functions to Timer class. We encourage teams to consider using these functions instead of hasPeriodPassed, which has the confusing behavior of resetting the timer--advanceIfElapsed has the same functionality as hasPeriodPassed. If you want to only check that the time period has elapsed, use hasElapsed instead (#2322)
- Fixed DifferentialDriveVoltageConstraint for tight turns with zero velocity (#2341)
- Fixed notifier race that could happen with very fast notifiers (#2370)
- Added a method for releasing a waiting interrupt (#2347)
- Added a way to access NetComm's SendConsoleLine function (#2337)
New Command Framework
- [C++] Fixed POVButton (#2294)
- [C++] Fixed ParallelRaceGroup multiple calls behavior--the Java version was correct, but the C++ version would only run once (#2339)
Documentation
- Added new speed controllers to shuffleboard docs and fix a few bad links/typos (#2288)
- Fixed DriveSubsystem.getHeading() javadoc (#2282)
- Added missing references to "f" in PIDSubsystem javadoc (#2318)
- Added note that only a single instance of ADXRS450 is supported (#2349)
Simulation
- Added support for naming I/O in the GUI. Nearly any name in the GUI (e.g. "PWM[0]") can be renamed by right clicking on it and changing the name (#2292)
- Added 2D field view to the GUI. The field image and robot image can be loaded or just a wireframe used. The robot can be moved and rotated with a mouse click + drag. The robot position is settable in robot code via the Field2d class (#2261)
- Changed Filesystem.getDeployDirectory() to src/main/deploy in simulation (#2293)
- Fixed ADXL345 and ADXL362 simulation Y value (#2332)
- Added SimulationInit and SimulationPeriodic functions. These can be used as an easy way to add code that runs only in simulation (#2377)
Examples
- Fixed GearsBot log methods not being called periodically (#2280)
- Fixed RamseteCommand RobotDrive watchdog (#2298)
- Added feed-forward and slew rate limiting to advanced drive examples (#2301)
- Examples which use SendableChooser now set a default option (#2361)
Templates
- Added missing methods to Timed and TimedSkeleton (#2306)
PathWeaver
- PathWeaver paths that used different units than meters would cause issues with WPILib trajectory following. For new projects, PathWeaver now defaults to converting to meters in the exported file, regardless of the units used in the project. For backwards compatibility, projects created with earlier versions will default to exporting in project units, but a warning is displayed recommending the setting be changed (wpilibsuite/PathWeaver#180)
RobotBuilder
- Replaced deprecated SendableChooser addObject with addOption (wpilibsuite/RobotBuilder#205)
Shuffleboard
- Fixed theme plugins (wpilibsuite/shuffleboard#645)
SmartDashboard
- Fixed StringChooser not showing up if a default wasn't set (wpilibsuite/SmartDashboard#133)
GradleRIO
- The Java simulation task now prefers the WPILib JDK and warns about potential missing runtimes (wpilibsuite/GradleRIO#401)
Visual Studio Code WPILib Extension
- Added setting for selecting a default extension (wpilibsuite/vscode-wpilib#349)
Known Issues and Workarounds
A list of known issues with this release can be found here.
MD5 Hashes
3984ead5799eec22f8a7edcdd904a3e7 WPILibInstaller_Windows32-2020.3.2.zip
d7001f51d247046310cf9dd56d133a95 WPILibInstaller_Windows64-2020.3.2.zip
c36048b7ed925d7914603c09722085f1 WPILib_Linux-2020.3.2.tar.gz
75ab40cde15893c898d6340f7f3edc44 WPILib_Mac-2020.3.2.tar.gz
SHA256 Hashes
eb6099eb64f1af081ed144da44aa0d2a7036a9ab58888f76426a1edbd22e132c WPILibInstaller_Windows32-2020.3.2.zip
65698bc0933b35763b6d62c0fb729634495102a1d7aedadd994dad66b772f4a5 WPILibInstaller_Windows64-2020.3.2.zip
3f915be4acd76eafa0d4db751c2eff3da97cac9233e5d58b78ae0dd44f2ad478 WPILib_Linux-2020.3.2.tar.gz
e1aa02d7026c923d4b2c8f32c5ec1872f7ef903ca27652af279f79d19cbd5f15 WPILib_Mac-2020.3.2.tar.gz
WPILib 2020.2.2 Update
Getting Started
Download the appropriate file for your platform and see the installation instructions at Getting started.
For this update, it's okay to skip reinstalling vscode, JDK, and the compiler if you already installed them with 2020.1.2.
After you install the update, vscode will prompt you when opening an older project whether or not you want to upgrade it to 2020.2.2.
What's Changed In This Release (since 2020.1.2)
WPILib
Java
C++
- Implement missing definition of PIDController::SetPID() (#2239)
- Don't add CommandBase to LiveWindow (#2255)
- Fix default command name (#2256)
C++ and Java
- Add Axis enum to XboxController (#2253)
- Fix typos in color names (#2265)
- Hook old and new commands into LiveWindow (#2053)
New Command Framework
- [C++] Fix JoystickButton and POVButton (#2259)
- [Java, C++] Fix CommandScheduler.cancelAll() when called from outside the run loop (#2251)
- [Java] Make Button class concrete (#2244)
Documentation
- Fix search in Javadocs (#2229)
- Clarify AddressableLED constraints on number of drivers and LED string length (#2231)
Simulation
- Default simulation voltage to 12V with user rails active (#2224)
- Handle save file having window size=0 (#2260)
- Fix SPI DIO count (#2272)
PathWeaver
- Fix waypoint arrow rotation (wpilibsuite/PathWeaver#164)
- Add field image for 2020 Infinite Recharge field image (wpilibsuite/PathWeaver#172)
- Fix error handling when exporting paths (wpilibsuite/PathWeaver#169)
RobotBuilder
- Fix frc namespace for CustomComponents (wpilibsuite/RobotBuilder#195)
- Fix case of Requires in C++ comments (wpilibsuite/RobotBuilder#193)
Known Issues and Workarounds
A list of known issues with this release can be found here.
MD5 Hashes
d9f2bc088b67b980f9669121dec23f72 WPILibInstaller_Windows32-2020.2.2.zip
4491e22ec4b439f9b2129bcc3bf1fb16 WPILibInstaller_Windows64-2020.2.2.zip
d0aca2f554f60564d01c167237a18f5b WPILib_Linux-2020.2.2.tar.gz
7cf11509193e75cd8325b4a6a409923c WPILib_Mac-2020.2.2.tar.gz
SHA256 Hashes
c9880322381e1271192be4dfac30631400c92e594bcd97e4685685f540a36097 WPILibInstaller_Windows32-2020.2.2.zip
19af78f5108a163f6633a8985bd6f1af8910904b7129921498d0d9fc613163cd WPILibInstaller_Windows64-2020.2.2.zip
132fd4208b4b56c0aa2f3b80131964b9ddf01ad5fd7b46bc3edd07a75448a612 WPILib_Linux-2020.2.2.tar.gz
00ab33d58a7497411688d5085e65cf874385bbcfead5d566bdad5c2dc183338b WPILib_Mac-2020.2.2.tar.gz