Beacon demo for the BLE API using the nRF51822 native mode drivers

Dependencies:   BLE_API mbed nRF51822 X_NUCLEO_IDB0XA1

Fork of BLE_iBeacon by Bluetooth Low Energy

Revision:
55:b9616b70d6a3
Parent:
54:3a655a9fce9a
Child:
56:56bc0cab3916
--- a/main.cpp	Thu Feb 12 22:43:20 2015 +0000
+++ b/main.cpp	Fri Feb 13 16:44:04 2015 +0000
@@ -15,47 +15,24 @@
  */
 
 #include "mbed.h"
+#include "BLEDevice.h"
 #include "iBeaconService.h"
 
-/**
- * For this demo application, populate the beacon advertisement payload
- * with 2 AD structures: FLAG and MSD (manufacturer specific data).
- *
- * Reference:
- *  Bluetooth Core Specification 4.0 (Vol. 3), Part C, Section 11, 18
- */
-
 BLEDevice ble;
 
-/**
- * The Beacon payload has the following composition:
- * 128-Bit / 16byte UUID = E2 0A 39 F4 73 F5 4B C4 A1 2F 17 D1 AD 07 A9 61
- * Major/Minor  = 0x1122 / 0x3344
- * Tx Power     = 0xC8 = 200, 2's compliment is 256-200 = (-56dB)
- *
- * Note: please remember to calibrate your beacons
- * TX Power for more accurate results.
- */
-uint8_t uuid[] = {0xE2, 0x0A, 0x39, 0xF4, 0x73, 0xF5, 0x4B, 0xC4,
-                  0xA1, 0x2F, 0x17, 0xD1, 0xAD, 0x07, 0xA9, 0x61
-                 };
-uint16_t majorNumber = 1122;
-uint16_t minorNumber = 3344;
-uint16_t txPower = 0xC8;
-
 int main(void)
 {
-    // Initialize BLE baselayer
     ble.init();
 
-    // Initialize ibeacon
-    iBeaconService ibeacon(ble, uuid, majorNumber, minorNumber, txPower);
+    const uint8_t uuid[] = {0xE2, 0x0A, 0x39, 0xF4, 0x73, 0xF5, 0x4B, 0xC4,
+                            0xA1, 0x2F, 0x17, 0xD1, 0xAD, 0x07, 0xA9, 0x61};
+    iBeaconService ibeacon(ble, uuid, 0x1122 /* majorNumber */, 0x3344 /* minorNumber */, 0xC8 /* 2's complement of the Tx power (-56dB) */);
 
     // Set advertising time
     ble.setAdvertisingInterval(160); /* 100ms; in multiples of 0.625ms. */
     ble.startAdvertising();
 
-    while(1) {
-        ble.waitForEvent(); // allows or low power operation
+    for (;;) {
+        ble.waitForEvent();
     }
 }