Skip to content

Commit 3055a16

Browse files
committed
Update wpimath for 2025
1 parent 47c7ba1 commit 3055a16

26 files changed

+206
-99
lines changed

rdev_requirements.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ black
22
click
33
packaging
44
pydantic<2
5+
pytest
56
requests
67
setuptools
78
setuptools_scm >= 6.2, < 8

subprojects/robotpy-wpimath/gen/MathUtil.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,12 @@ functions:
55
template_impls:
66
- [double]
77
AngleModulus:
8+
FloorDiv:
9+
template_impls:
10+
- [int64_t, int64_t]
11+
FloorMod:
12+
template_impls:
13+
- [int64_t, int64_t]
814
ApplyDeadband:
915
param_override:
1016
maxMagnitude:

subprojects/robotpy-wpimath/gen/controls/ArmFeedforward.yml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,6 @@ classes:
1010
- frc::ArmFeedforward::Acceleration
1111
- frc::ArmFeedforward::kv_unit
1212
- frc::ArmFeedforward::ka_unit
13-
attributes:
14-
kS:
15-
kG:
16-
kV:
17-
kA:
1813
methods:
1914
ArmFeedforward:
2015
overloads:
@@ -25,6 +20,10 @@ classes:
2520
MinAchievableVelocity:
2621
MaxAchievableAcceleration:
2722
MinAchievableAcceleration:
23+
GetKs:
24+
GetKg:
25+
GetKv:
26+
GetKa:
2827

2928
extra_includes:
3029
- wpystruct.h

subprojects/robotpy-wpimath/gen/controls/DifferentialDriveFeedforward.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,11 @@ classes:
88
- units::radians_per_second
99
- units::radians_per_second_squared
1010
- units::compound_unit
11+
attributes:
12+
m_kVLinear:
13+
m_kALinear:
14+
m_kVAngular:
15+
m_kAAngular:
1116
methods:
1217
DifferentialDriveFeedforward:
1318
overloads:

subprojects/robotpy-wpimath/gen/controls/ElevatorFeedforward.yml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,6 @@ classes:
66
- units::meters_per_second
77
- meters_per_second_squared
88
subpackage: controller
9-
attributes:
10-
kS:
11-
kG:
12-
kV:
13-
kA:
149
methods:
1510
ElevatorFeedforward:
1611
overloads:
@@ -21,6 +16,10 @@ classes:
2116
MinAchievableVelocity:
2217
MaxAchievableAcceleration:
2318
MinAchievableAcceleration:
19+
GetKs:
20+
GetKg:
21+
GetKv:
22+
GetKa:
2423

2524
extra_includes:
2625
- wpystruct.h

subprojects/robotpy-wpimath/gen/controls/LinearSystem.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@ classes:
2727
int, int [const]:
2828
CalculateX:
2929
CalculateY:
30+
Slice:
31+
# TODO?
32+
ignore: true
3033

3134
templates:
3235
LinearSystem_1_1_1:

subprojects/robotpy-wpimath/gen/controls/PIDController.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ classes:
2222
GetPeriod:
2323
GetPositionTolerance:
2424
GetVelocityTolerance:
25+
GetAccumulatedError:
2526
SetSetpoint:
2627
GetSetpoint:
2728
AtSetpoint:

subprojects/robotpy-wpimath/gen/controls/PoseEstimator.yml

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ extra_includes:
66
- frc/kinematics/MecanumDriveWheelPositions.h
77
- frc/kinematics/MecanumDriveWheelSpeeds.h
88
- frc/kinematics/SwerveDriveKinematics.h
9-
- frc/kinematics/SwerveDriveWheelPositions.h
109

1110

1211
classes:
@@ -18,7 +17,11 @@ classes:
1817
PoseEstimator:
1918
SetVisionMeasurementStdDevs:
2019
ResetPosition:
20+
ResetPose:
21+
ResetTranslation:
22+
ResetRotation:
2123
GetEstimatedPosition:
24+
SampleAt:
2225
AddVisionMeasurement:
2326
overloads:
2427
const Pose2d&, units::second_t:
@@ -43,23 +46,23 @@ templates:
4346
qualname: frc::PoseEstimator
4447
subpackage: estimator
4548
params:
46-
- frc::SwerveDriveWheelSpeeds<2>
47-
- frc::SwerveDriveWheelPositions<2>
49+
- wpi::array<frc::SwerveModuleState,2>
50+
- wpi::array<frc::SwerveModulePosition,2>
4851
SwerveDrive3PoseEstimatorBase:
4952
qualname: frc::PoseEstimator
5053
subpackage: estimator
5154
params:
52-
- frc::SwerveDriveWheelSpeeds<3>
53-
- frc::SwerveDriveWheelPositions<3>
55+
- wpi::array<frc::SwerveModuleState,3>
56+
- wpi::array<frc::SwerveModulePosition,3>
5457
SwerveDrive4PoseEstimatorBase:
5558
qualname: frc::PoseEstimator
5659
subpackage: estimator
5760
params:
58-
- frc::SwerveDriveWheelSpeeds<4>
59-
- frc::SwerveDriveWheelPositions<4>
61+
- wpi::array<frc::SwerveModuleState,4>
62+
- wpi::array<frc::SwerveModulePosition,4>
6063
SwerveDrive6PoseEstimatorBase:
6164
qualname: frc::PoseEstimator
6265
subpackage: estimator
6366
params:
64-
- frc::SwerveDriveWheelSpeeds<6>
65-
- frc::SwerveDriveWheelPositions<6>
67+
- wpi::array<frc::SwerveModuleState,6>
68+
- wpi::array<frc::SwerveModulePosition,6>

subprojects/robotpy-wpimath/gen/controls/ProfiledPIDController.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ classes:
3535
GetPeriod:
3636
GetPositionTolerance:
3737
GetVelocityTolerance:
38+
GetAccumulatedError:
3839
SetGoal:
3940
overloads:
4041
State:

subprojects/robotpy-wpimath/gen/controls/SimpleMotorFeedforward.yml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,6 @@ classes:
1818
- typename frc::SimpleMotorFeedforward<Distance>::ka_unit
1919
template_params:
2020
- Distance
21-
attributes:
22-
kS:
23-
kV:
24-
kA:
2521
methods:
2622
SimpleMotorFeedforward:
2723
overloads:
@@ -30,11 +26,17 @@ classes:
3026
Calculate:
3127
overloads:
3228
units::unit_t<Velocity>, units::unit_t<Acceleration> [const]:
33-
units::unit_t<Velocity>, units::unit_t<Velocity>, units::second_t [const]:
29+
ignore: true
30+
units::unit_t<Velocity> [const]:
31+
units::unit_t<Velocity>, units::unit_t<Velocity> [const]:
3432
MaxAchievableVelocity:
3533
MinAchievableVelocity:
3634
MaxAchievableAcceleration:
3735
MinAchievableAcceleration:
36+
GetKs:
37+
GetKv:
38+
GetKa:
39+
GetDt:
3840

3941
templates:
4042
# Unfortunately this is broken because calculate requires an SI unit

0 commit comments

Comments
 (0)