May 23, 2025

Mastering Precise Turns with LEGO Spike Prime and the Yaw Sensor

Mastering Precise Turns with LEGO Spike Prime and the Yaw Sensor

Objective:
Equip students with the knowledge and skills to utilize the Spike Prime Hub's Yaw sensor for accurate robot turns, leading to improved navigation and higher scores in competitions.

This lesson is available in a video format on YouTube.


Lesson Overview

  1. Understanding the Yaw Sensor
  2. Displaying Yaw Values on the Hub
  3. Programming Precise In-Place Turns
  4. Creating Reusable 'My Blocks' for Turns
  5. Applying Skills in FLL Challenges

1. Understanding the Yaw Sensor

What is Yaw?
Yaw refers to the robot’s rotation around the vertical axis—essentially, its ability to turn left or right in place.

Yaw Angle Range:
The Spike Prime Hub measures yaw angles from -180° to 179°.

  • Positive values = Clockwise turn
  • Negative values = Counterclockwise turn

2. Displaying Yaw Values on the Hub

Goal:
Use a variable to monitor the yaw angle in real time.

Steps:

  • Create a variable called Yaw.
  • Use a loop to continually update this variable.
  • Display the yaw value on the Hub.

Sample Pseudocode for Word Blocks:

When program starts
Set Yaw to 0
Forever
Set Yaw to motion sensor yaw angle
Display Yaw on Hub

3. Programming Precise In-Place Turns

Goal:
Use Yaw data to turn exactly a desired number of degrees.

Steps:

  • Reset yaw angle to 0.
  • Start motors to rotate the robot.
  • Use wait until to stop when the desired yaw angle is reached.

Sample Code (Pseudocode for Word Blocks):

When program starts
Reset yaw angle to 0
Start motors: Left forward, Right backward
Wait until yaw angle is greater than 90
Stop motors

4. Creating Reusable 'My Blocks' for Turns

Goal:
Make your code cleaner and more powerful with a custom block.

Steps:

  • Create a My Block called Turn Degrees with one input: angle.
  • Inside the block:
    • Reset the yaw angle.
    • Decide motor direction based on angle.
    • Rotate the robot.
    • Stop once yaw equals the input angle.

Sample Code (Pseudocode for Word Blocks):

Define 'Turn Degrees' with input 'angle'
Reset yaw angle to 0

If angle > 0
Start motors: Left forward, Right backward
Else
Start motors: Left backward, Right forward

Wait until value of yaw = value of 'angle'
Stop motors

5. Applying Skills in FLL Challenges

Benefits of Precise Turns:

  • ✅ Better field alignment
  • ✅ More reliable missions
  • ✅ Easier to debug and reuse code

Practice Activity:
Have students code the robot to drive in a square using four 90° turns, returning to the starting point.


📥 Resources

Recent Posts

Sprattronics Learning Lab helps families to maximize their education.
March 8, 2026
Level 1 Scratch - Make a Flappy Bird Game

Scratch Coding Challenge: Build Flappy Bird In this challenge, you will build your own version of Flappy Bird in Scratch. Flappy Bird was one of the most downloaded mobile games in the early days of touchscreen devices. The idea is simple: This isn't meant to be cookbook coding. Great programmers learn by breaking problems into […]

Read More
February 25, 2026
Code a Mini Economy Town in Scratch

Development Guide: Code a Mini Economy Town in Scratch This guide explains how to build a dice-powered city simulator in Scratch. You will learn how to manage a virtual economy, use cloning to build a visual city, and create a multi-level progression system. You can check out this project on Scratch. Dicy City Scratch We […]

Read More
February 25, 2026
Code a Town Economy Game

Code a Mini Economy Town: A Development Guide This guide breaks down the creation of Dice City Tycoon, a browser-based economic simulator. We developed this game in five distinct phases, moving from a simple text-based engine to a polished, multi-level city builder. This page is all about building the game in HTML for a Web Browser. […]

Read More
© Copyright 2023 - Sprattronics LLC- All Rights Reserved
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram