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.
Fork of BLE_API by
Revision 766:03f1a26f132f, committed 2015-08-07
- Comitter:
- rgrover1
- Date:
- Fri Aug 07 15:53:50 2015 +0100
- Parent:
- 765:4cd91998cd48
- Child:
- 767:d6a79c77d1c3
- Commit message:
- Synchronized with git rev 0f2ba674
Author: Joshua Slater
Conversion from advertisement duration units to ms moved from Gap to GapAdvertisingParams. getInterval converts to ms. Added conversion in GapScanningParams
Changed in this revision
--- a/ble/Gap.h Fri Aug 07 15:53:50 2015 +0100
+++ b/ble/Gap.h Fri Aug 07 15:53:50 2015 +0100
@@ -127,16 +127,10 @@
};
static const uint16_t UNIT_1_25_MS = 1250; /**< Number of microseconds in 1.25 milliseconds. */
- static const uint16_t UNIT_0_625_MS = 625; /**< Number of microseconds in 0.625 milliseconds. */
static uint16_t MSEC_TO_GAP_DURATION_UNITS(uint32_t durationInMillis) {
return (durationInMillis * 1000) / UNIT_1_25_MS;
}
- static uint16_t MSEC_TO_ADVERTISEMENT_DURATION_UNITS(uint32_t durationInMillis) {
- return (durationInMillis * 1000) / UNIT_0_625_MS;
- }
- static uint16_t ADVERTISEMENT_DURATION_UNITS_TO_MS(uint16_t gapUnits) {
- return (gapUnits * UNIT_0_625_MS) / 1000;
- }
+
typedef void (*TimeoutEventCallback_t)(TimeoutSource_t source);
typedef void (*ConnectionEventCallback_t)(const ConnectionCallbackParams_t *params);
--- a/ble/GapAdvertisingParams.h Fri Aug 07 15:53:50 2015 +0100
+++ b/ble/GapAdvertisingParams.h Fri Aug 07 15:53:50 2015 +0100
@@ -86,8 +86,16 @@
}
}
+ static const uint16_t UNIT_0_625_MS = 625; /**< Number of microseconds in 0.625 milliseconds. */
+ static uint16_t MSEC_TO_ADVERTISEMENT_DURATION_UNITS(uint32_t durationInMillis) {
+ return (durationInMillis * 1000) / UNIT_0_625_MS;
+ }
+ static uint16_t ADVERTISEMENT_DURATION_UNITS_TO_MS(uint16_t gapUnits) {
+ return (gapUnits * UNIT_0_625_MS) / 1000;
+ }
+
AdvertisingType_t getAdvertisingType(void) const {return _advType; }
- uint16_t getInterval(void) const {return _interval;}
+ uint16_t getInterval(void) const {return ADVERTISEMENT_DURATION_UNITS_TO_MS(_interval);}
uint16_t getTimeout(void) const {return _timeout; }
void setAdvertisingType(AdvertisingType_t newAdvType) {_advType = newAdvType; }
--- a/ble/GapScanningParams.h Fri Aug 07 15:53:50 2015 +0100
+++ b/ble/GapScanningParams.h Fri Aug 07 15:53:50 2015 +0100
@@ -32,6 +32,11 @@
uint16_t timeout = 0,
bool activeScanning = false);
+ static const uint16_t UNIT_0_625_MS = 625; /**< Number of microseconds in 0.625 milliseconds. */
+ static uint16_t MSEC_TO_SCAN_DURATION_UNITS(uint32_t durationInMillis) {
+ return (durationInMillis * 1000) / UNIT_0_625_MS;
+ }
+
ble_error_t setInterval(uint16_t newIntervalInMS);
ble_error_t setWindow(uint16_t newWindowInMS);
--- a/ble/services/URIBeaconConfigService.h Fri Aug 07 15:53:50 2015 +0100
+++ b/ble/services/URIBeaconConfigService.h Fri Aug 07 15:53:50 2015 +0100
@@ -178,7 +178,7 @@
ble.gap().setTxPower(params.advPowerLevels[params.txPowerMode]);
ble.gap().setDeviceName(reinterpret_cast<const uint8_t *>(&DEVICE_NAME));
ble.gap().setAdvertisingType(GapAdvertisingParams::ADV_CONNECTABLE_UNDIRECTED);
- ble.gap().setAdvertisingInterval(Gap::MSEC_TO_ADVERTISEMENT_DURATION_UNITS(ADVERTISING_INTERVAL_MSEC));
+ ble.gap().setAdvertisingInterval(GapAdvertisingParams::MSEC_TO_ADVERTISEMENT_DURATION_UNITS(ADVERTISING_INTERVAL_MSEC));
}
/* Helper function to switch to the non-connectible normal mode for URIBeacon. This gets called after a timeout. */
--- a/source/GapScanningParams.cpp Fri Aug 07 15:53:50 2015 +0100
+++ b/source/GapScanningParams.cpp Fri Aug 07 15:53:50 2015 +0100
@@ -18,8 +18,8 @@
#include "ble/GapScanningParams.h"
GapScanningParams::GapScanningParams(uint16_t interval, uint16_t window, uint16_t timeout, bool activeScanning) :
- _interval(Gap::MSEC_TO_ADVERTISEMENT_DURATION_UNITS(interval)),
- _window(Gap::MSEC_TO_ADVERTISEMENT_DURATION_UNITS(window)),
+ _interval(Gap::MSEC_TO_SCAN_DURATION_UNITS(interval)),
+ _window(Gap::MSEC_TO_SCAN_DURATION_UNITS(window)),
_timeout(timeout),
_activeScanning(activeScanning) {
/* stay within limits */
@@ -40,7 +40,7 @@
ble_error_t
GapScanningParams::setInterval(uint16_t newIntervalInMS)
{
- uint16_t newInterval = Gap::MSEC_TO_ADVERTISEMENT_DURATION_UNITS(newIntervalInMS);
+ uint16_t newInterval = Gap::MSEC_TO_SCAN_DURATION_UNITS(newIntervalInMS);
if ((newInterval >= SCAN_INTERVAL_MIN) && (newInterval < SCAN_INTERVAL_MAX)) {
_interval = newInterval;
return BLE_ERROR_NONE;
@@ -52,7 +52,7 @@
ble_error_t
GapScanningParams::setWindow(uint16_t newWindowInMS)
{
- uint16_t newWindow = Gap::MSEC_TO_ADVERTISEMENT_DURATION_UNITS(newWindowInMS);
+ uint16_t newWindow = Gap::MSEC_TO_SCAN_DURATION_UNITS(newWindowInMS);
if ((newWindow >= SCAN_WINDOW_MIN) && (newWindow < SCAN_WINDOW_MAX)) {
_window = newWindow;
return BLE_ERROR_NONE;
