All posts

Brushless DC Motors (BLDC) for Robotics: The Ultimate Guide

How BLDC motors turn current into torque: Kv vs Kt, six-step vs FOC, sensored vs sensorless, and how to spec one for a robot joint or drone.

By Robo2u Editorial · 34 min read

A brushless DC motor is the part of your robot that turns electrons into torque, and it does it through exactly one physical law: the Lorentz force on current-carrying copper sitting in a magnet's field. Everything upstream of it (the battery, the ESC, the FOC controller, the encoder) exists to feed that copper the right current at the right rotor angle. Everything downstream (the gearbox, the linkage, the wheel or the leg) exists because the raw motor by itself almost never matches the load. Get the motor wrong and no amount of clever control firmware saves you: firmware cannot conjure torque the magnetics and the thermal path won't allow.

Brushless DC (BLDC) motors are now the default for almost everything that moves under power in modern robotics: drone props, quadruped legs, robot-arm joints, e-bike hubs, gimbals, and the direct-drive wheels on warehouse AMRs. The reason is simple: you removed the one part of a brushed motor that wears out (the commutator and brushes) and moved commutation into silicon, which gets cheaper and smarter every year.

The take: The two numbers that decide whether a BLDC fits your robot are its Kv rating (RPM per volt, which is just the inverse of its torque constant Kt) and its continuous thermal limit (how much current you can push before the windings cook). Everything else (pole count, sensored vs sensorless, six-step vs FOC, inrunner vs outrunner) is a consequence of those two constraints and the load you're driving. Pick a low-Kv motor when you want torque at low speed (robot joints, legs), a high-Kv motor when you want speed (props, wheels), and let the controller and gearbox close the gap. If you remember nothing else: low Kv = high torque per amp, and the continuous current rating is a thermal number, fixed by how hot the windings get.

Companion reading: servo motors, motor controllers & FOC, encoders, and robot actuators.

Table of contents

  1. Key takeaways
  2. What a BLDC is and why brushless won
  3. BLDC vs PMSM vs brushed DC vs stepper
  4. Motor anatomy: stator, rotor, poles and slots
  5. The Kv rating, decoded
  6. Electronic commutation: six-step vs FOC
  7. Rotor position sensing: Halls, encoders, sensorless
  8. Reading a BLDC datasheet
  9. Torque, speed, power and the motor curve
  10. Gimbal motors, direct-drive and QDD actuators
  11. Drone propulsion BLDCs vs robot-joint BLDCs
  12. Cooling, thermal management and duty cycle
  13. Selecting a BLDC for a robot
  14. Frequently asked questions

What a BLDC is and why brushless won

A brushed DC motor puts the magnets on the outside (stator) and the windings on the spinning rotor. To keep torque pointing the right way as the rotor turns, it uses a mechanical commutator: a segmented copper ring on the shaft, wiped by spring-loaded carbon brushes that physically switch which coil is energized. Elegant, self-contained, and the source of every problem brushed motors have.

A BLDC flips the topology. The permanent magnets go on the rotor, the windings go on the stationary stator, and there is no commutator at all. Instead, an external controller (an ESC or a FOC drive) energizes the stator coils in sequence, electronically, by reading or estimating where the rotor is. The motor is "brushless" because the commutation moved out of the motor and into silicon.

That single change buys a lot:

  • No brush wear. Brushed motors die when the brushes wear down, typically a few hundred to a couple thousand hours of continuous duty. A BLDC's lifetime is set by its bearings, which can run tens of thousands of hours.
  • No sparking. Brush commutation arcs. That arcing is electrical noise (EMI), a fire risk in dusty or flammable environments, and a hard no for vacuum or explosive atmospheres. BLDCs don't arc.
  • Better power density. Putting the windings on the stationary outer body means you can conduct heat out of the windings directly into the housing instead of trapping it in a spinning rotor. So you can push more current through a smaller motor.
  • Higher efficiency. No brush friction, no commutator IR losses. A good BLDC runs 80 to 90% efficient; the brushed equivalent loses several points to brush drag and contact resistance.
  • Cleaner control. Because commutation is electronic, you can do field-oriented control, regenerative braking, precise torque control, and silent operation, none of which a brushed commutator can do well.

The cost is that a BLDC is useless without its controller. A brushed motor runs off a battery and a switch. A BLDC needs three half-bridges, gate drivers, current sensing, and firmware that knows the rotor angle. That complexity used to be expensive; in 2026 a capable FOC drive costs less than the motor it controls, which is exactly why brushless won.

None of this is new physics: the permanent-magnet synchronous machine is a century old, and the two coordinate transforms that make modern control tractable predate the transistor. The catch was always that you needed to switch the phases in hardware, fast, in sync with the rotor. Brushed motors solved that mechanically with a commutator; BLDCs waited for cheap power MOSFETs and microcontrollers to solve it in silicon. What changed between 1990 and 2026 wasn't the motor, it was the price of a gate driver and a floating-point MCU. The magnetics on a modern drone motor would be entirely legible to an engineer from the 1930s; the ESC would look like sorcery.

Rule: if a motor will run more than a few hundred hours, or needs precise torque, or runs near anything flammable, it should be brushless. The only reason to still spec a brushed motor in 2026 is cost on a throwaway toy.

BLDC vs PMSM vs brushed DC vs stepper

Engineers argue about "BLDC vs PMSM" more than the distinction deserves. Physically they are almost the same machine: three-phase stator windings, permanent-magnet rotor, electronic commutation. The real difference is two things: the shape of the back-EMF waveform, and how you choose to drive it.

