Skip to content

Security Manager example #136

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 16 commits into from
May 25, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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_SM/.mbed
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ROOT=.
29 changes: 29 additions & 0 deletions BLE_SM/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# SM - example usage of the Security Manager to pair and encrypt

Demonstration of possible usage of the Security Manager. Security Manager deals with pairing, authentication and encryption.

The application demonstrates usage as a central and a peripheral. The central will connect to any connectable device present. Please have one ready and advertising. Application will attempt pairing. Please authorise your peer device to pair.

Upon success it will disconnect and start advertising to demonstrate usage as a peripheral. Please scan and connect using your peer device. Upon connection grant pairing if prompted. Upon success the application will disconnect. Observe the terminal to keep track of the sequence.
Copy link
Member

Choose a reason for hiding this comment

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

Phase two will start whether phase 1 succeed or not. Could you indicate that if phase 1 fail, the peripheral will request pairing or if phase 1 succeeded then the link is encrypted.

Copy link
Member Author

Choose a reason for hiding this comment

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

reversed the order


# Running the application

## Requirements

The sample application can be seen on any BLE scanner on a smartphone. If you don't have a scanner on your phone, please install :

- [nRF Master Control Panel](https://play.google.com/store/apps/details?id=no.nordicsemi.android.mcp) for Android.

- [LightBlue](https://itunes.apple.com/gb/app/lightblue-bluetooth-low-energy/id557428110?mt=8) for iPhone.

Information about activity is printed over the serial connection - please have a client open. 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_SM/mbed-os.lib
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
https://github.com/ARMmbed/mbed-os/#f9ee4e849f8cbd64f1ec5fdd4ad256585a208360
16 changes: 16 additions & 0 deletions BLE_SM/mbed_app.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"target_overrides": {
"K64F": {
"target.features_add": ["BLE"],
"target.extra_labels_add": ["ST_BLUENRG"]
},
"NUCLEO_F401RE": {
Copy link
Contributor

Choose a reason for hiding this comment

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

Please document that it is using the Cordio port for ST (as opposed to ST's official stack)

Copy link
Member Author

Choose a reason for hiding this comment

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

note made about it in the readme

"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"]
}
}
}
15 changes: 15 additions & 0 deletions BLE_SM/module.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "ble-securitymanager",
"version": "0.0.1",
"description": "BLE Security Manager 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_SM/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
Loading