Skip to content

Privacy #151

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 34 commits into from
Jun 4, 2018
Merged
Show file tree
Hide file tree
Changes from 22 commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
96d3479
privacy example
paul-szczepanek-arm May 25, 2018
3ba98cc
missing file
paul-szczepanek-arm May 25, 2018
d041f13
seed from address
paul-szczepanek-arm May 25, 2018
00289b1
read device name
paul-szczepanek-arm May 25, 2018
2e9ca57
print error on privacy init error
paul-szczepanek-arm May 25, 2018
2bdd43a
correct adv type
paul-szczepanek-arm May 25, 2018
93a2331
pair manually
paul-szczepanek-arm May 25, 2018
571200d
missing virtual
paul-szczepanek-arm May 25, 2018
8d750b3
shorter advertising
paul-szczepanek-arm May 25, 2018
ab7cea5
continue demo forever with fixed roles
paul-szczepanek-arm May 25, 2018
bc23457
stop scan
paul-szczepanek-arm May 25, 2018
892e645
remove filtering
paul-szczepanek-arm May 25, 2018
ee3144e
remove redundancy
paul-szczepanek-arm May 25, 2018
ecccca8
generate whitelist, adapt if no whitelist
paul-szczepanek-arm May 25, 2018
3278a82
syntax fix
paul-szczepanek-arm May 25, 2018
90f1f16
more documentation
paul-szczepanek-arm May 29, 2018
10a013b
fix compiler warnings
paul-szczepanek-arm May 29, 2018
168a64d
put seeding after init and remove delay to maximise chances of meetin…
paul-szczepanek-arm May 29, 2018
ec866c4
handle not implemented whitelist generation
paul-szczepanek-arm May 29, 2018
5e14402
handle failed setting of whitelist
paul-szczepanek-arm May 29, 2018
23ca047
point at 5.9
paul-szczepanek-arm May 29, 2018
632ff38
review comments, fix security risks
paul-szczepanek-arm May 30, 2018
b7e0d49
fix not checking enable privacy error
paul-szczepanek-arm May 31, 2018
ad14457
remove overload for on_disconnect since strategy works
paul-szczepanek-arm May 31, 2018
9e566b9
remove st cordio
paul-szczepanek-arm May 31, 2018
8060fdf
remove flags
paul-szczepanek-arm May 31, 2018
e5c9080
recreate the queue for every run
paul-szczepanek-arm May 31, 2018
d041131
remove whitelist from example
paul-szczepanek-arm May 31, 2018
7da9b62
don't reinit the ble and disconnect after bond
paul-szczepanek-arm May 31, 2018
7063af6
fix not running dispatch
paul-szczepanek-arm May 31, 2018
e29d2bf
workaround the set interval bug in gap
paul-szczepanek-arm May 31, 2018
b0d87ad
don't print local address after privacy is turned on
paul-szczepanek-arm May 31, 2018
12077e2
reset events callback
paul-szczepanek-arm Jun 1, 2018
efe7ca1
reset event handling at destruction
paul-szczepanek-arm Jun 1, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions BLE_Privacy/.mbed
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ROOT=.
27 changes: 27 additions & 0 deletions BLE_Privacy/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Privacy - example usage of the privacy feature

Demonstration of privacy features in Gap. It shows how to use private addresses when advertising and connecting and how filtering ties in with these operations.

The application will start by repeatedly trying to connect to the same application running on another board. It will do this by advertising and scanning for random intervals waiting until the difference in intervals between the boards will make them meet when one is advertising and the other scanning.

Two devices will be operating using random resolvable addresses. The application will connect to the peer and pair. It will attempt bonding and if possible create a whitelist based on the bond.

Subsequent connections will turn on filtering if the whitelist has been successfully created.

# Running the application

## Requirements

Application requires two devices. Each one should be loaded with the same example. The application will alternate between scanning and advertising until the two devices find each other and the demonstration proceeds.

Information about activity is printed over the serial connection - please have two clients open, each connected to a device. You may use:

- [Tera Term](https://ttssh2.osdn.jp/index.html.en)

Hardware requirements are in the [main readme](https://github.com/ARMmbed/mbed-os-example-ble/blob/master/README.md).

## Building instructions

Building instructions for all samples are in the [main readme](https://github.com/ARMmbed/mbed-os-example-ble/blob/master/README.md).

Note: example currently doesn't use ST provided stack and instead uses a Cordio port for the ST.
1 change: 1 addition & 0 deletions BLE_Privacy/mbed-os.lib
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
https://github.com/ARMmbed/mbed-os/#6817dc43f9f5216cbe077059fc561fa89a766dc9
24 changes: 24 additions & 0 deletions BLE_Privacy/mbed_app.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{
"target_overrides": {
"K64F": {
"target.features_add": ["BLE"],
"target.extra_labels_add": ["ST_BLUENRG"]
},
"NUCLEO_F401RE": {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The cordio driver is not public.
I would remove st support as st own implementation doesn't implement the security manager.

"target.features_add": ["BLE"],
"target.extra_labels_add": ["ST_BLUENRG", "CORDIO"]
},
"DISCO_L475VG_IOT01A": {
"target.features_add": ["BLE"],
"target.extra_labels_add": ["ST_BLUENRG", "CORDIO"]
},
"DISCO_F429ZI": {
"target.features_add": ["BLE"],
"target.extra_labels_add": ["ST_BLUENRG", "CORDIO"]
},
"NUCLEO_F429ZI": {
"target.features_add": ["BLE"],
"target.extra_labels_add": ["ST_BLUENRG", "CORDIO"]
}
}
}
15 changes: 15 additions & 0 deletions BLE_Privacy/module.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This can be removed as we don't care of yotta anymore.

"name": "ble-privacy",
"version": "0.0.1",
"description": "BLE privacy usage example",
"licenses": [
{
"url": "https://spdx.org/licenses/Apache-2.0",
"type": "Apache-2.0"
}
],
"dependencies": {
"ble": "^2.0.0"
},
"bin": "./source"
}
1 change: 1 addition & 0 deletions BLE_Privacy/shields/TARGET_ST_BLUENRG.lib
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
https://github.com/ARMmbed/cordio-ble-x-nucleo-idb0xa1
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This repository is not public; This file can be removed for now; please see my comment above.

Loading