Back-EMF is the voltage a spinning motor generates on its own terminals. Its waveform shape is set by how the windings and magnets are arranged:

  • Trapezoidal back-EMF → conventionally called BLDC. The waveform has flat tops. It's a natural fit for six-step (trapezoidal) commutation, where you energize two of three phases at a time. Concentrated windings produce this.
  • Sinusoidal back-EMF → conventionally called PMSM (permanent magnet synchronous motor). Distributed windings and shaped magnets produce a clean sine. This is what FOC wants.

In practice the line is blurry. Most "drone BLDC" motors have a back-EMF that's neither perfectly trapezoidal nor perfectly sinusoidal, and modern FOC controllers drive them sinusoidally regardless. So when someone runs a "BLDC" motor under FOC, they are operating it as a PMSM. The marketing label on the box rarely matches the control strategy.

Here's how the four common DC-ish motor types compare for robotics:

Property Brushed DC Stepper BLDC (trapezoidal) PMSM (sinusoidal)
Commutation Mechanical Open-loop step sequence Electronic, 6-step Electronic, FOC
Controller needed Switch / H-bridge Step driver ESC FOC drive
Position feedback None required None (open-loop) Halls or sensorless Encoder (usually)
Torque ripple Moderate High (cogging + steps) Moderate (commutation notches) Low (smooth)
Pole count Low Very high (50 to 200) Low to moderate (4 to 28) Low to moderate
Peak efficiency 70 to 80% 50 to 70% 80 to 90% 85 to 94%
Torque at zero speed Yes (stalls hot) Yes (holding torque) Only if sensored Yes (full torque)
Best robotics use Toys, cheap drives Cheap precise positioning (3D printers) Props, wheels, fans Joints, legs, servos, gimbals

A stepper is technically a multi-pole brushless machine too, but it's driven open-loop by stepping through known positions. It gives you cheap precise positioning without an encoder (hence 3D printers), at the cost of efficiency, noise, and the ever-present risk of losing steps under load. For dynamic robotics you almost always want a true BLDC/PMSM with feedback instead.

Rule of thumb: if your control strategy is FOC, call it a PMSM in your head and stop worrying about whether the datasheet says "BLDC." Spec the back-EMF constant (Ke) and the resistance/inductance; the marketing label doesn't change the math.

Motor anatomy: stator, rotor, poles and slots

Stator and windings

The stator is the stationary iron core carrying the copper windings. The iron is built from thin (typically 0.2 to 0.5 mm) laminations of silicon steel, stacked and insulated from each other. Lamination is not optional: a solid iron core would let eddy currents circulate and turn your motor into a space heater. The reason is a clean scaling law: for a lamination of thickness d, eddy-current loss per unit volume scales as

P_eddy  ∝  (B_peak · f · d)^2 / ρ

where B_peak is peak flux density, f the electrical frequency, and ρ the steel's resistivity. Loss goes as thickness squared, which is why halving lamination thickness cuts eddy loss ~4×, and why silicon is alloyed into the steel at all, the silicon roughly quintuples ρ versus plain iron (pure iron ρ≈0.096 µΩ·m vs 3% Si-Fe ≈0.47 µΩ·m, a factor of ~4.9). It also goes as f², so laminations matter far more in high-speed or high-pole-count motors: a 7-pole-pair gimbal motor at 700 Hz electrical punishes a thick, cheap stack in a way a 4-pole tool motor at 100 Hz never notices. Hysteresis loss, the other half of iron loss, scales only linearly with f (the classic Steinmetz relation, P_hyst ∝ f·B^n with n ≈ 1.6 to 2), so at high frequency eddy losses dominate the picture.

The windings are wound around stator teeth (the "slots"). More copper, thicker wire, and a higher fill factor mean lower phase resistance and less I²R loss. This is why a "premium" motor that looks identical to a cheap one can run cooler at the same load: the winding is just better packed.

Rotor and magnets

The rotor carries the permanent magnets. Almost all serious BLDCs use sintered neodymium-iron-boron (NdFeB) magnets for their high energy density, an energy product (BH)_max of roughly 200 to 400 kJ/m³, the highest of any commercial magnet. The magnet grade and temperature rating matter: the two-letter suffix on an NdFeB grade (N42SH, N45UH) encodes its intrinsic coercivity, which sets the maximum safe operating temperature. Cheap N-grade (no suffix) magnets start suffering irreversible loss above ~80 °C; SH grades hold past ~150 °C, UH past ~180 °C.

Two temperature effects hide here, and engineers conflate them. First, reversible loss: NdFeB flux falls with a temperature coefficient of remanence around −0.11 to −0.12 %/°C, so a motor at 120 °C simply makes 10 to 11% less torque per amp than the same motor cold, annoying but it recovers on cooldown. Second, irreversible demagnetization: push the operating point past the knee of the material's B-H demagnetization curve (which the heat, high phase current, and the demagnetizing field of the stator conspire to do), and a chunk of the magnetization is gone for good, well below the Curie temperature (310 to 380 °C for NdFeB, the pure Nd₂Fe₁₄B phase Curie point is ~312 °C, with Co/Dy/Tb additives raising it toward ~380 °C, the point where ferromagnetism vanishes entirely). A drone motor that "loses power when hot and never fully recovers" has walked past that knee. That damage is permanent, and it shows up as a reduced Kt (the motor now needs more amps for the same torque, which makes it run hotter still, a quiet failure spiral).

War story: A team chasing thrust on a heavy-lift hexacopter kept flying full-throttle punch-outs on a hot day. The craft slowly lost climb rate over a dozen flights until it wouldn't hover on six motors that bench-tested "fine" at low current. The magnets had partially demagnetized at the trailing edge under the combined heat and armature reaction field; Kt had dropped ~8%, invisible at idle but decisive at max load. There is no repair: you replace the rotor. Spec the magnet grade for your worst-case winding temperature, not your bench temperature.

