Skip to main content

1.5 micro:bit revision

Overview​

img

Getting started with the micro:bit hardware​

The micro:bit hardware is based on the Arm-Mbed platform. It has an application processor with lots of on-chip peripherals. Some off-chip peripherals are connected to this chip. There is an interface processor connected to the application processor, and it is the interface processors job to manage communications over the USB and to support the drag-and-drop code-flashing process. The interface processor does not connect to any of the micro:bit peripherals.

Two key pieces of information to help understand the internals of the micro:bit are:

  • The schematics, which shows the detailed component data and connectivity of the device.

  • The reference design, which is a complete module design of a compatible micro:bit, and is designed to be a starting point for anyone interested in understanding the micro:bit or designing their own variant.

Hardware description​

nRF51 application processor​

The nRF51 application processor is where user programs run. A single, complete application including user code, runtime code and bluetooth stack is loaded and run directly from on-chip flash memory. All user accessible GPIO pins are provided by this processor. There is an on-board 2.4GHz radio engine used to provide Bluetooth capabilities via an off-chip aerial.

itemdetails
ModelNordic nRF51822-QFAA-R rev 3
Core variantArm Cortex-M0 32 bit processor
Flash ROM256KB
RAM16KB
Speed16MHz
DebugSWD, jlink/OB
More InfoSoftware, NRF51 datasheet

Bluetooth wireless communication​

The on-board 2.4GHz transceiver supports Bluetooth communications via the Nordic S110 SoftDevice, which provides a fully qualified Bluetooth low energy stack. This allows the micro:bit to communicate with a wide range of Bluetooth devices, including smartphones and tablets.

itemdetails
StackBluetooth 4.1 with Bluetooth low energy
Band2.4GHz ISM (Industrial, Scientific and Medical) 2.4GHz..2.41GHz
Channels50 2MHz channels, only 40 used (0 to 39), 3 advertising channels (37,38,39)
Sensitivity-93dBm in Bluetooth low energy mode
Tx Power-20dBM to 4dBm in 4 dB steps
RoleGAP Peripheral
Congestion avoidanceAdaptive Frequency Hopping
ProfilesBBC micro:bit profile
More InfoBluetooth

Low level radio communications​

The on-board 2.4GHz transceiver supports a number of other radio communications standards, including the proprietary Nordic Gazell protocol. This protocol provides a very simple small-packet broadcast radio interface between other devices that support this proprietary protocol, such as other micro:bit devices. The 'radio' interface that appears in a number of the languages on the micro:bit is built on top of this Gazell protocol. Additionally, the micro:bit runtime software adds a 'group code' to each data payload, allowing for simple user managed device addressing and filtering to take place.

itemdetails
ProtocolMicro:bit Radio
Freq band2.4GHz
Channel rate1Mbps or 2Mbps
EncryptionNone
Channels101 (0..100)
Group codes255
Tx powerEight user configurable settings from 0(-30dbm) to 7 (+4dbm)
Payload size32 (standard) 255 (if reconfigured)
More InfoMicro:bit Radio

Buttons​

The two buttons on the front of the micro:bit, and the 1 button on the back, are tact momentary push to make buttons. The back button is connected to the KL26 interface processor and to the nRF51 processor for system reset purposes. This means that the application will reset regardless of if it is powered from USB or from battery.

Front buttons A and B can be programmed in the user application for any purpose. A and B are debounced by software, which also includes short press, long press, and 'both A+B' press detection. Buttons operate in a typical inverted electrical mode, where a pull-up resistor ensures a logical '1' when the button is released, and a logical '0' when the button is pressed. Both A and B buttons are connected to GPIO pins that are also accessible on the micro:bit edge connector.

itemdetails
Type2 tactile user buttons, 1 tactile system button
Debounce(A & B) software debounced, 54ms period
Pullup(A & B) external 4K7, (System) 10K

Display​

The display is a 5x5 array of LEDs. It is connected to the micro:bit as a 3x9 matrix. Runtime software repeatedly refreshes this matrix at a high speed, such that it is within the user persistence of vision range, and no flicker is detected. This LED matrix is also used to sense ambient light, by repeatedly switching some of the LED drive pins into inputs and sampling the voltage decay time, which is roughly proportional to ambient light levels.

itemdetails
Typeminiature surface mount red LED
Physical structure5x5 matrix
Electrical structure3x9
Intensity control10 steps
Intensity rangeTBC
Sensingambient light estimation via software algorithm
Sensing RangeTBC, 10 levels from off to full on
Colour sensitivityred centric, red is 700nm

Motion sensor​

The 1.5 micro:bit variant has a combined accelerometer and magnetometer chip that provides 3-axis sensing and magnetic field strength sensing. It also includes some on-board gesture detection (such as fall detection) in hardware, and additional gesture sensing (e.g. logo-up, logo-down, shake) via software algorithms. A software algorithm in the standard runtime uses the on-board accelerometer to turn readings into a board orientation independent compass reading. The compass must be calibrated before use, and the calibration process is automatically initiated by the runtime software. This device is connected to the application processor via the I2C bus.

