New User Help/Questions; resistor, usb, testing


#1

Hi I’m currently using heavily what I believe to be a similar product, but for brushed DC motors: ION Motion Control’s Roboclaw motor controller ([http://www.ionmc.com/]).

I would like to work towards replacing some of my brushed motors and brushed motor controllers with brushless motors and the ODrive controller. My goal is to have this as a direct replacement, using position/speed commands that I’m currently using with my encoded (CUI AMT10) brushed motors. In fact I would plan to use the same encoders and the same auto-tuning logic I’m currently developing.

So with that said, I just got an ODrive v3.3 board in the mail and am trying to get started, but after reading through the getting started guide, I have a few questions (please note that I’m not an electronics expert, but a software guy)…

  • What is the purpose of the resistor across the AUX terminals?
    • If I’m just trying to establish/test a USB connection to the ODrive with no motors hooked up, do I need a resistor hooked up?
  • Is the minimum DC power input really 12V, or am I safe to use a 3S Li-Po which could be at 11.1V?
  • Can I hook this up with no encoders and no motors attached, just to test it (only battery and usb cable attached)?
  • Do I need to flash the firmware, or should I be able to just hook this up via USB and start issuing commands via Python?
  • Forgive my ignorance as I’m new to brushless motors, but am I understanding the ODrive motor guide correctly, the ODrive can drive 2x 90amp motors?
    • My hope would be that I could use the Turnigy SK3 motors for some of my applications, but other applications I might need something 2-3x more powerful than. Is this even feasible in the future with new hardware?

I’m looking forward to working with ODrive as I have dozens of applications to implement them in and assuming the hardware can fit my needs, I can contribute on the software side as I work through my projects.


#2

What is the purpose of the resistor across the AUX terminals?

It’s there to dissipate energy, and to prevent voltage spikes from damaging the power supply, when the motor is attempting to slow down.

If I’m just trying to establish/test a USB connection to the ODrive with no motors hooked up, do I need a resistor hooked up?

No.

Is the minimum DC power input really 12V, or am I safe to use a 3S Li-Po which could be at 11.1V?

It’s true that the Getting Started guide says to use 12-24v. I don’t know of anything that precludes using a slightly lower voltage, but don’t take my word as gospel. A fully charged 3S lipo will be about 12.6V, and will drop to ~ 6V when completely depleted.

Can I hook this up with no encoders and no motors attached, just to test it (only battery and usb cable attached)?

Yes. You can also power the board via the STLink while programming it if that’s easier for you.

Do I need to flash the firmware, or should I be able to just hook this up via USB and start issuing commands via Python?

I can’t answer this for you, as I don’t know if Oskar ships flashed boards or not. That being said, unless you’re using the exact default configuration, you’ll have to make some changes. I’m not actually sure what motors the default configuration assumes. You will most likely have to flash the firmware.

I’ll let Oskar answer the other questions too, he’s the hardware expert :smile:


#3

Thanks for trying ODrive, hopefully it will meet all your expectations ;D

The auto-tuning you are working on, is it:

  • Embedded - Online?
  • Embedded - Offline?
  • Off-board - Offline?

We have a plan for an off-board, offline auto-tuning workflow that will use excitation pulses and captured data sent up over USB to a computer during commissioning. We plan to use SciPy and Jupyter to implement a workflow consisting of model parameter identification, followed by offline simulation-based parameter optimization: similar to Simulink Design Optimization Toolbox.

Thank you so much for your intention to contribute back, it is very warmly welcome!

Regarding your questions, @Wetmelon answered most of them, so I’ll only chime in where I have something to add.

So the gate drive voltage (GVDD) is 11V, so anything under 12V will make the MOSFET switching less efficient. That said, the degradation in performance (in the form of hotter mosfets) is fairly minor, and you should be okay if you can keep the voltage above 9V at load (the gate drive voltage, GVDD, Under Voltage Lock Out, UVLO, is at 8V).

Sorry, I didn’t flash the firmware before shipping, mostly because the firmware updates come so fast you should probably flash it often to use new features, hence you need to know how to flash anyway :wink:.

The current rating is a bit hypothetical at the moment. With the default config it is limited to 75A. If you change this config to 20VpV you may set the current limit up to 150A. Just be careful, the temperature sensors are not yet operational (hardware is there, needs firmware), and we haven’t stress tested the drive with a thermal camera yet. I bought a thermal camera recently, and I will do some validation. You should expect around 40A-50A or so continous, and about 3x with low duty cycle, but again this is not verified.

The next version (v3.4) will be available in with a 48V version, and slightly higher current, so that should more than double the power capability. Of course you will need lower kv motors, or more reduction, as the power comes with increased voltage (aka speed), not current (aka torque).

Cheers,
Oskar