The phone watches. The laptop guesses. Two motors move the paddle.

This is the robot paddle we want to add to our air hockey table. Take a shot below and watch it block the puck or hit it back. The puck moves with Josh's real PuckCam numbers.

Ready. Take a shot, or drag on the left half of the table to aim one.

Shoot like Josh picks a speed from one of his 205 recorded shots.

m/s means metres each second. Half of Josh's shots were faster than 2.9 m/s.

The robot tries to
Paddle top speed

Two motors, one paddle

Both motors stay still at our end of the table. Two long belts run from them to the paddle's holder. The paddle can only move when the belts pull it.

Move a slider, or press a button, to turn the motors.

One shot, step by step

  1. The shot is hit.At 0 ms. A millisecond (ms) is a thousandth of a second.
  2. The phone sees the puck. It takes a picture every 4 ms and finds the puck in each one.Already working in PuckCam.
  3. The laptop gets the puck's spot, works out its speed and guesses where it will go, bounces included.The phone to laptop part takes about 15 ms. We measured this.
  4. The small board gets the paddle's next spot and turns the two motors.The simulation allows 30 ms from picture to motors.
  5. Every new picture fixes the guess, so the paddle keeps adjusting until it meets the puck.The guess is updated 240 times each second.

Take a shot above to see these times for a real shot in the simulation.

What we're getting

Everything the course would pay for, with prices checked on November 2, 2026. Each colour matches the drawing above.

Parts
$330.80
Delivery (BC Robotics gives only a starting price)
$22.29
Tax, 13%
$45.90
Robot paddle total
$398.99

Our $600

Table, bought: $169.47Robot paddle: $398.99Left over: $31.54

Things we already have

  • The phone, our camera.
  • The laptop that runs PuckCam.
  • The table and its paddle. The robot holds a normal paddle, so we do not buy a new one.
  • A 3D printer, for the motor mounts, belt wheel holders, paddle holder and belt covers.
  • Wire, screws and printer plastic. We cover these ourselves.
  • A Raspberry Pi. It is not needed for this, since the laptop does the thinking.

What we'd be doing

  1. Show Sean the tracking and ask about adding the paddle.We buy nothing for the paddle until he agrees.
  2. Order the parts from BC Robotics, Amazon.ca and 3D Printing Canada.Keep every receipt.
  3. Print the motor mounts, belt wheel holders, paddle holder and belt covers.
  4. Bolt the two side rails along our end of the table and set the crossbar across them on its wheeled plates.
  5. Fit the motors, belt wheels and belts, then tighten the belts.
  6. Wire the board, power brick, fuse, edge switches and stop button.Test the stop button before anything moves.
  7. Make slow moves with no puck.Check the edges, the stop button, and that the paddle goes where it is told.
  8. Connect PuckCam, so the laptop sends the paddle's next spot to the board.
  9. Start with gentle shots, then harder ones, and write down which ones it stops.

Good to know

Guarding the goal is easy on our table

The goal is 16 cm wide and the paddle is 8.1 cm wide. A paddle parked in the goal mouth leaves less than 4 cm on each side, and the puck is 6.35 cm wide. In the simulation it stops every shot. Real life will be messier.

Hitting it back is where speed matters

To hit the puck back, the paddle has to leave the goal and meet it. Hard shots from close to the middle line give it very little time, so some get past. Try Hit it back with hard shots and each motor speed.

Our motor speed is a guess

The motors we picked should reach about 0.8 m/s. That comes from a chart for a similar motor, not from a test. Moving on a slant is slower than moving straight, because one motor has to do most of the work.

Other things to watch

The crossbar is about 80 cm long and could bend or shake. Belts can slip if we push them too hard. We will start slow, cover the belts and keep the stop button in reach.

Where these numbers come from