Releases: wpilibsuite/allwpilib
WPILib 2024.3.2 Release
This is an update release of WPILib for the 2024 season. This release has a number of quality-of-life bugfixes.
Upgrading from earlier 2024 releases is easy: simply download and run the new installer and it will update your current installation. If you already have the 2024 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 both 2024_v2 releases of the RoboRIO image. Mac note: if upgrading from 2024.1.1, it is necessary to manually remove the 2024.1.1 version of AdvantageScope before running the installer in order for the new version to be installed.
Note: After updating to 2024.3.2, the deploy process will deploy an updated JRE to your robot on first deploy. This means the first deploy will take a little longer than usual.
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, Ubuntu 22.04, or macOS 12 or higher. C++ teams should note that Visual Studio 2022 17.9 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 2024. You will need a new RoboRIO image for 2024; this is available via the FRC 2024 Game Tools. Follow the WPILib installation guide to install WPILib.
If you're starting from a 2023 robot project, you will need to import your project to create a 2024 project. The import process is important, as it will make a few automated corrections for some breaking changes that happened in 2024. 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
For 2024, we have changed the location for WPILib downloads due to GitHub file size limitations. Please use the links below to download the installer package for your platform.
- WPILib 2024.3.2 - Windows (2.2 GB)
- WPILib 2024.3.2 - Mac (Arm) (1.9 GB)
- WPILib 2024.3.2 - Mac (Intel) (2.1 GB)
- WPILib 2024.3.2 - Linux (x64) (2.5 GB)
- WPILib 2024.3.2 - Linux (arm64) (2.3 GB)
What's Changed since 2024.3.1
Several changes were made to address reports of robot code not immediately restarting following an uncaught exception or native crash:
- "wpi::Now() not initialized" error is now fatal and immediately crashes by @ThadHouse in #6417
- An uncaught Java exception now immediately exits by @PeterJohnson in #6420
- JRE updated to not report memory allocation info, as this can hang by @PeterJohnson in wpilibsuite/frc-openjdk-roborio#15
- JRE error log reporting timeout shortened from 120 seconds to 2 seconds by @PeterJohnson in wpilibsuite/frc-openjdk-roborio#16
SysId
- Fix position feedback latency compensation by @brettle in #6392
- Fix arm characterization crash by @calcmogul in #6422
- Fix crash on negative feedforward gains by @calcmogul in #6425
- Fix wrong position Kd with unnormalized time by @brettle in #6433
Tools
- AdvantageScope updated to 3.2.1 by @jwbonner in wpilibsuite/WPILibInstaller-Avalonia#403
Math
- Add structured data support for DifferentialDriveWheelPositions by @DeltaDizzy in #6412
- LinearSystemId: Don't throw if Kv = 0 by @calcmogul in #6424
Simulation GUI
- Use shift key to enable docking features by @PeterJohnson in #6429
Documentation
- [wpiunits] Fix Distance class javadocs to state the correct dimension by @DeltaDizzy in #6363
- Add docs for features not supported on PDH (NFC) by @sciencewhiz in #6436
Examples
- Remove unused private variables by @calcmogul in #6403
Full Changelog: v2024.3.1...v2024.3.2
MD5 Hashes
9a6bae26d00083398ebdb430b5133591 WPILib_Linux-2024.3.2.tar.gz
36c77d22fa3600c840944637c244d06b WPILib_LinuxArm64-2024.3.2.tar.gz
9d54e02fb6c049558ddb4520249beb46 WPILib_Windows-2024.3.2.iso
e6eee31dd4fb3b10676ed3841c0f7634 WPILib_macOS-Intel-2024.3.2.dmg
9e326f2ecf90db7549ecd4ffbb840999 WPILib_macOS-Arm64-2024.3.2.dmg
SHA256 Hashes
2e3d669c4100acf64808069848c8218d5e66204304986114e726ef5c564a3de7 WPILib_Linux-2024.3.2.tar.gz
ad776cc4ce7267bec05ed4f6fe3698cd1a2291460a2ab220fe2936d8582b4777 WPILib_LinuxArm64-2024.3.2.tar.gz
ff73a846153016e588f73dd147790bf4a496019d65efa3daf2b06faef2f822bc WPILib_Windows-2024.3.2.iso
ca551ee4e44ed1135b5caa0d70920ce29fd06f260099cb85da976081e66a7aac WPILib_macOS-Intel-2024.3.2.dmg
1af409d3d05debb20120ab494f5d21f482ce270768f41221db2714c97e8db135 WPILib_macOS-Arm64-2024.3.2.dmg
WPILib 2024.3.1 Release
This is an update release of WPILib for the 2024 season. This release has a number of quality-of-life bugfixes.
Upgrading from earlier 2024 releases is easy: simply download and run the new installer and it will update your current installation. If you already have the 2024 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 2024. Mac note: if upgrading from 2024.1.1, it is necessary to manually remove the 2024.1.1 version of AdvantageScope before running the installer in order for the new version to be installed.
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, Ubuntu 22.04, or macOS 12 or higher. C++ teams should note that 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 2024. You will need a new RoboRIO image for 2024; this is available via the FRC 2024 Game Tools. Follow the WPILib installation guide to install WPILib.
If you're starting from a 2023 robot project, you will need to import your project to create a 2024 project. The import process is important, as it will make a few automated corrections for some breaking changes that happened in 2024. 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
For 2024, we have changed the location for WPILib downloads due to GitHub file size limitations. Please use the links below to download the installer package for your platform.
- WPILib 2024.3.1 - Windows (2.2 GB)
- WPILib 2024.3.1 - Mac (Arm) (1.9 GB)
- WPILib 2024.3.1 - Mac (Intel) (2.1 GB)
- WPILib 2024.3.1 - Linux (x64) (2.5 GB)
- WPILib 2024.3.1 - Linux (arm64) (2.3 GB)
What's Changed since 2024.2.1
NetworkTables
- StructArrayPublisher: Publish schema in span-taking setters by @PeterJohnson in #6303
- Don't send value update to client setting value by @PeterJohnson in #6375
- Add hidden subscribe option by @PeterJohnson in #6376
SysId
- Fix SSTO calculation by @calcmogul in #6301
- Relax peak acceleration search by @Oblarg in #6378
- SysIdRoutine: Reset timer in quasistatic test by @ArchdukeTim in #6322
- SysIdRoutineLog: Initialize m_stateInitialized by @Kython89 in #6359
- Add angular subsystem to SysIdRoutine example by @DeltaDizzy in #6297
Math
- Clean up profile classes by @calcmogul in #6311
- Make Rotation2d implicitly convert from any angle unit by @calcmogul in #6316
- Remove duplicate calls to norm() in Quaternion::Log() by @ThadHouse in #6358
- Add lastValue() method to filters by @N0tACyb0rg in #6351
- Add vector projection and geometry vector conversions by @AngleSideAngle in #6343
- Use correct 'k' value when negative ka is provided in Feed Forward by @fodfodfod in #6360
- ExponentialProfile: Return copies of the current and goal states by @shueja in #6370
Glass / Simulation GUI
- Update field size defaults in Field2D by @gerth2 in #6298
- Fix FMS game data editing by @PeterJohnson in #6381
Java Units
- Add singularized aliases for built in units by @SamCarlberg in #6323
- Fix measure
isNear
function by @vichik123 in #6313
Commands
Shuffleboard
- Improve NT behavior by @PeterJohnson in wpilibsuite/shuffleboard#796
Examples
- Move triggers to subsystem fields by @DeltaDizzy in #6318
- Fix memory leak in C++ controller command examples by @KangarooKoala in #6306
- Don't reset encoders when resetting odometry by @rzblue in #6329
WPILib
- Add methods for reading individual RGB values from LED buffers by @SamCarlberg in #6333
- Remove unusable std::unique_ptr case for SendableChooser by @KangarooKoala in #6357
- Const-qualify SendableChooser.GetSelected() by @KangarooKoala in #6356
AprilTag
- Fix field length in 2024 JSON by @calcmogul in #6373
- Add AprilTagFieldLayout.loadField() and migrate to it by @KangarooKoala in #6377
HAL
- Error out of HAL_Initialize if SetupRioNow fails by @ThadHouse in #6374
- HAL_RefreshDSData: Zero out control word on DS disconnected, Use cache in sim by @ThadHouse in #6380
Installer
- Disable CLI args for AdvantageScope on Windows by @jwbonner in wpilibsuite/WPILibInstaller-Avalonia#397
- Enable vscode system HTTP certificates by @spacey-sooty in wpilibsuite/WPILibInstaller-Avalonia#398
- Update AdvantageScope to 3.2.0 by @jwbonner in wpilibsuite/WPILibInstaller-Avalonia#400
New Contributors
- @ArchdukeTim made their first contribution in #6322
- @vichik123 made their first contribution in #6313
- @Kython89 made their first contribution in #6359
- @N0tACyb0rg made their first contribution in #6351
- @fodfodfod made their first contribution in #6360
- @JoeWildfong made their first contribution in #6367
Full Changelog: v2024.2.1...v2024.3.1
MD5 Hashes
aed13e07c3366325aa572852073f93c2 WPILib_Linux-2024.3.1.tar.gz
95f439b7307a0554aa96a795c584e56c WPILib_LinuxArm64-2024.3.1.tar.gz
781408b02146fde5a8275f31bd55a23c WPILib_Windows-2024.3.1.iso
acee4b081890abb6fc556bdcfffbdd3a WPILib_macOS-Intel-2024.3.1.dmg
d5c941414ed69e1ad35210cb65f4449f WPILib_macOS-Arm64-2024.3.1.dmg
SHA256 Hashes
3d9d368586254253edade76f5aef59e221c1684031b58cc00489d648139d62e2 WPILib_Linux-2024.3.1.tar.gz
3a8ecfb61ce113fb16f95928aa50cfa8a466173a2dd1cb1e01d3ebb3dfeb9f3e WPILib_LinuxArm64-2024.3.1.tar.gz
2b1b1a9adf9aa2ce2734dd022193bbfa9a43c685536bb42c633e875ea4e381f3 WPILib_Windows-2024.3.1.iso
0b41d45537585a4f913e2362c4a25ab32b220b2ba4a20ec009a8d8f0ce55606c WPILib_macOS-Intel-2024.3.1.dmg
14fd3891e3c4438d2a121af68ced5da0eaeab7fc4e12471312aaf21ae9d80cea WPILib_macOS-Arm64-2024.3.1.dmg
WPILib 2024.2.1 Release
This is an update release of WPILib for the 2024 season. This release improves dashboard NetworkTables connection/disconnection behavior and improves SysId, along with other bugfixes. This upgrade is recommended for all teams.
Upgrading from earlier 2024 releases is easy: simply download and run the new installer and it will update your current installation. If you already have the 2024 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 2024. Mac note: for this release, it is necessary to manually remove the 2024.1.1 version of AdvantageScope before running the installer in order for the new version to be installed.
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, Ubuntu 22.04, or macOS 12 or higher. C++ teams should note that 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 2024. You will need a new RoboRIO image for 2024; this is available via the FRC 2024 Game Tools. Follow the WPILib installation guide to install WPILib.
If you're starting from a 2023 robot project, you will need to import your project to create a 2024 project. The import process is important, as it will make a few automated corrections for some breaking changes that happened in 2024. 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
For 2024, we have changed the location for WPILib downloads due to GitHub file size limitations. Please use the links below to download the installer package for your platform.
- WPILib 2024.2.1 - Windows (2.2 GB)
- WPILib 2024.2.1 - Mac (Arm) (1.9 GB)
- WPILib 2024.2.1 - Mac (Intel) (2.1 GB)
- WPILib 2024.2.1 - Linux (x64) (2.5 GB)
- WPILib 2024.2.1 - Linux (arm64) (2.3 GB)
What's Changed since 2024.1.1
NetworkTables
- Fix large text message splitting by @PeterJohnson in #6263
- Use last received time instead of last ping response for connection timeout by @PeterJohnson in #6266
- WebSocket serializer bugfixes by @PeterJohnson in #6264
- Fix client "received unknown id -1" by @PeterJohnson in #6186
- Improve disconnect reason reporting by @PeterJohnson in #6262 and #6265
- Enhance debug logging across NT and WS layers by @PeterJohnson in #6267
- Map int[] to int64[] for DataLog by @PeterJohnson in #6279
- NetworkTable::GetStruct: Add I template param by @PeterJohnson in #6183
SysId
- Data selector: use timestamps instead of ranges by @PeterJohnson in #6193
- Filter valid test names by @PeterJohnson in #6200
- Fix peak acceleration filtering behavior in dynamic velocity test by @HarryXChen3 in #6207
- Fix test duration slider responsiveness by @Oblarg in #6216
- Remove unused "gains to encoder counts" checkbox by @calcmogul in #6234
- Show warning tooltips next to bad feedforward gains instead of throwing by @HarryXChen3 in #6251
- Document using AdvantageScope for troubleshooting by @calcmogul in #6247
SysIdRoutine:
- Fix SysId log key for acceleration by @calcmogul in #6196
- Defer creation of state log entry by @jwbonner in #6259
- Fix state log entry name typo by @auscompgeek in #6261
- Use mechanism name instead of subsystem name by @AngleSideAngle in #6277
WPILib
- Add ADIS16470 methods with no params by @spacey-sooty in #6184
- [C++] Use std::atomic for ADIS classes by @spacey-sooty in #6217
- Don't automatically pull in cscore for all robot projects by @ThadHouse in #6245
- [C++] Fix destruction crash in ADIS classes by @PeterJohnson in #6282
Glass / Simulation GUI
- Fix Field2d position and scaling by @PeterJohnson in #6222
- Default to 2024 field image by @PeterJohnson in #6225
- Sim GUI DS: Add "Disconnected" state and start in it by @PeterJohnson in #6218
RoboRIO Team Number Setter
- Add functionality to enable and disable NI webserver by @ThadHouse in #6270
VS Code
- Pass native compiler arguments to intellisense engine by @ThadHouse in wpilibsuite/vscode-wpilib#656
- Fix debug keybindings by @sciencewhiz in wpilibsuite/vscode-wpilib#657
- Disable vscode completion case matching by @sciencewhiz in wpilibsuite/WPILibInstaller-Avalonia#390
GradleRIO
- Increase SSH timeout from 3 to 7 seconds by @ThadHouse in wpilibsuite/GradleRIO#717
- Catch MalformedInputException by @ThadHouse in wpilibsuite/GradleRIO#719
- Update OneDrive error to be more informative by @spacey-sooty in wpilibsuite/GradleRIO#716
Installer
- Offline cache module files for junit by @ThadHouse in wpilibsuite/WPILibInstaller-Avalonia#387
- Add Linux arm64 installer by @ThadHouse in wpilibsuite/WPILibInstaller-Avalonia#305
- Fix running AdvantageScope.py directly by @calcmogul in wpilibsuite/WPILibInstaller-Avalonia#388
- Update AdvantageScope to 3.0.2 by @jwbonner in wpilibsuite/WPILibInstaller-Avalonia#391
- Install Python API docs by @sciencewhiz in wpilibsuite/WPILibInstaller-Avalonia#392
Examples
- Limit error bit correction in April Tag examples by @sciencewhiz in #6224
Other notable changes
- Use Miklast high resolution field render by @sciencewhiz in #6185
- [wpiutil] Fix using 2 different locks in StructArrayLogEntry by @ThadHouse in #6231
- [wpimath] Use tolerance in rotation interpolation tests by @calcmogul in #6237
- [wpiutil] Fix how DynamicStructs handle strings by @ThadHouse in #6253
- [hal] Don't write a 0 length led string to the FPGA by @ThadHouse in #6271
- [hal] Use 64 bit timestamp in DMA by @ThadHouse in #6278
New Contributors
- @gerth2 made their first contribution in #6191
- @HarryXChen3 made their first contribution in #6207
- @BenBean18 made their first contribution in #6219
- @AngleSideAngle made their first contribution in #6277
Full Changelog: v2024.1.1...v2024.2.1
MD5 Hashes
84ce28678ccf243c6c04...
WPILib 2024.1.1 Release
This is the kickoff release of WPILib for the 2024 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, Ubuntu 22.04, or macOS 12 or higher. C++ teams should note that 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 2024. You will need a new RoboRIO image for 2024; this is available via the FRC 2024 Game Tools. Follow the WPILib installation guide to install WPILib.
If you're starting from a 2023 robot project, you will need to import your project to create a 2024 project. The import process is important, as it will make a few automated corrections for some breaking changes that happened in 2024. 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
For 2024, we have changed the location for WPILib downloads due to GitHub file size limitations. Please use the links below to download the installer package for your platform.
- WPILib 2024.1.1 - Windows (2.0 GB)
- WPILib 2024.1.1 - Mac (Arm) (2.1 GB)
- WPILib 2024.1.1 - Mac (Intel) (2.2 GB)
- WPILib 2024.1.1 - Linux (2.3 GB)
NI Game Tools (Windows only)
- NI FRC 2024 Game Tools (1.2 GB)
MD5 Hashes
790040e0705b86d0c3662cb4eda7ae11 WPILib_Linux-2024.1.1.tar.gz
98d99429b8a7f72b750db809d7c83ddd WPILib_Windows-2024.1.1.iso
7cc7803c10b5e15f651d9d948214f398 WPILib_macOS-Intel-2024.1.1.dmg
b11d19b13a842c4838ede140df5d680e WPILib_macOS-Arm64-2024.1.1.dmg
f666fd4afb2072c81924eeee8ed7ff36 ni-frc-2024-game-tools_24.0.0_offline.iso
SHA256 Hashes
b7c0a9b0192ed02812ebd5b67adb9f4e2f202dd1cb19d54a5bab130b5e2de764 WPILib_Linux-2024.1.1.tar.gz
a7711cbc36b26e5d4cb9987d7ae19c2116417f7951d063cf82ed6a0735d226c0 WPILib_Windows-2024.1.1.iso
fb68cf2f5f8d6a5d7160e9e458f84dec31c29b5a8362d5128e4546589803de86 WPILib_macOS-Intel-2024.1.1.dmg
69ee98b0456dae36cce9fe836024f9fcf5e7424a7bf75979b6a7a608ce74c78f WPILib_macOS-Arm64-2024.1.1.dmg
f8735d96c82da4bc7e9b6d6f86aa5113309a038f9d958c142f481a1b12465cba ni-frc-2024-game-tools_24.0.0_offline.iso
WPILib 2024.1.1 Beta 4 Release
This is a BETA release. Please wait for the first non-beta release for 2024 season use!
This is the 4th beta release of WPILib for the 2024 season. Please join the discussions regarding beta testing at https://github.com/wpilibsuite/2024Beta/discussions.
This release requires the 2024_v2.0 beta roboRIO image to use on a robot. This image is included in the NI 2024 Beta 2 Game Tools.
Getting Started
Check out what's new for 2024 and jump directly to the WPILib installation guide.
If you're starting from a 2023 robot project, you will need to import it to create a 2024 project.
Downloads
For 2024, we are considering different options for our downloads due to GitHub file size limitations, and are testing this during the beta. Download links from alternate hosting sites are below. There are three download sites in addition to "split" zip files in the GitHub release. For the split zip files, you will need to download both the .zip and .z01 files and then unzip them to get the installer image (this can be done in Windows Explorer by selecting both files and running "Extract All"). Feedback regarding what of these download options works best for you is welcome on the beta forum.
- Windows: [JFrog] - [WPI] - [CloudFlare] (2.0 GB)
- Mac (Arm): [JFrog] - [WPI] - [CloudFlare] (2.1 GB)
- Mac (Intel): [JFrog] - [WPI] - [CloudFlare] (2.2 GB)
- Linux: [JFrog] - [WPI] - [CloudFlare] (2.3 GB)
What's Changed Since Beta 3
WPILib:
- Fix garbage data for match info before DS connection by @ThadHouse in #5879
- Default LiveWindowEnabledInTest to false by @Starlight220 in #5950
- Add hex string constructor to Color and Color8Bit by @srimanachanta in #5063
- Make Color::HexString() constexpr by @calcmogul in #5985
- Use final for joystick get axis methods by @spacey-sooty in #6024
- Change default Rio log dir from /home/lvuser to /home/lvuser/logs by @PeterJohnson in #5899, use logs subdirectory on USB drives by @PeterJohnson in #5975, change sim location to logs subdir by @PeterJohnson in #6039
- DataLogManager: join on Stop() call by @PeterJohnson in #5910
- Fix PS5 Controller mappings by @ThadHouse in #6050
Math:
- Reorder TrapezoidProfile.calculate() arguments by @calcmogul in #5874
- Replace gyro rotation with poseEstimator rotation by @ElliotScher in #5900
- Change G to gearing in LinearSystemId factories by @DeltaDizzy in #5834
- Clean up VecBuilder and MatBuilder by @KangarooKoala in #5906
- Clean up StateSpaceUtil by @calcmogul in #5891
- Use RKDP in DifferentialDrivetrainSim to fix numerical instability by @calcmogul in #5931
- Add basic wpiunits support to wpimath by @SamCarlberg in #5821
- Move serde functions to separate classes by @pjreiniger in #5918
- Add protobuf / struct serde for trivial types by @pjreiniger in #5935
- Make KalmanFilter variant for asymmetric updates by @calcmogul in #5951
- Explicitly export wpimath protobuf files by @ThadHouse in #5957
- Optimize 2nd derivative of quintic splines by @prateekma in #3292
- Add generic circular buffer class to Java by @calcmogul in #5969
- Remove unused SimpleMatrixUtils class by @calcmogul in #5979
- Add simulated annealing by @calcmogul in #5961
- Fix TimeInterpolatableBuffer crash by @calcmogul in #5972
- Make gcem call std functions if not constant-evaluated by @calcmogul in #5983
- Update to latest Eigen by @calcmogul in #5996
- Fix GCEM namespace usage and add hypot(x, y, z) by @calcmogul in #6002
- Struct cleanup by @KangarooKoala in #6011
- Rotate traveling salesman solution so input and solution have same initial pose by @Ashray-g in #6015
- Simplify calculation of C for DARE precondition by @calcmogul in #6022
- Fix MecanumDriveWheelSpeeds desaturate() by @Gold856 in #6040
NetworkTables:
- Only datalog meta-topics if specifically requested by @PeterJohnson in #5873
- ProtobufSubscriber: Make mutex and msg mutable by @PeterJohnson in #5927
- Increase client meta-topic decoding limit by @PeterJohnson in #5934
- Update transmit period on topic add/remove by @PeterJohnson in #6021
- Add cached topic property by @KangarooKoala in #5494
Commands:
- Add static Trigger factories for robot mode changes by @DeltaDizzy in #5902
- Add GetName to Subsystem, use in Scheduler tracer epochs by @rzblue in #5836
- CommandPtr: Prevent null initialization by @Starlight220 in #5991
- CommandCompositionError: Include stacktrace of original composition by @Starlight220 in #5984
Examples:
- C++: Match array parameter bounds by @PeterJohnson in #5880
- C++: Update examples to CommandPtr by @ncorrea210 in #5988
- Call resetOdometry() when controller command is executed by @ElliotScher in #5905
- C++: Add "inline" specifier to constants.h constants by @ncorrea210 in #6049
Docs:
- Exclude eigen and protobuf from doxygen by @rzblue in #5871
- Improve AprilTag docs by @Gold856 in #5895
- wpiunits Documentation improvements by @agasser in #5932
- Update getAlliance() docs by @calcmogul in #5971
- Add SysId doc links to LinearSystemId in C++ by @calcmogul in #5960
Vision Processing (CameraServer and AprilTags):
- Add GetTags to C++ version of AprilTagFieldLayout by @r4stered in #5872
- CvSink: Allow specifying output PixelFormat by @MrRedness in #5943
- Move RawFrame to wpiutil and add function to generate RawFrames of AprilTags by @r4stered in #5923
- Replace CS_PixelFormat with WPI_PixelFormat by @calcmogul in #5954
- Add pixelFormat overload of getVideo() by @MrRedness in #5966
Other:
- [wpiutil] MemoryBuffer: Fix normal read and file type check by @PeterJohnson in #5875
- [hal...
WPILib 2024.1.1 Beta 3 Release
This is the third beta release of WPILib for the 2024 season. Please join the discussions regarding beta testing at https://github.com/wpilibsuite/2024Beta/discussions.
This release requires the 2024_v1.1 beta roboRIO image to use on a robot. This image is included in the NI 2024 Beta 1 Game Tools.
Getting Started
Check out what's new for 2024 and jump directly to the WPILib installation guide.
If you're starting from a 2023 robot project, you will need to import it to create a 2024 project.
Downloads
For 2024, we are considering different options for our downloads due to GitHub file size limitations, and are testing this during the beta. Download links from alternate hosting sites are below. There are three download sites in addition to "split" zip files in the GitHub release. For the split zip files, you will need to download both the .zip and .z01 files and then unzip them to get the installer image (this can be done in Windows Explorer by selecting both files and running "Extract All"). Feedback regarding what of these download options works best for you is welcome on the beta forum.
- Windows: [JFrog] - [WPI] - [CloudFlare] (2.0 GB)
- Mac (Arm): [JFrog] - [WPI] - [CloudFlare] (2.1 GB)
- Mac (Intel): [JFrog] - [WPI] - [CloudFlare] (2.2 GB)
- Linux: [JFrog] - [WPI] - [CloudFlare] (2.3 GB)
What's Changed Since Beta 2
Commands
- Add DeferredCommand by @rzblue in #5566
- Fix Java CommandXboxController.leftTrigger() parameter order by @rzblue in #5831
- Make Java SelectCommand generic by @rzblue in #5849
- Add finallyDo with zero-arg lambda by @shueja-personal in #5862
NetworkTables and structured data
- Multiple networking bugfixes by @PeterJohnson in #5799, #5810, #5841, #5844, #5847, #5822
- Fix Java struct array unpacking by @jwbonner in #5801
- Fix Java DataLog.addSchema() exception by @PeterJohnson in #5829
- Don't check type string on publishing an entry by @PeterJohnson in #5816
Glass and Simulation GUI
- Fix occasional failure to decode protobuf topics by @PeterJohnson in #5827, #5845
- Fix Position of Data Type in NT Tree View by @ohowe1 in #5840
- Improve display of protobuf/struct type strings in NT Tree View by @PeterJohnson in #5850
- Sim GUI: Add 'Invalid' option for AllianceStation by @zhiquanyeo in #5820
Simulation
- Autodisable the robot program when real DS disconnects by @Gold856 in #5818
- Fix off-by-one error while setting alliance station by @Gold856 in #5819
- Fix virtual dtor warning in SolenoidSim by @virtuald in #5848
WPILib
- Add support for the PS5 DualSense controller by @maxolasersquad in #5257
Math
- Add EKF/UKF u-y-R correct overload by @calcmogul in #5832
- Make KalmanTypeFilter interface public by @calcmogul in #5830
- Add feedforward constant constructor to ElevatorSim by @narmstro2020 in #5823
- Don't recreate TrapezoidProfile in ProfiledPIDController calculate() by @calcmogul in #5863
- Expose InterpolatingDoubleTreeMap constructor by @BR88C in #5865
Visual Studio Code
- Updated to 1.84.0
- Validate project isn't in OneDrive on creation by @sciencewhiz in wpilibsuite/vscode-wpilib#633
GradleRIO
- Error if project is in OneDrive by @spacey-sooty in wpilibsuite/GradleRIO#680
Other changes
- Fix HAL AllianceStation on rio by @ThadHouse in #5811
- Export unit tests for examples by @ThadHouse in #5838
- [cscore] Make camera connection logging clearer by @rzblue in #5866
- [apriltag] AprilTagFieldLayout: Add accessors for origin and field dimensions by @rzblue in #5869
- [wpiutil] Add DataLog and DataLogManager Stop() by @PeterJohnson in #5860
Full Changelog: v2024.1.1-beta-2...v2024.1.1-beta-3
New contributors
WPILib is developed by a small team of volunteers and the FIRST community. Thanks to the following new contributors (since the beta-1 release) for helping make WPILib better for all teams!
- @bhall-ctre made their first contribution in #5809
- @maxolasersquad made their first contribution in #5257
- @BR88C made their first contribution in #5865
- @spacey-sooty made their first contribution in wpilibsuite/GradleRIO#680
MD5 Hashes
c9cc859d63a4679c4eb6c1f89c8db22c Linux/WPILib_Linux-2024.1.1-beta-3.tar.gz
f4e5cff3b420bc8e0d1ab8f7ed34c749 Win64/WPILib_Windows-2024.1.1-beta-3.iso
6fdd0fc043bdd113881732ca16ddb342 macOS/WPILib_macOS-Intel-2024.1.1-beta-3.dmg
05862e269e51aa9bfd135fbe41ccb15d macOSArm/WPILib_macOS-Arm64-2024.1.1-beta-3.dmg
1e01fbf310107fce7c222831ca67e2a3 zipfiles/WPILib_Linux-2024.1.1-beta-3.z01
dfaf5ca1dbdb1c2c72b9e970059a9a82 zipfiles/WPILib_Linux-2024.1.1-beta-3.zip
ead13df11c0b004fedd7d5c0c30d6e3c zipfiles/WPILib_Windows-2024.1.1-beta-3.z01
deb2b26fb575e702328120cfd0a2121b zipfiles/WPILib_Windows-2024.1.1-beta-3.zip
b4c3d0b915b3f32edea79ca6c4bc9b69 zipfiles/WPILib_macOS-Arm64-2024.1.1-beta-3.z01
f51250c2e8771e5f11dcba911dc3bc65 zipfiles/WPILib_macOS-Arm64-2024.1.1-beta-3.zip
7b2503f5b205d70e5a5e8f37d92334fa zipfiles/WPILib_macOS-Intel-2024.1.1-beta-3.z01
cedc83363d00974a2bbeb9d3227cb727 zipfiles/WPILib_macOS-Intel-2024.1.1-beta-3.zip
SHA256 Hashes
61ddbc828565b5c9c166036b9a07bcd911635c92ecb2b86544bd3997bc0584c4 Linux/WPILib_Linux-2024.1.1-beta-3.tar.gz
f8e927eb2c6e1272152d1e582015cc81a0442852af41b50f15312b35358e6bfd Win64/WPILib_Windows-2024.1.1-beta-3.iso
92ad830680627f2c1185699a5f5d60ddf516e0bbe786f2374ce7320ee202d75c macOS/WPILib_macOS-Intel-2024.1.1-beta-3.dmg
f36a55dfa6d7a75d569d5efa3828aca188091324da39c4a02a5b99ccdbc049e1 macOSArm/WPILib_macOS-Arm64-2024.1.1-beta-3.dmg
9d6cb3a9eaee4063aef910d92c31a988b30e4fe4072b9da4fd210662e1a0a2c0 zipfiles/WPILib_Linux-2024.1.1-beta-3.z01
a781a151557a7846589ec19301112fa9a69e6ec0b012020c40dfba0a3f8fe63d zipfiles/WPILib_Linux-2024.1.1-beta-3.zip
4e9c00c71af4640565a053c82dec37740ad902d9335ce98fc65d897997fbaf0d zipfiles/WPILib_Windows-2024.1.1-beta-3.z01
53189fd49626a294c4aad1bbc61bddf4186b2bd3b8389418309969b38810ff54 zipfiles/WPILib_Windows-2024.1.1-beta-3.zip
738186bf219eccf74c04fcbb8d58c8aaaa200ff3bc7305eb215bf93368167645 zipfiles/WPILib_macOS-Arm64-2024.1.1-beta-3.z01
d77be5cd1b55503580821aa91fa27b7abaea3606642671040985ec20cb0488f1 zipfiles/WPILib_macOS-Arm64-2024.1.1-beta-3.zip
f9efb223c2e1485d8b84a592e2f7542f94f133335fc470b820581afeea4ea68c zipfiles/WPILib_macOS-Intel-2024.1.1-beta-3.z01
74df56119b723b...
WPILib 2024.1.1 Beta 2 Release
This is the second beta release of WPILib for the 2024 season. Please join the discussions regarding beta testing at https://github.com/wpilibsuite/2024Beta/discussions.
This release requires the 2024_v1.1 beta roboRIO image to use on a robot. This image is included in the NI 2024 Beta 1 Game Tools.
Getting Started
Check out what's new for 2024 and jump directly to the WPILib installation guide.
If you're starting from a 2023 robot project, you will need to import it to create a 2024 project.
Downloads
For 2024, we are considering different options for our downloads due to GitHub file size limitations, and are testing this during the beta. Download links from alternate hosting are below; alternatively in Beta 2 we are providing "split" zip files in the GitHub release--you will need to download both the .zip and .z01 files and then unzip them to get the installer image (this can be done in Windows Explorer by selecting both files and running "Extract All"). Feedback regarding this change is welcome on the beta forum.
- Windows (2.0 GB)
- Mac (Arm) (2.1 GB)
- Mac (Intel) (2.2 GB)
- Linux (2.3 GB)
What's Changed Since Beta 1
Major new features
- Bundled AdvantageScope in installer (v3.0.0-beta-3)
- Added support for serialization/deserialization of protobuf and fixed-size structs to NT and DataLog by @PeterJohnson. Documentation/examples are in work. More information in #5391.
- Added Exponential motion profile by @jlmcmchl in #5720
NetworkTables
- Fixed crashes in networking on Windows by @PeterJohnson in #5788
Math
- Added overloads for Transform2d and Transform3d by @anitmangal in #5757
- Fixed hardcoded module count in SwerveDriveKinematics.resetHeading() by @calcmogul in #5762
- Added DCMotor functions for Kraken X60 and Neo Vortex by @jlmcmchl in #5759
- Added LinearSystemId DCMotorSystem overload by @narmstro2020 in #5770
- Added ChassisSpeeds.fromRobotRelativeSpeeds() by @BlueZeeKing in #5744
- Made Vector-Vector binary operators return Vector by @calcmogul in #5772
Examples
- Make swerve examples multiply desired module speeds by cosine of heading error by @ori-coval in #5758
Other bug fixes
- Workaround implemented for the beta v1.1 image missing the FRC_ prefix in the image name
- [wpilib] Close sim device in ADIS IMUs by @calcmogul in #5776
- [wpilib] Make physics sim setState() functions public by @calcmogul in #5779
- [commands] Add requirements parameter to Commands.idle() by @rzblue in #5774
- [wpilibj] Fix RobotBase.isSimulation() by @PeterJohnson in #5783
- [wpilib] Counter: fix default distance per pulse, give c++ parity by @rzblue in #5796
Dependency updates
- Updated C++ JSON to 3.11.2 by @pjreiniger in #5680
- Updated EJML to 0.43.1 by @calcmogul in #5778
Full Changelog: v2024.1.1-beta-1...v2024.1.1-beta-2
Errata
- AdvantageScope fails the GateKeeper check on Mac
New contributors
WPILib is developed by a small team of volunteers and the FIRST community. Thanks to the following new contributors (since the beta-1 release) for helping make WPILib better for all teams!
- @ori-coval made their first contribution in #5758
- @anitmangal made their first contribution in #5757
- @BlueZeeKing made their first contribution in #5744
MD5 Hashes
1debcd7d7f4ce61e6eea7f416ea851b2 WPILib_Linux-2024.1.1-beta-2.tar.gz
fe761aadc59aae329837176118009893 WPILib_Windows-2024.1.1-beta-2.iso
5246df73a8298527bbb403a3ce3ff821 WPILib_macOS-Intel-2024.1.1-beta-2.dmg
4d7cf833cf758cad6d2f335a17bbcc4a WPILib_macOS-Arm64-2024.1.1-beta-2.dmg
6e25e45d55d6deaeed131e63fabb672e WPILib_Linux-2024.1.1-beta-2.z01
bc5e14c94a9d5fbf1cf386b43c81fb76 WPILib_Linux-2024.1.1-beta-2.zip
e0fac709528b6f0618e7a4a6b4de413a WPILib_Windows-2024.1.1-beta-2.z01
ad485c5fec801eeb8631326c8c20c599 WPILib_Windows-2024.1.1-beta-2.zip
c5efe5a466c9ab67420bb8a5c424ec6c WPILib_macOS-Arm64-2024.1.1-beta-2.z01
b43d4f439867df2b44256a43d2d55065 WPILib_macOS-Arm64-2024.1.1-beta-2.zip
cada09d2cdb04fd9d9810215956d708f WPILib_macOS-Intel-2024.1.1-beta-2.z01
b39f18e4fe4b29a8fc419ac3ca9a8353 WPILib_macOS-Intel-2024.1.1-beta-2.zip
SHA256 Hashes
ff096dbef435701537946a88224f614bbffd970996b1d858436d56ccafbfa727 WPILib_Linux-2024.1.1-beta-2.tar.gz
e4107d683079e687fd38fcdf122fbe0e788384a24c88c64a0fd28a2bae7ccac3 WPILib_Windows-2024.1.1-beta-2.iso
0b70087a05c38ca2368cc13e2aafe1894abed3e322a6373568410167b7761ebc WPILib_macOS-Intel-2024.1.1-beta-2.dmg
f302deeec66a3d1430ae685e81ed21c53eeaeb7585b965ec9ba0e31ee81d0b7e WPILib_macOS-Arm64-2024.1.1-beta-2.dmg
4427cf1c51cf6904beaccfeac12ab70d017c9d69ad0d8b24c0266425133035e3 WPILib_Linux-2024.1.1-beta-2.z01
117e1b86384f5ae569d015dd3d69778764b350af4d60dab24e0a2dbb96a69876 WPILib_Linux-2024.1.1-beta-2.zip
a49c2d7c7e53e913157e716fe4a4a819763744cc879f14023bd627e52b951dea WPILib_Windows-2024.1.1-beta-2.z01
8f67a61358d2d7ff745a53f231456488284ffcbc5ccb8312626acff6492c53a8 WPILib_Windows-2024.1.1-beta-2.zip
5e684fd7001bd54c7d0e9b106e0bf4adfe5bfaad1d73e7286ec9a5427d43f8e5 WPILib_macOS-Arm64-2024.1.1-beta-2.z01
e7606da87de3ca757100e0de9717afdb272b666c4d4a0d0403f4d788d11e2f0a WPILib_macOS-Arm64-2024.1.1-beta-2.zip
e9801d884e73fd8538d85d450c42cdedaf2316c7c7ce464725c7008f7fa7cee0 WPILib_macOS-Intel-2024.1.1-beta-2.z01
14ec13851738a660224c4451631b3e8be9de893619fb6eb1d4c0eeaf26832f75 WPILib_macOS-Intel-2024.1.1-beta-2.zip
WPILib 2024.1.1 Beta 1 Release
This is the initial beta release of WPILib for the 2024 season. Please join the discussions regarding beta testing at https://github.com/wpilibsuite/2024Beta/discussions.
This release requires the 2024_v1.1 roboRIO image to use on a robot. This image will be posted on the beta forums when it's available.
Getting Started
Check out what's new for 2024 and jump directly to the WPILib installation guide.
If you're starting from a 2023 robot project, you will need to import it to create a 2024 project.
Full Changelog from 2023.4.3: v2023.4.3...v2024.1.1-beta-1
Downloads
For 2024, we are planning on using different hosting for our downloads due to GitHub file size limitations, and are testing this during the beta. Download links are below (feedback regarding this change is welcome on the beta forum).
- Windows (1.8 GB)
- Mac (Arm) (1.7 GB)
- Mac (Intel) (1.8 GB)
- Linux (2.0 GB)
Errata
- NT can cause application crashes on Windows (this affects dashboard connections to robot simulation, as well as applications such as Glass and OutlineViewer).
- The initial release of 2024.1.1-beta-1 on 10/13 installed to the incorrect location on Linux and Mac. A corrected installer was posted on 10/15 at around 5 PM PST.
New Contributors
WPILib is developed by a small team of volunteers and the FIRST community. Thanks to the following new contributors since the last 2023 release for helping make WPILib better for all teams!
- @wmgrove made their first contribution in #5246
- @bakedPotatoLord made their first contribution in #5248
- @KangarooKoala made their first contribution in #5261
- @autoantwort made their first contribution in #5429
- @jasonli0616 made their first contribution in #5451
- @chauser made their first contribution in #5356
- @jruaaa made their first contribution in #5300
- @mpatankar6 made their first contribution in #5469
- @m10653 made their first contribution in #4071
- @TapChap made their first contribution in #5555
- @cfinn68916 made their first contribution in #5663
- @narmstro2020 made their first contribution in #5715
MD5 Hashes
6eab2d96f86c83ade5b1b3444cb5bd27 WPILib_Linux-2024.1.1-beta-1.tar.gz
a25f28ac2f0d5dd60063db5ed696330a WPILib_Windows-2024.1.1-beta-1.iso
a885018d3e2fd80ec2ea3985875ae2ed WPILib_macOS-Intel-2024.1.1-beta-1.dmg
938b0dd18de5edbf84eef5665fda7ed1 WPILib_macOS-Arm64-2024.1.1-beta-1.dmg
SHA256 Hashes
1dee3532894d5da7934d0983fe272fde5d938421fbc4d248896f9a6472dc090f WPILib_Linux-2024.1.1-beta-1.tar.gz
76b92637d918583614975c0098ea8823929b3000d6097f19273ea8f4d0a1eb4e WPILib_Windows-2024.1.1-beta-1.iso
35e4bc7da09a28dfe40071eb402551e4ce159f46e27f4b3ea54099f707dc2fab WPILib_macOS-Intel-2024.1.1-beta-1.dmg
e58ea98d096abd91073b215e3d5dc0539c266af91986979249aeb554dc16d879 WPILib_macOS-Arm64-2024.1.1-beta-1.dmg
WPILib 2024.0.0 Alpha 1 Release
This is an early preview release of WPILib for the 2024 season. This release is not intended for competition or full-size robot use. The purpose of this release is to provide an easy-to-use installation of WPILib for users of the XRP robot.
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.
WPILib requires 64-bit Windows 10 or 11, Ubuntu 22.04, or macOS 11 or higher. C++ teams should note that Visual Studio 2022 is required for desktop builds. For this release, Mac users will need to have the Xcode Command Line Tools installed before running the installer; we are working on removing this requirement in a future release. This can be done by running xcode-select --install
in the Terminal.
Follow the WPILib installation guide to install WPILib.
WPILib is developed by a small team of volunteers and the FIRST community.
MD5 Hashes
0359f187d5ee0867ebf14dddab7189ce WPILib_Linux-2024.0.0-alpha-1.tar.gz
17482d9049ef59cde02754d2f15250e4 WPILib_Windows-2024.0.0-alpha-1.iso
0190c12529458e3e98c06e17b0acc637 WPILib_macOS-Intel-2024.0.0-alpha-1.dmg
bd7acc8217ec6f5125ff6409d265af0b WPILib_macOS-Arm64-2024.0.0-alpha-1.dmg
SHA256 Hashes
bb7f321379ced9126a071172157a045e7a78e1f7d21ff672031e4204b88ec334 WPILib_Linux-2024.0.0-alpha-1.tar.gz
2dc07b93bfdb9360d4009ed49a225f2439b0484790a863f333f6b7c338d12d81 WPILib_Windows-2024.0.0-alpha-1.iso
0a15b36ddc8d4c1f9f1864bb9841731dfcd2c10f6bc3ffd2af46bfda81781559 WPILib_macOS-Intel-2024.0.0-alpha-1.dmg
c484bec59f2ac1aa325dc460df8e1f9d430361895ce0211ff9ec6fdc109ef7c6 WPILib_macOS-Arm64-2024.0.0-alpha-1.dmg
WPILib 2023.4.3 Release
This is an update release of WPILib for the 2023 season. This release reduces NetworkTables CPU usage and latency, improves dashboard NetworkTables connection/disconnection behavior, and has several other quality-of-life improvements, in particular to Shuffleboard. This release also includes all fixes made in earlier releases.
Upgrading from earlier 2023 releases is easy: simply download and run the new installer and it will update your current installation. If you already have the 2023 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.
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.
Minimum system requirements have changed for 2023. WPILib requires 64-bit Windows 10 or 11, Ubuntu 22.04, or macOS 11 or higher. Newly supported this year is Apple Silicon (arm64)! C++ teams should note that Visual Studio 2022 is now required for desktop builds. For this release, Mac users will need to have the Xcode Command Line Tools installed before running the installer; we are working on removing this requirement in a future release. 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 2023; be sure to read through this, as a lot has changed from 2022! You will need a new RoboRIO image for 2023; this is available via the FRC 2023 Game Tools. Follow the WPILib installation guide to install WPILib.
If you're starting from a 2022 robot project, you will need to import your project to create a 2023 project. The import process is important, as it will make a number of automated corrections for some breaking changes that happened in 2023. 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.
What's Changed since 2022.4.2
NetworkTables
- Optimize scan of outgoing messages by @PeterJohnson in #5227
- NT4 client: close timed-out connections by @PeterJohnson in #5175
- Use int64 for datalog type string by @PeterJohnson in #5186
- ParallelTcpConnector: don't connect to duplicate addresses by @PeterJohnson in #5169
Math
- Check LTV controller max velocity precondition by @calcmogul in #5142
- Fix invalid iterator access in TimeInterpolatableBuffer by @virtuald in #5138
- Fix Pose3d log returning Twist3d NaN for theta between 1E-9 and 1E-7 by @7910f6ba7ee4 in #5168
- Fix NaN in C++ MakeCostMatrix() that takes an array by @calcmogul in #5194
- Fix potential divide-by-zero in RKDP by @calcmogul in #5242
Commands
- RamseteCommand: default-initialize m_prevSpeeds by @PeterJohnson in #5188
WPILib
- Add isTestEnabled and minor docs cleanup by @rzblue in #5172
- Fix enableLiveWindowInTest crashing in disabled by @rzblue in #5173
- DataLogManager: increase time for datetime to be valid by @PeterJohnson in #5185
- Fix DutyCycleEncoder.setDistancePerRotation() in java simulation by @rzblue in #5147
- Fix RobotController.getComments() mishandling quotes inside the comments string by @rzblue in #5197
- [java] DriverStation: Fix joystick data logs by @PeterJohnson in #5240
- Shuffleboard: Keep duplicates on SelectTab() by @Starlight220 in #5198
Shuffleboard
- Fix IndexOutOfBoundsException in tab setup by @Starlight220 in wpilibsuite/shuffleboard#772
- Make any entries set by dashboard retained by @PeterJohnson in wpilibsuite/shuffleboard#778
- FieldData: Don't throw on missing data by @Starlight220 in wpilibsuite/shuffleboard#776
- Add DataSource.equals() by @Starlight220 in wpilibsuite/shuffleboard#774
- Don't switch to selected tab on value change by @Starlight220 in wpilibsuite/shuffleboard#771
- CameraServerWidget: Explicitly unbox Number objects by @Starlight220 in wpilibsuite/shuffleboard#780
- Use ConcurrentHashMap for static collection of NT sources by @Starlight220 in wpilibsuite/shuffleboard#779
SysId
- Give measurement period a valid default of 1 by @calcmogul in wpilibsuite/sysid#495
- Add Venom support by @wlmchen in wpilibsuite/sysid#499
Docs
- CommandScheduler.isComposed: Remove incorrect throws clause (NFC) by @DAflamingFOX in #5183
- WaitCommand: Remove subclass note (NFC) by @Starlight220 in #5200
Examples
- Shuffleboard: Correct parameter order by @Starlight220 in #5204
New Contributors
- @7910f6ba7ee4 made their first contribution in #5143
- @wlmchen made their first contribution in wpilibsuite/sysid#499
MD5 Hashes
fc58a52edea675b0ff91938a9c9d0743 WPILib_Linux-2023.4.3.tar.gz
5b67d336669bed34ab0dd428f81b9d31 WPILib_Windows-2023.4.3.iso
47246def80eea87b468e0be30119f789 WPILib_macOS-Intel-2023.4.3.dmg
1bb6113c1202fbb68248c3848556e47e WPILib_macOS-Arm64-2023.4.3.dmg
SHA256 Hashes
640e1ee7cc8f39d1789b4137f4a5aae90f78eeecf2326e2c50808205d02e7795 WPILib_Linux-2023.4.3.tar.gz
8ea417ede0a8541c9ab906b943be55ca49112dddef6750f2db1a742ba0c69378 WPILib_Windows-2023.4.3.iso
a80723596a08790c78b4c35ac64b4758c72076e74df559512a62c808b2a11ef1 WPILib_macOS-Intel-2023.4.3.dmg
8dad67e28a3bdf482979a1fe4c857d52ab36a2fdec56ae05971b7177d5409ae9 WPILib_macOS-Arm64-2023.4.3.dmg