High level Bluetooth Low Energy API and radio abstraction layer

Dependents:   BLE_ANCS_SDAPI BLE_temperature BLE_HeartRate BLE_ANCS_SDAPI_IRC ... more

Overview

The BLE_API is a high level abstraction for using Bluetooth Low Energy on multiple platforms. For details and examples using the BLE_API please see the BLE_API Summary Page. Or click on the API Documentation tab above.

Supported Services

Supported services can be found in the BLE_API/services folder.

Revision:
1179:4ab722f8dca0
Parent:
1174:551333f70bc9
Child:
1183:1589830dbdb7
--- a/ble/GapAdvertisingParams.h	Wed Apr 06 19:15:28 2016 +0100
+++ b/ble/GapAdvertisingParams.h	Wed Apr 06 19:15:30 2016 +0100
@@ -25,55 +25,24 @@
  */
 class GapAdvertisingParams {
 public:
-    /**
-     * Minimum Advertising interval for connectable undirected and connectable
-     * directed events in 625us units - 20ms.
-     */
     static const unsigned GAP_ADV_PARAMS_INTERVAL_MIN        = 0x0020;
-    /**
-     * Minimum Advertising interval for scannable and non-connectable
-     * undirected events in 625us units - 100ms.
-     */
     static const unsigned GAP_ADV_PARAMS_INTERVAL_MIN_NONCON = 0x00A0;
-    /**
-     * Maximum Advertising interval in 625us units - 10.24s.
-     */
     static const unsigned GAP_ADV_PARAMS_INTERVAL_MAX        = 0x4000;
-    /**
-     * Maximum advertising timeout seconds.
-     */
     static const unsigned GAP_ADV_PARAMS_TIMEOUT_MAX         = 0x3FFF;
 
-    /**
+    /*!
      * Encapsulates the peripheral advertising modes, which determine how
      * the device appears to other central devices in hearing range.
      */
     enum AdvertisingType_t {
-        ADV_CONNECTABLE_UNDIRECTED,     /**< Vol 3, Part C, Section 9.3.4 and Vol 6, Part B, Section 2.3.1.1. */
-        ADV_CONNECTABLE_DIRECTED,       /**< Vol 3, Part C, Section 9.3.3 and Vol 6, Part B, Section 2.3.1.2. */
-        ADV_SCANNABLE_UNDIRECTED,       /**< Include support for Scan Response payloads, see Vol 6, Part B, Section 2.3.1.4. */
-        ADV_NON_CONNECTABLE_UNDIRECTED  /**< Vol 3, Part C, Section 9.3.2 and Vol 6, Part B, Section 2.3.1.3. */
+        ADV_CONNECTABLE_UNDIRECTED,     /**< Vol 3, Part C, Section 9.3.4 and Vol 6, Part B, Section 2.3.1.1 */
+        ADV_CONNECTABLE_DIRECTED,       /**< Vol 3, Part C, Section 9.3.3 and Vol 6, Part B, Section 2.3.1.2 */
+        ADV_SCANNABLE_UNDIRECTED,       /**< Include support for Scan Response payloads, see Vol 6, Part B, Section 2.3.1.4 */
+        ADV_NON_CONNECTABLE_UNDIRECTED  /**< Vol 3, Part C, Section 9.3.2 and Vol 6, Part B, Section 2.3.1.3 */
     };
-    /**
-     * Type alias for GapAdvertisingParams::AdvertisingType_t.
-     *
-     * @deprecated  This type alias will be dropped in future releases.
-     */
-    typedef enum AdvertisingType_t AdvertisingType;
+    typedef enum AdvertisingType_t AdvertisingType; /* Deprecated type alias. */
 
 public:
-    /**
-     * Construct an instance of GapAdvertisingParams.
-     *
-     * @param[in] advType
-     *              Type of advertising. Default is
-     *              GapAdvertisingParams::ADV_CONNECTABLE_UNDIRECTED.
-     * @param[in] interval
-     *              Advertising interval in units of 0.625ms. Default is
-     *              GapAdvertisingParams::GAP_ADV_PARAMS_INTERVAL_MIN_NONCON.
-     * @param[in] timeout
-     *              Advertising timeout. Default is 0.
-     */
     GapAdvertisingParams(AdvertisingType_t advType  = ADV_CONNECTABLE_UNDIRECTED,
                          uint16_t          interval = GAP_ADV_PARAMS_INTERVAL_MIN_NONCON,
                          uint16_t          timeout  = 0) : _advType(advType), _interval(interval), _timeout(timeout) {
@@ -109,99 +78,43 @@
     }
 
     static const uint16_t UNIT_0_625_MS = 625;  /**< Number of microseconds in 0.625 milliseconds. */
-    /**
-     * Convert milliseconds to units of 0.625ms.
-     *
-     * @param[in] durationInMillis
-     *              The number of milliseconds to convert.
-     *
-     * @return The value of @p durationInMillis in units of 0.625ms.
-     */
     static uint16_t MSEC_TO_ADVERTISEMENT_DURATION_UNITS(uint32_t durationInMillis) {
         return (durationInMillis * 1000) / UNIT_0_625_MS;
     }
-    /**
-     * Convert units of 0.625ms to milliseconds.
-     *
-     * @param[in] gapUnits
-     *              The number of units of 0.625ms to convert.
-     *
-     * @return The value of @p gapUnits in milliseconds.
-     */
     static uint16_t ADVERTISEMENT_DURATION_UNITS_TO_MS(uint16_t gapUnits) {
         return (gapUnits * UNIT_0_625_MS) / 1000;
     }
 
-    /**
-     * Get the advertising type.
-     *
-     * @return The advertising type.
-     */
     AdvertisingType_t getAdvertisingType(void) const {
         return _advType;
     }
 
     /**
-     * Get the advertising interval in milliseconds.
-     *
-     * @return The advertisement interval (in milliseconds).
+     * @return the advertisement interval (in milliseconds).
      */
     uint16_t getInterval(void) const {
         return ADVERTISEMENT_DURATION_UNITS_TO_MS(_interval);
     }
 
     /**
-     * Get the advertisement interval in units of 0.625ms.
-     *
-     * @return The advertisement interval in advertisement duration units (0.625ms units).
+     * @return the advertisement interval in advertisement duration units (0.625ms units).
      */
     uint16_t getIntervalInADVUnits(void) const {
         return _interval;
     }
 
-    /**
-     * Get The advertising timeout.
-     *
-     * @return The advertising timeout (in seconds).
-     */
     uint16_t getTimeout(void) const {
         return _timeout;
     }
 
-    /**
-     * Set the advertising type.
-     *
-     * @param[in] newAdvType
-     *              The new advertising type.
-     */
-    void setAdvertisingType(AdvertisingType_t newAdvType) {
-        _advType = newAdvType;
-    }
-
-    /**
-     * Set the advertising interval in milliseconds.
-     *
-     * @param[in] newInterval
-     *              The new advertising interval in milliseconds.
-     */
-    void setInterval(uint16_t newInterval) {
-        _interval = MSEC_TO_ADVERTISEMENT_DURATION_UNITS(newInterval);
-    }
-
-    /**
-     * Set the advertising timeout.
-     *
-     * @param[in] newTimeout
-     *              The new advertising timeout (in seconds).
-     */
-    void setTimeout(uint16_t newTimeout) {
-        _timeout = newTimeout;
-    }
+    void setAdvertisingType(AdvertisingType_t newAdvType) {_advType = newAdvType;  }
+    void setInterval(uint16_t newInterval)                {_interval = MSEC_TO_ADVERTISEMENT_DURATION_UNITS(newInterval);}
+    void setTimeout(uint16_t newTimeout)                  {_timeout = newTimeout;  }
 
 private:
-    AdvertisingType_t _advType;  /**< The advertising type. */
-    uint16_t          _interval; /**< The advertising interval in ADV duration units (i.e. 0.625ms). */
-    uint16_t          _timeout;  /**< The advertising timeout in seconds. */
+    AdvertisingType_t _advType;
+    uint16_t          _interval; /* In ADV duration units (i.e. 0.625ms). */
+    uint16_t          _timeout;  /* In seconds. */
 };
 
-#endif /* ifndef __GAP_ADVERTISING_PARAMS_H__ */
\ No newline at end of file
+#endif // ifndef __GAP_ADVERTISING_PARAMS_H__
\ No newline at end of file