Skip to content

Commit

Permalink
Readme updated with step by step expected visual result on the scanner.
Browse files Browse the repository at this point in the history
Readme for following examples have been updated:
* BLE_BatteryLevel
* BLE_Beacon
* BLE_Button
* BLE_EddystoneService
* BLE_GAPButton
* BLE_HeartRate
* BLE_LED
* BLE_Thermometer
* BLE_URIBeacon
  • Loading branch information
pan- committed Mar 18, 2016
1 parent 3be3721 commit 96cca4f
Show file tree
Hide file tree
Showing 61 changed files with 317 additions and 23 deletions.
Binary file added BLE_BatteryLevel/img/connection.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_BatteryLevel/img/discovery.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_BatteryLevel/img/notifications.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_BatteryLevel/img/scan_result.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_BatteryLevel/img/start_scan.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
35 changes: 34 additions & 1 deletion BLE_BatteryLevel/readme.md
Expand Up @@ -23,13 +23,46 @@ Building instructions for all samples are in the [main readme](https://github.co

## Checking for success

**Note:** Screens captures depicted below show what is expected from this example if the scanner used is *nRF Master Control Panel* version 4.0.5. If you encounter any difficulties consider trying another scanner or another version of nRF Master Control Panel. Alternative scanners may require reference to their manuals.

1. Build the application and install it on your board as explained in the building instructions.
1. Open the BLE scanner on your phone.
1. Start a scan.

![](img/start_scan.png)

**figure 1** How to start scan using nRF Master Control Panel 4.0.5

1. Find your device; it should be named `BATTERY`.

![](img/scan_result.png)

**figure 2** Scan results using nRF Master Control Panel 4.0.5

1. Establish a connection with your device.

![](img/connection.png)

**figure 3** How to establish a connection using Master Control Panel 4.0.5

1. Discover the services and the characteristics on the device. The *Battery service* has the UUID 0x180F and includes the *Battery level* characteristic which has the UUID 0x2A19.

![](img/discovery.png)

**figure 4** Representation of the Battery service using Master Control Panel 4.0.5

1. Register for the notifications sent by the *Battery level* characteristic.

![](img/register_to_notifications.png)

**figure 5** How to register to notifications using Master Control Panel 4.0.5


1. You should see the battery level value change every half second. It begins at 50, goes up to 100 (in steps of 1), resets to 20 and so on.

If you can see the characteristic, and if its value incrementing correctly, the application is working properly.
![](img/notifications.png)

**figure 6** Notifications view using Master Control Panel 4.0.5

If you can see the characteristic, and if its value is incrementing correctly, the application is working properly.

Binary file added BLE_Beacon/img/beacon_details.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_Beacon/img/discovery.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_Beacon/img/start_scan.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
18 changes: 18 additions & 0 deletions BLE_Beacon/readme.md
Expand Up @@ -22,11 +22,29 @@ Building instructions for all samples are in the [main readme](https://github.co

## Checking for success

**Note:** Screens captures depicted below show what is expected from this example if the scanner used is *nRF Master Control Panel* version 4.0.5. If you encounter any difficulties consider trying another scanner or another version of nRF Master Control Panel. Alternative scanners may require reference to their manuals.

1. Build the application and install it on your board as explained in the building instructions.
1. Open the BLE scanner on your phone.
1. Start a scan.

![](img/start_scan.png)

**figure 1** How to start scan using nRF Master Control Panel 4.0.5

1. Find your device; it should be tagged as an `iBeacon` and observe its advertisements (there is no need to connect to the beacon).

![](img/discovery.png)

**figure 2** Scan results using nRF Master Control Panel 4.0.5

1. View the beacon's details; the exact steps depend on which scanner you're using.

![](img/beacon_details.png)

**figure 3** Beacon details using nRF Master Control Panel 4.0.5


**Tip:** If you are in an area with many BLE devices, it may be difficult to identify your beacon. The simplest solution is to turn your board off and on, initiate a new scan on your BLE scanner every time, and look for the beacon that appears only when your board is on.

If you can see the beacon and all its information, the application worked properly.
Expand Down
Binary file added BLE_Button/img/button_depressed.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_Button/img/button_pressed.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_Button/img/connection.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_Button/img/discovery.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_Button/img/register_to_notifications.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_Button/img/scan_results.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_Button/img/start_scan.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
41 changes: 40 additions & 1 deletion BLE_Button/readme.md
Expand Up @@ -30,11 +30,50 @@ Building instructions for all samples are in the [main readme](https://github.co

## Checking for success

**Note:** Screens captures depicted below show what is expected from this example if the scanner used is *nRF Master Control Panel* version 4.0.5. If you encounter any difficulties consider trying another scanner or another version of nRF Master Control Panel. Alternative scanners may require reference to their manuals.

1. Build the application and install it on your board as explained in the building instructions.
1. Open the BLE scanner on your phone.
1. Start a scan.

![](img/start_scan.png)

**figure 1** How to start scan using nRF Master Control Panel 4.0.5

1. Find your device; it should appear with the name `Button` in the scanner.

![](img/scan_results.png)

**figure 2** Scan results using nRF Master Control Panel 4.0.5

1. Establish a connection with the device.
1. Discover the services and the characteristics on the device. The *Button service* has the UUID `0xA000` and includes the *Button state characteristic* which has the UUID `0xA001`.

![](img/connection.png)

**figure 3** How to establish a connection using Master Control Panel 4.0.5

1. Discover the services and the characteristics on the device. The *Button service* has the UUID `0xA000` and includes the *Button state characteristic* which has the UUID `0xA001`. Depending on your scanner, non standard 16-bit UUID's can be displayed as 128-bit UUID's. If it is the case the following format will be used: `0000XXXX-0000-1000-8000-00805F9B34FB` where `XXXX` is the hexadecimal representation of the 16-bit UUID value.

![](img/discovery.png)

**figure 4** Representation of the Button service using Master Control Panel 4.0.5

1. Register for the notifications sent by the button state characteristic then the scanner will automatically receive a notification containing the new state of the button every time the state of the button changes.

![](img/register_to_notifications.png)

**figure 5** How to register to notifications using Master Control Panel 4.0.5


1. Pressing Button 1 on your board updates the state of the button and sends a notification to the scanner. The new state of the button characteristic value should be equal to 0x01.

![](img/button_pressed.png)

**figure 6** Notification of button pressed using Master Control Panel 4.0.5

1. Releasing Button 1 on your board updates the state of the button and sends a notification to the scanner. The new state of the button characteristic value should be equal to 0x00.

![](img/button_depressed.png)

**figure 7** Notification of button depressed using Master Control Panel 4.0.5

Binary file added BLE_EddystoneService/img/app_start.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_EddystoneService/img/edit_url.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_EddystoneService/img/result.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_EddystoneService/img/save_url.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
52 changes: 42 additions & 10 deletions BLE_EddystoneService/readme.md
Expand Up @@ -12,11 +12,16 @@ The Eddystone Beacon sample application runs in two stages:

## 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 :
You should install the *Physical Web* application on your phone:

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

- [iOS version](https://itunes.apple.com/us/app/physical-web/id927653608?mt=8)


**Note:** It is also possible to use a regular scanner to interract with your Eddystone beacon but it requires
knowledge about BLE and Eddystone beacon specification out of the scope of this document.

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

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

Expand Down Expand Up @@ -46,13 +51,40 @@ By default, the beacon directs to the url ``http://mbed.org``. You can change th

1. Build the application and install it on your board as explained in the building instructions.

1. Open the BLE scanner on your phone.
1. Open the *Physical Web* application on your phone. It will start to search for nearby beacons.

![](img/app_start.png)

**figure 1** Start of the *Physical Web* application version 0.1.856 on Android

1. When the beacon starts up, the Configuration Service runs for 30 seconds.
During this time it is possible to change the URL advertised by the beacon.
It is also important to note that during these 30 seconds, your device will not advertise any URL.

![](img/open_configuration.png)

**figure 2** How to open the beacon configuration view using the *Physical Web* application version 0.1.856 on Android


1. Edit the URL advertised by your beacon.

![](img/edit_url.png)

**figure 3** How to edit the URL advertised by your beacon using the *Physical Web* application version 0.1.856 on Android


1. Save the URL which will be advertised by your beacon.

![](img/save_url.png)

**figure 4** How to save your beacon configuration and start advertising URL using the *Physical Web* application version 0.1.856 on Android.


1. Find your device; it should advertise the URL you have set.

![](img/result.png)

1. Find your device; it should be tagged as `EDDYSTONE CONFIG` while the configuration service is running and it should be tagged as `Eddystone`once the device work as a beacon.
**figure 5** Display of URL advertised by your beacon using the *Physical Web* application version 0.1.856 on Android.

1. Once the device operate as a beacon, observe its advertisements packets:
* UID frame are used to identify a beacon.
* URL frame should report the URL advertised by the beacon.
* TLM frames report telemetry informations such as battery level, temperature or the uptime of the beacon.

You can use the [Eddystone Observer](https://github.com/ARMmbed/ble-examples/tree/master/BLE_EddystoneObserver) sample instead of a phone application.
**Note:** You can use the [Eddystone Observer](https://github.com/ARMmbed/ble-examples/tree/master/BLE_EddystoneObserver) sample instead of a phone application.
26 changes: 25 additions & 1 deletion BLE_GAPButton/README.md
@@ -1,6 +1,6 @@
# Button count over GAP

This application shows how to use GAP to transmit a simple value to disconnected peer listening for advertisement every time that value is updated:
This application shows how to use GAP to transmit a simple value to disconnected peer listening for advertisement every time that a value is updated:

1. The value is a count of how many times a button on the device was pressed (the code actually monitors the button's releases, not press downs).

Expand All @@ -24,18 +24,42 @@ Building instructions for all samples are in the [main readme](https://github.co

## Checking for success

**Note:** Screens captures depicted below show what is expected from this example if the scanner used is *nRF Master Control Panel* version 4.0.5. If you encounter any difficulties consider trying another scanner or another version of nRF Master Control Panel. Alternative scanners may require reference to their manuals.

1. Build the application and install it on your board as explained in the building instructions.

1. Open the BLE scanner on your phone.

1. Start a scan.

![](img/start_scan.png)

**figure 1** How to start scan using nRF Master Control Panel 4.0.5.

1. Find your device; it should be named `GAPButton`; and look at the advertisement broadcasted by your device (there is no need to connect to your device).

![](img/discovery.png)

**figure 2** Scan results using nRF Master Control Panel 4.0.5.

1. The Service Data field of the advertisement packet broadcasted by your device reflects the button press count. The starting value is 0.

![](img/initial_state.png)

**figure 3** Initial state of the button using nRF Master Control Panel 4.0.5.

1. Press the button on the device.

![](img/first_press.png)

**figure 3** State after 1 button press using nRF Master Control Panel 4.0.5.

1. The Service Data field value of the advertisement packet should change every time you press the button.

![](img/result.png)

**figure 3** State after 6 button press using nRF Master Control Panel 4.0.5.

## Note

Since broadcasting is not reliable and your phone may scan intermittently, it is possible that your phone will miss button updates.
Binary file added BLE_GAPButton/img/discovery.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_GAPButton/img/first_press.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_GAPButton/img/initial_state.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_GAPButton/img/result.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added BLE_GAPButton/img/start_scan.png
Binary file added BLE_HeartRate/img/connection.png
Binary file added BLE_HeartRate/img/discovery.png
Binary file added BLE_HeartRate/img/notifications.png
Binary file added BLE_HeartRate/img/register_to_notifications.png
Binary file added BLE_HeartRate/img/scan_result.png
Binary file added BLE_HeartRate/img/start_scan.png
32 changes: 32 additions & 0 deletions BLE_HeartRate/readme.md
Expand Up @@ -24,11 +24,43 @@ Building instructions for all samples are in the [main readme](https://github.co

## Checking for success

**Note:** Screens captures depicted below show what is expected from this example if the scanner used is *nRF Master Control Panel* version 4.0.5. If you encounter any difficulties consider trying another scanner or another version of nRF Master Control Panel. Alternative scanners may require reference to their manuals.

1. Build the application and install it on your board as explained in the building instructions.
1. Open the BLE scanner on your phone.
1. Start a scan.

![](img/start_scan.png)

**figure 1** How to start scan using nRF Master Control Panel 4.0.5

1. Find your device; it should be named `HRM`.

![](img/scan_result.png)

**figure 2** Scan results using nRF Master Control Panel 4.0.5

1. Establish a connection with your device.

![](img/connection.png)

**figure 3** How to establish a connection using Master Control Panel 4.0.5

1. Discover the services and the characteristics on the device. The *Heart Rate* service has the UUID `0x180D` and includes the *Heart Rate Measurement* characteristic which has the UUID `0x2A37`.

![](img/discovery.png)

**figure 4** Representation of the Heart Rate service using Master Control Panel 4.0.5

1. Register for the notifications sent by the *Heart Rate Measurement* characteristic.

![](img/register_to_notifications.png)

**figure 5** How to register to notifications using Master Control Panel 4.0.5


1. You should see the heart rate value change every half second. It begins at 100, goes up to 175 (in steps of 1), resets to 100 and so on.

![](img/notifications.png)

**figure 6** Notifications view using Master Control Panel 4.0.5
Binary file added BLE_LED/img/LED_OFF.png
Binary file added BLE_LED/img/LED_ON.png
Binary file added BLE_LED/img/connection.png
Binary file added BLE_LED/img/discovery.png
Binary file added BLE_LED/img/scan_results.png
Binary file added BLE_LED/img/start_scan.png
Binary file added BLE_LED/img/write_characteristic.png
Binary file added BLE_LED/img/write_pannel.png
55 changes: 52 additions & 3 deletions BLE_LED/readme.md
Expand Up @@ -31,14 +31,63 @@ Building instructions for all samples are in the [main readme](https://github.co

## Checking for success

**Note:** Screens captures depicted below show what is expected from this example if the scanner used is *nRF Master Control Panel* version 4.0.5. If you encounter any difficulties consider trying another scanner or another version of nRF Master Control Panel. Alternative scanners may require reference to their manuals.


1. Build the application and install it on your board as explained in the building instructions.
1. Open the BLE scanner on your phone.

1. Start a scan.

![](img/start_scan.png)

**figure 1** How to start scan using nRF Master Control Panel 4.0.5

1. Find your device; it should be named `LED`.
1. Find the LED service; its UUID is `0xA000`. The exact instructions to do this depend on the scanner you're using.
1. Find the LED characteristic; its UUID is `0xA001`. The exact instructions to do this depend on the scanner you're using.
1. The characteristic accept a 1-bytes value:

![](img/scan_results.png)

**figure 2** Scan results using nRF Master Control Panel 4.0.5

1. Establish a connection with your device.

![](img/connection.png)

**figure 3** How to establish a connection using Master Control Panel 4.0.5

1. Discover the services and the characteristics on the device. The *LED service* has the UUID `0xA000` and includes the *LED state characteristic* which has the UUID `0xA001`. Depending on your scanner, non standard 16-bit UUID's can be displayed as 128-bit UUID's. If it is the case the following format will be used: `0000XXXX-0000-1000-8000-00805F9B34FB` where `XXXX` is the hexadecimal representation of the 16-bit UUID value.

![](img/discovery.png)

**figure 4** Representation of the Led service using Master Control Panel 4.0.5

1. Open the write pannel of the *LED state* characteristic.

![](img/write_characteristic.png)

**figure 5** How to read and write a characteristic value using Master Control Panel 4.0.5


1. The characteristic accept a 1 byte value:

![](img/write_pannel.png)

**figure 6** Write characteristic pannel using Master Control Panel 4.0.5

* `0x00`: LED ON

![](img/LED_ON.png)

**figure 6** Write characteristic pannel to set the LED on using Master Control Panel 4.0.5


* `0x01`: LED OFF

![](img/LED_OFF.png)

**figure 6** Write characteristic pannel to set the LED off using Master Control Panel 4.0.5


1. Toggle the LED characteristic value and see the LED turn ON or turn OFF according to the value you set.

If you can see the characteristic, and the LED is turned on/off as you toggle its value, the application is working properly.
Binary file added BLE_Thermometer/img/connection.png
Binary file added BLE_Thermometer/img/discovery.png
Binary file added BLE_Thermometer/img/notifications.png
Binary file added BLE_Thermometer/img/register_to_notifications.png
Binary file added BLE_Thermometer/img/scan_results.png
Binary file added BLE_Thermometer/img/start_scan.png

0 comments on commit 96cca4f

Please sign in to comment.