Battery and thermal design for outdoor courts

The Vive Tennis robot is designed for a real human session — roughly 90 minutes of active court time. That's both the marketing claim and the engineering spec. Hitting it on a Toronto summer afternoon at 32°C, however, took two over-engineered heat-sinks and one humbling conversation with a battery engineer.

The energy budget

Three things draw current: the drive motors, the gripper motor, and the compute module running our perception pipeline. The drive motors are by far the biggest variable — chasing a ball at speed costs 5–8× as much energy as standing still. Compute is a flat ~12 W. Gripper is bursty but small.

Over a typical 90-minute session, integrated draw averages around 35 W. That gives us a target capacity of ~55 Wh at the pack level, with margin.

The heat problem

A Jetson-class board pulling 12 W constantly produces heat. In an enclosed, sun-baked plastic case sitting on asphalt that has been absorbing 1000 W/m² for six hours, that heat has nowhere to go.

Our first thermal test was a disaster. Half an hour into an outdoor session in July, the compute board hit 85°C and throttled. Detection FPS dropped from 30 to 9, and the robot started missing balls.

What we did

Three changes, in the order we tried them:

  • Passive aluminum heat sink with bolted-on contact to the case. Helped, but not enough.
  • A small 5V fan exhausting through a vent on the rear. Bigger improvement. But we hated the fan — it's the only moving part on the robot that's not directly useful.
  • Doubled the heat sink mass and re-routed the airflow path. This is what we shipped. The fan stays — but at half-speed. We trade 0.5 W of fan power for an extra 30°C of headroom.

The battery vendor conversation

The other thing we learned: not all 18650 cells are equal. Our first batch in 2024 came with a partial spec sheet from a Shenzhen supplier; the cells under-delivered by about 9% capacity. Shahriar caught it in incoming QA after three returned units. We're now on a different cell with a real datasheet and an independent test report.

Lifetime: 800 charge cycles to 80% capacity — roughly four years of weekly play. The pack is replaceable.

— Sina