---
title: "Activity: Rover Theremin"
date: "2024-12-31"
categories: ["Activities", "All", "Simulator Activities"]
tags: ["Colour Sensors", "Branching", "Iteration", "Algorithm Design", "Advanced"]
excerpt: "Let’s convert the rover into one of the weirdest musical instruments of all time! In this activity, you will learn to code the rover to act like a Theremin and play it without touching a thing. Getting Into Music: As instruments go, the"
featuredImage: "/images/resources/activity-rover-theremin.jpg"
---

Let’s convert the rover into one of the weirdest musical instruments of all time! In this activity, you will learn to code the rover to act like a Theremin and play it without touching a thing.

### Getting Into Music:

![](/images/content/c37630-theremin.png)

As instruments go, the Theremin is quite an odd machine. The device uses two antennae that have an electromagnetic field surrounding them. These fields can be affected when a hand is moved near them. One antenna (horizontal) is used to control the note's volume, and the other (vertical) is used to control the note's pitch.

We're going to make the rover behave similarly to the Theremin to play music. For an introduction to reading music and for an example song, head over to the 'Making Music' activity guide[Activity: MAking Music (Beginner)](/resources/activity-making-music-beginner)

### Setup:

So to make our rover theremin, we need two sensors on the rover to act as the two antennae. We'll use the left IR sensor to serve as the volume control and the right IR as the pitch control. The idea is that covering the left IR sensor will cause the rover to play a note. We can use a hand's distance from the right IR to control the note's pitch.

To get started, print this attachment: [Note_Scale.pdf](/s/Note_Scale)

![](/images/content/d9f3cd-theramin-scale.png)

After printing the page, position the rover so that the right track is precisely on the line for note C. As seen on the page, each note has a number in cm. This indicates how far each line is from the rover IR. We'll be using this information in the code.

![](/images/content/752015-img_1868.jpg)

### Code:

#### 1) Volume Control:

![](/images/content/ac36fd-volume-control.png)

First, we need to code in the volume control. If the left IR is uncovered, all sounds must stop. If the IR is covered, the rover can continue playing the notes.

As seen in the code, if the left IR distance sees less than 6cm, the code will continue. Otherwise, all sounds will be stopped.

#### 2) Pitch Control:

Now, all that is left is to add a large 'if/else if 'code to the inside of the volume control to control the pitch. As the code shows, the 'if' statement checks through each distance on the note scale to see which note is being triggered. The code plays the correct note depending on how far the hand is from the right IR.

![](/images/content/d68678-code.png)

#### Tips:

Try to make your own note scale and change the code to suit it. Maybe you can add two octaves of notes on your page.
