Allow for falcon inverting in swerve_module
Signed-off-by: Maxwell Henderson <maxwell.henderson@mailbox.org>
Change-Id: Ibbe7a28396fa3f249788d3f7b1e18d3eb384f0ec
diff --git a/frc971/wpilib/falcon.h b/frc971/wpilib/falcon.h
index d516290..6ea8735 100644
--- a/frc971/wpilib/falcon.h
+++ b/frc971/wpilib/falcon.h
@@ -18,19 +18,28 @@
namespace frc971 {
namespace wpilib {
+struct FalconParams {
+ int device_id;
+ bool inverted;
+};
+
static constexpr units::frequency::hertz_t kCANUpdateFreqHz = 200_Hz;
static constexpr double kMaxBringupPower = 12.0;
// Gets info from and writes to falcon motors using the TalonFX controller.
class Falcon {
public:
- Falcon(int device_id, std::string canbus,
+ Falcon(int device_id, bool inverted, std::string canbus,
+ std::vector<ctre::phoenix6::BaseStatusSignal *> *signals,
+ double stator_current_limit, double supply_current_limit);
+
+ Falcon(FalconParams params, std::string canbus,
std::vector<ctre::phoenix6::BaseStatusSignal *> *signals,
double stator_current_limit, double supply_current_limit);
void PrintConfigs();
- void WriteConfigs(ctre::phoenix6::signals::InvertedValue invert);
+ void WriteConfigs();
ctre::phoenix::StatusCode WriteCurrent(double current, double max_voltage);
ctre::phoenix6::hardware::TalonFX *talon() { return &talon_; }