Blog

Thoughts, notes, and documentation
← All posts

How an eCVT shifts an e-bike without any gears

EngineeringBikeseCVTExplainer3D

I wanted to understand how an e-bike mid-drive can shift with no cassette, no shifter clicks, and no chain hopping sideways. I built an interactive 3D model of the gearset you can assemble part by part and then drive with sliders. This is the short version of what's inside it.

chainring rpm = 0.70 × crank + 0.30 × sun. At 80 rpm cadence: sun −60 → 38 low, +80 → 80 direct, +220 → 122 high, −187 → 0 neutral.

Gearset

One planetary gearset, three concentric connections:

  • Ring gear (63 teeth) — the input. Bolted to the crank spindle, so it always turns at pedalling speed. The main assist motor adds its torque here too.
  • Sun gear (27 teeth) — the control. Driven by a second, smaller motor. This is the shifter: not a lever, just a commanded speed.
  • Planet carrier — the output. The plate carrying the three planet gears (18 teeth each). Whatever speed it turns, the chainring turns.

Cross-section schematic of an eCVT mid-drive: crank input and torque motor on the ring gear, speed motor on the sun gear, planet carrier driving the chainring

In a normal gearbox you drive one shaft and read the other. Here you drive two and the third is decided for you.

Equation

chainring rpm = 0.70 × crank rpm + 0.30 × sun rpm

The weights come straight from the tooth counts: 63 ÷ (63 + 27) = 0.70 for the ring, 27 ÷ (63 + 27) = 0.30 for the sun. Engineers call that the Willis equation. The output is a fixed weighted average of two speeds you control: one with your legs, one with a motor.

Because the sun motor can be commanded to any speed, the output can be any value the equation allows.

At 80 rpm

Hold cadence at 80 rpm and watch what the chainring does as the second motor changes speed:

Speed motorChainringWhat the rider feels
−60 rpm (backwards)38 rpmLow. Chainring turns at half your cadence, so torque at the chainring roughly doubles. Climbing.
+80 rpm (matched)80 rpmDirect drive. Ring, sun and carrier all turn together, the gearset locks solid, nothing inside it is sliding.
+220 rpm122 rpmHigh. Chainring outruns your legs by half again, and torque drops by the same proportion. Flat out.
−187 rpm0 rpmNeutral. You're still pedalling, every gear inside is still turning, and the chainring is dead still. No clutch involved.

Three eCVT operating regimes side by side: low gear, 1:1 direct drive, and high gear, with crank, sun and output speeds for each

Neutral is the row that proves nothing is disengaging. Put −(63 ÷ 27) × 80 = −187 rpm into the sun and the two terms of the equation cancel exactly. The gearset is fully engaged, meshing, spinning — and delivering zero output speed.

Every sun speed in between is equally valid. On a real bike you never command the sun directly. You ask for a cadence or a support level, and the controller solves the same equation backwards to decide what the speed motor should do.

Recirculating power

Gearing down multiplies torque — at half output speed you get roughly double output torque, same as any gearbox. The torques on the ring, sun and carrier are also locked to each other by the tooth counts, and they don't care which direction power is flowing.

In low gear the sun is being driven backwards while the gearset pushes it forwards. Power flows into the speed motor. It is generating, not driving, and that recovered electricity feeds the main assist motor on the ring.

That's why these drivetrains are quiet and stepless, and also why they give up a few percent of efficiency compared with a chain sitting on a well-chosen sprocket. Every ratio you ask for is paid for in watts moving between two motors.

Assist vs shifter

Two motors in the housing, easy to mix up. Turn the assist motor up and you don't change gear — it's geared to the ring, which is tied to your crank, so it simply pedals harder for you. It sets how much force goes in.

Only the sun's speed relative to the crank sets the ratio.

Detail drawing of the planetary gearset: 27-tooth sun gear, three 18-tooth planets, 63-tooth ring gear and the planet carrier

Simplifications

The 63/27/18 tooth counts keep the arithmetic readable while still being a valid gearset: no undercut, the planetary assembly conditions satisfied, standard 20° involute teeth. The model on the page is engineering-grade geometry — true involute flanks, exact mesh phasing, and non-interpenetration proved by a 63-check harness, with a live subset of those checks running in the page itself.

Packaging is idealised. I draw the speed motor coaxial with the sun and the assist motor driving the ring through a single pinion; real units route both through extra reduction stages and lay them out very differently. Losses, freewheels, sensors and thermal limits are all left out.

Drive it

The interactive page builds the mechanism one part at a time in a nine-step tour, then hands you the sliders: change your cadence, change the speed motor, hit the low / direct / high / neutral presets, explode the assembly, cut away the housing, or click any part to see what it does.

lucaslongo.com/pages/ecvt