WPILib 2023.4.1 Release

This is an update release of WPILib for the 2023 season. This release fixes a couple of critical NetworkTables bugs.

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, FIRST Robotics Competition Control System — FIRST Robotics Competition documentation is an alternate location with the same content).

If you’re new to FRC, start with Getting Started.

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.3.2


  • SendableChooser: static_assert copy- and default-constructibility by Starlight220
  • Disable Java mock time on the Rio by PeterJohnson


  • Fix crash in disconnect error reporting (introduced in 2023.3.2) by PeterJohnson
  • Improve disconnect error reporting by PeterJohnson
  • Reduce initial connection overhead by PeterJohnson
  • Fix use-after-free in server by PeterJohnson
  • Fix possibility of hang when stopping client or server by PeterJohnson


  • Fix Pose3d exp()/log() and add rotation vector constructor to Rotation3d by jlmcmchl
  • Fix exception for empty pose buffer in pose estimators by calcmogul
  • Add timestamp getter to MathShared by jwbonner


  • Improve descriptions (NFC) by Starlight220
  • ArmSimulation, ElevatorSimulation: Extract mechanism to class by Starlight220
  • ArmSimulation: Fix flaking test by Starlight220
  • MecanumDrive: Fix axis comment in C++ example (NFC) by sciencewhiz

Glass / OutlineViewer

  • NT view: Set default value when publishing new topic by PeterJohnson
  • NT view: Provide menu item to create topic from root by PeterJohnson
  • NT view: Change string/string array to quoted by PeterJohnson


  • Allow updates in int arrays (issue #756). by fovea1959
  • Remove 25th channel from PDP widget by Starlight220
  • Add a widget for ProfiledPIDController by SamCarlberg
  • Check for invalid NT value by Starlight220


  • Add filename to trajectory gen exception by sciencewhiz


  • Fix display of Spark Max time measurement window setting by calcmogul


  • Document range of enableCompressorAnalog (NFC) by sciencewhiz
  • Improve documentation of addRequirements (NFC) by bovlb

New Contributors

  • jwbonner made their first contribution

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.