Example program for BLE devices using updated Puck library.

Dependencies:   Puck mbed

Fork of location-puck by Nordic Pucks

Revision:
9:28eb877be5f8
Parent:
8:54535e2f4098
Child:
10:970a9922952b
--- a/main.cpp	Thu Jul 03 12:51:28 2014 +0000
+++ b/main.cpp	Wed Jul 23 14:47:06 2014 +0000
@@ -1,53 +1,10 @@
-#include <mbed.h>
-#include "BLEDevice.h"
-
-#define DEBUG 0
-#ifdef DEBUG
-    Serial pc(USBTX, USBRX);
-    #define LOG(args...)    pc.printf(args)
-#else
-    #define LOG(args...)
-#endif
+#define LOG_LEVEL_INFO
+#include "Puck.h"
 
-/*
- * The Beacon payload (encapsulated within the MSD advertising data structure)
- * has the following composition:
- * 128-Bit UUID = E2 0A 39 F4 73 F5 4B C4 A1 2F 17 D1 AD 07 A9 61
- * Major/Minor  = 1337 / XXXX
- * Tx Power     = C8
- */
-const static uint8_t beaconPayload[] = {
-    0x00, 0x4C, // Company identifier code (0x004C == Apple)
-    0x02,       // ID
-    0x15,       // length of the remaining payload
-    0xE2, 0x0A, 0x39, 0xF4, 0x73, 0xF5, 0x4B, 0xC4, // UUID
-    0xA1, 0x2F, 0x17, 0xD1, 0xAD, 0x07, 0xA9, 0x61,
-    0x13, 0x37, // the major value to differenciate a location (Our app requires 1337 as major number)
-    0x13, 0x38, // the minor value to differenciate a location (Change this to differentiate location pucks)
-    0xC8        // 2's complement of the Tx power (-56dB)
-};
+Puck* puck = &Puck::getPuck();
 
-BLEDevice ble;
-DigitalOut led1(LED1);
 
 int main(void) {
-    led1 = 1;
-
-    LOG("Initializing ble beacon\n");
-    ble.init();
-
-    ble.accumulateAdvertisingPayload(GapAdvertisingData::BREDR_NOT_SUPPORTED);
-    ble.accumulateAdvertisingPayload(GapAdvertisingData::MANUFACTURER_SPECIFIC_DATA,
-                    beaconPayload, sizeof(beaconPayload));
-    
-    ble.setAdvertisingType(GapAdvertisingParams::ADV_NON_CONNECTABLE_UNDIRECTED);
-    ble.setAdvertisingInterval(160); /* 100ms; in multiples of 0.625ms. */
-
-    ble.startAdvertising();
-    LOG("Starting advertising!\n");
-
-    for(;;) {
-        led1 = !led1;
-        wait(1);
-    }
-}
+    puck->init(0xBA55);
+    while(puck->drive());
+}
\ No newline at end of file