From dancing robots to banana keyboards, your micro:bit has all the features you need to code awesome stuff – the possibilities are endless!

A diagram of the BBC micro:bit


Your micro:bit has the following physical features:

Let’s take a look at what these components do and discover how to code them!


The micro:bit LEDs

What is it? LED stands for Light Emitting Diode. The micro:bit has 25 individually-programmable LEDs, allowing you to display text, numbers, and images.

How do I code it? Learn more about coding the LEDs, or use the code references below.

Python JavaScript Blocks

Examples – check out this Animated Flashing Heart in JavaScript or learn how to make animations with Python!


The micro:bit buttons

What is it? There are two buttons on the front of the micro:bit (labelled A and B). You can detect when these buttons are pressed, allowing you to trigger code on the device.

How do I code it? See the code references below.

Python JavaScript Blocks

Examples – take a look at this Smiley Button project, or this more advanced Voting Machine project, both controlled using the buttons in JavaScript.


The micro:bit pins

What is it? There are 25 external connectors on the edge connector of the micro:bit, which we refer to as ‘pins’. Program motors, LEDs, or other electrical components with the pins, or connect extra sensors to control your code!

How do I code it? Learn more about the hardware of the pins, or use the code references below.

Python JavaScript Blocks

Examples – code a Banana Keyboardhack your headphones, and create a Milk-Carton Robot with JavaScript! Or, take a look at this ticklish micro:bit project in Python!

Light Sensor

The micro:bit LED screen, acting as a light sensor.

What is it? By reversing the LEDs of the screen to become an input, the LED screen works as a basic light sensor, allowing you to detect ambient light.

How do I code it? See the reference below for the JavaScript Blocks Editor:

JavaScript Blocks

Examples – learn how to chart the light level on the screen with JavaScript

Temperature Sensor

The micro:bit temperature sensor

What is it? This sensor allows the micro:bit to detect the current ambient temperature, in degrees Celsius.

How do I code it? See the code references below.

Python JavaScript Blocks

Examples – code a digital thermometer in Celsius and Fahrenheit with JavaScript!


The micro:bit accelerometer

What is it? An accelerometer measures the acceleration of your micro:bit; this component senses when the micro:bit is moved. It can also detect other actions, e.g. shake, tilt, and free-fall.

How do I code it? See the code references below.

Python JavaScript Blocks

Examples – code a Rock, Paper, Scissors game with JavaScript, triggered when the micro:bit is shaken! Or, create musical mayhemwith Python!


The micro:bit compass

What is it? The compass detects the earth’s magnetic field, allowing you to detect which direction the micro:bit is facing. The compass has to be calibrated before it can be used.

‘Calibrating’ the compass ensures the compass results are accurate. For the JavaScript Blocks Editor, use the ‘calibrate compass’ block. To calibrate the compass in Python use compass.calibrate().

When the calibration begins, the micro:bit will scroll an instruction on the display for you – either “Draw a circle” or “Tilt to fill screen”. To calibrate the compass, just follow these instructions and tilt the micro:bit to move the dot in the centre of the screen around until you have either drawn the outline of a circle, or filled up the whole screen.

How do I code it? Use the code references below.

Python JavaScript Blocks

Examples – create a working compass to find North in JavaScriptor Python!


The micro:bit radio antenna

What is it? The radio feature allows you to communicate wirelessly between micro:bits. Use the radio to send messages to other micro:bits, build multiplayer games, and much more!

How do I code it? Discover how to code the radio:

Python JavaScript Blocks

Examples – create a Multiplayer Rock, Paper, Scissors game (JavaScript), or create cool digital fireflies in JavaScript and Python!


The micro:bit bluetooth antenna

What is it? A BLE (Bluetooth Low Energy) antenna allows the micro:bit to send and receive Bluetooth signals. This allows the micro:bit to wirelessly communicate with PCs, Phones, and Tablets, so you can control your phone from your micro:bit and send code wirelessly to your device from your phone!

Before using the Bluetooth Antenna you will need to pair your micro:bit with another device. Once paired, you can send programs wirelessly to your micro:bit.

JavaScript Blocks

The Python Editor doesn’t currently support bluetooth.

What can I do with it? Send code to your micro:bit wirelessly.

USB Interface

The micro:bit, connected via the USB interface

What is it? The USB interface allows you to connect the micro:bit to your computer via a micro-USB cable, which will power the device and allow you to download programs onto the micro:bit.

Technical Info

Please refer to the hardware page to discover more about the micro:bit’s technical and compliance info.


Take a look at the apps page to learn more about coding the micro:bit from a mobile device.



Banana Keyboard:

Best Keyboard Piano: