Repository navigation
Releases: wpilibsuite/allwpilib
Release list
WPILib 2027.0.0 Alpha 7
This is an alpha release of WPILib for the 2027 season. Please join the discussions regarding Systemcore alpha testing at https://github.com/wpilibsuite/SystemcoreTesting/. This release incorporates hundreds of changes since alpha 6, including a number of breaking changes that will require code updates. Some notable changes:
- The main class has reverted to the 2026 approach (a factory loader); this will require a manual fix when upgrading from a previous 2027 alpha release (see below)
- SmartDashboard, SendableChooser, and Sendable APIs have been replaced with Telemetry and Tunables APIs. The new version of SendableChooser is called Selectable. While wpilib-docs has not yet been updated, API documentation and initial migration guides from the 2026 APIs are available for telemetry and tunables
- All constants (including enumerated values) have been changed to ALL_CAPS style
- The desktop GUI tools and simulation GUI now use SDL rendering and gamepad access for consistency with the 2027 Driver Station
- Commands v3 Mechanism is now an interface instead of a class
- Gamepad face buttons have been renamed and there's now a default deadband on axes
- Catch2 is now the default test framework for C++ (instead of GoogleTest)
- DriverStationDisplay has been added--this is a text display integrated into the DS that supports ANSI escape codes
- Update to C++23. MSVC 2026 is now required for C++ on Windows and G++ 14.x is required for C++ on Linux. wpi::expected and fmt::format have been replaced with std::expected and std::format
- The WPILib AprilTag and CameraServer libraries have been moved to vendordeps. AprilTagFields is now part of an integrated Fields class
- Integer (raw) timestamps are now nanoseconds instead of microseconds. Datalog and NT still use microseconds in files/network comms.
- Alert moved to wpiutil and has added functionality; usage reporting also moved to wpiutil. Joystick warnings are now alerts
- Updated hardware support (e.g. brownout, quadrature encoders, counters)
- All CAN device classes now take a CANPort enum
- More package moves in Java and header moves in C++. Some geometry classes moved to shape, Preferences moved to preferences
- Native Arm64 Installers are included for Windows and Linux.
Vendors are working on releasing updates to sync with this release. Alpha 6 and prior vendordeps will not work with Alpha 7. Systemcore image 14 is required for this release. FIRST Driver Station Alpha 7 is also required for this release.
If you're starting from a 2026 or earlier 2027 Alpha robot project, you will need to import your project to create a 2027 project. The import process is important, as it will make a few automated corrections for some breaking changes. It is also necessary to import vendor libraries again, since older vendor libraries must be updated to be compatible with 2027 Alpha 7 projects. If you're upgrading from an earlier 2027 alpha release, you will need to additionally fix the Main class by changing Robot.class to Robot::new or creating a new project and copying Main.java from it.
The 2027 documentation for WPILib is located at https://docs.wpilib.org/en/latest/.
If you're new to WPILib, start with Getting Started.
System Requirements: WPILib requires 64-bit Windows 11 (32-bit is not supported), Ubuntu 26.04, or macOS 15 or higher. C++ teams should note that the latest version of Visual Studio is required for desktop builds. Mac users will need to have the Xcode Command Line Tools installed before running the installer. This can be done by running xcode-select --install in the Terminal.
Known issues with this release can be found in Systemcore Testing issues.
WPILib is developed by a small team of volunteers and the FIRST community.
Downloads
- Windows (x64) (2.4 GB)
- Windows (arm64) (2.5 GB)
- Mac (Arm) (2.2 GB)
- Mac (Intel) (2.3 GB)
- Linux (x64) (2.9 GB)
- Linux (arm64) (2.6 GB)
What's Changed since 2027.0.0-alpha-6 (not an exhaustive list)
WPILib
- ExHub Follower Fixes by @ThadHouse in #8892
- Rename gamepad face-button trigger APIs to directional names (faceUp/Down/Left/Right) by @ThadHouse in #8896 and #8921
- Add a default deadband to all gamepads by @ThadHouse in #8897
- Cache HID wrappers by @ThadHouse in #8970
- Remove UserControls by @ThadHouse in #8973
- Add new generation for gamepads by @ThadHouse in #8957
- Remove Axis from Gamepad Triggers by @ThadHouse in #8956
- Change
DriverStationSimto usewpi::hal::RobotModeby @bhall-ctre in #8988 - Crash robot program if an exception occurs during opmode construction by @ThadHouse in #8982
- Add DS Display API by @ThadHouse in #8975
- Change DriverStationSim to use a C++ enum for alliance station by @pjreiniger in #8991
- Add expanded game controller list by @ThadHouse in #8959
- Fix incorrect robot name in reported error by @Gold856 in #8294
- Add DSGamepadChooser by @ThadHouse in #9048
- Rename FMSInfo table to DriverStation by @Gold856 in #9047
- Switch robot construction back to supplier by @ThadHouse in #9067
- Refactor ExpansionHubMotor to introduce NeutralMode for motor control by @zachwaffle4 in #8813
- Add GameCube and Steam gamepad types by @PeterJohnson in #9064
- OpModeRobot: Don't initialize classes during scan for opmodes by @JustJustjo in #9065
- Fix opmode reset and callback handling by @zachwaffle4 in #8888
- Use alerts for joystick warnings by @PeterJohnson in #9201
- Add Timer.createStarted() convenience factory by @SamCarlberg in #9218
- Add deadband to generated gamepads by @ThadHouse in #9243
- Switch all high level CAN devices to take enum for bus by @ThadHouse in #9240
- Put the OpModeRobot#addOpMode class/lambda arguments at the end by @zachwaffle4 in #9247
- Add option to varargs string array for DSGamepadChooser by @ThadHouse in #9329
- Move Preferences from util to preferences package by @PeterJohnson in #9337
- Remove useless AutoCloseable implementations by @Gold856 in #9344
- Add raw rumble API by @ThadHouse in #9346
Drivers
- Create drivers library by @ThadHouse in #9164
- Add Gobilda Pinpoint support by @ThadHouse in #9249
Commands v3
- Make Mechanism an interface by @Daniel1464 in #8303
- Make sideload functions scoped and improve docs by @SamCarlberg in #8900
- Add trigger multi press and continuous bindings by @SamCarlberg in #8901
- Add example and template projects for commands v3 and make hatchbot example idiomatic by @SamCarlberg in #8887
- Add Coroutine.waitUntil overload with timeout by @SamCarlberg in #9088
- Multiple periodic callbacks in the same scope by @JustJustjo in #9090
- Fix Untils not Including "Until Condition" by @Advay17 in #8906
- Allow fork/await failures to be handled by user code by @SamCarlberg in #9207
Math
WPILib 2027.0.0 Alpha 6
This is an alpha release of WPILib for the 2027 season. Please join the discussions regarding Systemcore alpha testing at https://github.com/wpilibsuite/SystemcoreTesting/. This release most notably fixes a startup crash in OpModeRobot.
Upgrading from Alpha 5 can be done by simply running the new installer to install the new software and tools. When you open your Alpha 5 robot project, you will be prompted if you want to upgrade it to Alpha 6.
Upgrading a can be done by simply running the new installer to install the new software and tools. When you open your Alpha 5 robot project, you will be prompted if you want to upgrade it to Alpha 6.
If you're starting from a 2026 or 2027 Alpha 1/2 robot project, you will need to import your project to create a 2027 project. The import process is important, as it will make a few automated corrections for some breaking changes . It is also necessary to import vendor libraries again, since older vendor libraries must be updated to be compatible with 2027 Alpha 5/6 projects.
The 2027 documentation for WPILib is located at https://docs.wpilib.org/en/2027/.
If you're new to FRC, start with Getting Started.
System Requirements: WPILib requires 64-bit Windows 11 (Arm and 32-bit are not supported), Ubuntu 26.04, or macOS 15 or higher. C++ teams should note that the latest version of Visual Studio is required for desktop builds. Mac users will need to have the Xcode Command Line Tools installed before running the installer. This can be done by running xcode-select --install in the Terminal.
Known issues with this release can be found in Systemcore Testing issues.
WPILib is developed by a small team of volunteers and the FIRST community.
Downloads
- Windows (2.6 GB)
- Mac (Arm) (2.2 GB)
- Mac (Intel) (2.3 GB)
- Linux (x64) (2.7 GB)
What's Changed since 2027.0.0-alpha-5
- [hal] Initialize alert on Systemcore by @PeterJohnson in #8848
- [upstream_utils] Update imgui to 2026-05-04 by @PeterJohnson in #8849
- [sim] GUI: fix memory corruption and incorrect POV count by @Gold856 in #8853
- [wpilib] Don't do wait on init for ExHub in sim by @ThadHouse in #8865
- [wpilib][sim] Add Onboard IMU Sim by @pjreiniger in #8855
- [romi, xrp]: Show IP and port of XRP/Romi to user by @cswilson252 in #8560
- [cmd3] Add rising and falling edge trigger factories by @SamCarlberg in #8366
- [sim] GUI: fix game message string lifetime by @Gold856 in #8874
- [sim] Make HalSim DS extension a no-op by @ThadHouse in #8872
- [cmd3] Add a declarative state machine API on top of commands v3 by @SamCarlberg in #8297
- [cmd3] Fix StateMachineTest by @rzblue in #8876
New Contributors
- @Project516 made their first contribution in #8839
Full Changelog: v2027.0.0-alpha-5...v2027.0.0-alpha-6
SHA256 Hashes
9540859cab2fccad3c3bfaf52ba0ef2fab5fe10cf9fe670f017c6e6dfcb53f4c Linux/WPILib_Linux-2027.0.0-alpha-6.tar.gz
3f1c9f921c3747d8bbc3d36da6603c750ed2e04a27a1f4a6ae87c529d4f3144e Win64/WPILib_Windows-2027.0.0-alpha-6.iso
d2914b53f252f740ad848cca5f695c90234b2d40df71fd994330d14fe6a3be79 macOS/WPILib_macOS-Intel-2027.0.0-alpha-6.dmg
f6c9b5291ac383db082a45856a480a8dbe8c906696c3c960048547c579a1e2bf macOSArm/WPILib_macOS-Arm64-2027.0.0-alpha-6.dmg
WPILib 2026.2.1 Release
This is an update release of WPILib for the 2026 season. This release adds 2026 season-specific field images and AprilTag information as well as a handful of other minor improvements and fixes. This upgrade is recommended for all teams.
Upgrading from earlier 2026 releases is easy: simply download and run the new installer and it will update your current installation. If you already have the 2026 WPILib vscode installed, it will detect it and you can simply click "next" for that installation step. After installation, vscode will prompt you when opening your robot project whether you want to upgrade it to this version. Note that using the installer is required to get the new version of desktop tools such as Elastic and AdvantageScope. This release is compatible with the kickoff release of the RoboRIO image, so there is no need to upgrade the RIO image if you have already done so for 2026.
The documentation for WPILib is located at https://docs.wpilib.org/ (if you have trouble accessing this location, https://frcdocs.wpi.edu/en/stable/ is an alternate location with the same content).
If you're new to FRC, start with Getting Started.
System Requirements: WPILib requires 64-bit Windows 10 or 11 (Arm and 32-bit are not supported), Ubuntu 22.04 or later, or macOS 13.3 or later. C++ teams should note that the latest version of Visual Studio 2022 is required for desktop builds. Mac users will need to have the Xcode Command Line Tools installed before running the installer. This can be done by running xcode-select --install in the Terminal.
If you're returning from a previous season, check out what's new for 2026. You will need a new RoboRIO image for 2026; this is available via the FRC 2026 Game Tools. Follow the WPILib installation guide to install WPILib.
If you're starting from a 2025 robot project, you will need to import your project to create a 2026 project. The import process is important, as it will make a few automated corrections for some breaking changes that happened in 2026. It is also necessary to import vendor libraries again, since last year’s vendor libraries must be updated to be compatible with this year’s projects.
A complete list of known issues with this release can be found here.
WPILib is developed by a small team of volunteers and the FIRST community.
Downloads
- Windows (2.4 GB)
- Mac (Arm) (2.2 GB)
- Mac (Intel) (2.3 GB)
- Linux (x64) (2.8 GB)
- Linux (arm64) (2.4 GB)
What's Changed since 2026.1.1
WPILib
- Add 2026 game specifics by @Kevin-OConnor in #8558
Math
- Fix Rotation3d interpolation and document extrinsic vs intrinsic by @KangarooKoala in #8544
- Add multi tap boolean stream filter and multi tap trigger modifier (double tap detector) by @MichaelLesirge in #8307
SysID
- Fix crash on partially empty raw data by @calcmogul in #8572
Elastic
- Upgraded to 2026.1.1 (see https://github.com/Gold872/elastic-dashboard/releases/tag/v2026.1.1)
VS Code
- Improve robustness of preferences file detection by @sciencewhiz in wpilibsuite/vscode-wpilib#839
Installer
- Fix typo in RoboRIO Team Number Setter shortcut by @sciencewhiz in wpilibsuite/WPILibInstaller-Avalonia#595
- Catch download failures and show URL by @sciencewhiz in wpilibsuite/WPILibInstaller-Avalonia#596
- No longer install Python VS Code extensions by @sciencewhiz in wpilibsuite/WPILibInstaller-Avalonia#600
New Contributors
Full Changelog: v2026.1.1...v2026.2.1
MD5 Hashes
153de974a3ff2a0d53634effc70097c2 Linux/WPILib_Linux-2026.2.1.tar.gz
003cf4a76265c26104d3bbad7d685b14 LinuxArm64/WPILib_LinuxArm64-2026.2.1.tar.gz
ebdcd07dbbb60c628ab3a72bf280fe3b Win64/WPILib_Windows-2026.2.1.iso
a461b2b736ffa00fa781214c276d9ee2 macOS/WPILib_macOS-Intel-2026.2.1.dmg
0295103baf75cab0075ee255af744d00 macOSArm/WPILib_macOS-Arm64-2026.2.1.dmg
SHA256 Hashes
c36591be0b5d1b753356543e0e672af9d91335fb26b5ffcba31cf05af829c656 Linux/WPILib_Linux-2026.2.1.tar.gz
b4ded5ba0b6cdcd64f0ba0da3c42220bb42e1bc4d8d373e5b28131185acff824 LinuxArm64/WPILib_LinuxArm64-2026.2.1.tar.gz
6dd86b714c41127c9ef7683b398dc21423cba7146e6868a97fefbd65a14429cb Win64/WPILib_Windows-2026.2.1.iso
3f725ff13c08ad61dd51f695e25b019e0e13474639f2db0f27f18f0d366022bb macOS/WPILib_macOS-Intel-2026.2.1.dmg
98c13566292993d3f32c0e0765430617f56c18d85d608115821442fefffe6dcb macOSArm/WPILib_macOS-Arm64-2026.2.1.dmg
WPILib 2026.1.1 Release
This is the kickoff release of WPILib for the 2026 season.
The documentation for WPILib is located at https://docs.wpilib.org/ (if you have trouble accessing this location, https://frcdocs.wpi.edu/en/stable/ is an alternate location with the same content).
If you're new to FRC, start with Getting Started.
System Requirements: WPILib requires 64-bit Windows 10 or 11 (Arm and 32-bit are not supported), Ubuntu 22.04 or later, or macOS 13.3 or later. C++ teams should note that the latest version of Visual Studio 2022 is required for desktop builds. Mac users will need to have the Xcode Command Line Tools installed before running the installer. This can be done by running xcode-select --install in the Terminal.
If you're returning from a previous season, check out what's new for 2026. You will need a new RoboRIO image for 2026; this is available via the FRC 2026 Game Tools. Follow the WPILib installation guide to install WPILib.
If you're starting from a 2025 robot project, you will need to import your project to create a 2026 project. The import process is important, as it will make a few automated corrections for some breaking changes that happened in 2026. It is also necessary to import vendor libraries again, since last year’s vendor libraries must be updated to be compatible with this year’s projects.
A complete list of known issues with this release can be found here.
WPILib is developed by a small team of volunteers and the FIRST community.
Downloads
- Windows (2.4 GB)
- Mac (Arm) (2.2 GB)
- Mac (Intel) (2.3 GB)
- Linux (x64) (2.8 GB)
- Linux (arm64) (2.4 GB)
Looking Forward to 2027
The WPILib team is excited for the 2027 introduction of Systemcore and Motioncore and bringing a unified software experience to both the FTC and FRC programs. For more information on Systemcore and Motioncore, see the FRC and FTC blogs!
New Contributors since 2025.3.2
- @yuhao1118 made their first contribution in #7904
- @me-it-is made their first contribution in #7894
- @therekrab made their first contribution in #7938
- @LucienMorey made their first contribution in #7942
- @bathtubed made their first contribution in #7803
- @npt-1707 made their first contribution in #7985
- @Ornamus made their first contribution in #7993
- @MichaelLesirge made their first contribution in #8010
- @kcooney made their first contribution in #7962
- @pixelated-pup made their first contribution in #8030
- @lazypenguin34 made their first contribution in #8047
- @Iris-TheRainbow made their first contribution in #8148
- @petelilley made their first contribution in #8275
- @EdanThomton made their first contribution in #8295
- @Murat65536 made their first contribution in #8231
- @daltzctr made their first contribution in #8319
- @w-reynolds made their first contribution in #8396
- @nobody5050 made their first contribution in #8455
- @cswilson252 made their first contribution in #8525
Full Changelog: v2025.3.2...v2026.1.1
MD5 Hashes
84cd155c39ab4ab88994a8d822f01b64 Linux/WPILib_Linux-2026.1.1.tar.gz
3a3d1cc1877ab2e9a22279bded4628e9 LinuxArm64/WPILib_LinuxArm64-2026.1.1.tar.gz
1ec286f871d2cb9dcd058a17ba2c9dcd Win64/WPILib_Windows-2026.1.1.iso
0a6ac2e793880e41c66742f5c01bf293 macOS/WPILib_macOS-Intel-2026.1.1.dmg
9e784ab578002e33543b73de43a56801 macOSArm/WPILib_macOS-Arm64-2026.1.1.dmg
SHA256 Hashes
b4189ad3827ef0d7076aa1c3c9c629699a30dc261aca0899d3a7e17beb0de0e5 Linux/WPILib_Linux-2026.1.1.tar.gz
6fa2f8da655f56ed88fffd31be85027e028c06cba02d7c1f31ea5ffd0cea1631 LinuxArm64/WPILib_LinuxArm64-2026.1.1.tar.gz
d0239ff2162bcf25954c396e5d2b581bc59ff88cb61059c3e15de810832cd2d7 Win64/WPILib_Windows-2026.1.1.iso
2a7914340395538f814cca8bee8d2b592a51b68e6cce004b93ee2d802bb73ca2 macOS/WPILib_macOS-Intel-2026.1.1.dmg
4839ba17ae1282c988227be56d50d070a2451746c0e41b6bc8aef8c222d94542 macOSArm/WPILib_macOS-Arm64-2026.1.1.dmg
WPILib 2026.1.1 Beta 1
This is the first beta release of WPILib for the 2026 season. Please join the discussions regarding beta testing at https://github.com/wpilibsuite/2026Beta/discussions.
The documentation for WPILib is located at https://docs.wpilib.org/en/latest/ (if you have trouble accessing this location, https://frcdocs.wpi.edu/en/latest/ is an alternate location with the same content).
If you're new to FRC, start with Getting Started.
System Requirements: WPILib requires 64-bit Windows 10 or 11 (Arm and 32-bit are not supported), Ubuntu 22.04 or 24.04, or macOS 13.3 or higher. C++ teams should note that the latest version of Visual Studio 2022 is required for desktop builds. Mac users will need to have the Xcode Command Line Tools installed before running the installer. This can be done by running xcode-select --install in the Terminal.
If you're returning from a previous season, check out what's new for 2026. You will need a new RoboRIO image for 2026; this is available via the FRC 2026 Beta Game Tools. Follow the WPILib installation guide to install WPILib.
If you're starting from a 2025 robot project, you will need to import your project to create a 2026 project. The import process is important, as it will make a few automated corrections for some breaking changes that happened in 2026. It is also necessary to import vendor libraries again, since last year’s vendor libraries must be updated to be compatible with this year’s projects.
A complete list of known issues with this release can be found here.
WPILib is developed by a small team of volunteers and the FIRST community.
Downloads
- Windows (2.4 GB)
- Mac (Arm) (2.2 GB)
- Mac (Intel) (2.3 GB)
- Linux (x64) (2.8 GB)
- Linux (arm64) (2.4 GB)
What's Changed since 2025.3.2
WPILib
- Remove unhelpful comments from BooleanEvent by @calcmogul in #7970
- Add Preferences.getNetworkTable() by @kcooney in #7962
- Fix typo in notifier comments by @lazypenguin34 in #8047
- Disambiguate HID Sendable names by @sciencewhiz in #8081
- Remove Jaguar (and other) motor controllers by @ThadHouse in #8298
Commands
- Mark C++ CommandPtr class as [[nodiscard]] by @bathtubed in #7803
- Deprecate Command.schedule() by @Gold856 in #7072
- Add Subsystem.idle() by @WispySparks in #7815
Epilogue
- Add superclass field & method logging to Epilogue by @Ornamus in #7993
- Use reflection to access non-public superclass fields by @Ornamus in #7996
- Optimize time and memory usage of epilogue backends by @SamCarlberg in #8190
- Support logging of protobuf-serializable types by @SamCarlberg in #8229
Math
- Adjust applyDeadband logic by @KangarooKoala in #7816
- Fix null pointer when calling timeLeftUntill by @me-it-is in #7894
- Fix Debouncer type-changing behavior by @crueter in #7870
- Fix coordinate frame docs in HolonomicDriveController by @therekrab in #7938
- Support dynamic matrix sizes in StateSpaceUtil by @LucienMorey in #7942
- Add dynamic size support for numerical jacobian computation by @LucienMorey in #7959
- Add dynamic size support for angle statistics by @LucienMorey in #7964
- Add nearest() method to Pose3d (mirroring Pose2d) by @MichaelLesirge in #8010
- Add Translation3d.nearest() by @MichaelLesirge in #8015
- Pass Translation2d by const reference instead of by value by @MichaelLesirge in #8021
- Update parameter type from list to collection in Java nearest methods by @MichaelLesirge in #8020
- Add copySignPow to MathUtil for joystick input shaping by @MichaelLesirge in #8013
- Fix TrapezoidProfile limiting velocity incorrectly by @ThePixelatedCat in #8030
- Remove redundant transposes on symmetric matrices by @calcmogul in #8131
- Add vector product and squared length operations to Translation2d/3d by @rmheuer in #8133
- Added structs for TrapezoidProfile.State and ExponentialProfile.State by @Daniel1464 in #8163
- Fix dt type in C++ tests by @calcmogul in #8179
- Synchronize C++ and Java RK4 docs (NFC) by @calcmogul in #8238
- Add 2D variants of
MathUtil.applyDeadbandandMathUtil.copySignPowfor circular joystick inputs by @MichaelLesirge in #8057 - Rename 1D copySignPow to match 2D copyDirectionPow by @MichaelLesirge in #8286
- Scale transforms instead of twists in PoseEstimator by @KangarooKoala in #8333
- Fix
ElevatorSim::GetCurrentDraw()in C++ by @bhall-ctre in #8370 - Add X44 and Minion to DCMotor by @daltzctr in #8319
Units
- Add InchesPerSecondPerSecond by @WispySparks in #7905
- Correct mil unit by @CoryNessCTR in #7950
- Add miles per hour conversation methods to Units.java for use in dashboards by @MichaelLesirge in #8026
- Fix units overload resolution by @KangarooKoala in #8267
- Add a few unit overloads by @Murat65536 in #8231
CameraServer
- Fix USB video mode handling on macOS by @yuhao1118 in #7904
- Add UVC Protocol Support for USB Camera Controls on macOS by @yuhao1118 in #7926
- Fix memory leak in usbviewer example by @spacey-sooty in #7922
- Resolve macOS camera freeze with specific devices by @yuhao1118 in #7960
Examples/Snippets
- Add compilable code snippets by @sciencewhiz in #7909
- Add DutyCycleEncoder Snippets by @sciencewhiz in #7930
- Add remaining Encoder snippets by @sciencewhiz in #7936
- Add Limit Switch snippets by @sciencewhiz in #7946
- Add snippets for Digital Input article by @sciencewhiz in #7949
- Add AnalogInput snippets by @sciencewhiz in #7951
- Misc fixes for snippets by @sciencewhiz in #7952
- Add Analog Potentiometer Snippets by @sciencewhiz in #7957
- Add Accelerometer snippets by @sciencewhiz in #7966
- Add ProfiledPIDController with feedforward snippets by @jasondaming in #8280
NetworkTables
- Check id ranges in control messages by @PeterJohnson in #7726
Upstream
- Upgrade Sleipnir by @calcmogul in #8235
- Upgrade to Eigen 5.0.0 by @calcmogul in #8240
- Remove memory library by @calcmogul in #8035
Glass/Sim GUI
- Fix NT int64 value display by @PeterJohnson in #8038
- Add GUI context getter hooks by @PeterJohnson in #8127
- FMS: Fix reading past end of GSM buffer by @PeterJohnson in #8268
SysID
- Remove Phoenix5 CANcoder preset by @spacey-sooty ...
WPILib 2025.3.2 Release
This is an update release of WPILib for the 2025 season. This release fixes an issue with rebooting robot code causing periodic CPU spikes that could cause loop overruns, upgrades Elastic to 2025.2.0 (fixes several camera viewer issues) and AdvantageScope to 4.1.5, and has a number of other quality of life improvements and fixes. This upgrade is recommended for all teams.
Upgrading from earlier 2025 releases is easy: simply download and run the new installer and it will update your current installation. If you already have the 2025 WPILib vscode installed, it will detect it and you can simply click "next" for that installation step. After installation, vscode will prompt you when opening your robot project whether you want to upgrade it to this version. Note that using the installer is required to get the new version of desktop tools such as Elastic and AdvantageScope. This release is compatible with the kickoff release of the RoboRIO image, so there is no need to upgrade the RIO image if you have already done so for 2025.
The documentation for WPILib is located at https://docs.wpilib.org/ (if you have trouble accessing this location, https://frcdocs.wpi.edu/en/stable/ is an alternate location with the same content).
If you're new to FRC, start with Getting Started.
System Requirements: WPILib requires 64-bit Windows 10 or 11 (Arm and 32-bit are not supported), Ubuntu 22.04 or 24.04, or macOS 13.3 or higher. C++ teams should note that the latest version of Visual Studio 2022 is required for desktop builds. Mac users will need to have the Xcode Command Line Tools installed before running the installer. This can be done by running xcode-select --install in the Terminal.
If you're returning from a previous season, check out what's new for 2025. You will need a new RoboRIO image for 2025; this is available via the FRC 2025 Game Tools. Follow the WPILib installation guide to install WPILib.
If you're starting from a 2024 robot project, you will need to import your project to create a 2025 project. The import process is important, as it will make a few automated corrections for some breaking changes that happened in 2025. It is also necessary to import vendor libraries again, since last year’s vendor libraries must be updated to be compatible with this year’s projects.
A complete list of known issues with this release can be found here.
WPILib is developed by a small team of volunteers and the FIRST community.
Downloads
- Windows (2.4 GB)
- Mac (Arm) (2.2 GB)
- Mac (Intel) (2.3 GB)
- Linux (x64) (2.8 GB)
- Linux (arm64) (2.4 GB)
What's Changed since 2025.3.1
GradleRIO
- Disable code reboot while killing robot process by @ThadHouse in wpilibsuite/GradleRIO#778
Elastic
- Upgraded to 2025.2.0 (see https://github.com/Gold872/elastic-dashboard/releases/tag/v2025.2.0)
AdvantageScope
- Upgraded to 4.1.5 (see https://github.com/Mechanical-Advantage/AdvantageScope/releases/tag/v4.1.5)
Math
- Make LinearSystemSim setState() update output by @HarryXChen3 in #7799
- Fix another infinite loop in ArmFeedforward by @calcmogul in #7823
- Add Translation2d/Translation3d slew rate limiter by @OhmV-IR in #7806
- Fix feedforward returning NaN when kᵥ = 0 by @calcmogul in #7790
- Add Debouncer type and time setters by @crueter in #7839
- Fix singularities in Ellipse2d::Nearest() by @calcmogul in #7851
- Fix UnscentedKalmanFilter and improve math docs by @PascalSkylake in #7850
Epilogue
- Make nonloggable type warnings configurable by @SamCarlberg in #7792
Glass
SysId
- Remove extra period from exception messages by @calcmogul in #7805
- Refactor feedback analysis by @calcmogul in #7827
New Contributors
- @OhmV-IR made their first contribution in #7806
- @arbessette made their first contribution in #7833
- @crueter made their first contribution in #7839
- @PascalSkylake made their first contribution in #7850
Full Changelog: v2025.3.1...v2025.3.2
MD5 Hashes
a5bee197b217509a3c1fb9098c72fb74 Linux/WPILib_Linux-2025.3.2.tar.gz
1ce99b1258f91ced62b379c990e412b9 LinuxArm64/WPILib_LinuxArm64-2025.3.2.tar.gz
bb749ad10e857b904c5fb7780718a778 Win64/WPILib_Windows-2025.3.2.iso
47b75a1e81fdc4caaff969f5bbc873ae macOS/WPILib_macOS-Intel-2025.3.2.dmg
2c1b322e1fcd4b923abf10a819ea19b6 macOSArm/WPILib_macOS-Arm64-2025.3.2.dmg
SHA256 Hashes
7f5021590497d0fdb25f49e4761593ebb5bcf04e253ca3093a46f8d04d3394c1 Linux/WPILib_Linux-2025.3.2.tar.gz
196a6de4ea314bce5670862bdb5a33005cee0ea46e16f0d9149ee498314bd3a7 LinuxArm64/WPILib_LinuxArm64-2025.3.2.tar.gz
fe101018720dc158b72f8542beb1b44af9996235245b37f98acd8851b375d53c Win64/WPILib_Windows-2025.3.2.iso
bef1d56ba5cddbda7dc56c62932ff58e7460129a85e3e2ff3dcac5d9e01a3ff3 macOS/WPILib_macOS-Intel-2025.3.2.dmg
5d957d12fa3c90ead5d3f6ddb33f951ed75990c1b2db1941f2c0433ffd3a53e3 macOSArm/WPILib_macOS-Arm64-2025.3.2.dmg
WPILib 2025.3.1 Release
This is an update release of WPILib for the 2025 season. This release adds an update to the AprilTags layout (see TU12 for details), restores Shuffleboard to 2024 functionality, and has a number of other quality of life improvements and fixes. This upgrade is recommended for all teams.
Upgrading from earlier 2025 releases is easy: simply download and run the new installer and it will update your current installation. If you already have the 2025 WPILib vscode installed, it will detect it and you can simply click "next" for that installation step. After installation, vscode will prompt you when opening your robot project whether you want to upgrade it to this version. Note that using the installer is required to get the new version of desktop tools such as Shuffleboard. This release is compatible with the kickoff release of the RoboRIO image, so there is no need to upgrade the RIO image if you have already done so for 2025.
The documentation for WPILib is located at https://docs.wpilib.org/ (if you have trouble accessing this location, https://frcdocs.wpi.edu/en/stable/ is an alternate location with the same content).
If you're new to FRC, start with Getting Started.
System Requirements: WPILib requires 64-bit Windows 10 or 11 (Arm and 32-bit are not supported), Ubuntu 22.04 or 24.04, or macOS 13.3 or higher. C++ teams should note that the latest version of Visual Studio 2022 is required for desktop builds. Mac users will need to have the Xcode Command Line Tools installed before running the installer. This can be done by running xcode-select --install in the Terminal.
If you're returning from a previous season, check out what's new for 2025. You will need a new RoboRIO image for 2025; this is available via the FRC 2025 Game Tools. Follow the WPILib installation guide to install WPILib.
If you're starting from a 2024 robot project, you will need to import your project to create a 2025 project. The import process is important, as it will make a few automated corrections for some breaking changes that happened in 2025. It is also necessary to import vendor libraries again, since last year’s vendor libraries must be updated to be compatible with this year’s projects.
A complete list of known issues with this release can be found here.
WPILib is developed by a small team of volunteers and the FIRST community.
Downloads
- Windows (2.4 GB)
- Mac (Arm) (2.2 GB)
- Mac (Intel) (2.3 GB)
- Linux (x64) (2.8 GB)
- Linux (arm64) (2.4 GB)
What's Changed since 2025.2.1
WPILib: AprilTags
- Split 2025 AprilTag maps by @Kevin-OConnor in #7781
WPILib: Epilogue
- Fix lazy logging of mutable arrays by @SamCarlberg in #7665
- Fix epilogue breaking when package-info files are present by @SamCarlberg in #7749
WPILib: Math
- Fix LinearSystemId return type and docs by @calcmogul in #7675
- Implement Pose2d and Pose3d rotateAround() by @TheComputer314 in #7659
- Fix various constexpr support bugs by @calcmogul in #7676
- DifferentialDriveWheelPositions: tag as Proto/StructSerializable by @superpenguin612 in #7622
- Fix macro name typo by @wozniak in #7707
- Fix infinite loop in ArmFeedforward::Calculate(xₖ, vₖ, vₖ₊₁) by @calcmogul in #7745
- Fix missing nanopb headers in wpimath by @Gold856 in #7731
- Document drift from desaturating discretized chassis speeds (NFC) by @KangarooKoala in #7741
- Add setters for Feedforward gains by @spacey-sooty in #7784
WPILib: Java Units
- Add Measure.per overloads for all known unit types by @SamCarlberg in #7699
WPILib
- [hal, wpilib] AddressableLED: allow selecting color order by @rzblue in #7102
- [hal] SPI: Remove byte limit on size by @PeterJohnson in #7774
- [wpilibj] ADIS16470: Allow product ID of 16470 by @PeterJohnson in #7704
- [wpilibc] Alert: Fix first alert in group not publishing data by @rzblue in #7711
- [wpilibc] Remove Alert magic static with map lookup by @virtuald in #7712
- [wpilibc, wpilibh, cmd] Improve HID direction documentation (NFC) by @KangarooKoala in #7672
- [sysid] Error on missing tests in loaded DataLog by @DeltaDizzy in #7747
- [wpiutil] Remove broken StackWalker library by @calcmogul in #7777
- [wpinet] Serve index HTML file from WebServer if available by @jwbonner in #7780
GradleRIO
- Fix arm64 linux simulation by @ThadHouse in wpilibsuite/GradleRIO#775
- Warn if vendordep with duplicate uuid is found by @sciencewhiz in wpilibsuite/native-utils#242
VSCode
- Add menu item for skip select simulate extension by @sciencewhiz in wpilibsuite/vscode-wpilib#748
Installer
- Add message about ejecting previous installers by @sciencewhiz in wpilibsuite/WPILibInstaller-Avalonia#515
- Fix WMClass for Elastic by @sciencewhiz in wpilibsuite/WPILibInstaller-Avalonia#516
- Update AdvantageScope to 4.1.2 by @jwbonner in wpilibsuite/WPILibInstaller-Avalonia#520
- Update Elastic to 2025.1.0 by @Gold872 in wpilibsuite/WPILibInstaller-Avalonia#521
- Fix VS Code path to handle renamed .app files on macos by @TheTripleV in wpilibsuite/WPILibInstaller-Avalonia#519
New Contributors
Full Changelog: v2025.2.1...v2025.3.1
MD5 Hashes
723af2144b05860f90ae70819d6233a3 Linux/WPILib_Linux-2025.3.1.tar.gz
33ebfff27122605285fb266cd5595a6f LinuxArm64/WPILib_LinuxArm64-2025.3.1.tar.gz
6307170a459d874b4df7c4c5079a8064 Win64/WPILib_Windows-2025.3.1.iso
9ce0a029c1c63462091044ce874db7ec macOS/WPILib_macOS-Intel-2025.3.1.dmg
ed7e604d4a469af78c6cd82ffb53c6ba macOSArm/WPILib_macOS-Arm64-2025.3.1.dmg
SHA256 Hashes
2d8bc6ab75d7050e9fbf3cb3984042fbdbe2a19bbf270cc7c81345b74b671877 Linux/WPILib_Linux-2025.3.1.tar.gz
40076564a612a99d7a498c75f4cac6ea91924673dd5745656e0c2a69e068dcfe LinuxArm64/WPILib_LinuxArm64-2025.3.1.tar.gz
bb78e57a8887b7e959aa3984c780db50cb66a24d7a331e9e566e0e4b0082b768 Win64/WPILib_Windows-2025.3.1.iso
924c0d5afd1b6f91748f50c6aec052696ec1d551795300b3621d94df84fba502 macOS/WPILib_macOS-Intel-2025.3.1.dmg
d2dfe3ab14d43d86ca7021c104aaa88843c07fc310b6cdb72a78d3ea4ac4bee9 macOSArm/WPILib_macOS-Arm64-2025.3.1.dmg
WPILib 2025.2.1 Release
This is an update release of WPILib for the 2025 season. This release adds the 2025 field images and AprilTags and has a small number of other quality of life improvements and fixes. This upgrade is recommended for all teams.
Upgrading from earlier 2025 releases is easy: simply download and run the new installer and it will update your current installation. If you already have the 2025 WPILib vscode installed, it will detect it and you can simply click "next" for that installation step. After installation, vscode will prompt you when opening your robot project whether you want to upgrade it to this version. Note that using the installer is required to get the new version of desktop tools such as Shuffleboard. This release is compatible with the kickoff release of the RoboRIO image, so there is no need to upgrade the RIO image if you have already done so for 2025.
The documentation for WPILib is located at https://docs.wpilib.org/ (if you have trouble accessing this location, https://frcdocs.wpi.edu/en/stable/ is an alternate location with the same content).
If you're new to FRC, start with Getting Started.
System Requirements: WPILib requires 64-bit Windows 10 or 11 (Arm and 32-bit are not supported), Ubuntu 22.04 or 24.04, or macOS 13.3 or higher. C++ teams should note that the latest version of Visual Studio 2022 is required for desktop builds. Mac users will need to have the Xcode Command Line Tools installed before running the installer. This can be done by running xcode-select --install in the Terminal.
If you're returning from a previous season, check out what's new for 2025. You will need a new RoboRIO image for 2025; this is available via the FRC 2025 Game Tools. Follow the WPILib installation guide to install WPILib.
If you're starting from a 2024 robot project, you will need to import your project to create a 2025 project. The import process is important, as it will make a few automated corrections for some breaking changes that happened in 2025. It is also necessary to import vendor libraries again, since last year’s vendor libraries must be updated to be compatible with this year’s projects.
A complete list of known issues with this release can be found here.
WPILib is developed by a small team of volunteers and the FIRST community.
Downloads
- Windows (2.4 GB)
- Mac (Arm) (2.2 GB)
- Mac (Intel) (2.3 GB)
- Linux (x64) (2.8 GB)
- Linux (arm64) (2.4 GB)
What's Changed since 2025.1.1
WPILib
- Update field and AprilTags by @Kevin-OConnor in #7634
- [glass] Make Field2D field picker show JSONs first by @sciencewhiz in #7643
- [glass] Fix Field2D custom image padding to maintain aspect ratio by @rmheuer in #7648
- [epilogue] Don't add a measure's symbol to its name when logged by Epilogue by @oh-yes-0-fps in #7652
- [cscore] Use kernel frame time in Linux USB Camera by @mcm001 in #7609
- [wpimath] Make Rotation2d member initialization order match declaration order by @calcmogul in #7632
- [wpimath] Implement Translation3d.RotateAround by @HarryXChen3 in #7661
- [commands] Add a warning to
schedulejavadocs by @spacey-sooty in #7073
WPIcal
- Add JSON Combiner by @ElliotScher in #7640
RobotBuilder
- Add Koors40 Motor Controller support by @sciencewhiz in wpilibsuite/RobotBuilder#638
GradleRIO
- Disable SmartDashboard and wpical on Linux arm64 by @PeterJohnson in wpilibsuite/GradleRIO#772
- Add missing whitespace in InvalidImageException by @mcm001 in wpilibsuite/GradleRIO#773
Elastic
- Elastic updated to 2025.0.2: https://github.com/Gold872/elastic-dashboard/releases/tag/v2025.0.2
AdvantageScope
- AdvantageScope updated to 4.1.1: https://github.com/Mechanical-Advantage/AdvantageScope/releases/tag/v4.1.1
Installer
- Select tarballs for VSCode on Linux ARM by @auscompgeek in wpilibsuite/WPILibInstaller-Avalonia#508
- Change AdvantageScope wmclass by @spacey-sooty in wpilibsuite/WPILibInstaller-Avalonia#512
Full Changelog: v2025.1.1...v2025.2.1
MD5 Hashes
4d9992358cfa5fcf1290040f9858aa12 Linux/WPILib_Linux-2025.2.1.tar.gz
087198535a6661b883a7627345c441ed LinuxArm64/WPILib_LinuxArm64-2025.2.1.tar.gz
05e977b48854a2ececa4aae54849bdae Win64/WPILib_Windows-2025.2.1.iso
d2f4df9d919270dc513b2c2edbd2eb93 macOS/WPILib_macOS-Intel-2025.2.1.dmg
16c9cd92081e83579e387fa948afb871 macOSArm/WPILib_macOS-Arm64-2025.2.1.dmg
SHA256 Hashes
03db633b9c93b62aa8fa35f4389fb11b58fc1ccf57e26c44d688c93f722efbb9 Linux/WPILib_Linux-2025.2.1.tar.gz
4d56286dee44edfa84fe590865edc62ca57030e4fa694364654f23b79a7caa84 LinuxArm64/WPILib_LinuxArm64-2025.2.1.tar.gz
e08be319cadbcdec9fdd2a7f369931b8b1590bd76b67d4dde563e57deeb39493 Win64/WPILib_Windows-2025.2.1.iso
4422028e4ef59ea2ced3c07215731befb4603c8f76b128fbca1ac5aadbdd7f63 macOS/WPILib_macOS-Intel-2025.2.1.dmg
96e20e47e66a1c432a121893524a026d9f575ea673554bf16343710a080e2a52 macOSArm/WPILib_macOS-Arm64-2025.2.1.dmg
WPILib 2025.1.1 Release
This is the kickoff release of WPILib for the 2025 season.
The documentation for WPILib is located at https://docs.wpilib.org/ (if you have trouble accessing this location, https://frcdocs.wpi.edu/en/stable/ is an alternate location with the same content).
If you're new to FRC, start with Getting Started.
System Requirements: WPILib requires 64-bit Windows 10 or 11 (Arm and 32-bit are not supported), Ubuntu 22.04 or 24.04, or macOS 13.3 or higher. C++ teams should note that the latest version of Visual Studio 2022 is required for desktop builds. Mac users will need to have the Xcode Command Line Tools installed before running the installer. This can be done by running xcode-select --install in the Terminal.
If you're returning from a previous season, check out what's new for 2025. You will need a new RoboRIO image for 2025; this is available via the FRC 2025 Game Tools. Follow the WPILib installation guide to install WPILib.
If you're starting from a 2024 robot project, you will need to import your project to create a 2025 project. The import process is important, as it will make a few automated corrections for some breaking changes that happened in 2025. It is also necessary to import vendor libraries again, since last year’s vendor libraries must be updated to be compatible with this year’s projects.
A complete list of known issues with this release can be found here.
WPILib is developed by a small team of volunteers and the FIRST community.
Downloads
Note: downloads made prior to the evening of Jan 3 may indicate false positives in some AV scanners. They are safe to use, but the installer builds below have been updated to avoid this issue.
- Windows (2.4 GB)
- Mac (Arm) (2.2 GB)
- Mac (Intel) (2.3 GB)
- Linux (x64) (2.8 GB)
- Linux (arm64) (2.4 GB)
New Contributors since 2024.3.2
- @S1ink made their first contribution in #6439
- @person4268 made their first contribution in #6441
- @WispySparks made their first contribution in #6463
- @juchong made their first contribution in #6450
- @Jacob1010-h made their first contribution in #6390
- @rmheuer made their first contribution in #6530
- @kytpbs made their first contribution in #6582
- @mfisher31 made their first contribution in #6609
- @scarmain made their first contribution in #6025
- @Theinatorinator made their first contribution in #6152
- @MrTinker64 made their first contribution in #6672
- @cgpadwick made their first contribution in #6792
- @beardedone55 made their first contribution in #6795
- @Alextopher made their first contribution in #6771
- @BrandonS09 made their first contribution in #7040
- @oh-yes-0-fps made their first contribution in #7096
- @etiennebeaulac made their first contribution in #7220
- @Advay17 made their first contribution in #7327
- @viggy96 made their first contribution in #7358
- @Daniel1464 made their first contribution in #7437
- @falOn-Dev made their first contribution in #7546
- @TheComputer314 made their first contribution in #7006
Full Changelog: v2024.3.2...v2025.1.1
MD5 Hashes
8775f7539e307ea688e0ef0437ae54d8 Linux/WPILib_Linux-2025.1.1.tar.gz
7e112b5e0ddf00eb2753fdf08d151925 LinuxArm64/WPILib_LinuxArm64-2025.1.1.tar.gz
c4fce6893a2b323fc7ee694f6a1c4a30 Win64/WPILib_Windows-2025.1.1.iso
0d7689c9e7e0b20671c0b72a8c5c6c76 macOS/WPILib_macOS-Intel-2025.1.1.dmg
70faffd8ef758e51a92c049cbeb645ff macOSArm/WPILib_macOS-Arm64-2025.1.1.dmg
SHA256 Hashes
1460e354c0f9c5acee50c4734cdf6f61073999294d5cf5370773a6208429a894 Linux/WPILib_Linux-2025.1.1.tar.gz
90f441f5ba48487418944df5fa388b48aaf17592d725124c0960ed618e924599 LinuxArm64/WPILib_LinuxArm64-2025.1.1.tar.gz
874cdecae229e394a6b211f0d93c55917164492aaaabf4ac036f3fce5ddff740 Win64/WPILib_Windows-2025.1.1.iso
5d0a945047a65071d03f416be2d649c6f39bf30e69a247a28e21391aa864ed33 macOS/WPILib_macOS-Intel-2025.1.1.dmg
421b8b5ad8ae8440a9a6482e1b97457a16c1d4298efafb6024ca44fb753c7375 macOSArm/WPILib_macOS-Arm64-2025.1.1.dmg
WPILib 2025.1.1 Beta 3 Release
This is the third beta release of WPILib for the 2025 season. Please join the discussions regarding beta testing at https://github.com/wpilibsuite/2025Beta/discussions.
This release requires the 2025_v1.0 roboRIO image to use on a robot.
Getting Started
Check out what's new for 2025 and jump directly to the WPILib installation guide.
If you're starting from a 2024 robot project, you will need to import it to create a 2025 project.
Full Changelog from Beta 2: v2025.1.1-beta-2...v2025.1.1-beta-3
Updating from Beta 2
After installing Beta 3, projects made or imported with Beta 2 should automatically prompt to be upgraded to beta 3.
Downloads
- Windows (2.2 GB)
- Mac (Arm) (2.0 GB)
- Mac (Intel) (2.1 GB)
- Linux (x64) (2.6 GB)
- Linux (arm64) (2.3 GB)
New Contributors
WPILib is developed by a small team of volunteers and the FIRST community. Thanks to the following new contributors since the last beta release for helping make WPILib better for all teams!
- @Daniel1464 made their first contribution in #7437
- @falOn-Dev made their first contribution in #7546
MD5 Hashes
f740a1b782a4e51b1807f4594da65206 Linux/WPILib_Linux-2025.1.1-beta-3.tar.gz
7de2c0062c062582164a2a2eca466923 LinuxArm64/WPILib_LinuxArm64-2025.1.1-beta-3.tar.gz
533bd64a8a6e184e728cc94a59c895ce Win64/WPILib_Windows-2025.1.1-beta-3.iso
0b26191ab60c887532ebe1a6e33ee740 macOS/WPILib_macOS-Intel-2025.1.1-beta-3.dmg
10973499cccac00bf7c383e682037070 macOSArm/WPILib_macOS-Arm64-2025.1.1-beta-3.dmg
SHA256 Hashes
d22ce4d7b06cf715857e05bb00d84234c8b8e035f6fa0cfda7921d5ef7cd7fc8 Linux/WPILib_Linux-2025.1.1-beta-3.tar.gz
dc510e2a32b735711992624ece47e4941603f7480195c29e822f3efe7f367308 LinuxArm64/WPILib_LinuxArm64-2025.1.1-beta-3.tar.gz
5083157aacf6b2b70a32582eb001ef0a759c12a8d513b7677ca2b8733e78706f Win64/WPILib_Windows-2025.1.1-beta-3.iso
95e131d0e60a6f2a9c1aee0b5106fa5ca4c3f5059502f0a31cf5ec99a1713463 macOS/WPILib_macOS-Intel-2025.1.1-beta-3.dmg
7e920bcc842999b7f56bd2d2824e287dd645fe9a67ab96907af7aed410accd23 macOSArm/WPILib_macOS-Arm64-2025.1.1-beta-3.dmg