Coding Ireland STEM Report 2024 Have Your Say
Microbit
Advanced
40 mins
195 points
What you need:
  • Computer/laptop
  • Microbit

Microbit Light Clapper

In this project we use the microphone in our Microbits to detect when we clap and turn on the lights.

Note you will need a Microbit V2 for this project as it has a microphone. The original version of the Microbit does not have a microphone.

1 - Create a new project

Go to the makecode.microbit.org website and create a new project.

2 - Create a variable

In this project we are going to detect when you clap using the microphone in your Microbit. When we detect a clap we will turn on the LED lights of the Microbit or turn them off if they're already on.

To decide whether to turn them on or off we will need a variable to store if they are currently on or off.

Create a variable called lightOn. and then add the following code to set this variable to false at the start.

let lightOn = false

3 - Sound threshold

For detecting the clap, we need to set how loud a sound we need to listen for. To do this we use the set [loud] sound threshold to block.

Add this block into the on start block and set the value to 128 (the range in 0 to 255).

let lightOn = false
lightOn = false
input.setSoundThreshold(SoundThreshold.Loud, 128)

4 - Detect a clap

Now to detect the clap we will use the on [loud] sound block.

Add the following code.

input.onSound(DetectedSound.Loud, function () {
	
})

5 - Add the if then else

Next add an if then else block inside the on [loud] sound block and check if "not lightOn".

If the light is not on then we will turn it on else we will turn it off.

input.onSound(DetectedSound.Loud, function () {
    if (!(lightOn)) {
    	
    } else {
    	
    }
})

Join our club 😃

To view the remaining 4 steps and access hundreds of other coding projects please login or create an account.

Copyright Notice
This lesson is copyright of Coding Ireland. Unauthorised use, copying or distribution is not allowed.
🍪 Our website uses cookies to make your browsing experience better. By using our website you agree to our use of cookies. Learn more