Poles and slots

Pole count = number of magnetic poles on the rotor (always even). Slot count = number of stator teeth. They're written together, e.g. 12N14P (12 stator slots, 14 rotor poles), a common drone-motor layout.

Pole pairs = poles ÷ 2. This number is the conversion factor between mechanical and electrical speed:

electrical_frequency_Hz = (mechanical_RPM / 60) * pole_pairs
electrical_speed = mechanical_speed * pole_pairs

A 14-pole (7 pole-pair) outrunner spinning at 6,000 RPM mechanical is generating electrical fundamentals at (6000/60)·7 = 700 Hz. The ESC has to commutate at that rate, that's why high-pole-count motors stress cheap ESCs and why drone ESCs advertise high "eRPM" limits.

Why high pole count? More poles → more torque per amp at low speed (lower Kv) and smoother running, but a higher electrical frequency for a given shaft speed, which raises iron losses and commutation demands. Gimbal and direct-drive joint motors lean into high pole counts (often 14 to 28 poles) for exactly this reason: they want torque, not top speed.

Inrunner vs outrunner

  • Inrunner: magnets on an inner rotor, windings on the outer stator, shaft spins fast. Low rotor inertia, high Kv, high speed. Used for tools, geared joints, EDF fans, and RC car motors. The outer can is the heatsink, so they cool well.
  • Outrunner: the outer "can" rotates and carries the magnets; windings are on a fixed inner stator. High torque, low Kv in a short, fat package. Larger air-gap radius means more torque per volume. Used for direct-drive props, gimbals, and QDD joints. The downside is the spinning can traps heat and has high inertia.

Rule: outrunner for direct-drive torque (props, gimbals, QDD legs), inrunner for high-speed-then-gear-it-down (tools, EDFs, some industrial servos). The air gap (the tiny radial clearance between rotor and stator, often 0.3 to 1 mm) should be as small as the bearings and tolerances allow; every extra 0.1 mm of air gap costs you flux and torque.

The Kv rating, decoded

Kv is the single most misunderstood spec on a BLDC. It is not a quality rating and it is not kilovolts. Kv is the motor velocity constant, in RPM per volt, measured at no load:

no_load_RPM ≈ Kv * V_applied      (no load, ignoring losses)

A 900 Kv motor on a 4S LiPo (≈14.8 V nominal) spins roughly 900 × 14.8 ≈ 13,300 RPM unloaded. Under load it spins slower, because current through the winding resistance drops voltage and the motor needs back-EMF headroom to push current.

Kv is the inverse of the torque constant

Here's the relationship every robotics engineer should have memorized. The torque constant Kt (N·m per amp) and the back-EMF constant Ke (V per rad/s) are numerically equal in SI units, and both are tied to Kv:

Kt [N·m/A]  =  60 / (2 * pi * Kv)        # when Kv is in RPM/V
Kt [N·m/A]  ≈  9.549 / Kv
Kt [N·m/A]  =  Ke [V·s/rad]              # SI: torque const = back-EMF const

So a 900 Kv motor has Kt ≈ 9.549 / 900 ≈ 0.0106 N·m/A. Push 20 A through it and you get roughly 0.21 N·m (minus losses). A 90 Kv motor (ten times lower) has Kt ≈ 0.106 N·m/A, ten times the torque per amp, at one tenth the speed per volt.

That's the whole story of why low Kv = high torque: it's one constant viewed two ways. A motor that spins slowly per volt necessarily produces more torque per amp, because the same back-EMF that limits speed is the same physics that converts current to torque.

Why Kt = Ke falls out of energy conservation

This identity is a two-line consequence of conservation of energy in a lossless machine. The electrical power the back-EMF absorbs must equal the mechanical power the shaft delivers:

P_elec = P_mech
e · I   = τ · ω
(Ke · ω) · I = (Kt · I) · ω
⇒  Ke = Kt        (SI units: V·s/rad  ≡  N·m/A)

The back-EMF e = Ke·ω and the torque τ = Kt·I, substitute, cancel the common ω·I, and the two constants must be numerically equal in SI. Any datasheet that lists Kt and Ke with different SI numbers has a unit error hiding in it (usually Ke quoted per 1000 RPM instead of per rad/s). Underneath both sits the actual electromagnetic torque of a sinusoidal PMSM under FOC:

τ = (3/2) · p · λ_m · I_q

where p is pole pairs, λ_m the rotor flux linkage (Wb), and I_q the torque-producing (quadrature) current. Everything the marketing spec sheet calls "Kt" is really (3/2)·p·λ_m folded into one number. That is why more pole pairs and stronger magnets both buy torque per amp, and why demagnetization (falling λ_m) directly lowers Kt.

Why this matters for picking a motor

  • Drone props want speed → high Kv (typically 900 to 2700 Kv for 5-inch quads on 4S to 6S).
  • Heavy-lift / large props want low Kv to swing big slow props → 100 to 400 Kv.
  • Robot joints / legs want torque at low speed → very low Kv (50 to 200 Kv gimbal-style), then a small gear reduction.
  • Battery voltage and Kv trade off. You can get the same top speed from a high-Kv motor on a low-voltage pack or a low-Kv motor on a high-voltage pack. Higher voltage means lower current for the same power, which means thinner wires and lower I²R losses, one reason robot drives are creeping from 24 V to 48 V.

Rule: choose Kv so that Kv × (pack voltage) lands ~10 to 20% above your required top speed, leaving headroom for the voltage lost across winding resistance under load. Then check that the current needed for your torque (I = τ / Kt) stays under the motor's continuous rating.

Electronic commutation: six-step vs FOC

