Skip to content

Commit 678fd9a

Browse files
Merge pull request #108 from microbit-foundation/update-BLE-profile-page
Update profile.md
2 parents 0ba817a + a5186de commit 678fd9a

File tree

1 file changed

+21
-30
lines changed

1 file changed

+21
-30
lines changed

bluetooth/profile.md

Lines changed: 21 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -3,54 +3,47 @@ layout: page
33
order:
44
title: Bluetooth Profile
55
heading: micro:bit Bluetooth Profile
6-
description: The micro:bit can be interacted with in an open way using the standard Bluetooth Low Energy protocol. This page outlines the details of the micro:bit protocol
6+
description: The micro:bit can be interacted with in an open way using the standard Bluetooth Low Energy (BLE) protocol. This page outlines the details of the micro:bit protocol
77
permalink: /bluetooth/profile/
88
ref: bluetooth
99
lang: en
10-
assigned-to: jonnya
11-
review-with: jonnya
1210
---
1311

1412
# Overview
1513

16-
The micro:bit supports Bluetooth via a single profile. This profile
17-
allows it to communicate with smart phones and tablets. Technically, the
18-
micro:bit supports one profile only, the BBC micro:bit profile, which was
19-
custom developed for the device.
14+
The micro:bit supports Bluetooth via a single profile BBC micro:bit profile
15+
which was custom developed for the device. This profile
16+
allows it to communicate with other BLE capable devices.
2017

21-
If you are looking for information about the 'radio' feature, then
22-
that is not Bluetooth, it is a proprietary protocol from Nordic
23-
called Gazell, which you can find out more about in the links
24-
below.
18+
If you are looking for information about the 'radio' feature, it is a [proprietary protocol from Nordic
19+
and Lancaster University](https://lancaster-university.github.io/microbit-docs/ubit/radio/). This is not Bluetooth.
2520

2621

2722
## BBC micro:bit Bluetooth Profile
2823

29-
The BBC micro:bit Bluetooth profile is defined
30-
[here](https://lancaster-university.github.io/microbit-docs/ble/profile/)
24+
The BBC micro:bit [Bluetooth profile is defined in the DAL](https://lancaster-university.github.io/microbit-docs/ble/profile/)
3125

32-
The micro:bit has a Bluetooth 4.1 stack with Bluetooth low energy. It supports
33-
the
34-
[GAP Perhipheral Role](http://bluetooth-mdw.blogspot.co.uk/2016/07/microbit-and-bluetooth-roles.html)
26+
There are [pre-compiled Hex files available](https://lancaster-university.github.io/microbit-docs/ble/profile/#all-services-enabled-hex-file) that enable bluetooth services available on the micro:bit and some [example programs in the microbit-samples repository](https://github.com/lancaster-university/microbit-samples)
27+
28+
The micro:bit has a Bluetooth 4.1 stack with Bluetooth Low Energy (BLE) and supports
29+
the [GAP Perhipheral Role](http://bluetooth-mdw.blogspot.co.uk/2016/07/microbit-and-bluetooth-roles.html).
3530

3631
As per all all Bluetooth, it operates in the ISM (Industrial Scientific Medical) band
37-
and this starts at 2.4GHz and ends at 2.41GHz. Bluetooth low energy divides the frequency
32+
and this starts at **2.4GHz and ends at 2.41GHz**. BLE divides the frequency
3833
band into 50 x 2MHz bands of which 40 are used.
39-
These are called channels and numbered 0 to 39.
34+
These are called **channels** and numbered **0 to 39**.
4035
Channels 37, 38 and 39 are used for “advertising”.
4136

4237
When devices are connected, they use the other channels in a particular sequence
43-
controlled by a feature called adaptive frequency hopping.
38+
controlled by a feature called **adaptive frequency hopping**.
4439
This helps reduce the impact of congestion from other radio users.
4540

4641
Data transfer rates will only be a few 100K per second at best and it very much depends on
47-
how your application uses the Bluetooth features; lots of teeny temperature containing packets
42+
how your application uses the Bluetooth features; lots of small temperature containing packets
4843
would have a lower data transfer rate than using the UART service, as it depends on the
49-
proportion of system protocol information vs application data.
44+
proportion of system protocol information vs. application data.
5045

51-
There are some useful advanced configuration options in the micro:bit runtime code,
52-
documented
53-
[here](https://lancaster-university.github.io/microbit-docs/advanced/#compile-time-options-with-yotta)
46+
There are some useful [advanced configuration options in the micro:bit runtime code](https://lancaster-university.github.io/microbit-docs/advanced/#compile-time-options-with-yotta)
5447

5548

5649
## Challenge
@@ -60,14 +53,12 @@ implement other Bluetooth profiles. You would need to use the mbed C/C++ environ
6053
to do this.
6154

6255

63-
# Links
64-
65-
[Nordic Gazell proprietary protocol](https://devzone.nordicsemi.com/documentation/nrf51/4.3.0/html/group__gzll__02__user__guide.html)
56+
# Further information
6657

67-
[Martin Woolley Bluetooth Blog](http://bluetooth-mdw.blogspot.co.uk/p/bbc-microbit.html)
58+
[Martin Woolley's Bluetooth Blog](http://bluetooth-mdw.blogspot.co.uk/p/bbc-microbit.html) has a range of information on using Bluetooth with micro:bit
6859

69-
[BittySoftware](http://www.bittysoftware.com/)
60+
[BittySoftware](http://www.bittysoftware.com/) has a range of Bluetooth enabled software for the micro:bit
7061

71-
[Original micro:bit "Out of the Box" hex file](https://lancaster-university.github.io/microbit-docs/resources/BBC_MICROBIT_OOB_FINAL.zip), including all the attributes in the Bluetooth Profile
62+
[Original micro:bit "Out of the Box" experience](https://support.microbit.org/a/solutions/articles/19000021613), including some of the attributes in the Bluetooth Profile
7263

7364
[Full profile with the display unused](https://lancaster-university.github.io/microbit-docs/resources/microbit-1_4_17_pwr0.zip). If you want to write to the display over bluetooth then you should use this file instead of the 'Out of the Box' hex, which uses the display.

0 commit comments

Comments
 (0)