Machine Vision


PID Controls


Robocup Rescue Line

These slides are old, so the sample code are based on the old EV3 software. You won’t be able to use them directly, but the concepts and approach remains the same.


The line following challenges are particularly relevant to Robocup Rescue Line. Find it under “Worlds -> Select World -> Line Following Challenges”.

Arduino is no longer my recommendation for new designs. The ESP32 with IoTy (see below) is easier to use and much more capable. The non-Arduino documents below remains useful for new designs.

3D Design with Onshape

3D modeling is useful when building custom parts for OnStage. For laser cutting, it would suffice to go through Lesson 1 and Lesson A.

  • Creating an Account
  • Lesson 1 : Sketch and Extrude (ODT / PDF)
  • Lesson 2 : Revolve, Fillet, Chamfer (ODT / PDF)
  • Lesson 3 : Sweep, Loft (ODT / PDF)
  • Lesson 4 : Repeating with Patterns (ODT / PDF)
  • Lesson A : Prepare for Laser Cutting (ODT / PDF)


IoTy is a platform for programming the ESP32 using blocks or Python. This is useful for OnStage, Robocup Rescue Line (…if you’re building non-Lego robots), and for general electronics projects (eg. for WRO open category).