Commutation is the act of switching which stator phases are energized so the magnetic field stays ahead of the rotor and keeps pulling it around. There are two dominant strategies. (For the full controller-side treatment, see the motor controllers & FOC guide.)

Six-step / trapezoidal commutation

The classic, simple method. The three phases are switched through six discrete states per electrical cycle; at any instant two phases conduct and one floats. You only need to know which 60° sector the rotor is in: six coarse positions, which Hall sensors or back-EMF zero-crossings provide directly.

  • Pros: dead simple, cheap, robust, low compute. Most hobby drone ESCs do exactly this (often with BLHeli or AM32 firmware).
  • Cons: torque ripple at the commutation steps (you feel six "notches" per electrical revolution), audible whine, and poor smoothness at low speed. Fine when the motor always spins fast (props), bad when you need a clean hold or slow precise motion.

Field-oriented control (FOC) / sinusoidal

FOC continuously computes the rotor angle and drives all three phases with smoothly varying sinusoidal currents, using the Clarke and Park transforms to decompose phase currents into a torque-producing component (Iq) and a flux component (Id). The Park transform (R. H. Park's 1929 "two-reaction theory of synchronous machines," arguably the most quietly influential paper in electric drives) rotates the stationary two-axis (α, β) frame into a frame that spins with the rotor, so that in steady state a sinusoidal phase current becomes a constant DC quantity the controller can regulate with a simple PI loop:

Clarke:  (i_a, i_b, i_c)  →  (i_α, i_β)        # 3-phase → stationary 2-phase
Park:    (i_α, i_β), θ_e  →  (i_d, i_q)        # stationary → rotor-synchronous

You command torque directly by commanding Iq (recall τ = (3/2)·p·λ_m·Iq), and the controller keeps Id ≈ 0, the fastest torque-per-amp operating point, since any Id current heats the winding without producing torque. Above base speed, where the back-EMF Ke·ω approaches the DC-bus voltage, you deliberately command negative Id to partially cancel the rotor flux ("field weakening"), trading torque for extra RPM headroom. This is exactly how an EV keeps accelerating past the speed where the raw back-EMF would otherwise clamp it.

  • Pros: smooth torque with minimal ripple, full torque at zero speed, quiet, efficient, enables torque control and regenerative braking. This is what robot joints need.
  • Cons: needs accurate rotor angle (encoder or good sensorless estimator), more compute, and current sensing on at least two phases.
Six-step / trapezoidal FOC / sinusoidal
Position resolution needed Coarse (60° sectors) Fine (continuous angle)
Torque smoothness Notchy, ~6 ripples/cycle Smooth
Torque at zero speed Poor Full
Compute Low (8-bit MCU fine) Moderate (needs FPU / fast MCU)
Audible noise Whine Quiet
Typical use Drone/RC props, fans Robot joints, gimbals, servos, EVs
Example controllers Hobbywing, BLHeli/AM32 ESCs ODrive, mjbots moteus, Maxon EPOS, VESC

Rule: props and wheels that live above a few hundred RPM are fine on six-step. Anything that must hold position, move slowly, or deliver clean torque (joints, legs, gimbals, steering) needs FOC. In 2026 there's little reason not to use FOC except cost and compute on the very smallest drives.

Rotor position sensing: Halls, encoders, sensorless

Commutation needs to know where the rotor is. There are three ways to find out, and the choice drives your low-speed performance and your BOM cost. For the full treatment of feedback devices, see the encoders guide.

Hall-effect sensors

Three Hall sensors spaced 120° (electrical) report which 60° sector the rotor is in. Cheap, robust, and good enough for six-step commutation and FOC startup.

  • Pros: works from zero speed, cheap (~cents each), tolerant of dirt and temperature.
  • Cons: only 6 states per electrical cycle, too coarse for smooth FOC by themselves, so they're often used only to bootstrap, then handed off to sensorless or an encoder. Hall misalignment causes commutation timing errors.

Encoders (absolute / incremental)

A magnetic (e.g. AS5047, AS5048) or optical encoder gives continuous high-resolution angle: 12 to 14+ bits (4096 to 16384 counts/rev). This is what good FOC drives use. mjbots moteus and ODrive both rely on magnetic absolute encoders mounted on the rotor.

  • Pros: continuous angle for smooth FOC, full torque at zero speed, accurate position control, enables torque estimation. Absolute encoders know position at power-on without homing.
  • Cons: cost, the need for precise mounting and electrical-angle calibration, and a magnetic encoder needs a diametric magnet on the shaft end.

Sensorless (back-EMF estimation)

The controller infers rotor angle from the motor's own back-EMF: either by watching the floating phase's zero crossing (six-step) or by running a flux/angle observer (FOC). No sensor hardware at all.

  • Pros: zero added cost and wiring, no sensor to fail, smaller motor. Standard on drone ESCs.
  • Cons: back-EMF is proportional to speed, so it vanishes near zero speed. Sensorless motors must be "kicked" through an open-loop startup ramp, and they cannot hold position or deliver smooth torque at standstill under load. Useless for a robot joint that must hold against gravity; perfect for a prop that's always spinning.
Sensing Zero-speed torque Cost FOC smoothness Typical use
Hall sensors Yes (coarse) $ OK for startup Industrial six-step, FOC bootstrap
Encoder (magnetic/optical) Yes (full) $$ to $$$ Excellent Robot joints, servos, QDD
Sensorless back-EMF No Free Good above ~5 to 10% speed Drone props, fans, pumps

Rule: if the motor must produce torque at or near zero speed (any joint, any leg, any steering), you need an encoder (or at minimum Halls). If it always spins fast and free (props, fans), go sensorless and save the part.

Reading a BLDC datasheet

Half of motor selection is just reading the datasheet correctly. Hobby motors give you Kv, weight, and a thrust table. Industrial motors (Maxon, Faulhaber, Nanotec) give you the real electrical and thermal parameters. Here's the glossary that matters.

Spec Symbol / units What it means Why you care
Velocity constant Kv [RPM/V] No-load speed per volt Sets top speed; inverse of Kt
Torque constant Kt [N·m/A] (or mN·m/A) Torque per amp τ = Kt · I; sets current for your load
Back-EMF constant Ke [V/(rad/s)] or [V/kRPM] Generated voltage per speed Numerically = Kt in SI; sets voltage headroom
Rated (nominal) voltage V [V] Design voltage Pairs with Kv for expected speed
Phase resistance R [Ω or mΩ] Winding resistance (often phase-to-phase) I²R loss and heat; voltage drop under load
Phase inductance L [µH or mH] Winding inductance Sets current ripple, needed PWM frequency, FOC tuning
Continuous current I_cont [A] Max current you can run indefinitely Thermal limit: the real working number
Peak current I_peak [A] Max current for seconds 2 to 4× continuous; valid only briefly
Continuous torque τ_cont [N·m] = Kt · I_cont Your real usable torque
Peak / stall torque τ_peak [N·m] Short-burst torque For acceleration, not steady state
No-load current I_0 [A] Current to spin the motor unloaded Bearing + iron + windage losses
Thermal resistance R_th [K/W] Temp rise per watt of loss How fast it heats up; sets duty cycle
Max winding temp T_max [°C] Insulation / magnet limit Often 100 to 155 °C; exceed it and you demagnetize
Pole count / pole pairs n/a Magnetic poles Sets electrical frequency vs RPM

The traps

  • Resistance is often quoted phase-to-phase, which for a wye (star) winding is 2× the per-phase value. Get this wrong and your loss math is off by 2×.
  • Peak ratings are marketing-adjacent. A drone motor rated "60 A peak" may only sustain 25 A continuous before the windings exceed 100 °C. The peak number is for the few seconds of a punch-out, not for a hover.
  • Continuous current is a thermal number tied to cooling assumptions. The same motor mounted on a big aluminum plate with airflow can run far more continuous current than one wrapped in a 3D-printed bracket. The datasheet figure assumes a specific heatsink; your install may be worse.
  • Kv tolerance is ±5 to 10% on hobby motors. Two "900 Kv" motors from the same batch can differ enough to matter for a multirotor needing matched thrust.
  • The winding temperature limit is an insulation class, not an arbitrary number. The 100 to 155 °C figures come straight from the thermal classification of the enamel and slot insulation, standardized in IEC 60085 (and the parallel NEMA letters): Class A = 105 °C, B = 130 °C, F = 155 °C, H = 180 °C. That temperature is the limit at which the insulation reaches its rated ~20,000-hour design life; the Arrhenius rule of thumb baked into the standard is that every ~10 °C over class roughly halves insulation life. Running an F-class winding at 175 °C doesn't fail it today: it silently spends its lifetime at a few times the rate.
  • Phase inductance sets an electrical time constant τ_e = L/R, typically tens to hundreds of microseconds. It bounds how fast current (and therefore torque) can slew, and it sets the minimum sane PWM frequency: too low an f_PWM relative to L lets current ripple grow, adding loss and torque noise. Very low-inductance motors (many high-Kv drone outrunners) demand high PWM frequencies or series inductors to keep ripple sane.

Rule: design to the continuous rating, treat peak as a transient acceleration budget you can spend for a few seconds, and always derate the datasheet's continuous current for your actual (usually worse) cooling.

Torque, speed, power and the motor curve

A DC motor's behavior is captured by a torque-speed curve. For an idealized BLDC at fixed voltage:

speed:   ω  =  Kv * V  -  (R / Kt^2) * τ        # speed droops linearly with torque
torque:  τ  =  Kt * I                            # torque is proportional to current
power:   P_mech = τ * ω                          # peaks near the middle of the curve

At no load, the motor spins at ≈ Kv·V and draws only I_0. As you load it, speed droops linearly and current rises. At stall, speed is zero, torque is maximum, and current is V/R, which is huge and will instantly cook a small motor. Mechanical power output peaks somewhere in the middle, at roughly half the no-load speed and half the stall torque.

But the motor curve is the electromagnetic capability. Your operating envelope is set by heat.

The thermal limit is the real constraint

Copper loss is I²R. Double the current and you quadruple the heat. The continuous current rating is simply the current at which steady-state winding temperature settles at the insulation limit (often 100 to 155 °C) given the motor's thermal resistance R_th and ambient.

T_winding  ≈  T_ambient  +  P_loss * R_th
P_loss     ≈  I^2 * R   (+ iron and friction losses)

So the continuous operating point lives well below the stall and even below the peak-power point. Operating above continuous is allowed only for short bursts, governed by the motor's thermal time constant τ_th = R_th · C_th (thermal resistance times thermal mass). The winding warms as a first-order lag:

ΔT(t)  =  P_loss · R_th · (1 − e^(−t/τ_th))

For a 40 g drone motor τ_th is a handful of seconds, it reaches its steady temperature almost as fast as you can change the throttle. For a 3 kg industrial servomotor with a heavy iron stator, τ_th can be several minutes, which is exactly the thermal reservoir that lets it swallow a hard acceleration transient. The design-relevant quantity is the RMS torque over a full motion cycle, because ΔT responds to mean I² and I² is proportional to τ²:

τ_RMS  =  sqrt( (1/T) ∫₀ᵀ τ(t)² dt )

Size the motor so τ_RMS ≤ τ_continuous. The instantaneous peak can exceed continuous by 2 to 4×, but only for a duration short against τ_th.

This is the whole game in robotics actuator sizing: a motor that can momentarily deliver 5 N·m of peak torque to absorb an impact might only sustain 1.5 N·m continuously. If your robot leg needs 2 N·m continuously, that motor is too small even though it "hits 5 N·m."

Rule: size for the continuous (RMS over the duty cycle) torque, then verify the peak is covered for the worst transient. Heat is the limit, not the torque-speed curve.

Gimbal motors, direct-drive and QDD actuators

This is the section that explains modern legged robots, and it's worth understanding deeply. See also the robot actuators guide and the legged/quadruped hardware guide.

Gimbal motors

A gimbal motor is a low-Kv outrunner (often 50 to 200 Kv) originally designed to slowly and smoothly stabilize a camera. Low Kv means high Kt (lots of torque per amp at low speed) and the high pole count gives smooth, fine motion. iPower and T-Motor sell these by the hundreds.

The robotics community noticed something: a gimbal motor driven by FOC is a near-ideal direct-drive torque source. It makes meaningful torque at zero speed, it's smooth, it's backdrivable, and (critically) because torque ≈ Kt · Iq, you can estimate output torque from current without a torque sensor.

Direct drive vs quasi-direct drive (QDD)

Direct drive means the motor connects to the load with no gearbox. Maximum backdrivability, zero gear lash, transparent force control, no gear noise, but you need a big, heavy motor to get useful torque, because the motor alone makes modest torque. Used in some haptics and a few specialized joints.

Quasi-direct drive (QDD) is the compromise that changed legged robotics: a low-Kv high-torque motor plus a small, single-stage planetary gearbox (typically 6:1 to 10:1) and FOC. The low gear ratio multiplies torque ~6 to 10× while keeping the system backdrivable and preserving torque transparency: you can still sense and command torque accurately through the gearbox, because a 6:1 single stage has low friction and low reflected inertia compared to a 100:1 harmonic drive.

The backdrivability story is a scaling law, and it's brutal on high ratios. Reflected motor inertia and reflected friction both scale with the gear ratio N:

J_reflected  =  N² · J_motor        # inertia felt at the output
τ_friction,out ≈ N · τ_friction,motor

The inertia term goes as N squared. A 6:1 stage multiplies the rotor's inertia at the output by 36; a 100:1 harmonic drive multiplies it by 10,000. That reflected inertia is precisely what a leg has to shove aside when the foot hits the ground and tries to backdrive the joint, at 10,000×, the joint is effectively rigid, the motor never feels the impact, and the gear teeth eat the shock instead. At 36×, the rotor spins freely enough that the leg "gives," the current sensor sees the disturbance, and you get compliance for free. This N² law is the entire reason QDD chose low ratios and big-torque motors rather than small motors behind tall gearboxes.

This combination (articulated in Wensing, Wang, Seok, Otten, Lang, and Kim's "Proprioceptive Actuator Design in the MIT Cheetah" (IEEE Transactions on Robotics, 2017), and now standard in Unitree, mjbots, and most agile quadrupeds) gives you:

  • High torque density in a compact package.
  • Backdrivability for safe, compliant interaction and shock absorption (the leg "gives" on impact instead of shattering a gear).
  • Proprioceptive torque sensing from motor current, no separate torque sensor.
  • High control bandwidth for dynamic gaits.

Contrast that with the traditional servo approach: a high-Kv motor and a 100:1+ harmonic/strain-wave gearbox (think industrial robot arms, Maxon EC + Harmonic Drive). That gives huge torque and stiffness and precision, but it is not backdrivable, has lash/elasticity, and hides the motor's torque behind gear friction. Great for a welding arm, wrong for a galloping leg.

Rule: for legged robots and force-controlled limbs, QDD (low-Kv outrunner + 6:1 to 10:1 planetary + FOC + encoder) is the default. For high-precision positioning arms where backdrivability doesn't matter, a high-ratio strain-wave gearbox on a smaller motor wins on torque density and stiffness.

The open-source drives that made this accessible: ODrive (dual-axis FOC, popular for direct-drive and QDD builds) and mjbots moteus (compact integrated FOC controller designed expressly for quadruped actuators, CAN-FD, on-board magnetic encoder).

Drone propulsion BLDCs vs robot-joint BLDCs

Both are "BLDC motors," but they're optimized for opposite ends of the torque-speed plane, and confusing them is a common rookie error.

Drone / propulsion motors

The job is to spin a propeller fast and efficiently, always in one direction, always above idle speed.

  • High Kv (900 to 2700 for 5-inch quads; 100 to 400 for heavy-lift big props), speed matters.
  • Outrunner, optimized for thrust-per-watt and weight, not torque at standstill.
  • Sensorless six-step commutation (or sensorless FOC on better ESCs like Hobbywing or BLHeli-32/AM32), the prop never needs zero-speed torque, so no Hall sensors or encoder.
  • Aggressive peak ratings, light construction, minimal heatsinking: a 5-inch quad motor weighs ~30 to 50 g and relies on prop wash for cooling.
  • Examples: T-Motor F-series and iFlight/iPower for racing/freestyle; KDE Direct and T-Motor U/MN-series for heavy-lift; matched with Hobbywing or T-Motor ESCs.

Robot-joint / actuator motors

The job is to produce controllable torque across a range that includes zero speed, often bidirectionally, often holding against a load.

  • Low Kv (50 to 300), torque matters, top speed doesn't.
  • Outrunner (for QDD) or inrunner + high-ratio gearbox (for stiff arms).
  • Encoder-based FOC: must have full torque at zero speed and torque sensing.
  • Conservative continuous ratings, robust thermal path to the joint structure, designed for thousands of hours.
  • Examples: Maxon EC/ECX + EPOS or gearhead for industrial; T-Motor/iPower gimbal motors + ODrive/moteus for robotics; integrated actuators like mjbots, Unitree, and CubeMars/AK-series.
Priority Drone propulsion motor Robot-joint motor
Kv High (speed) Low (torque)
Direction Unidirectional Bidirectional
Zero-speed torque Not needed Required
Commutation Six-step / sensorless FOC Sensored FOC
Feedback Sensorless Encoder
Cooling Prop wash, lightweight Conduction into structure
Lifetime target 10s to 100s of hours 1000s+ of hours
Failure mode of concern Demag at full throttle Thermal at sustained torque

Cooling, thermal management and duty cycle

Because the continuous rating is a thermal limit, cooling is not an afterthought: it directly sets how much usable torque you get. The same motor can deliver 1.5× the continuous current with good thermal design.

Where the heat goes

Heat is generated mostly in the windings (I²R copper loss) and the iron (eddy and hysteresis loss, which rise with electrical frequency). It must travel: winding → stator iron → housing → ambient. Each interface has a thermal resistance; the sum is your R_th (K/W).

  • In an inrunner, the stator is the outer body, so heat conducts straight into the housing and out: good cooling.
  • In an outrunner, the windings are on the inner stator and the spinning can is on the outside; heat has to cross the air gap or go out the mounting face. Outrunners cool worse, which is why direct-drive joint motors often bolt the stator to a big aluminum structure that acts as a heatsink.

Levers you control

  • Mount to a heatsink. Bolting the motor to the robot's aluminum chassis can drop R_th dramatically. A 3D-printed PLA bracket is a thermal blanket: it insulates.
  • Airflow. Forced convection (prop wash, a fan, or just an open chassis) can double the continuous rating versus a sealed enclosure.
  • Higher voltage, lower current. Same power at higher voltage means lower current means less I²R loss. Moving a 24 V drive to 48 V halves the current for the same power and cuts copper loss 4×, a big reason robot drivetrains are going to 48 V.
  • Better winding (higher copper fill). You can't change this after purchase, but it's why premium motors run cooler.

Duty cycle and thermal time constant

A motor has a thermal time constant: how long it takes to heat up. Small drone motors heat in seconds; big servomotors take minutes. This lets you exceed continuous current for short bursts as long as the RMS current over your duty cycle stays within the continuous rating.

I_rms = sqrt( mean( I(t)^2 ) )   over the motion cycle
# keep I_rms <= I_continuous, even if peaks go higher briefly

A pick-and-place arm that accelerates hard (high peak current) then sits idle has a low RMS current and can use a smaller motor than its peak suggests. A motor holding a leg against gravity all day has its hold current as a continuous load, no duty-cycle relief.

Rule: compute RMS current over the actual motion profile, not the peak. Then check the peak fits within the seconds your thermal time constant allows. A motor with a fat thermal mass forgives spiky loads; a tiny one does not.

Selecting a BLDC for a robot

Here's the actual workflow for sizing a BLDC for a robot joint or drive. Do it in this order.

1. Define the load's torque-speed point(s)

Work out the worst-case continuous torque and the worst-case speed at the output (after the gearbox). For a leg, that's the torque to hold/move the robot's mass through its gait; for a drive wheel, the torque to climb the worst grade at the target speed; for an arm, the torque at full extension plus dynamics.

2. Pick a gear ratio (if any)

QDD legs: 6:1 to 10:1 single-stage planetary. Precision arms: strain-wave 50:1 to 160:1. Wheels: often direct or a low single stage. The ratio multiplies torque and divides speed, and it divides reflected inertia by the ratio squared. Reflect the load back to the motor: τ_motor = τ_output / (ratio · efficiency), ω_motor = ω_output · ratio.

3. Choose voltage

Higher voltage = lower current for the same power = thinner wires, less loss, but more expensive electronics and tighter safety rules. Common robotics buses: 24 V (small), 36 to 48 V (mid), 48 V+ (high-power, the 2026 sweet spot for legged/AMR). Match your battery chemistry: a 6S LiPo is ~22 to 25 V, a 12S is ~44 to 50 V.

4. Pick Kv

Choose Kv so Kv × V_pack lands ~10 to 20% above your required motor RPM (after reflecting through the gearbox). Then compute the current your torque demands: I = τ_motor / Kt, where Kt = 9.549 / Kv. Verify that current is below the motor's continuous rating with margin.

5. Choose the sensor and controller

  • Needs torque at zero speed (any joint/leg) → encoder + FOC drive (ODrive, moteus, Maxon EPOS).
  • Always spinning fast (prop, fan, free wheel) → sensorless six-step or sensorless FOC ESC (Hobbywing, BLHeli/AM32).
  • In between → Halls + FOC.

6. Check thermal margin

Compute RMS current over the duty cycle; confirm it's under continuous with the cooling you'll actually have (derate for bad brackets). Confirm peak current is covered for the worst transient within the thermal time constant.

Worked comparison table

A rough guide to real parts across the robotics spectrum (specs approximate; always check the live datasheet):

Use case Example part Type Kv Voltage Continuous Sensor / control
5-inch racing quad T-Motor F40 Pro Outrunner ~1950 Kv 4S to 6S ~35 A Sensorless six-step ESC
Heavy-lift prop KDE Direct 4014XF Outrunner ~380 Kv 6S to 8S 36 A (≥5 mph airflow) Sensorless ESC
Camera gimbal / light joint iPower GM4108 Outrunner ~24 to 170 Kv 12 to 24 V a few A FOC + encoder
Quadruped leg (QDD) mjbots / CubeMars AK80 Outrunner + 6:1 to 9:1 ~100 Kv class 24 to 48 V ~10 to 20 A FOC + magnetic encoder
Robot drive wheel ODrive + hub/inrunner Inrunner/outrunner 150 to 300 Kv 24 to 56 V 20 to 60 A FOC + encoder/Halls
Precision arm joint Maxon ECX + gearhead Inrunner + strain-wave (geared) 24 to 48 V per frame size FOC (EPOS) + encoder

Rule: never spec a motor from the peak/burst number on the box. Start from the continuous torque your load needs, reflect it through your gearbox to motor current via Kt, and leave 20 to 30% thermal headroom. The motor that "just barely fits" on paper runs hot and dies early.

Frequently asked questions

Is a higher Kv motor more powerful? No. Kv tells you speed per volt, not power. A high-Kv motor spins faster but makes less torque per amp; a low-Kv motor is the reverse. Power capability is set by current (heat), voltage, and the motor's physical size, not by Kv. Two motors of identical size with different Kv have nearly identical power capability; they just package it as different speed/torque combinations.

What's the real difference between a BLDC and a PMSM? Physically, very little: both are three-phase permanent-magnet machines with electronic commutation. The conventional distinction is the back-EMF waveform: trapezoidal (called BLDC, suited to six-step commutation) vs sinusoidal (called PMSM, suited to FOC). In practice, modern FOC controllers drive both sinusoidally, so a "BLDC" run under FOC is operating as a PMSM. Spec the electrical constants and ignore the label.

Why do robot legs use low-Kv gimbal motors instead of geared servos? A low-Kv motor makes high torque per amp and, under FOC with a small (6:1 to 10:1) planetary gear, stays backdrivable and lets you estimate torque from current, no torque sensor needed. That gives compliant, dynamic, force-controlled legs. A high-ratio geared servo gives more torque and stiffness but isn't backdrivable and hides torque behind gear friction, which is wrong for dynamic locomotion.

Can I run a BLDC without an encoder or Hall sensors? Yes, sensorless, by estimating rotor angle from back-EMF. But back-EMF disappears near zero speed, so sensorless motors need an open-loop startup ramp and can't hold position or deliver smooth torque at standstill. That's fine for props, fans, and free-spinning wheels, and unacceptable for any joint that must hold a load.

What does the continuous current rating actually limit? Heat. Continuous current is the steady current at which the winding temperature settles at the insulation limit (often 100 to 155 °C) for the motor's thermal resistance and assumed cooling. The ceiling is thermal, so the motor can briefly produce far more torque (peak rating) until the windings overheat. Always design to continuous and derate for your real cooling.

Why are robot drivetrains moving from 24 V to 48 V? Power is voltage times current, and losses are current squared times resistance. At double the voltage you halve the current for the same power, cutting copper (I²R) loss by 4×. That means cooler motors, thinner wires, smaller connectors, and higher continuous torque from the same hardware. The tradeoff is more expensive electronics and stricter safety handling.

How do I convert Kv to torque constant Kt? Kt [N·m/A] ≈ 9.549 / Kv (with Kv in RPM/V). So a 900 Kv motor has Kt ≈ 0.0106 N·m/A. In SI units the back-EMF constant Ke (V per rad/s) equals Kt numerically. This is the single most useful conversion in BLDC selection: it turns the speed spec into a torque-per-amp number you can size current against.

Inrunner or outrunner: which should I pick? Outrunner for direct-drive torque at low speed in a short package: props, gimbals, QDD legs. Inrunner for high speed and low rotor inertia that you then gear down: tools, EDF fans, many industrial servos. Outrunners cool worse (windings trapped inside the spinning can), so direct-drive joint motors lean on the mounting structure as a heatsink.

What's the typical efficiency of a BLDC? 80 to 90% at the design point for a well-matched motor; large industrial servomotors reach 90 to 94%, while tiny drone motors at full throttle can drop into the 70s because of high current density and limited cooling. Efficiency is highest near the rated operating point and falls off badly at very low load (dominated by iron/friction losses) and near stall (dominated by I²R).

Why do high-pole-count motors stress ESCs? Electrical frequency = mechanical RPM/60 × pole pairs. A 14-pole (7 pole-pair) motor at 6,000 RPM runs its field at 700 Hz; the ESC must commutate at that rate. High-pole-count motors (gimbal, direct-drive) demand fast commutation and high eRPM-capable controllers, and the higher electrical frequency also raises iron losses.

Do BLDC motors have cogging torque, and does it matter? Yes, the rotor magnets prefer to align with stator teeth, producing small detent (cogging) torque even unpowered. It's worst in motors with certain slot/pole combinations and matters for smooth low-speed motion, haptics, and precise positioning. Skewed slots/magnets and good slot/pole pairings (like 12N14P) reduce it; FOC can partly compensate the residual.

If heat sets the continuous limit, what sets the true peak torque ceiling? Magnetic saturation. Torque is τ ≈ Kt·I only while the stator iron responds linearly to current. Push enough current and the iron's flux density plateaus near ~1.5 to 2 T; beyond that, extra amps stop adding proportional flux and Kt droops: the torque-per-amp curve bends over. So a motor has two distinct ceilings: a thermal one (continuous, set by I²R and R_th) that you hit in seconds-to-minutes, and a magnetic one (instantaneous, set by saturation) that no amount of cooling raises. The published "peak torque" is usually where saturation has already eaten 10 to 20% of Kt, which is why doubling the current rarely doubles the torque at the top end.

What kills a BLDC motor in practice? Three things: bearings wearing out (the usual end-of-life), permanent demagnetization of the rotor magnets from overheating (running peak current too long, or low-grade magnets above ~80 °C), and winding insulation failure from sustained over-temperature. All three trace back to heat, which is why thermal design and honest continuous-current sizing are the whole game.

Related guides