34#include <wpi/hardware/bus/CANPort.hpp>
35#include <wpi/hardware/motor/MotorController.hpp>
50class A301 :
public wpi::MotorController {
60 explicit A301(wpi::CANPort canPort);
71 A301(wpi::CANPort canPort,
int deviceId);
163 explicit Faults(uint16_t faults);
200 explicit Warnings(uint16_t warnings);
447 void SetVoltage(wpi::units::volt_t output)
override;
678 std::unique_ptr<internal::A301> p;
rev::REVLibError SetVelocity(double velocity)
Definition A301.cpp:555
A301(wpi::CANPort canPort)
Definition A301.cpp:343
rev::util::Signal< bool > HasActiveFault() const
Definition A301.cpp:379
rev::util::Signal< bool > HasActiveWarning() const
Definition A301.cpp:389
int GetFaultsPeriodMs() const
Definition A301.cpp:673
void Disable() override
Definition A301.cpp:666
A301 & FaultsPeriodMs(int period_ms)
Definition A301.cpp:668
rev::REVLibError EnableAbsolutePositionContinuousInput()
Definition A301.cpp:594
rev::REVLibError SetAbsoluteEncoderPosition(double position)
Definition A301.cpp:624
rev::util::Signal< double > GetMotorTemperature() const
Definition A301.cpp:510
int GetDeviceId() const
Definition A301.cpp:351
wpi::CANPort GetCanPort() const
Definition A301.cpp:347
bool GetInverted() const override
Definition A301.cpp:660
rev::REVLibError DisableAbsolutePositionContinuousInput()
Definition A301.cpp:600
rev::REVLibError SetRelativePositionWithSpeed(double position, double speed)
Definition A301.cpp:564
bool IsAbsolutePositionContinuousInputEnabled() const
Definition A301.cpp:606
rev::REVLibError ClearFaults()
Definition A301.cpp:550
rev::util::Signal< double > GetBusVoltage() const
Definition A301.cpp:495
int GetMotorTemperaturePeriodMs() const
Definition A301.cpp:728
rev::util::Signal< Warnings > GetStickyWarnings() const
Definition A301.cpp:467
rev::util::Signal< double > GetMotorCurrent() const
Definition A301.cpp:505
int GetEncoderVelocityPeriodMs() const
Definition A301.cpp:750
rev::util::Signal< bool > HasStickyFault() const
Definition A301.cpp:384
rev::util::Signal< GearboxRPM > GetGearboxRPM() const
Definition A301.cpp:516
int GetAbsoluteEncoderPositionPeriodMs() const
Definition A301.cpp:761
rev::REVLibError SetRelativeEncoderPosition(double position)
Definition A301.cpp:618
rev::REVLibError SetCurrent(double current)
Definition A301.cpp:614
rev::util::Signal< double > GetEncoderVelocity() const
Definition A301.cpp:539
IdleMode GetIdleMode() const
Definition A301.cpp:588
rev::util::Signal< Warnings > GetWarnings() const
Definition A301.cpp:442
rev::util::Signal< bool > HasStickyWarning() const
Definition A301.cpp:394
void SetThrottle(double throttle) override
Definition A301.cpp:642
A301 & BusVoltagePeriodMs(int period_ms)
Definition A301.cpp:690
A301 & MotorTemperaturePeriodMs(int period_ms)
Definition A301.cpp:723
A301 & WarningsPeriodMs(int period_ms)
Definition A301.cpp:679
void SetVoltage(wpi::units::volt_t output) override
Definition A301.cpp:650
int GetMotorCurrentPeriodMs() const
Definition A301.cpp:717
rev::REVLibError SetIdleMode(IdleMode idleMode)
Definition A301.cpp:581
double GetAbsoluteEncoderRangeOffset() const
Definition A301.cpp:636
A301 & MotorCurrentPeriodMs(int period_ms)
Definition A301.cpp:712
rev::util::Signal< double > GetAppliedOutput() const
Definition A301.cpp:500
A301 & RelativeEncoderPositionPeriodMs(int period_ms)
Definition A301.cpp:734
rev::util::Signal< double > GetAbsoluteEncoderPosition() const
Definition A301.cpp:544
rev::REVLibError SetAbsoluteEncoderRangeOffset(double offset)
Definition A301.cpp:630
A301 & AppliedOutputPeriodMs(int period_ms)
Definition A301.cpp:701
int GetBusVoltagePeriodMs() const
Definition A301.cpp:695
double GetThrottle() const override
Definition A301.cpp:648
rev::util::Signal< double > GetRelativeEncoderPosition() const
Definition A301.cpp:533
rev::util::Signal< Faults > GetFaults() const
Definition A301.cpp:399
std::string GetFirmwareString() const
Definition A301.cpp:364
int GetAppliedOutputPeriodMs() const
Definition A301.cpp:706
void SetInverted(bool isInverted) override
Definition A301.cpp:656
A301 & EncoderVelocityPeriodMs(int period_ms)
Definition A301.cpp:745
int GetWarningsPeriodMs() const
Definition A301.cpp:684
int GetRelativeEncoderPositionPeriodMs() const
Definition A301.cpp:739
rev::util::Signal< Faults > GetStickyFaults() const
Definition A301.cpp:419
rev::REVLibError SetRelativePosition(double position)
Definition A301.cpp:559
FirmwareVersion GetFirmwareVersion() const
Definition A301.cpp:353
GearboxRPM
Definition A301.h:250
rev::REVLibError SetAbsolutePosition(double absPosition)
Definition A301.cpp:570
A301 & AbsoluteEncoderPositionPeriodMs(int period_ms)
Definition A301.cpp:756
rev::REVLibError SetAbsolutePositionWithSpeed(double absPosition, double speed)
Definition A301.cpp:575
IdleMode
Definition A301.h:354
constexpr int defaultDeviceId
Definition A301.h:48
REVLibError
Definition REVLibError.h:33
bool gateDriver
Definition A301.h:155
bool other
Definition A301.h:151
bool temperature
Definition A301.h:154
bool escEeprom
Definition A301.h:156
bool sensor
Definition A301.h:152
uint16_t rawBits
Definition A301.h:159
bool can
Definition A301.h:153
bool motorStartup
Definition A301.h:158
bool firmware
Definition A301.h:157
uint8_t prerelease
Definition A301.h:98
uint16_t patch
Definition A301.h:97
uint8_t major
Definition A301.h:95
uint8_t minor
Definition A301.h:96
bool escEeprom
Definition A301.h:190
bool stall
Definition A301.h:193
bool sensor
Definition A301.h:192
bool overvoltage
Definition A301.h:186
bool brownout
Definition A301.h:188
bool other
Definition A301.h:195
bool hasReset
Definition A301.h:194
bool motorLoopSpeed
Definition A301.h:187
bool overcurrent
Definition A301.h:189
bool extEeprom
Definition A301.h:191
uint16_t rawBits
Definition A301.h:196