BLE Control App for a Smart Tennis Ball Machine
A phone app that controls a tennis ball machine over Bluetooth with 99% command accuracy.

- Industry
- Sports tech
- Platforms
- iOS and Android
- Connectivity
- Bluetooth Low Energy
- Scope
- App + device protocol
What the client needed.
The client's ball machine had a physical remote that players disliked. They wanted training drills, speed, spin and feed rate controlled from a phone at the far end of the court.
Commands had to arrive instantly and correctly every time; a wrong command on a ball machine is a safety issue, not just a bug.
A small protocol, engineered for reliability.
The app speaks a compact BLE command set to the machine's controller, confirms every command and recovers automatically from dropped connections.
- 01Ball machineController · BLE module
- 02Command protocolCompact frames · acknowledgements
- 03Mobile appiOS & Android
- 04Drill engineSaved sequences · timing
- 05Connection managerAuto-reconnect · state recovery
- 06AnalyticsSession stats
The decisions that made it work.
- 1
Acknowledge every command
The machine confirms each instruction and the app retries silently, which is how we reached 99% accuracy.
- 2
Drills as data
Training drills are stored as sequences, so new drills ship without app updates.
- 3
Designed for the far baseline
Large controls and haptic feedback for use mid-rally, often with one hand.
- 4
Reconnect without losing state
If Bluetooth drops, the app restores the running drill instead of starting over.
What the client got.
- accuracy between app commands and machine behaviour
- 99%
- platforms from one codebase
- 2
- BLE
- iOS
- Android
Building something similar?
Tell us about it. You'll talk to the engineer who designed this one.