The V1.5 micro:bit has a footprint for two different motion sensors: one made by ST (the LSM303AGR) and one by NXP (FXOS8700CQ). The micro:bit DAL supports both of these sensors, detecting them at runtime. To date, all V1.5 boards have been manufactured with the LSM303AGR. If we were to move to the NXP part, a round of testing would be required and we would notify the DAL and Devices mailing list.

itemdetails
ModelLSM303GR
Features3 magnetic field and 3 acceleration axes , 2/4/8/16g ranges
Resolution8/10/12 bits
On board gestures'freefall'
Other gesturesOther gestures are implemented by software algorithms in the runtime.

Temperature sensing​

The nRF51 application processor has an on-board core temperature sensor. This is exposed via the standard runtime software, and provides an estimate of ambient temperature.

itemdetails
Typeon-core nRF51
Sensing range-25C .. 75C
Resolution0.25C steps
Accuracy+/-4C (uncalibrated)
More InfoDAL Thermometer

General purpose input/output pins​

The edge connector brings out many of the GPIO circuits of the application processor. Some of these circuits are shared with other functions of the micro:bit, but many of these extra circuits can be re-allocated to general purpose use if some software features are turned off. Note: the nRF51 datasheet states that GPIO pins may be in std-drive (0.5mA) and high-drive (5mA) mode, with a maximum of 3 pins in high-drive mode at any one time.

itemdetails
Rings3 large IO rings and two large power rings, 4mm plug and crocodile clip compatible
GPIO features19 assignable GPIO pins
2 are assigned to the on-board I2C interface
6 are used for display or light sensing feature
2 are used for on-board button detection
1 is reserved for an accessibility interface
19 may be assigned as digital input or digital output
19 may be assigned for up to 3 simultaneous PWM channels
19 may be assigned for 1 serial transmit and 1 serial receive channel
6 may be assigned as analog input pins
3 may be assigned to an optional SPI communications interface
3 may be assigned for up to 3 simultaneous touch sensing inputs
ADC resolution10 bit (0..1023)
Edge connectorEdge connector
Pitch1.27mm, 80 way double sided.
Pads5 pads, with 4mm holes

Power supply​

Power to the micro:bit may be provided via the USB connection, via the interface chip (which has an on-board regulator), or via a battery plugged into the top connector. It is also possible (with care) to power the micro:bit from the 3V pad at the bottom. The 3V pad at the bottom can be used to supply a small amount of power external circuits.

itemdetails
Operating range1.8V .. 3.6V
USB current120mA max
On-board Peripherals budget30mA
Battery connectorJST X2B-PH-SM4-TB
Battery currentTBC
Max current provided via edge connector90mA
More InfoPower supply

Interface​

The interface chip handles the USB connection, and is used for flashing new code to the micro:bit, sending and receiving serial data back and forth to your main computer.

itemdetails
ModelFreescale MKL26Z128VFM4
Core variant:Arm Cortex-M0+
Flash ROM128KB
RAM16KB
Speed16Mhz (crystal) 48MHz (max)
Debug capabilitiesSWD
More InfoDAPLink, KL26 reference manual (behind login) KL26Z datasheet

USB communications​

The micro:bit has an on-board USB communications stack, that is built into the firmware of the interface chip. This stack provides the ability to drag and drop files onto the MICROBIT drive in order to load code into the application processor. It also allows serial data to be streamed to and from the micro:bit application processor over USB to an external host computer, and supports the CMSIS-DAP protocol for host debugging of application programs.

itemdetails
ConnectorUSB micro, MOLEX_47346-0001
USB version1.1 Full Speed device
Speed12Mbit/sec
USB classes supportedMass Storage Class (MSC)
Communications Device Class (CDC)
CMSIS-DAP HID & WinUSB
WebUSB CMSIS-DAP HID
More InfoDAPLink

Debugging​

The interface processor can be used with special host tools to debug code that is running on the application processor. It connects to the application processor via 2-pin Serial Wire Debug (SWD). The KL26 interface processor code can also be debugged via its internal SWD software debug interface, for example to load initial bootloader code into this processor at manufacturing time, or to recover a lost bootloader.

itemdetails
ProtocolSerial Wire Debug (SWD)
OptionsDAPLink (CMSIS-DAP)
JLink/OB (via different firmware)
More InfoMbed debugging micro:bit

Mechanical​

We have some nice 2D and 3D CAD drawings and models of the micro:bit including all the important dimensions. These models can be used as a basis for generating really nice marketing and project images of the micro:bit, but also as a basis for accurate manufacture of attachments e.g. via 3D printing.

itemdetails
Dimensions5cm(w) 4cm(h)
Weight5g

Further information​