added support for different drivetrain gear ratios
We went down to 2 CIMs on the practice bot and reduce the pinion size,
so the code has to know how to deal with that.
diff --git a/frc971/constants.cpp b/frc971/constants.cpp
index 8f9c165..8fbb875 100644
--- a/frc971/constants.cpp
+++ b/frc971/constants.cpp
@@ -70,6 +70,9 @@
const int kCompCameraCenter = -2;
const int kPracticeCameraCenter = -5;
+const int kCompDrivetrainGearboxPinion = 19;
+const int kPracticeDrivetrainGearboxPinion = 17;
+
struct Values {
// Wrist hall effect positive and negative edges.
double wrist_hall_effect_start_angle;
@@ -107,6 +110,8 @@
// Deadband voltage.
double angle_adjust_deadband;
+ int drivetrain_gearbox_pinion;
+
// what camera_center returns
int camera_center;
};
@@ -139,6 +144,7 @@
kAngleAdjustZeroingSpeed,
kAngleAdjustZeroingOffSpeed,
kCompAngleAdjustDeadband,
+ kCompDrivetrainGearboxPinion,
kCompCameraCenter};
break;
case kPracticeTeamNumber:
@@ -159,6 +165,7 @@
kAngleAdjustZeroingSpeed,
kAngleAdjustZeroingOffSpeed,
kPracticeAngleAdjustDeadband,
+ kPracticeDrivetrainGearboxPinion,
kPracticeCameraCenter};
break;
default:
@@ -289,6 +296,13 @@
return true;
}
+bool drivetrain_gearbox_pinion(int *pinion) {
+ const Values *const values = GetValues();
+ if (values == NULL) return false;
+ *pinion = values->drivetrain_gearbox_pinion;
+ return true;
+}
+
bool camera_center(int *center) {
const Values *const values = GetValues();
if (values == NULL) return false;