BLE example of a write characteristic to control a Led

Revision:
0:c6a8f2b3efb6
Child:
2:864ddfb70a9c
diff -r 000000000000 -r c6a8f2b3efb6 readme.md
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/readme.md	Tue Jul 26 14:47:19 2016 +0100
@@ -0,0 +1,93 @@
+To help you create your own BLE services, we have created this service template.
+The LED example demonstrates the use of a read-write characteristic to control a
+LED through a phone app.
+
+The template covers:
+
+* Setting up advertising and connection states.
+* Assigning UUIDs to the service and its characteristic.
+* Creating an input characteristic: read-write, boolean. This characteristic offers control of the LED.
+* Constructing a service class and adding it to the BLE stack.
+
+# 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.
+
+Hardware requirements are in the [main readme](https://github.com/ARMmbed/mbed-os-example-ble/blob/master/README.md).
+
+*NOTE:* If you have more than a single mbed board (e.g. nrf51dk or mkit) you can
+run the BLE_LED and BLE_LEDBlinker at the same time. For more information please
+refer to the BLE_LEDBlinker demo.
+
+## Building instructions
+
+Building instructions for all samples are in the [main readme](https://github.com/ARMmbed/mbed-os-example-ble/blob/master/README.md).
+
+## 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`.
+
+    ![](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.