Thanks for supporting local! Our online shop is open & shipping orders. 

Search

Get Professional Support

BBC Micro:bit

Robotics

On sale items!

Announcement


Check out our latest news to find out more about events, opportunities and partnerships.

Esmes' Electronics


Esmes' Electronics is a simple introduction to using the micro:bit written by a year 5 student.

Troys' tutorials


Learn with Troy by asking for support and, he will post a tutorial here to benefit all of our visitors. Free advice!

Feature teacher


Be inspired by some of our favorite teachers using our products.

Get professional support


Contact us now to request your own tutorial or learning resource.

This section doesn’t currently include any content. Add content to this section using the sidebar.

Image caption appears here

Add your deal, information or promotional text

MM-00062

Sensor Board

12 items left

The MonkMakes Sensor Board for micro:bit allows you to sense sound level, temperature and light level.

Features

  • 3V and GND connections can be made from either side and allow you to power a second board such as the MonkMakes Relay Board or MonkMakes Speaker.
  • LED ‘power on’ indicator
  • Reverse polarity protection
  • All three sensors are analog and can be connected to pins P0, P1 and P2 using alligator clips.

Getting Started

Connecting to your micro:bit

You only have to wire up the sensors that you are actually using, but you could wire all the sensors up as shown below. The code examples below assume that pin 0 is used for sound, pin 1 for temperature and pin 2 for light. You can use any pin for any of the sensors, but remember to modify the code to match the pin you are using.

Sound

The Sensor for micro:bit uses a MEMs (microphone on a chip) and a pre-amplifier. The output of the sound sensor is connected to an analog input where it can be sampled. The sound signal varies about the 1.5V level. So, silence will produce an analog output of around 1.5V. When there is sound the analog readings will oscillate above and below the 1.5V level like this:

This is why 511 is subtracted from the readings in the code examples below.

JavaScript Blocks Editor

Here is an example of using the Sensor Board to display a bargraph to indicate the sound level. Click on the image below to try it out. Making a noise into the microphone will make the LEDs dance.

MicroPython

from microbit import *

def bargraph(a):
    display.clear()
    for y in range(0, 5):
        if a > y:
            for x in range(0, 5):
                display.set_pixel(x, 4-y, 9)
                
while True:
    sound_level = (pin0.read_analog() - 511) / 100
    bargraph(sound_level)

Temperature

The Sensor for micro:bit uses a thermistor to measure temperature. The temperature output from the board is a voltage that indicates the temperature. This is then measured using an analog input on the micro:bit.

The calculations for converting this voltage reading to an actual temperature are quite complicated and so the code examples here will only give a rough idea of temperature.

If you want your temperatures in Fahrenheit, then multiply the temperature in degrees C by 9, divide the result by 5 and then add 32.

JAVASCRIPT BLOCKS EDITOR

This is an example of using the Sensor Board to display the temperature, try putting your finger on the temperature sensor to warm it up. You can run the example below by clicking on it.

MicroPython

from microbit import *
 
while True:
    reading = pin1.read_analog()
    temp_c = int(reading / 13.33 - 14)
    display.scroll(str(temp_c))
    sleep(500)

Light

The light sensor uses a phototransistor to measure the light level and produces an output voltage that increases as the light level increases. Here is a guide to the kind of light level you might get from the sensor under different conditions (0 to 1023).

  • Dark 0 to 3
  • Dimly lit room 6 to 10
  • Indoors directly under a light 10 to 50
  • Outdoors (dull day) 100 to 200
  • Outdoors (sunny day) 800 to 900

Even though the maximum analog read value is 1023, the maximum reading from this sensor is around 900.

JAVASCRIPT BLOCKS EDITOR

Here is an example of using the Sensor Board to display a bargraph to indicate the light level. Click on the image below to try it out. Put your finger over the light sensor to make it dark or shine a flash-light onto it to make more LEDs light up.

https://makecode.microbit.org/_J8kfgyHDoHRP

MicroPython

from microbit import *

def bargraph(a):
    display.clear()
    for y in range(0, 5):
        if a > y:
            for x in range(0, 5):
                display.set_pixel(x, 4-y, 9)
                
while True:
    light_level = pin2.read_analog() / 10
    bargraph(light_level)

Related Products

As well as this board, we also have a Relay for micro:bit and a Speaker for micro:bit. We also have an Electronics Starter Kit for micro:bit that includes all three boards, a project booklet and other useful components to build yourself some great micro:bit projects.

How We Give Back

We believe in giving back; We are proud to give 1% of all orders directly to environmental not for profit groups whose focus is the protection, preservation and restoration of our planet. This means every time you purchase from us, 1% goes directly to an environmental cause.

Search