Thrifty Nova
  • Software Resources
    • Getting Started
    • Configure Controller Settings
      • Factory Default
      • Motor Type - Minion Setting
      • Inverting the Motor
      • Brake Mode
      • Maximum Output
      • Ramp Up/Ramp Down
      • Current Limiting
      • Soft Limits
      • Hard Limits
      • Setting Encoder Position
      • Follower Mode
    • Configure Onboard PID
    • Configure CAN Frequency
    • IO Signal Management
    • Set Output
    • Logging
    • Get Feedback
    • Unit Conversions
    • Subsystem Examples
      • Simple Elevator Example
      • Swerve Module Example
      • Simple Arm Example
  • Electrical Resources
    • Wiring the Thrifty Nova
    • LED Color Codes
    • Brushless Hall Sensor Connector
    • USB Communications
    • 10 Pin Data Connector
      • Intro to Sensors
      • Sensor Hat
      • Motor Runner Board
    • Hard Reset
  • Mechanical
    • Mounting Options
  • Software Releases
    • Software Releases
  • Thrifty Config
    • Thrifty Config Demo Video
Powered by GitBook
On this page
  • To change this on Thrifty Config:
  • To change this via the API:
  • Basic Setup
  • Example Application

Was this helpful?

Export as PDF
  1. Software Resources
  2. Configure Controller Settings

Motor Type - Minion Setting

PreviousFactory DefaultNextInverting the Motor

Last updated 3 months ago

Was this helpful?

Due to differences in motor phase wire colors, the Minion motor must run with a special config settable in Thrifty Config. This will allow teams to run either REV motors or CTRE motors without changing phase wires.

To change this on Thrifty Config:

Thrifty Config has a dropdown allowing users to select between the default REV option (for Neo-type motors) and the CTRE (Minion) mode.

To change this via the API:

Basic Setup

javaCopy// For a NEO motor (default)
ThriftyNova neoMotor = new ThriftyNova(1);  // CAN ID 1

// For a Minion motor
ThriftyNova minionMotor = new ThriftyNova(2, ThriftyNova.MotorType.MINION);  // CAN ID 2

Example Application

javaCopypublic class RobotContainer {
    private ThriftyNova flywheel = new ThriftyNova(1);       // NEO for high-speed flywheel
    private ThriftyNova climber = new ThriftyNova(2, ThriftyNova.MotorType.MINION);  // Minion for climbing
    
    public RobotContainer() {
        // Configure flywheel for high speed
        flywheel.setMaxOutput(1.0)
                .setCurrentLimit(CurrentType.STATOR, 40);
                
        // Configure climber for high torque
        climber.setCurrentLimit(CurrentType.STATOR, 60)
               .setBrakeMode(true);
    }
}

You can also change motor types after initialization:

motor.setMotorType(ThriftyNova.MotorType.NEO);     // Switch to NEO
motor.setMotorType(ThriftyNova.MotorType.MINION);  // Switch to Minion

⚠️ Important: Always verify your motor type matches your physical hardware before running your robot.