Button initiated config service

Dependencies:   BLE_API_EddystoneConfigService_2 mbed nRF51822

Fork of BLE_EddystoneBeaconConfigService_3 by URIBeacon

main.cpp

Committer:
mbedAustin
Date:
2015-07-24
Revision:
30:6c2db8bf5b17
Parent:
29:dfb7fb5a971b

File content as of revision 30:6c2db8bf5b17:

/* mbed Microcontroller Library
 * Copyright (c) 2006-2013 ARM Limited
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#include "mbed.h"
#include "BLE.h"
#include "Eddystone.h"

BLE ble;
uint8_t UIDnamespace[] = {0x11,0x22,0x33,0x44,0x55,0x66,0x77,0x88,0x99,0xAA}; // 10Bytes for Namespace UUID
uint8_t UIDinstance[]  = {0xbb,0xcc,0xdd,0xee,0xff,0x00}; // 6Bytes for Instance UUID
char Url[] = "http://www.mbed.org";
int8_t txPower = -18;
uint16_t beaconPeriodus = 1000;

//Callbacks for temperature / battery updates
Ticker tlmBattery;
Ticker tlmTemperature;
int battery = 0;
int temp = 0;

// Start the Eddystone beacon here
EddystoneService eddyBeacon(ble, beaconPeriodus, txPower ,UIDnamespace, UIDinstance, Url, sizeof(Url));

// Function to update beacon battery voltage
void tlmBatteryCallback(void){
    eddyBeacon.updateTlmBatteryVoltage(battery++);
}

// Function to update Beacon Temperature
void tlmTemperatureCallback(void){
    eddyBeacon.updateTlmBeaconTemp(temp++);
}

int main(void)
{
    printf("Starting Example\r\n");
    tlmTemperature.attach(tlmTemperatureCallback,2.0f);
    tlmBattery.attach(tlmBatteryCallback, 1.0f);
    printf("Running...\r\n");
    while (true) {
        ble.waitForEvent();
    }
}