Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: BLE_API_EddystoneConfigService_2 mbed nRF51822
Fork of BLE_EddystoneBeaconConfigService_3 by
Diff: EddystoneConfigService.h
- Revision:
- 58:87afe537345b
- Parent:
- 56:f95c72f9c504
- Child:
- 60:e9d8348e7397
--- a/EddystoneConfigService.h Thu Sep 17 20:50:07 2015 +0000
+++ b/EddystoneConfigService.h Fri Sep 18 03:57:09 2015 +0000
@@ -127,7 +127,7 @@
PowerLevels_t &radioPowerLevelsIn) :
ble(bleIn),
params(paramsIn), // Initialize URL Data
- defaultUriDataLength(0),
+ defaultUriDataLength(),
defaultUriData(),
defaultUidNamespaceID(), // Initialize UID Data
defaultUidInstanceID(),
@@ -172,9 +172,10 @@
}
if (resetToDefaultsFlag) {
resetToDefaults();
+ } else {
+ updateCharacteristicValues();
}
- updateCharacteristicValues();
-
+
lockChar.setWriteAuthorizationCallback(this, &EddystoneConfigService::lockAuthorizationCallback);
unlockChar.setWriteAuthorizationCallback(this, &EddystoneConfigService::unlockAuthorizationCallback);
uriDataChar.setWriteAuthorizationCallback(this, &EddystoneConfigService::uriDataWriteAuthorizationCallback);
@@ -239,7 +240,10 @@
// if (defaultUriDataLength > URI_DATA_MAX) {
// return;
// }
- memcpy(defaultUriData,uriIn,URI_DATA_MAX);
+ defaultUriDataLength = strlen(uriIn);
+ memcpy(defaultUriData,uriIn,URI_DATA_MAX);
+ //defaultUriDataLength = strlen(uriIn);
+ INFO("\t default URI = %s : %d", uriIn, defaultUriDataLength);
// defaultUriData = (UriData_t *)uriIn;
defaultUriAdvPeriod = advPeriod;
urlIsSet = true; // flag to add this to eddystone service when config is done
@@ -339,7 +343,7 @@
INFO("Device Unlocked");
} else if (handle == uriDataChar.getValueHandle()) {
params.uriDataLength = writeParams->len;
- memset(params.uriData,0x00,URI_DATA_MAX); // clear URI string
+ memset(params.uriData,0x00,URI_DATA_MAX); // clear URI string
memcpy(params.uriData, writeParams->data, params.uriDataLength); // set URI string
params.uriEnabled = true;
INFO("URI = %s, URILen = %d", writeParams->data, writeParams->len);
@@ -418,6 +422,7 @@
void updateCharacteristicValues(void) {
ble.updateCharacteristicValue(lockedStateChar.getValueHandle(), ¶ms.lockedState, 1);
ble.updateCharacteristicValue(uriDataChar.getValueHandle(), params.uriData, params.uriDataLength);
+ INFO("updating URI, %s : %d",params.uriData, params.uriDataLength);
ble.updateCharacteristicValue(flagsChar.getValueHandle(), ¶ms.flags, 1);
ble.updateCharacteristicValue(beaconPeriodChar.getValueHandle(),
reinterpret_cast<uint8_t *>(¶ms.beaconPeriod), sizeof(uint16_t));
