Getting Started
This is the beta-5 release of WPILib for the 2023 season. While this release will work with the 2023 v1.3 roboRIO image, we highly recommend upgrading the image to 2023 v1.4 (it was released as part of the NI Game Tools beta 2 release).
Check out what's new for 2023 and jump directly to the WPILib installation guide. A list of known issues with this release can be found here.
If you're starting from a 2022 robot project, you will need to import it to create a 2023 project.
What's Changed since beta-4:
- This release adds the core support for AprilTags, but the higher level classes for team use are not yet written.
- Shuffleboard has been updated to use NetworkTables 4.
WPILib changes:
- [apriltag] Switch 2022 apriltag layout length and width values by @amquake in #4670
- [glass] Don't check IsConnected for NT widgets by @PeterJohnson in #4674
- [cpp cmd] Change CommandPtr to use CommandBase by @Starlight220 in #4677
- Fix jni artifacts linking to incorrect libraries by @ThadHouse in #4680
- [java cmd] Rename wait factory to waitSeconds by @Starlight220 in #4684
- [ntcore] Allow duplicate client IDs on server by @PeterJohnson in #4676
- [example] Use EncoderReversed constants by @Starlight220 in #4682
- [glass] Plot: allow for more than 11 plots by @ohowe1 in #4685
- [cscore] Add UYVY image support by @PeterJohnson in #4700
- [cscore] Use MFVideoFormat_L8 for Gray on Windows by @PeterJohnson in #4701
- [wpimath] Clarify Rotation3d roll-pitch-yaw direction by @calcmogul in #4699
- Rename HolonomicDriveController.calculate params by @Starlight220 in #4683
- [wpilibc] Shuffleboard SimpleWidget: Return pointer instead of reference by @PeterJohnson in #4703
- [cscore] Add Y16 image support by @PeterJohnson in #4702
- [apriltag] Fix pluralization of apriltag artifacts by @calcmogul in #4671
- [cmd] RepeatCommand: restart on following iteration by @Starlight220 in #4706
- [example] CANPDP: Expand properties shown by @Starlight220 in #4687
- [glass] Update NT view for topicsOnly and sendAll changes by @PeterJohnson in #4718
- [ntcore] Server: Properly handle multiple subscribers by @PeterJohnson in #4717
- [wpiutil] StringExtras: Add UnescapeCString by @PeterJohnson in #4707
- [wpigui] Reload fonts to scale rather than preloading by @PeterJohnson in #4712
- [build] cmake: Use FetchContent instead of ExternalProject by @PeterJohnson in #4714
- [cpp cmd] Add factory templates by @Starlight220 in #4686
- Add link to MotorSafety article by @Starlight220 in #4720
- [cmd] Add property tests for command compositions by @Starlight220 in #4715
- [ntcore] Add NetworkTable table-specific listeners by @PeterJohnson in #4640
- [wpigui] Add FontAwesome by @PeterJohnson in #4713
- Use defaulted comparison operators by @calcmogul in #4723
- Command convenience factories by @Oblarg in #4460
- [cmd examples] Renovate command-based examples by @Starlight220 in #4409
- Add gitignore for simgui files under myRobot and wpilibcExamples by @rzblue in #4726
- Remove missed isFinished check by @Starlight220 in #4727
- [cmd] Revert Trigger implementation by @Starlight220 in #4673
- [examples] Update all examples to use NWU coordinate conventions by @rzblue in #4725
- Allow unsetting a subsystem's default command by @democat3457 in #4621
- Tweak and use Color HSV formula for AddressableLED by @democat3457 in #4724
- [cmd] Refactor ProxyScheduleCommand, SelectCommand into ProxyCommand by @Starlight220 in #4534
- Update Subsystem factories to return CommandBase by @rzblue in #4729
- [ntcore] Send duplicate values to network if necessary by @PeterJohnson in #4730
- [ntcore] Add Sub option for local vs remote changes by @PeterJohnson in #4731
- [glass] NT: clear meta-topic info on disconnect by @PeterJohnson in #4732
- [build] Fix cmake install of thirdparty includes by @PeterJohnson in #4741
- [ntcore] Fix special topic multi-subscriber handling by @PeterJohnson in #4740
- [hal] Allow overriding stderr printing by HAL_SendError by @virtuald in #4742
- [docs] Generate docs for apriltag subproject by @calcmogul in #4745
- [wpimath] Add tolerance for Rotation3d rotation matrix special orthogonality by @calcmogul in #4744
- Add method to disable LW test mode by @Starlight220 in #4678
- Use Odometry for internal state in Pose Estimation by @jlmcmchl in #4668
- [wpimath] Make transform tests use pose/transform equality operators by @calcmogul in #4675
- [gradle/examples] Add unit testing infrastructure to examples by @Starlight220 in #4646
- [examples] Add main include directory to test builds by @calcmogul in #4751
- Add constructors to pose estimators with default standard deviations by @superpenguin612 in #4754
- Remove extra terms in matrix for pose estimator docs by @superpenguin612 in #4756
- Add new DCMotor functions for alternative calculations and reduction calculation by @JaciBrunning in #4749
- Fix PIDSubsystem setSetpoint behavior by @sciencewhiz in #4759
- [cscore] Emit warning that USB Camera isn't supported on OSX by @virtuald in #4766
- Call set(0) rather than disable for stopMotor on PWMMotorController by @rzblue in #4763
- Fix documentation on CommandGenericHID POV methods by @rzblue in #4760
- [apriltag] Use wpilibsuite fork of apriltag by @PeterJohnson in #4764
- Replace remaining references to Speed Controller with Motor Controller by @jlmcmchl in #4769
- [examples] HatchbotInlined: Use Subsystem factories by @Starlight220 in #4765
- [hal] Add CANManufacturer for The Thrifty Bot by @PeterJohnson in #4773
- [glass] DataSource: Add spinlock to protect value by @PeterJohnson in #4771
- [wpimath] Remove broken and obsoleted ComputerVisionUtil functions by @calcmogul in #4775
- [cmd] Move GroupedCommands to CommandScheduler by @Starlight220 in #4728
- [wpilibj] Shuffleboard: Check for null sendable by @PeterJohnson in #4772
- Adds CAN Stream API to Java through JNI bindings by @willtoth in #4193
- [cscore] Convert YUYV and UYVY directly to grayscale by @PeterJohnson in #4777
- [wpilib] Sendable: Don't call setter for getter changes by @PeterJohnson in #4770
- [wpilibj] Consistently use ErrorMessages.requireNonNullParam by @PeterJohnson in #4776
- [examples] AddressableLED: Add unit test by @Starlight220 in #4779
- [wpigui] Update imgui to 1.89.1+ by @PeterJohnson in #4780
- Revert Rotation2D change that limits angles by @sciencewhiz in #4781
- Fix multiple motor safety issues by @ThadHouse in #4784
- Add RobotController.getSerialNumber() by @rzblue in #4783
New Contributors
- @democat3457 made their first contribution in #4621
- @superpenguin612 made their first contribution in #4754
- @willtoth made their first contribution in #4193
Full Changelog: v2023.1.1-beta-4...v2023.1.1-beta-5
MD5 Hashes
4826dcb23528f5ece7dcae7cc81b45f2 Linux/WPILib_Linux-2023.1.1-beta-5.tar.gz
d8ae79eb3f16cdf946f4e6bcecf4fbc0 Win64/WPILib_Windows-2023.1.1-beta-5.iso
ca70b414185d2b8812e5d13477abdd1f macOS/WPILib_macOS-Intel-2023.1.1-beta-5.dmg
3ff49a4887d2f52e3ab6e4eed1d4b464 macOSArm/WPILib_macOS-Arm64-2023.1.1-beta-5.dmg
SHA256 Hashes
a45f714f27d5373a4c372211bd9f2c67774b689bbb507a7557adcbee07838716 Linux/WPILib_Linux-2023.1.1-beta-5.tar.gz
634e64d6122ea0c04f1124e04d55dadff1e5748be086ae35cf61250aa9c70202 Win64/WPILib_Windows-2023.1.1-beta-5.iso
79a30d2bedb8c913615bbd91ebe14d79489b4cd6277af30b80b5f60c8078cbe7 macOS/WPILib_macOS-Intel-2023.1.1-beta-5.dmg
2bf6b7f39146151ee45a17565f8f3e969beb0e3c1fc19eaeb9355428a6201324 macOSArm/WPILib_macOS-Arm64-2023.1.1-beta-5.dmg