You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: bluetooth/profile.md
+21-30Lines changed: 21 additions & 30 deletions
Original file line number
Diff line number
Diff line change
@@ -3,54 +3,47 @@ layout: page
3
3
order:
4
4
title: Bluetooth Profile
5
5
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
7
7
permalink: /bluetooth/profile/
8
8
ref: bluetooth
9
9
lang: en
10
-
assigned-to: jonnya
11
-
review-with: jonnya
12
10
---
13
11
14
12
# Overview
15
13
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.
20
17
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.
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).
35
30
36
31
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
38
33
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**.
40
35
Channels 37, 38 and 39 are used for “advertising”.
41
36
42
37
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**.
44
39
This helps reduce the impact of congestion from other radio users.
45
40
46
41
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
48
43
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.
50
45
51
-
There are some useful advanced configuration options in the micro:bit runtime code,
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)
54
47
55
48
56
49
## Challenge
@@ -60,14 +53,12 @@ implement other Bluetooth profiles. You would need to use the mbed C/C++ environ
[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
68
59
69
-
[BittySoftware](http://www.bittysoftware.com/)
60
+
[BittySoftware](http://www.bittysoftware.com/) has a range of Bluetooth enabled software for the micro:bit
70
61
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
72
63
73
64
[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