Example program for BLE devices using updated Puck library.
Fork of location-puck by
main.cpp
- Committer:
- cristea
- Date:
- 2014-06-19
- Revision:
- 3:4cb285fb29e7
- Parent:
- 2:67d603617000
- Child:
- 4:4324d5acd5d8
File content as of revision 3:4cb285fb29e7:
#include <mbed.h> #include <nRF51822.h> #define DEBUG 1 #ifdef DEBUG #define LOG(args...) pc.printf(args) #else #define LOG(args...) #endif nRF51822n nrf; DigitalOut led1(p1); DigitalOut advertisiingStateLed(p30); GapAdvertisingData advData; GapAdvertisingData scanResponse; GapAdvertisingParams advParams(GapAdvertisingOParams::ADV_CONNECTABLE_UNDIRECTED); class GapEventHandler : public GapEvents { virtual void onConnected(void) { advertisingStateLed = 0; LOG("Connected!\n\r"); } virtual void onDisconnected(void) { nrf.getGap().startAdvertising(advParams); advertisingStateLed = 1; LOG("Disconnected!\n\r"); LOG("Restarting the advertising process\n\r"); } } int main() { nrf.getGap().setEventHandler(new GapEventHandler()); nrf.init(); nrf.reset(); advData.addFlags(GapAdvertisingData::BREDR_NOT_SUPPORTED); advData.addData(GapAdvertisingData::SHORTENED_LOCAL_NAME, (uint8_t*)"phlemz", sizeof("phlemz") - 1); advData.addAppearance(GapAdvertisingData::UNKNOWN); nrf.getGap().setAdvertisingData(advData. scanResponse); nrf.getGap().startAdvertising(advParams); for(;;) { led1 = !led1; wait(1); } }