Initial commit
mbed-dev-master/targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F439xI/TARGET_MODULE_UBLOX_ODIN_W2/sdk/ublox-odin-w2-drivers/cb_bt_man.h@0:bb348c97df44, 2020-09-16 (annotated)
- Committer:
- lypinator
- Date:
- Wed Sep 16 01:11:49 2020 +0000
- Revision:
- 0:bb348c97df44
Added PWM
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
lypinator | 0:bb348c97df44 | 1 | /* |
lypinator | 0:bb348c97df44 | 2 | *--------------------------------------------------------------------------- |
lypinator | 0:bb348c97df44 | 3 | * Copyright (c) 2016, u-blox Malmö, All Rights Reserved |
lypinator | 0:bb348c97df44 | 4 | * SPDX-License-Identifier: LicenseRef-PBL |
lypinator | 0:bb348c97df44 | 5 | * |
lypinator | 0:bb348c97df44 | 6 | * This file and the related binary are licensed under the |
lypinator | 0:bb348c97df44 | 7 | * Permissive Binary License, Version 1.0 (the "License"); |
lypinator | 0:bb348c97df44 | 8 | * you may not use these files except in compliance with the License. |
lypinator | 0:bb348c97df44 | 9 | * |
lypinator | 0:bb348c97df44 | 10 | * You may obtain a copy of the License here: |
lypinator | 0:bb348c97df44 | 11 | * LICENSE-permissive-binary-license-1.0.txt and at |
lypinator | 0:bb348c97df44 | 12 | * https://www.mbed.com/licenses/PBL-1.0 |
lypinator | 0:bb348c97df44 | 13 | * |
lypinator | 0:bb348c97df44 | 14 | * See the License for the specific language governing permissions and |
lypinator | 0:bb348c97df44 | 15 | * limitations under the License. |
lypinator | 0:bb348c97df44 | 16 | * |
lypinator | 0:bb348c97df44 | 17 | * Component : Bluetooth Manager |
lypinator | 0:bb348c97df44 | 18 | * File : cb_bt_man.h |
lypinator | 0:bb348c97df44 | 19 | * |
lypinator | 0:bb348c97df44 | 20 | * Description : General Bluetooth functionality |
lypinator | 0:bb348c97df44 | 21 | * |
lypinator | 0:bb348c97df44 | 22 | *-------------------------------------------------------------------------*/ |
lypinator | 0:bb348c97df44 | 23 | |
lypinator | 0:bb348c97df44 | 24 | /** |
lypinator | 0:bb348c97df44 | 25 | * @file cb_bt_man.h |
lypinator | 0:bb348c97df44 | 26 | * |
lypinator | 0:bb348c97df44 | 27 | * @brief General Bluetooth functionality. This includes initialization of |
lypinator | 0:bb348c97df44 | 28 | * the Bluetooth radio and stack, handling properties such as device |
lypinator | 0:bb348c97df44 | 29 | * name, scanning for other devices using inquiry or Bluetooth Low Energy |
lypinator | 0:bb348c97df44 | 30 | * scan and more. |
lypinator | 0:bb348c97df44 | 31 | */ |
lypinator | 0:bb348c97df44 | 32 | |
lypinator | 0:bb348c97df44 | 33 | #ifndef _CB_BT_MAN_H_ |
lypinator | 0:bb348c97df44 | 34 | #define _CB_BT_MAN_H_ |
lypinator | 0:bb348c97df44 | 35 | |
lypinator | 0:bb348c97df44 | 36 | #include "cb_comdefs.h" |
lypinator | 0:bb348c97df44 | 37 | #include "bt_types.h" |
lypinator | 0:bb348c97df44 | 38 | |
lypinator | 0:bb348c97df44 | 39 | #ifdef __cplusplus |
lypinator | 0:bb348c97df44 | 40 | extern "C" { |
lypinator | 0:bb348c97df44 | 41 | #endif |
lypinator | 0:bb348c97df44 | 42 | |
lypinator | 0:bb348c97df44 | 43 | /*=========================================================================== |
lypinator | 0:bb348c97df44 | 44 | * DEFINES |
lypinator | 0:bb348c97df44 | 45 | *=========================================================================*/ |
lypinator | 0:bb348c97df44 | 46 | #define cbBM_OK (0) |
lypinator | 0:bb348c97df44 | 47 | #define cbBM_ERROR (-1) |
lypinator | 0:bb348c97df44 | 48 | #define cbBM_MAX_OUTPUT_POWER (127) |
lypinator | 0:bb348c97df44 | 49 | |
lypinator | 0:bb348c97df44 | 50 | #define cbBM_ADV_CHANNEL_MAP_CH_37_BIT 0x01 |
lypinator | 0:bb348c97df44 | 51 | #define cbBM_ADV_CHANNEL_MAP_CH_38_BIT 0x02 |
lypinator | 0:bb348c97df44 | 52 | #define cbBM_ADV_CHANNEL_MAP_CH_39_BIT 0x04 |
lypinator | 0:bb348c97df44 | 53 | #define cbBM_ADV_CHANNEL_MAP_ALL (cbBM_ADV_CHANNEL_MAP_CH_37_BIT | cbBM_ADV_CHANNEL_MAP_CH_38_BIT | cbBM_ADV_CHANNEL_MAP_CH_39_BIT) |
lypinator | 0:bb348c97df44 | 54 | /*=========================================================================== |
lypinator | 0:bb348c97df44 | 55 | * TYPES |
lypinator | 0:bb348c97df44 | 56 | *=========================================================================*/ |
lypinator | 0:bb348c97df44 | 57 | |
lypinator | 0:bb348c97df44 | 58 | extern const TBdAddr invalidBdAddress; |
lypinator | 0:bb348c97df44 | 59 | |
lypinator | 0:bb348c97df44 | 60 | typedef enum |
lypinator | 0:bb348c97df44 | 61 | { |
lypinator | 0:bb348c97df44 | 62 | cbBM_INQUIRY_GENERAL = 0, |
lypinator | 0:bb348c97df44 | 63 | cbBM_INQUIRY_LIMITED = 1, |
lypinator | 0:bb348c97df44 | 64 | } cbBM_InquiryType; |
lypinator | 0:bb348c97df44 | 65 | |
lypinator | 0:bb348c97df44 | 66 | typedef void(*cbBM_TIStatusCallback)( |
lypinator | 0:bb348c97df44 | 67 | cb_int32 status, |
lypinator | 0:bb348c97df44 | 68 | cb_int8 temperature); |
lypinator | 0:bb348c97df44 | 69 | |
lypinator | 0:bb348c97df44 | 70 | typedef void (*cbBM_InquiryEventCallback)( |
lypinator | 0:bb348c97df44 | 71 | TBdAddr *pBdAddress, |
lypinator | 0:bb348c97df44 | 72 | TCod cod, |
lypinator | 0:bb348c97df44 | 73 | cb_uint16 clockOffset, |
lypinator | 0:bb348c97df44 | 74 | cb_int8 rssi, |
lypinator | 0:bb348c97df44 | 75 | cb_char *pName, |
lypinator | 0:bb348c97df44 | 76 | TExtInqRsp* pExtInqRsp, |
lypinator | 0:bb348c97df44 | 77 | cb_uint8 length); |
lypinator | 0:bb348c97df44 | 78 | |
lypinator | 0:bb348c97df44 | 79 | typedef void (*cbBM_InquiryCompleteCallback)( |
lypinator | 0:bb348c97df44 | 80 | cb_int32 status); |
lypinator | 0:bb348c97df44 | 81 | |
lypinator | 0:bb348c97df44 | 82 | typedef void (*cbBM_RemoteNameCallback)( |
lypinator | 0:bb348c97df44 | 83 | TBdAddr *pBdAddress, |
lypinator | 0:bb348c97df44 | 84 | TName *pName, |
lypinator | 0:bb348c97df44 | 85 | cb_int32 status); |
lypinator | 0:bb348c97df44 | 86 | |
lypinator | 0:bb348c97df44 | 87 | typedef enum |
lypinator | 0:bb348c97df44 | 88 | { |
lypinator | 0:bb348c97df44 | 89 | cbBM_DEVICE_DISCOVERY_LE_ALL = 0, // Limited size filtering to reduce duplicate results (for devices in filter). |
lypinator | 0:bb348c97df44 | 90 | cbBM_DEVICE_DISCOVERY_LE_GENERAL, |
lypinator | 0:bb348c97df44 | 91 | cbBM_DEVICE_DISCOVERY_LE_LIMITED, |
lypinator | 0:bb348c97df44 | 92 | cbBM_DEVICE_DISCOVERY_LE_ALL_NO_FILTERING // No found devices filtered out due to previously found |
lypinator | 0:bb348c97df44 | 93 | } cbBM_DeviceDiscoveryTypeLe; |
lypinator | 0:bb348c97df44 | 94 | |
lypinator | 0:bb348c97df44 | 95 | typedef enum |
lypinator | 0:bb348c97df44 | 96 | { |
lypinator | 0:bb348c97df44 | 97 | cbBM_ACTIVE_SCAN = 0, |
lypinator | 0:bb348c97df44 | 98 | cbBM_PASSIVE_SCAN = 1 |
lypinator | 0:bb348c97df44 | 99 | } cbBM_ScanTypeLe; |
lypinator | 0:bb348c97df44 | 100 | |
lypinator | 0:bb348c97df44 | 101 | |
lypinator | 0:bb348c97df44 | 102 | typedef void (*cbBM_DeviceDiscoveryLeEventCallback)( |
lypinator | 0:bb348c97df44 | 103 | TBdAddr *pBdAddress, // Bluetooth address |
lypinator | 0:bb348c97df44 | 104 | cb_int8 rssi, // Tx power in dBm |
lypinator | 0:bb348c97df44 | 105 | cb_char *pName, // Remote name as null terminated string |
lypinator | 0:bb348c97df44 | 106 | TAdvData *pAdvData); // Advertisment data of remote device |
lypinator | 0:bb348c97df44 | 107 | |
lypinator | 0:bb348c97df44 | 108 | typedef void (*cbBM_DeviceDiscoveryLeCompleteCallback)( |
lypinator | 0:bb348c97df44 | 109 | cb_int32 status); |
lypinator | 0:bb348c97df44 | 110 | |
lypinator | 0:bb348c97df44 | 111 | typedef enum |
lypinator | 0:bb348c97df44 | 112 | { |
lypinator | 0:bb348c97df44 | 113 | cbBM_DISCOVERABLE_MODE_NONE = 0, |
lypinator | 0:bb348c97df44 | 114 | cbBM_DISCOVERABLE_MODE_LIMITED = 1, |
lypinator | 0:bb348c97df44 | 115 | cbBM_DISCOVERABLE_MODE_GENERAL = 2, |
lypinator | 0:bb348c97df44 | 116 | } cbBM_DiscoverableMode; |
lypinator | 0:bb348c97df44 | 117 | |
lypinator | 0:bb348c97df44 | 118 | typedef enum |
lypinator | 0:bb348c97df44 | 119 | { |
lypinator | 0:bb348c97df44 | 120 | cbBM_CONNECTABLE_MODE_NOT_CONNECTABLE = 0, |
lypinator | 0:bb348c97df44 | 121 | cbBM_CONNECTABLE_MODE_CONNECTABLE |
lypinator | 0:bb348c97df44 | 122 | } cbBM_ConnectableMode; |
lypinator | 0:bb348c97df44 | 123 | |
lypinator | 0:bb348c97df44 | 124 | typedef enum |
lypinator | 0:bb348c97df44 | 125 | { |
lypinator | 0:bb348c97df44 | 126 | cbBM_DISCOVERABLE_MODE_LE_NONE = 0, |
lypinator | 0:bb348c97df44 | 127 | cbBM_DISCOVERABLE_MODE_LE_LIMITED = 1, |
lypinator | 0:bb348c97df44 | 128 | cbBM_DISCOVERABLE_MODE_LE_GENERAL = 2, |
lypinator | 0:bb348c97df44 | 129 | } cbBM_DiscoverableModeLe; |
lypinator | 0:bb348c97df44 | 130 | |
lypinator | 0:bb348c97df44 | 131 | typedef enum |
lypinator | 0:bb348c97df44 | 132 | { |
lypinator | 0:bb348c97df44 | 133 | cbBM_CONNECTABLE_MODE_LE_NOT_CONNECTABLE = 0, |
lypinator | 0:bb348c97df44 | 134 | cbBM_CONNECTABLE_MODE_LE_CONNECTABLE |
lypinator | 0:bb348c97df44 | 135 | } cbBM_ConnectableModeLe; |
lypinator | 0:bb348c97df44 | 136 | |
lypinator | 0:bb348c97df44 | 137 | typedef enum |
lypinator | 0:bb348c97df44 | 138 | { |
lypinator | 0:bb348c97df44 | 139 | cbBM_SET_CHANNEL_MAP_CNF_POS, |
lypinator | 0:bb348c97df44 | 140 | cbBM_SET_CHANNEL_MAP_CNF_NEG, |
lypinator | 0:bb348c97df44 | 141 | } cbBM_ChannelMapEvt; |
lypinator | 0:bb348c97df44 | 142 | |
lypinator | 0:bb348c97df44 | 143 | typedef void (*cbBM_ChannelMapCallb)( |
lypinator | 0:bb348c97df44 | 144 | cbBM_ChannelMapEvt chMapEvt, |
lypinator | 0:bb348c97df44 | 145 | TChannelMap *pChMap); // Channel map bit mask |
lypinator | 0:bb348c97df44 | 146 | |
lypinator | 0:bb348c97df44 | 147 | typedef void (*cbBM_InitComplete)(void); |
lypinator | 0:bb348c97df44 | 148 | typedef void(*cbBM_LocalAddressCb)(void); |
lypinator | 0:bb348c97df44 | 149 | |
lypinator | 0:bb348c97df44 | 150 | typedef enum |
lypinator | 0:bb348c97df44 | 151 | { |
lypinator | 0:bb348c97df44 | 152 | cbBM_LE_ROLE_DISABLED = 0, |
lypinator | 0:bb348c97df44 | 153 | cbBM_LE_ROLE_CENTRAL = 1, |
lypinator | 0:bb348c97df44 | 154 | cbBM_LE_ROLE_PERIPHERAL = 2, |
lypinator | 0:bb348c97df44 | 155 | } cbBM_LeRole; |
lypinator | 0:bb348c97df44 | 156 | |
lypinator | 0:bb348c97df44 | 157 | /** |
lypinator | 0:bb348c97df44 | 158 | * Bluetooth Manager initialization parameters. |
lypinator | 0:bb348c97df44 | 159 | */ |
lypinator | 0:bb348c97df44 | 160 | typedef struct |
lypinator | 0:bb348c97df44 | 161 | { |
lypinator | 0:bb348c97df44 | 162 | TBdAddr address; /** Bluetooth address that shall be assigned to controller. Pass invalidBdAddress to use controller default address*/ |
lypinator | 0:bb348c97df44 | 163 | cbBM_LeRole leRole; /** Bluetooth low energy role */ |
lypinator | 0:bb348c97df44 | 164 | cb_int8 maxOutputPower; /** Maximum output power. */ |
lypinator | 0:bb348c97df44 | 165 | cb_int32 nvdsStartIdLinkKeysClassic; /** Start id for CLASSIC link keys storage in NVDS. */ |
lypinator | 0:bb348c97df44 | 166 | cb_int32 maxLinkKeysClassic; /** Max number of CLASSIC link keys */ |
lypinator | 0:bb348c97df44 | 167 | cb_int32 nvdsStartIdLinkKeysLe; /** Start id for BLE link keys storage in NVDS. */ |
lypinator | 0:bb348c97df44 | 168 | cb_int32 maxLinkKeysLe; /** Max number of link keys BLE*/ |
lypinator | 0:bb348c97df44 | 169 | } cbBM_InitParams; |
lypinator | 0:bb348c97df44 | 170 | |
lypinator | 0:bb348c97df44 | 171 | typedef void(*cbBM_ServiceEnabled)(cb_uint8 serviceChannel); |
lypinator | 0:bb348c97df44 | 172 | /*=========================================================================== |
lypinator | 0:bb348c97df44 | 173 | * FUNCTIONS |
lypinator | 0:bb348c97df44 | 174 | *=========================================================================*/ |
lypinator | 0:bb348c97df44 | 175 | |
lypinator | 0:bb348c97df44 | 176 | /** |
lypinator | 0:bb348c97df44 | 177 | * Initialize the Bluetooth Radio, the connectBlue Embedded Bluetooth |
lypinator | 0:bb348c97df44 | 178 | * Stack and the Bluetooth Manager. |
lypinator | 0:bb348c97df44 | 179 | * The init complete callback is used to notify when the initialization is |
lypinator | 0:bb348c97df44 | 180 | * complete. During initialization default values are set for all properties. |
lypinator | 0:bb348c97df44 | 181 | * The application shall set desired values for the main Bluetooth properties |
lypinator | 0:bb348c97df44 | 182 | * such as local name after the initialization is complete. After init the device |
lypinator | 0:bb348c97df44 | 183 | * is non discoverable and non connectable. |
lypinator | 0:bb348c97df44 | 184 | * |
lypinator | 0:bb348c97df44 | 185 | * @param pInitParameters Init parameters |
lypinator | 0:bb348c97df44 | 186 | * @param initCompleteCallback Callback used to notify when the initialization is complete. |
lypinator | 0:bb348c97df44 | 187 | * @param pBtReadyCallback Callback used to notify when the customized Bluetooth |
lypinator | 0:bb348c97df44 | 188 | * initialization is ready. |
lypinator | 0:bb348c97df44 | 189 | * @return None |
lypinator | 0:bb348c97df44 | 190 | */ |
lypinator | 0:bb348c97df44 | 191 | extern void cbBM_init( |
lypinator | 0:bb348c97df44 | 192 | cbBM_InitParams *pInitParameters, |
lypinator | 0:bb348c97df44 | 193 | cbBM_InitComplete initCompleteCallback); |
lypinator | 0:bb348c97df44 | 194 | |
lypinator | 0:bb348c97df44 | 195 | /** |
lypinator | 0:bb348c97df44 | 196 | * This function executes cbBM_setQosParams command according to parameters. |
lypinator | 0:bb348c97df44 | 197 | * @param connectConfig decides whether to turn off connectability and discoverability |
lypinator | 0:bb348c97df44 | 198 | * when max links are reached. |
lypinator | 0:bb348c97df44 | 199 | * @param qosConfig QoS enable=1, disable=0 |
lypinator | 0:bb348c97df44 | 200 | * @param connectConfig QoS "off during connection"=0, "on during connection"=1 |
lypinator | 0:bb348c97df44 | 201 | * @return true if in parameters are valid. |
lypinator | 0:bb348c97df44 | 202 | */ |
lypinator | 0:bb348c97df44 | 203 | extern cb_int32 cbBM_setQosParams( |
lypinator | 0:bb348c97df44 | 204 | cb_uint8 qosConfig, |
lypinator | 0:bb348c97df44 | 205 | cb_uint8 connectConfig); |
lypinator | 0:bb348c97df44 | 206 | |
lypinator | 0:bb348c97df44 | 207 | /** |
lypinator | 0:bb348c97df44 | 208 | * This function sets the link supervision timeout in LLC. |
lypinator | 0:bb348c97df44 | 209 | * @param linkSupervisionTimeout in milliseconds |
lypinator | 0:bb348c97df44 | 210 | * @return true if in parameter is valid. |
lypinator | 0:bb348c97df44 | 211 | */ |
lypinator | 0:bb348c97df44 | 212 | extern cb_int32 cbBM_setLinkSupervisionTimeout( |
lypinator | 0:bb348c97df44 | 213 | cb_uint16 linkSupervisionTimeout); |
lypinator | 0:bb348c97df44 | 214 | |
lypinator | 0:bb348c97df44 | 215 | /** |
lypinator | 0:bb348c97df44 | 216 | * This function gets the link supervision timeout from LLC. |
lypinator | 0:bb348c97df44 | 217 | * @return link supervision timeout in milliseconds |
lypinator | 0:bb348c97df44 | 218 | */ |
lypinator | 0:bb348c97df44 | 219 | extern cb_uint16 cbBM_getLinkSupervisionTimeout(void); |
lypinator | 0:bb348c97df44 | 220 | |
lypinator | 0:bb348c97df44 | 221 | /** |
lypinator | 0:bb348c97df44 | 222 | * This function enables or disables the fast connect feature (interlaced page scan). |
lypinator | 0:bb348c97df44 | 223 | * @param fastConnect enable=TRUE, disable=FALSE |
lypinator | 0:bb348c97df44 | 224 | * @return cbBM_OK if in parameter is valid. |
lypinator | 0:bb348c97df44 | 225 | */ |
lypinator | 0:bb348c97df44 | 226 | extern cb_int32 cbBM_setFastConnect( |
lypinator | 0:bb348c97df44 | 227 | cb_boolean fastConnect); |
lypinator | 0:bb348c97df44 | 228 | /** |
lypinator | 0:bb348c97df44 | 229 | * This function gets whether the fast connect feature is enabled or disabled. |
lypinator | 0:bb348c97df44 | 230 | * @return fast connect; enabled=TRUE, disabled=FALSE |
lypinator | 0:bb348c97df44 | 231 | */ |
lypinator | 0:bb348c97df44 | 232 | extern cb_boolean cbBM_getFastConnect(void); |
lypinator | 0:bb348c97df44 | 233 | |
lypinator | 0:bb348c97df44 | 234 | /** |
lypinator | 0:bb348c97df44 | 235 | * This function enables or disables the fast discovery feature (interlaced inquiry scan). |
lypinator | 0:bb348c97df44 | 236 | * @param fastDiscovery enable=TRUE, disable=FALSE |
lypinator | 0:bb348c97df44 | 237 | * @return cbBM_OK if in parameter is valid. |
lypinator | 0:bb348c97df44 | 238 | */ |
lypinator | 0:bb348c97df44 | 239 | extern cb_int32 cbBM_setFastDiscovery( |
lypinator | 0:bb348c97df44 | 240 | cb_boolean fastDiscovery); |
lypinator | 0:bb348c97df44 | 241 | |
lypinator | 0:bb348c97df44 | 242 | /** |
lypinator | 0:bb348c97df44 | 243 | * This function gets whether the fast discovery feature is enabled or disabled. |
lypinator | 0:bb348c97df44 | 244 | * @return fast connect enabled=TRUE, disabled=FALSE |
lypinator | 0:bb348c97df44 | 245 | */ |
lypinator | 0:bb348c97df44 | 246 | extern cb_boolean cbBM_getFastDiscovery(void); |
lypinator | 0:bb348c97df44 | 247 | |
lypinator | 0:bb348c97df44 | 248 | /** |
lypinator | 0:bb348c97df44 | 249 | * This function sets the page timeout in LLC. |
lypinator | 0:bb348c97df44 | 250 | * @param pageTimeout in milliseconds |
lypinator | 0:bb348c97df44 | 251 | * @return cbBM_OK if successful |
lypinator | 0:bb348c97df44 | 252 | */ |
lypinator | 0:bb348c97df44 | 253 | extern cb_int32 cbBM_setPageTimeout( |
lypinator | 0:bb348c97df44 | 254 | cb_uint16 pageTimeout); |
lypinator | 0:bb348c97df44 | 255 | |
lypinator | 0:bb348c97df44 | 256 | /** |
lypinator | 0:bb348c97df44 | 257 | * This function gets the page timeout from LLC. |
lypinator | 0:bb348c97df44 | 258 | * @return page timeout in milliseconds. |
lypinator | 0:bb348c97df44 | 259 | */ |
lypinator | 0:bb348c97df44 | 260 | extern cb_uint16 cbBM_getPageTimeout(void); |
lypinator | 0:bb348c97df44 | 261 | |
lypinator | 0:bb348c97df44 | 262 | /** |
lypinator | 0:bb348c97df44 | 263 | * This function sets all default parameters for LE. |
lypinator | 0:bb348c97df44 | 264 | * This function needs to be called before the cbBM_init. |
lypinator | 0:bb348c97df44 | 265 | */ |
lypinator | 0:bb348c97df44 | 266 | extern void cbBM_setDefaultValuesLeParams(void); |
lypinator | 0:bb348c97df44 | 267 | |
lypinator | 0:bb348c97df44 | 268 | /** |
lypinator | 0:bb348c97df44 | 269 | * This function executes HCI_cmdWrScanEnable command according to parameters. |
lypinator | 0:bb348c97df44 | 270 | * @param discoverableMode discoverable mode |
lypinator | 0:bb348c97df44 | 271 | * @param connectableMode connectable mode |
lypinator | 0:bb348c97df44 | 272 | * @return cbBM_OK if HCI command could be executed. |
lypinator | 0:bb348c97df44 | 273 | */ |
lypinator | 0:bb348c97df44 | 274 | extern cb_int32 cbBM_updateScan( |
lypinator | 0:bb348c97df44 | 275 | cbBM_DiscoverableMode discoverableMode, |
lypinator | 0:bb348c97df44 | 276 | cbBM_ConnectableMode connectableMode); |
lypinator | 0:bb348c97df44 | 277 | |
lypinator | 0:bb348c97df44 | 278 | /** |
lypinator | 0:bb348c97df44 | 279 | * Get the current Bluetooth address of the device from radio. This can |
lypinator | 0:bb348c97df44 | 280 | * be a way to get a alive-message from the radio. Also, if the radio resets, |
lypinator | 0:bb348c97df44 | 281 | * the address is set to a chip default value. |
lypinator | 0:bb348c97df44 | 282 | * |
lypinator | 0:bb348c97df44 | 283 | * @param callback to application when address has been read. |
lypinator | 0:bb348c97df44 | 284 | */ |
lypinator | 0:bb348c97df44 | 285 | extern void cbBM_checkRadioAlive(cbBM_LocalAddressCb callback); |
lypinator | 0:bb348c97df44 | 286 | |
lypinator | 0:bb348c97df44 | 287 | /** |
lypinator | 0:bb348c97df44 | 288 | * Get the current Bluetooth address of the device. |
lypinator | 0:bb348c97df44 | 289 | * @param pAddress Pointer to return variable. |
lypinator | 0:bb348c97df44 | 290 | * @return if the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 291 | */ |
lypinator | 0:bb348c97df44 | 292 | extern cb_int32 cbBM_getLocalAddress(TBdAddr *pAddress); |
lypinator | 0:bb348c97df44 | 293 | |
lypinator | 0:bb348c97df44 | 294 | /** |
lypinator | 0:bb348c97df44 | 295 | * Set local name |
lypinator | 0:bb348c97df44 | 296 | * This sets the Bluetooth Classic device name as well as the Bluetooth Low |
lypinator | 0:bb348c97df44 | 297 | * Energy device name. Inquiry and advertising is updated. |
lypinator | 0:bb348c97df44 | 298 | * @param pName The new local name (null terminated string). Max length is 32 chars. |
lypinator | 0:bb348c97df44 | 299 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 300 | */ |
lypinator | 0:bb348c97df44 | 301 | extern cb_int32 cbBM_setLocalName(cb_char* pName); |
lypinator | 0:bb348c97df44 | 302 | |
lypinator | 0:bb348c97df44 | 303 | /** |
lypinator | 0:bb348c97df44 | 304 | * Get local name. |
lypinator | 0:bb348c97df44 | 305 | * Get the current local name. |
lypinator | 0:bb348c97df44 | 306 | * @param pName Pointer to return variable. |
lypinator | 0:bb348c97df44 | 307 | * @param length Max length of the name string. Name will be truncated if length is too small. |
lypinator | 0:bb348c97df44 | 308 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 309 | */ |
lypinator | 0:bb348c97df44 | 310 | extern cb_int32 cbBM_getLocalName( |
lypinator | 0:bb348c97df44 | 311 | cb_char *pName, |
lypinator | 0:bb348c97df44 | 312 | cb_uint32 length); |
lypinator | 0:bb348c97df44 | 313 | |
lypinator | 0:bb348c97df44 | 314 | /** |
lypinator | 0:bb348c97df44 | 315 | * Set class of device |
lypinator | 0:bb348c97df44 | 316 | * @param cod New Class of Device. |
lypinator | 0:bb348c97df44 | 317 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 318 | */ |
lypinator | 0:bb348c97df44 | 319 | extern cb_int32 cbBM_setCod(TCod cod); |
lypinator | 0:bb348c97df44 | 320 | |
lypinator | 0:bb348c97df44 | 321 | /** |
lypinator | 0:bb348c97df44 | 322 | * Get current class of device. |
lypinator | 0:bb348c97df44 | 323 | * @param pCod Pointer to return variable. |
lypinator | 0:bb348c97df44 | 324 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 325 | */ |
lypinator | 0:bb348c97df44 | 326 | extern cb_int32 cbBM_getCod(TCod* pCod); |
lypinator | 0:bb348c97df44 | 327 | |
lypinator | 0:bb348c97df44 | 328 | /** |
lypinator | 0:bb348c97df44 | 329 | * Set discoverable mode for Bluetooth Classic. |
lypinator | 0:bb348c97df44 | 330 | * @param discoverable New discoverable mode. |
lypinator | 0:bb348c97df44 | 331 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 332 | */ |
lypinator | 0:bb348c97df44 | 333 | extern cb_int32 cbBM_setDiscoverableMode(cbBM_DiscoverableMode discoverable); |
lypinator | 0:bb348c97df44 | 334 | |
lypinator | 0:bb348c97df44 | 335 | /** |
lypinator | 0:bb348c97df44 | 336 | * Get current discoverable mode for Bluetooth Classic. |
lypinator | 0:bb348c97df44 | 337 | * @param pDiscoverable Pointer to return variable. |
lypinator | 0:bb348c97df44 | 338 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 339 | */ |
lypinator | 0:bb348c97df44 | 340 | extern cb_int32 cbBM_getDiscoverableMode(cbBM_DiscoverableMode *pDiscoverable); |
lypinator | 0:bb348c97df44 | 341 | |
lypinator | 0:bb348c97df44 | 342 | /** |
lypinator | 0:bb348c97df44 | 343 | * Set connectable mode for Bluetooth Classic. |
lypinator | 0:bb348c97df44 | 344 | * @param connectable Connectable mode |
lypinator | 0:bb348c97df44 | 345 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 346 | */ |
lypinator | 0:bb348c97df44 | 347 | extern cb_int32 cbBM_setConnectableMode(cbBM_ConnectableMode connectable); |
lypinator | 0:bb348c97df44 | 348 | |
lypinator | 0:bb348c97df44 | 349 | /** |
lypinator | 0:bb348c97df44 | 350 | * Get current connectable mode for Bluetooth Classic |
lypinator | 0:bb348c97df44 | 351 | * @param pConnectable Pointer to return variable. |
lypinator | 0:bb348c97df44 | 352 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 353 | */ |
lypinator | 0:bb348c97df44 | 354 | extern cb_int32 cbBM_getConnectableMode(cbBM_ConnectableMode *pConnectable); |
lypinator | 0:bb348c97df44 | 355 | |
lypinator | 0:bb348c97df44 | 356 | /** |
lypinator | 0:bb348c97df44 | 357 | * Set master slave policy for Bluetooth Classic |
lypinator | 0:bb348c97df44 | 358 | * @param policy Master slave policy |
lypinator | 0:bb348c97df44 | 359 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 360 | */ |
lypinator | 0:bb348c97df44 | 361 | extern cb_int32 cbBM_setMasterSlavePolicy(TMasterSlavePolicy policy); |
lypinator | 0:bb348c97df44 | 362 | |
lypinator | 0:bb348c97df44 | 363 | /** |
lypinator | 0:bb348c97df44 | 364 | * Set master slave policy for Bluetooth Classic |
lypinator | 0:bb348c97df44 | 365 | * @param pPolicy Pointer to return variable |
lypinator | 0:bb348c97df44 | 366 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 367 | */ |
lypinator | 0:bb348c97df44 | 368 | extern cb_int32 cbBM_getMasterSlavePolicy(TMasterSlavePolicy *pPolicy); |
lypinator | 0:bb348c97df44 | 369 | |
lypinator | 0:bb348c97df44 | 370 | /** |
lypinator | 0:bb348c97df44 | 371 | * Enable/disable sniff mode |
lypinator | 0:bb348c97df44 | 372 | * @param enable TRUE=enable sniff mode, FALSE=disable sniff mode |
lypinator | 0:bb348c97df44 | 373 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 374 | */ |
lypinator | 0:bb348c97df44 | 375 | extern cb_int32 cbBM_setSniffMode(cb_boolean enable); |
lypinator | 0:bb348c97df44 | 376 | |
lypinator | 0:bb348c97df44 | 377 | /** |
lypinator | 0:bb348c97df44 | 378 | * Get sniff mode |
lypinator | 0:bb348c97df44 | 379 | * @param pEnable Pointer to return variable |
lypinator | 0:bb348c97df44 | 380 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 381 | */ |
lypinator | 0:bb348c97df44 | 382 | extern cb_int32 cbBM_getSniffMode(cb_boolean *pEnable); |
lypinator | 0:bb348c97df44 | 383 | |
lypinator | 0:bb348c97df44 | 384 | /** |
lypinator | 0:bb348c97df44 | 385 | * Set default channel map for Bluetooth Classic. Used to exclude channels |
lypinator | 0:bb348c97df44 | 386 | * from usage. |
lypinator | 0:bb348c97df44 | 387 | * Request an update of which channels shall be used by adaptive frequency hopping. |
lypinator | 0:bb348c97df44 | 388 | * typically this is not needed since the Bluetooth is very good at select which |
lypinator | 0:bb348c97df44 | 389 | * channels to use. |
lypinator | 0:bb348c97df44 | 390 | * @param channelMap Channel map bit mask. Note that at least 20 channels must be enabled. |
lypinator | 0:bb348c97df44 | 391 | * @param channelMapCallback Callback used to notify if the channel map |
lypinator | 0:bb348c97df44 | 392 | * is accepted by the radio. |
lypinator | 0:bb348c97df44 | 393 | * @return If the operation is successfully initiated cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 394 | */ |
lypinator | 0:bb348c97df44 | 395 | extern cb_int32 cbBM_setAfhChannelMap( |
lypinator | 0:bb348c97df44 | 396 | TChannelMap channelMap, |
lypinator | 0:bb348c97df44 | 397 | cbBM_ChannelMapCallb channelMapCallback); |
lypinator | 0:bb348c97df44 | 398 | |
lypinator | 0:bb348c97df44 | 399 | /** |
lypinator | 0:bb348c97df44 | 400 | * Get the default channel map. |
lypinator | 0:bb348c97df44 | 401 | * @param pMap Pointer to return variable where the channel map bit mask is stored. |
lypinator | 0:bb348c97df44 | 402 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 403 | */ |
lypinator | 0:bb348c97df44 | 404 | extern cb_int32 cbBM_getAfhChannelMap(TChannelMap *pMap); |
lypinator | 0:bb348c97df44 | 405 | |
lypinator | 0:bb348c97df44 | 406 | /** |
lypinator | 0:bb348c97df44 | 407 | * Start an Bluetooth inquiry. |
lypinator | 0:bb348c97df44 | 408 | * The event callback is called for every device that is found during inquiry. |
lypinator | 0:bb348c97df44 | 409 | * @param type Type of inquiry. |
lypinator | 0:bb348c97df44 | 410 | * @param inquiryLengthInMs Length of inquiry in ms |
lypinator | 0:bb348c97df44 | 411 | * @param eventCallback Callback used to notify each found device |
lypinator | 0:bb348c97df44 | 412 | * @param completeCallback Callback used to notify when the inquiry is completed |
lypinator | 0:bb348c97df44 | 413 | * @return If the inquiry is successfully started cbBM_OK is returned |
lypinator | 0:bb348c97df44 | 414 | */ |
lypinator | 0:bb348c97df44 | 415 | extern cb_int32 cbBM_inquiry( |
lypinator | 0:bb348c97df44 | 416 | cbBM_InquiryType type, |
lypinator | 0:bb348c97df44 | 417 | cb_uint32 inquiryLengthInMs, |
lypinator | 0:bb348c97df44 | 418 | cbBM_InquiryEventCallback eventCallback, |
lypinator | 0:bb348c97df44 | 419 | cbBM_InquiryCompleteCallback completeCallback); |
lypinator | 0:bb348c97df44 | 420 | |
lypinator | 0:bb348c97df44 | 421 | /** |
lypinator | 0:bb348c97df44 | 422 | * Cancel an ongoing inquiry. |
lypinator | 0:bb348c97df44 | 423 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 424 | */ |
lypinator | 0:bb348c97df44 | 425 | extern cb_int32 cbBM_inquiryCancel(void); |
lypinator | 0:bb348c97df44 | 426 | |
lypinator | 0:bb348c97df44 | 427 | /** |
lypinator | 0:bb348c97df44 | 428 | * Perform a remote name request for Bluetooth Classic. |
lypinator | 0:bb348c97df44 | 429 | * @param pAddress Pointer to address of remote device. |
lypinator | 0:bb348c97df44 | 430 | * @param clockOffset Clock offset. Can be found in inquiry response. Use 0 if not available. |
lypinator | 0:bb348c97df44 | 431 | * @param pageTimeout Page timeout in ms (Length of connection attempt). |
lypinator | 0:bb348c97df44 | 432 | * @param remoteNameCallb Callback used to notify the completion of the |
lypinator | 0:bb348c97df44 | 433 | * name request. |
lypinator | 0:bb348c97df44 | 434 | * @return If the operation is successfully initiated cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 435 | */ |
lypinator | 0:bb348c97df44 | 436 | extern cb_int32 cbBM_remoteName( |
lypinator | 0:bb348c97df44 | 437 | TBdAddr *pAddress, |
lypinator | 0:bb348c97df44 | 438 | cb_uint16 clockOffset, |
lypinator | 0:bb348c97df44 | 439 | cb_uint16 pageTimeout, |
lypinator | 0:bb348c97df44 | 440 | cbBM_RemoteNameCallback remoteNameCallb); |
lypinator | 0:bb348c97df44 | 441 | |
lypinator | 0:bb348c97df44 | 442 | /** |
lypinator | 0:bb348c97df44 | 443 | * Add service class to inquiry response data. Typically |
lypinator | 0:bb348c97df44 | 444 | * not used by the application. |
lypinator | 0:bb348c97df44 | 445 | * @param uuid16 The UUID to add. E.g. 0x1101=SPP, 0x1115=PANU, 0x1116=NAP |
lypinator | 0:bb348c97df44 | 446 | * @param pCallback callback to indicate service is enabled |
lypinator | 0:bb348c97df44 | 447 | * @param serviceChannel channel the service is started on |
lypinator | 0:bb348c97df44 | 448 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 449 | */ |
lypinator | 0:bb348c97df44 | 450 | extern cb_int32 cbBM_addServiceClass(cb_uint16 uuid16, cbBM_ServiceEnabled pCallback,cb_uint8 serviceChannel); |
lypinator | 0:bb348c97df44 | 451 | |
lypinator | 0:bb348c97df44 | 452 | /** |
lypinator | 0:bb348c97df44 | 453 | * Check if service class is already registered. |
lypinator | 0:bb348c97df44 | 454 | * @param uuid16 The UUID to check. E.g. 0x1101=SPP, 0x1115=PANU, 0x1116=NAP |
lypinator | 0:bb348c97df44 | 455 | * @return TRUE If the ServiceClass is registered, FALSE otherwise. |
lypinator | 0:bb348c97df44 | 456 | */ |
lypinator | 0:bb348c97df44 | 457 | cb_boolean cbBM_isServiceClassRegistered(cb_uint16 uuid16 ); |
lypinator | 0:bb348c97df44 | 458 | |
lypinator | 0:bb348c97df44 | 459 | /** |
lypinator | 0:bb348c97df44 | 460 | * Add service class to inquiry response data. Typically |
lypinator | 0:bb348c97df44 | 461 | * not used by the application. |
lypinator | 0:bb348c97df44 | 462 | * @param uuid128 The UUID to add. |
lypinator | 0:bb348c97df44 | 463 | * @param pCallback callback to indicate service is enabled. |
lypinator | 0:bb348c97df44 | 464 | * @param serviceChannel channel the service is started on. |
lypinator | 0:bb348c97df44 | 465 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 466 | */ |
lypinator | 0:bb348c97df44 | 467 | extern cb_int32 cbBM_add128BitsServiceClass(cb_uint8* uuid128, cbBM_ServiceEnabled pCallback, cb_uint8 serviceChannel); |
lypinator | 0:bb348c97df44 | 468 | |
lypinator | 0:bb348c97df44 | 469 | /** |
lypinator | 0:bb348c97df44 | 470 | * Set maximum Bluetooth Classic ACL links the stack |
lypinator | 0:bb348c97df44 | 471 | * shall allow. |
lypinator | 0:bb348c97df44 | 472 | * @param maxConnections Max ACL connections. |
lypinator | 0:bb348c97df44 | 473 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 474 | */ |
lypinator | 0:bb348c97df44 | 475 | extern cb_int32 cbBM_setMaxConnections(cb_uint32 maxConnections); |
lypinator | 0:bb348c97df44 | 476 | |
lypinator | 0:bb348c97df44 | 477 | /** |
lypinator | 0:bb348c97df44 | 478 | * Get controller version string. |
lypinator | 0:bb348c97df44 | 479 | * @return Pointer to NULL terminated version string. |
lypinator | 0:bb348c97df44 | 480 | */ |
lypinator | 0:bb348c97df44 | 481 | extern cb_char* cbBM_getControllerVersionString(void); |
lypinator | 0:bb348c97df44 | 482 | |
lypinator | 0:bb348c97df44 | 483 | /** |
lypinator | 0:bb348c97df44 | 484 | * Get stack version string. |
lypinator | 0:bb348c97df44 | 485 | * @return Pointer to NULL terminated version string. |
lypinator | 0:bb348c97df44 | 486 | */ |
lypinator | 0:bb348c97df44 | 487 | extern cb_char* cbBM_getStackVersionString(void); |
lypinator | 0:bb348c97df44 | 488 | |
lypinator | 0:bb348c97df44 | 489 | /** |
lypinator | 0:bb348c97df44 | 490 | * Get current Bluetooth Low Energy Role. |
lypinator | 0:bb348c97df44 | 491 | * @return Current Bluetooth Low Energy role. |
lypinator | 0:bb348c97df44 | 492 | */ |
lypinator | 0:bb348c97df44 | 493 | extern cbBM_LeRole cbBM_getLeRole(void); |
lypinator | 0:bb348c97df44 | 494 | |
lypinator | 0:bb348c97df44 | 495 | /** |
lypinator | 0:bb348c97df44 | 496 | * Set Bluetooth Low Energy discoverable mode. |
lypinator | 0:bb348c97df44 | 497 | * Only valid for peripheral role. |
lypinator | 0:bb348c97df44 | 498 | * @param discoverableMode Bluetooth Low Energy discoverable mode |
lypinator | 0:bb348c97df44 | 499 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 500 | */ |
lypinator | 0:bb348c97df44 | 501 | extern cb_int32 cbBM_setDiscoverableModeLe( |
lypinator | 0:bb348c97df44 | 502 | cbBM_DiscoverableModeLe discoverableMode); |
lypinator | 0:bb348c97df44 | 503 | |
lypinator | 0:bb348c97df44 | 504 | /** |
lypinator | 0:bb348c97df44 | 505 | * Get Bluetooth Low Energy discoverable mode. |
lypinator | 0:bb348c97df44 | 506 | * @param pDiscoverableMode Pointer to return variable |
lypinator | 0:bb348c97df44 | 507 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 508 | */ |
lypinator | 0:bb348c97df44 | 509 | extern cb_int32 cbBM_getDiscoverableModeLe( |
lypinator | 0:bb348c97df44 | 510 | cbBM_DiscoverableModeLe *pDiscoverableMode); |
lypinator | 0:bb348c97df44 | 511 | |
lypinator | 0:bb348c97df44 | 512 | /** |
lypinator | 0:bb348c97df44 | 513 | * Set Bluetooth Low Energy connectable mode. |
lypinator | 0:bb348c97df44 | 514 | * Only valid for peripheral role. |
lypinator | 0:bb348c97df44 | 515 | * @param connectable Set to TRUE to accept connections |
lypinator | 0:bb348c97df44 | 516 | * Set to FALSE to reject incoming connections |
lypinator | 0:bb348c97df44 | 517 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 518 | */ |
lypinator | 0:bb348c97df44 | 519 | extern cb_int32 cbBM_setConnectableModeLe( |
lypinator | 0:bb348c97df44 | 520 | cbBM_ConnectableModeLe connectable); |
lypinator | 0:bb348c97df44 | 521 | |
lypinator | 0:bb348c97df44 | 522 | /** |
lypinator | 0:bb348c97df44 | 523 | * Get current connectable mode. |
lypinator | 0:bb348c97df44 | 524 | * @param pConnectable Pointer to return variable. |
lypinator | 0:bb348c97df44 | 525 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 526 | */ |
lypinator | 0:bb348c97df44 | 527 | extern cb_int32 cbBM_getConnectableModeLe( |
lypinator | 0:bb348c97df44 | 528 | cbBM_ConnectableModeLe* pConnectable); |
lypinator | 0:bb348c97df44 | 529 | |
lypinator | 0:bb348c97df44 | 530 | /** |
lypinator | 0:bb348c97df44 | 531 | * Set custom advertising data. |
lypinator | 0:bb348c97df44 | 532 | * Only valid for peripheral role. |
lypinator | 0:bb348c97df44 | 533 | * @param pAdvData Pointer to advertising data. |
lypinator | 0:bb348c97df44 | 534 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 535 | */ |
lypinator | 0:bb348c97df44 | 536 | extern cb_int32 cbBM_setCustomAdvData( |
lypinator | 0:bb348c97df44 | 537 | TAdvData* pAdvData); |
lypinator | 0:bb348c97df44 | 538 | |
lypinator | 0:bb348c97df44 | 539 | /** |
lypinator | 0:bb348c97df44 | 540 | * Set custom scan response data. |
lypinator | 0:bb348c97df44 | 541 | * Only valid for peripheral role. |
lypinator | 0:bb348c97df44 | 542 | * @param pScanRspData Pointer to scan response data. |
lypinator | 0:bb348c97df44 | 543 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 544 | */ |
lypinator | 0:bb348c97df44 | 545 | extern cb_int32 cbBM_setCustomScanRspData( |
lypinator | 0:bb348c97df44 | 546 | TAdvData* pScanRspData); |
lypinator | 0:bb348c97df44 | 547 | |
lypinator | 0:bb348c97df44 | 548 | /** |
lypinator | 0:bb348c97df44 | 549 | * Set current scan response data. |
lypinator | 0:bb348c97df44 | 550 | * Only valid for peripheral role. |
lypinator | 0:bb348c97df44 | 551 | * @param pAdvData Pointer to scan response data. |
lypinator | 0:bb348c97df44 | 552 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 553 | */ |
lypinator | 0:bb348c97df44 | 554 | extern cb_int32 cbBM_getAdvData( |
lypinator | 0:bb348c97df44 | 555 | TAdvData* pAdvData); |
lypinator | 0:bb348c97df44 | 556 | |
lypinator | 0:bb348c97df44 | 557 | /** |
lypinator | 0:bb348c97df44 | 558 | * Get current scan response data. |
lypinator | 0:bb348c97df44 | 559 | * Only valid for peripheral role. |
lypinator | 0:bb348c97df44 | 560 | * @param pScanRspData Pointer to scan response data. |
lypinator | 0:bb348c97df44 | 561 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 562 | */ |
lypinator | 0:bb348c97df44 | 563 | extern cb_int32 cbBM_getScanRspData( |
lypinator | 0:bb348c97df44 | 564 | TAdvData* pScanRspData); |
lypinator | 0:bb348c97df44 | 565 | |
lypinator | 0:bb348c97df44 | 566 | /** |
lypinator | 0:bb348c97df44 | 567 | * Start an Bluetooth Low Energy device discovery. |
lypinator | 0:bb348c97df44 | 568 | * The event callback is called for every device that is found during inquiry. |
lypinator | 0:bb348c97df44 | 569 | * @param type Type of discovery. |
lypinator | 0:bb348c97df44 | 570 | * @param discoveryLength Length of inquiry in seconds. |
lypinator | 0:bb348c97df44 | 571 | * @param scanType Active or passive scan |
lypinator | 0:bb348c97df44 | 572 | * @param eventCallback Callback used to notify each found device |
lypinator | 0:bb348c97df44 | 573 | * @param completeCallback Callback used to notify when the inquiry is completed. |
lypinator | 0:bb348c97df44 | 574 | * @return If the device discovery is successfully started cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 575 | */ |
lypinator | 0:bb348c97df44 | 576 | extern cb_int32 cbBM_deviceDiscoveryLe( |
lypinator | 0:bb348c97df44 | 577 | cbBM_DeviceDiscoveryTypeLe type, |
lypinator | 0:bb348c97df44 | 578 | cb_uint16 discoveryLength, |
lypinator | 0:bb348c97df44 | 579 | cbBM_ScanTypeLe scanType, |
lypinator | 0:bb348c97df44 | 580 | cbBM_DeviceDiscoveryLeEventCallback eventCallback, |
lypinator | 0:bb348c97df44 | 581 | cbBM_DeviceDiscoveryLeCompleteCallback completeCallback); |
lypinator | 0:bb348c97df44 | 582 | |
lypinator | 0:bb348c97df44 | 583 | /** |
lypinator | 0:bb348c97df44 | 584 | * Cancel an ongoing device discovery. |
lypinator | 0:bb348c97df44 | 585 | * @return If the operation is successful cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 586 | */ |
lypinator | 0:bb348c97df44 | 587 | extern cb_int32 cbBM_deviceDiscoveryLeCancel(void); |
lypinator | 0:bb348c97df44 | 588 | |
lypinator | 0:bb348c97df44 | 589 | /** |
lypinator | 0:bb348c97df44 | 590 | * Perform a remote name request for Bluetooth Low Energy. |
lypinator | 0:bb348c97df44 | 591 | * @param pAddress Pointer to address of remote device. |
lypinator | 0:bb348c97df44 | 592 | * @param remoteNameCallback Callback used to notify the completion of the |
lypinator | 0:bb348c97df44 | 593 | * name request. |
lypinator | 0:bb348c97df44 | 594 | * @return If the operation is successfully initiated cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 595 | */ |
lypinator | 0:bb348c97df44 | 596 | extern cb_int32 cbBM_remoteNameLe(TBdAddr *pAddress, |
lypinator | 0:bb348c97df44 | 597 | cbBM_RemoteNameCallback remoteNameCallback); |
lypinator | 0:bb348c97df44 | 598 | |
lypinator | 0:bb348c97df44 | 599 | |
lypinator | 0:bb348c97df44 | 600 | |
lypinator | 0:bb348c97df44 | 601 | /* |
lypinator | 0:bb348c97df44 | 602 | * Add 128bit service UUID to scan response data. Typically |
lypinator | 0:bb348c97df44 | 603 | * not used by the application. |
lypinator | 0:bb348c97df44 | 604 | * @param uuid128 Pointer to 128bit UUID |
lypinator | 0:bb348c97df44 | 605 | * @return If the operation is successfully initiated cbBM_OK is returned. |
lypinator | 0:bb348c97df44 | 606 | */ |
lypinator | 0:bb348c97df44 | 607 | extern cb_int32 cbBM_add128BitsServiceClassLe(cb_uint8* uuid128); |
lypinator | 0:bb348c97df44 | 608 | |
lypinator | 0:bb348c97df44 | 609 | /* |
lypinator | 0:bb348c97df44 | 610 | * Read the used max tx power . |
lypinator | 0:bb348c97df44 | 611 | * @return max tx power level in dBm. |
lypinator | 0:bb348c97df44 | 612 | */ |
lypinator | 0:bb348c97df44 | 613 | extern cb_int8 cbBM_getMaxTxPower(void); |
lypinator | 0:bb348c97df44 | 614 | |
lypinator | 0:bb348c97df44 | 615 | /* |
lypinator | 0:bb348c97df44 | 616 | * Read the connection parameters for Bond. |
lypinator | 0:bb348c97df44 | 617 | * @param bondParams Pointer to structure where the connection parameters are stored. |
lypinator | 0:bb348c97df44 | 618 | * @return void |
lypinator | 0:bb348c97df44 | 619 | */ |
lypinator | 0:bb348c97df44 | 620 | void cbBM_getBondParameters(TAclParamsLe* bondParams); |
lypinator | 0:bb348c97df44 | 621 | |
lypinator | 0:bb348c97df44 | 622 | /* |
lypinator | 0:bb348c97df44 | 623 | * Read the connection parameters for connection. |
lypinator | 0:bb348c97df44 | 624 | * @param aclParams Pointer to structure where the connection parameters are stored. |
lypinator | 0:bb348c97df44 | 625 | * @return void |
lypinator | 0:bb348c97df44 | 626 | */ |
lypinator | 0:bb348c97df44 | 627 | void cbBM_getConnectParameters(TAclParamsLe* aclParams); |
lypinator | 0:bb348c97df44 | 628 | |
lypinator | 0:bb348c97df44 | 629 | /* |
lypinator | 0:bb348c97df44 | 630 | * Read the connection parameters for remote name request. |
lypinator | 0:bb348c97df44 | 631 | * @param aclParams Pointer to structure where the connection parameters are stored. |
lypinator | 0:bb348c97df44 | 632 | * @return void |
lypinator | 0:bb348c97df44 | 633 | */ |
lypinator | 0:bb348c97df44 | 634 | void cbBM_getRemoteNameReqParameters(TAclParamsLe* aclParams); |
lypinator | 0:bb348c97df44 | 635 | |
lypinator | 0:bb348c97df44 | 636 | /* |
lypinator | 0:bb348c97df44 | 637 | * Read the vendor specific status of the WL18 chipset. |
lypinator | 0:bb348c97df44 | 638 | * @param callback Callback used to notify the completion of the |
lypinator | 0:bb348c97df44 | 639 | * status request. |
lypinator | 0:bb348c97df44 | 640 | * @return Returns cbBM_OK if successfully started. |
lypinator | 0:bb348c97df44 | 641 | */ |
lypinator | 0:bb348c97df44 | 642 | cb_int32 cbBM_getTISystemStatus(cbBM_TIStatusCallback callback); |
lypinator | 0:bb348c97df44 | 643 | |
lypinator | 0:bb348c97df44 | 644 | /* |
lypinator | 0:bb348c97df44 | 645 | * Set BT classic as not supported in the peripheral advertisment. |
lypinator | 0:bb348c97df44 | 646 | * @param enforceDisable TRUE to set BT classic not supported |
lypinator | 0:bb348c97df44 | 647 | * @return cbBM_OK if successful |
lypinator | 0:bb348c97df44 | 648 | */ |
lypinator | 0:bb348c97df44 | 649 | cb_int32 cbBM_setForceClassicNotSupportedInAdv(cb_boolean enforceDisable); |
lypinator | 0:bb348c97df44 | 650 | |
lypinator | 0:bb348c97df44 | 651 | /* |
lypinator | 0:bb348c97df44 | 652 | * Set BT classic as not supported in the peripheral advertisment. |
lypinator | 0:bb348c97df44 | 653 | * |
lypinator | 0:bb348c97df44 | 654 | * @return TRUE if BT classic is set to not supported in the peripheral advertisment. |
lypinator | 0:bb348c97df44 | 655 | */ |
lypinator | 0:bb348c97df44 | 656 | cb_boolean cbBM_getForceClassicNotSupportedInAdv(void); |
lypinator | 0:bb348c97df44 | 657 | |
lypinator | 0:bb348c97df44 | 658 | /** |
lypinator | 0:bb348c97df44 | 659 | * Set min advertisment interval |
lypinator | 0:bb348c97df44 | 660 | * |
lypinator | 0:bb348c97df44 | 661 | * @param newValue Minimial interval value as slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 662 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 663 | */ |
lypinator | 0:bb348c97df44 | 664 | extern cb_int32 cbBM_setAdvertisingIntervalMin(cb_uint16 val); |
lypinator | 0:bb348c97df44 | 665 | |
lypinator | 0:bb348c97df44 | 666 | /** |
lypinator | 0:bb348c97df44 | 667 | * Set max advertisment interval |
lypinator | 0:bb348c97df44 | 668 | * |
lypinator | 0:bb348c97df44 | 669 | * @param newValue Time in slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 670 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 671 | */ |
lypinator | 0:bb348c97df44 | 672 | extern cb_int32 cbBM_setAdvertisingIntervalMax(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 673 | |
lypinator | 0:bb348c97df44 | 674 | /** |
lypinator | 0:bb348c97df44 | 675 | * Set advertisment channel map |
lypinator | 0:bb348c97df44 | 676 | * |
lypinator | 0:bb348c97df44 | 677 | * @param Bit mask of channels to use; Channel 37, 38, 39 |
lypinator | 0:bb348c97df44 | 678 | * (cbBM_ADV_CHANNEL_MAP_CH_37_BIT, cbBM_ADV_CHANNEL_MAP_CH_38_BIT, cbBM_ADV_CHANNEL_MAP_CH_39_BIT) |
lypinator | 0:bb348c97df44 | 679 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 680 | */ |
lypinator | 0:bb348c97df44 | 681 | extern cb_int32 cbBM_setAdvChannelmap(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 682 | |
lypinator | 0:bb348c97df44 | 683 | /** |
lypinator | 0:bb348c97df44 | 684 | * Set min connection interval |
lypinator | 0:bb348c97df44 | 685 | * |
lypinator | 0:bb348c97df44 | 686 | * @param newValue Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 687 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 688 | */ |
lypinator | 0:bb348c97df44 | 689 | extern cb_int32 cbBM_setConnectConnIntervalMin(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 690 | |
lypinator | 0:bb348c97df44 | 691 | /** |
lypinator | 0:bb348c97df44 | 692 | * Set max connection interval |
lypinator | 0:bb348c97df44 | 693 | * |
lypinator | 0:bb348c97df44 | 694 | * @param newValue Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 695 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 696 | */ |
lypinator | 0:bb348c97df44 | 697 | extern cb_int32 cbBM_setConnectConnIntervalMax(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 698 | |
lypinator | 0:bb348c97df44 | 699 | /** |
lypinator | 0:bb348c97df44 | 700 | * Set connection latency |
lypinator | 0:bb348c97df44 | 701 | * |
lypinator | 0:bb348c97df44 | 702 | * @param newValue Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 703 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 704 | */ |
lypinator | 0:bb348c97df44 | 705 | extern cb_int32 cbBM_setConnectConnLatency(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 706 | |
lypinator | 0:bb348c97df44 | 707 | /** |
lypinator | 0:bb348c97df44 | 708 | * Set link loss (or supervision) timeout |
lypinator | 0:bb348c97df44 | 709 | * |
lypinator | 0:bb348c97df44 | 710 | * @param newValue Time in ms (make sure it is larger than the connection latency) |
lypinator | 0:bb348c97df44 | 711 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 712 | */ |
lypinator | 0:bb348c97df44 | 713 | extern cb_int32 cbBM_setConnectLinklossTmo(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 714 | |
lypinator | 0:bb348c97df44 | 715 | /** |
lypinator | 0:bb348c97df44 | 716 | * Set create connection (or page) timeout |
lypinator | 0:bb348c97df44 | 717 | * |
lypinator | 0:bb348c97df44 | 718 | * @param newValue Time in ms |
lypinator | 0:bb348c97df44 | 719 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 720 | */ |
lypinator | 0:bb348c97df44 | 721 | extern cb_int32 cbBM_setConnectCreateConnTmo(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 722 | |
lypinator | 0:bb348c97df44 | 723 | /** |
lypinator | 0:bb348c97df44 | 724 | * Set connect scan interval |
lypinator | 0:bb348c97df44 | 725 | * |
lypinator | 0:bb348c97df44 | 726 | * @param newValue Time in slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 727 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 728 | */ |
lypinator | 0:bb348c97df44 | 729 | extern cb_int32 cbBM_setConnectScanInterval(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 730 | |
lypinator | 0:bb348c97df44 | 731 | /** |
lypinator | 0:bb348c97df44 | 732 | * Set connect scan window |
lypinator | 0:bb348c97df44 | 733 | * |
lypinator | 0:bb348c97df44 | 734 | * @param newValue Time in slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 735 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 736 | */ |
lypinator | 0:bb348c97df44 | 737 | extern cb_int32 cbBM_setConnectScanWindow(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 738 | |
lypinator | 0:bb348c97df44 | 739 | /** |
lypinator | 0:bb348c97df44 | 740 | * Set min bond connection interval |
lypinator | 0:bb348c97df44 | 741 | * |
lypinator | 0:bb348c97df44 | 742 | * @param newValue Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 743 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 744 | */ |
lypinator | 0:bb348c97df44 | 745 | extern cb_int32 cbBM_setBondConnIntervalMin(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 746 | |
lypinator | 0:bb348c97df44 | 747 | /** |
lypinator | 0:bb348c97df44 | 748 | * Set max bond connection interval |
lypinator | 0:bb348c97df44 | 749 | * |
lypinator | 0:bb348c97df44 | 750 | * @param newValue Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 751 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 752 | */ |
lypinator | 0:bb348c97df44 | 753 | extern cb_int32 cbBM_setBondConnIntervalMax(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 754 | |
lypinator | 0:bb348c97df44 | 755 | /** |
lypinator | 0:bb348c97df44 | 756 | * Set bond connection latency |
lypinator | 0:bb348c97df44 | 757 | * |
lypinator | 0:bb348c97df44 | 758 | * @param newValue Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 759 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 760 | */ |
lypinator | 0:bb348c97df44 | 761 | extern cb_int32 cbBM_setBondConnLatency(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 762 | |
lypinator | 0:bb348c97df44 | 763 | /** |
lypinator | 0:bb348c97df44 | 764 | * Set bond link loss (or supervision) timeout |
lypinator | 0:bb348c97df44 | 765 | * |
lypinator | 0:bb348c97df44 | 766 | * @param newValue Time in ms (make sure it is larger than the connection latency) |
lypinator | 0:bb348c97df44 | 767 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 768 | */ |
lypinator | 0:bb348c97df44 | 769 | extern cb_int32 cbBM_setBondLinklossTmo(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 770 | |
lypinator | 0:bb348c97df44 | 771 | /** |
lypinator | 0:bb348c97df44 | 772 | * Set bond create connection (or page) timeout |
lypinator | 0:bb348c97df44 | 773 | * |
lypinator | 0:bb348c97df44 | 774 | * @param newValue Time in ms |
lypinator | 0:bb348c97df44 | 775 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 776 | */ |
lypinator | 0:bb348c97df44 | 777 | extern cb_int32 cbBM_setBondCreateConnTmo(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 778 | |
lypinator | 0:bb348c97df44 | 779 | /** |
lypinator | 0:bb348c97df44 | 780 | * Set bond scan interval |
lypinator | 0:bb348c97df44 | 781 | * |
lypinator | 0:bb348c97df44 | 782 | * @param newValue Time in slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 783 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 784 | */ |
lypinator | 0:bb348c97df44 | 785 | extern cb_int32 cbBM_setBondScanInterval(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 786 | |
lypinator | 0:bb348c97df44 | 787 | /** |
lypinator | 0:bb348c97df44 | 788 | * Set bond scan window |
lypinator | 0:bb348c97df44 | 789 | * |
lypinator | 0:bb348c97df44 | 790 | * @param newValue Time in slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 791 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 792 | */ |
lypinator | 0:bb348c97df44 | 793 | extern cb_int32 cbBM_setBondScanWindow(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 794 | |
lypinator | 0:bb348c97df44 | 795 | /** |
lypinator | 0:bb348c97df44 | 796 | * Set min remote name connection interval |
lypinator | 0:bb348c97df44 | 797 | * |
lypinator | 0:bb348c97df44 | 798 | * @param newValue Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 799 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 800 | */ |
lypinator | 0:bb348c97df44 | 801 | extern cb_int32 cbBM_setRemoteNameConnIntervalMin(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 802 | |
lypinator | 0:bb348c97df44 | 803 | /** |
lypinator | 0:bb348c97df44 | 804 | * Set max remote name connection interval |
lypinator | 0:bb348c97df44 | 805 | * |
lypinator | 0:bb348c97df44 | 806 | * @param newValue Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 807 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 808 | */ |
lypinator | 0:bb348c97df44 | 809 | extern cb_int32 cbBM_setRemoteNameConnIntervalMax(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 810 | |
lypinator | 0:bb348c97df44 | 811 | /** |
lypinator | 0:bb348c97df44 | 812 | * Set remote name connection latency |
lypinator | 0:bb348c97df44 | 813 | * |
lypinator | 0:bb348c97df44 | 814 | * @param newValue Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 815 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 816 | */ |
lypinator | 0:bb348c97df44 | 817 | extern cb_int32 cbBM_setRemoteNameConnLatency(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 818 | |
lypinator | 0:bb348c97df44 | 819 | /** |
lypinator | 0:bb348c97df44 | 820 | * Set remote name link loss (or supervision) timeout |
lypinator | 0:bb348c97df44 | 821 | * |
lypinator | 0:bb348c97df44 | 822 | * @param newValue Time in ms (make sure it is larger than the connection latency) |
lypinator | 0:bb348c97df44 | 823 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 824 | */ |
lypinator | 0:bb348c97df44 | 825 | extern cb_int32 cbBM_setRemoteNameLinklossTmo(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 826 | |
lypinator | 0:bb348c97df44 | 827 | /** |
lypinator | 0:bb348c97df44 | 828 | * Set remote name create connection (or page) timeout |
lypinator | 0:bb348c97df44 | 829 | * |
lypinator | 0:bb348c97df44 | 830 | * @param newValue Time in ms |
lypinator | 0:bb348c97df44 | 831 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 832 | */ |
lypinator | 0:bb348c97df44 | 833 | extern cb_int32 cbBM_setRemoteNameCreateConnTmo(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 834 | |
lypinator | 0:bb348c97df44 | 835 | /** |
lypinator | 0:bb348c97df44 | 836 | * Set remote name scan interval |
lypinator | 0:bb348c97df44 | 837 | * |
lypinator | 0:bb348c97df44 | 838 | * @param newValue Time in slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 839 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 840 | */ |
lypinator | 0:bb348c97df44 | 841 | extern cb_int32 cbBM_setRemoteNameScanInterval(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 842 | |
lypinator | 0:bb348c97df44 | 843 | /** |
lypinator | 0:bb348c97df44 | 844 | * Set remote name scan window |
lypinator | 0:bb348c97df44 | 845 | * |
lypinator | 0:bb348c97df44 | 846 | * @param newValue Time in slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 847 | * @return cbBM_OK is returned on success. |
lypinator | 0:bb348c97df44 | 848 | */ |
lypinator | 0:bb348c97df44 | 849 | extern cb_int32 cbBM_setRemoteNameScanWindow(cb_uint16 newValue); |
lypinator | 0:bb348c97df44 | 850 | |
lypinator | 0:bb348c97df44 | 851 | /** |
lypinator | 0:bb348c97df44 | 852 | * Get min advertisment interval |
lypinator | 0:bb348c97df44 | 853 | * |
lypinator | 0:bb348c97df44 | 854 | * @return Time in slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 855 | */ |
lypinator | 0:bb348c97df44 | 856 | extern cb_uint16 cbBM_getAdvertisingIntervalMin(void); |
lypinator | 0:bb348c97df44 | 857 | |
lypinator | 0:bb348c97df44 | 858 | /** |
lypinator | 0:bb348c97df44 | 859 | * Get max advertisment interval |
lypinator | 0:bb348c97df44 | 860 | * |
lypinator | 0:bb348c97df44 | 861 | * @return Time in slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 862 | */ |
lypinator | 0:bb348c97df44 | 863 | extern cb_uint16 cbBM_getAdvertisingIntervalMax(void); |
lypinator | 0:bb348c97df44 | 864 | |
lypinator | 0:bb348c97df44 | 865 | /** |
lypinator | 0:bb348c97df44 | 866 | * Get advertisment channel map |
lypinator | 0:bb348c97df44 | 867 | * |
lypinator | 0:bb348c97df44 | 868 | * @return Bit mask of channels to use; Channel 37, 38, 39 |
lypinator | 0:bb348c97df44 | 869 | * (cbBM_ADV_CHANNEL_MAP_CH_37_BIT, cbBM_ADV_CHANNEL_MAP_CH_38_BIT, cbBM_ADV_CHANNEL_MAP_CH_39_BIT) |
lypinator | 0:bb348c97df44 | 870 | */ |
lypinator | 0:bb348c97df44 | 871 | extern cb_uint16 cbBM_getAdvChannelmap(void); |
lypinator | 0:bb348c97df44 | 872 | |
lypinator | 0:bb348c97df44 | 873 | /** |
lypinator | 0:bb348c97df44 | 874 | * Get min connection interval |
lypinator | 0:bb348c97df44 | 875 | * |
lypinator | 0:bb348c97df44 | 876 | * @return Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 877 | */ |
lypinator | 0:bb348c97df44 | 878 | extern cb_uint16 cbBM_getConnectConnIntervalMin(void); |
lypinator | 0:bb348c97df44 | 879 | |
lypinator | 0:bb348c97df44 | 880 | /** |
lypinator | 0:bb348c97df44 | 881 | * Get max connection interval |
lypinator | 0:bb348c97df44 | 882 | * |
lypinator | 0:bb348c97df44 | 883 | * @return Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 884 | */ |
lypinator | 0:bb348c97df44 | 885 | extern cb_uint16 cbBM_getConnectConnIntervalMax(void); |
lypinator | 0:bb348c97df44 | 886 | |
lypinator | 0:bb348c97df44 | 887 | /** |
lypinator | 0:bb348c97df44 | 888 | * Get connection latency |
lypinator | 0:bb348c97df44 | 889 | * |
lypinator | 0:bb348c97df44 | 890 | * @return Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 891 | */ |
lypinator | 0:bb348c97df44 | 892 | extern cb_uint16 cbBM_getConnectConnLatency(void); |
lypinator | 0:bb348c97df44 | 893 | |
lypinator | 0:bb348c97df44 | 894 | /** |
lypinator | 0:bb348c97df44 | 895 | * Get link loss (or supervision) timeout |
lypinator | 0:bb348c97df44 | 896 | * |
lypinator | 0:bb348c97df44 | 897 | * @return Time in ms |
lypinator | 0:bb348c97df44 | 898 | */ |
lypinator | 0:bb348c97df44 | 899 | extern cb_uint16 cbBM_getConnectLinklossTmo(void); |
lypinator | 0:bb348c97df44 | 900 | |
lypinator | 0:bb348c97df44 | 901 | /** |
lypinator | 0:bb348c97df44 | 902 | * Get create connection (or page) timeout |
lypinator | 0:bb348c97df44 | 903 | * |
lypinator | 0:bb348c97df44 | 904 | * @return Time in ms |
lypinator | 0:bb348c97df44 | 905 | */ |
lypinator | 0:bb348c97df44 | 906 | extern cb_uint16 cbBM_getConnectCreateConnTmo(void); |
lypinator | 0:bb348c97df44 | 907 | |
lypinator | 0:bb348c97df44 | 908 | /** |
lypinator | 0:bb348c97df44 | 909 | * Get connection scan interval |
lypinator | 0:bb348c97df44 | 910 | * |
lypinator | 0:bb348c97df44 | 911 | * @return Time in slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 912 | */ |
lypinator | 0:bb348c97df44 | 913 | extern cb_uint16 cbBM_getConnectScanInterval(void); |
lypinator | 0:bb348c97df44 | 914 | |
lypinator | 0:bb348c97df44 | 915 | /** |
lypinator | 0:bb348c97df44 | 916 | * Get connection scan window |
lypinator | 0:bb348c97df44 | 917 | * |
lypinator | 0:bb348c97df44 | 918 | * @return Time in slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 919 | */ |
lypinator | 0:bb348c97df44 | 920 | extern cb_uint16 cbBM_getConnectScanWindow(void); |
lypinator | 0:bb348c97df44 | 921 | |
lypinator | 0:bb348c97df44 | 922 | /** |
lypinator | 0:bb348c97df44 | 923 | * Get min bond connection interval |
lypinator | 0:bb348c97df44 | 924 | * |
lypinator | 0:bb348c97df44 | 925 | * @return Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 926 | */ |
lypinator | 0:bb348c97df44 | 927 | extern cb_uint16 cbBM_getBondConnIntervalMin(void); |
lypinator | 0:bb348c97df44 | 928 | |
lypinator | 0:bb348c97df44 | 929 | /** |
lypinator | 0:bb348c97df44 | 930 | * Get bond connection interval |
lypinator | 0:bb348c97df44 | 931 | * |
lypinator | 0:bb348c97df44 | 932 | * @return Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 933 | */ |
lypinator | 0:bb348c97df44 | 934 | extern cb_uint16 cbBM_getBondConnIntervalMax(void); |
lypinator | 0:bb348c97df44 | 935 | |
lypinator | 0:bb348c97df44 | 936 | /** |
lypinator | 0:bb348c97df44 | 937 | * Get bond connection latency |
lypinator | 0:bb348c97df44 | 938 | * |
lypinator | 0:bb348c97df44 | 939 | * @return Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 940 | */ |
lypinator | 0:bb348c97df44 | 941 | extern cb_uint16 cbBM_getBondConnLatency(void); |
lypinator | 0:bb348c97df44 | 942 | |
lypinator | 0:bb348c97df44 | 943 | /** |
lypinator | 0:bb348c97df44 | 944 | * Get bond link loss (or supervision) timeout |
lypinator | 0:bb348c97df44 | 945 | * |
lypinator | 0:bb348c97df44 | 946 | * @return Time in ms |
lypinator | 0:bb348c97df44 | 947 | */ |
lypinator | 0:bb348c97df44 | 948 | extern cb_uint16 cbBM_getBondLinklossTmo(void); |
lypinator | 0:bb348c97df44 | 949 | |
lypinator | 0:bb348c97df44 | 950 | /** |
lypinator | 0:bb348c97df44 | 951 | * Get bond connection (or page) timeout |
lypinator | 0:bb348c97df44 | 952 | * |
lypinator | 0:bb348c97df44 | 953 | * @return Time in ms |
lypinator | 0:bb348c97df44 | 954 | */ |
lypinator | 0:bb348c97df44 | 955 | extern cb_uint16 cbBM_getBondCreateConnTmo(void); |
lypinator | 0:bb348c97df44 | 956 | |
lypinator | 0:bb348c97df44 | 957 | /** |
lypinator | 0:bb348c97df44 | 958 | * Get bond scan interval |
lypinator | 0:bb348c97df44 | 959 | * |
lypinator | 0:bb348c97df44 | 960 | * @return Time in slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 961 | */ |
lypinator | 0:bb348c97df44 | 962 | extern cb_uint16 cbBM_getBondScanInterval(void); |
lypinator | 0:bb348c97df44 | 963 | |
lypinator | 0:bb348c97df44 | 964 | /** |
lypinator | 0:bb348c97df44 | 965 | * Get bond scan window |
lypinator | 0:bb348c97df44 | 966 | * |
lypinator | 0:bb348c97df44 | 967 | * @return Time in slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 968 | */ |
lypinator | 0:bb348c97df44 | 969 | extern cb_uint16 cbBM_getBondScanWindow(void); |
lypinator | 0:bb348c97df44 | 970 | |
lypinator | 0:bb348c97df44 | 971 | /** |
lypinator | 0:bb348c97df44 | 972 | * Get min remote name connection interval |
lypinator | 0:bb348c97df44 | 973 | * |
lypinator | 0:bb348c97df44 | 974 | * @return Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 975 | */ |
lypinator | 0:bb348c97df44 | 976 | extern cb_uint16 cbBM_getRemoteNameConnIntervalMin(void); |
lypinator | 0:bb348c97df44 | 977 | |
lypinator | 0:bb348c97df44 | 978 | /** |
lypinator | 0:bb348c97df44 | 979 | * Get max remote name connection interval |
lypinator | 0:bb348c97df44 | 980 | * |
lypinator | 0:bb348c97df44 | 981 | * @return Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 982 | */ |
lypinator | 0:bb348c97df44 | 983 | extern cb_uint16 cbBM_getRemoteNameConnIntervalMax(void); |
lypinator | 0:bb348c97df44 | 984 | |
lypinator | 0:bb348c97df44 | 985 | /** |
lypinator | 0:bb348c97df44 | 986 | * Get remote name connection latency |
lypinator | 0:bb348c97df44 | 987 | * |
lypinator | 0:bb348c97df44 | 988 | * @return Time in slots (1 slot is 1.25ms) |
lypinator | 0:bb348c97df44 | 989 | */ |
lypinator | 0:bb348c97df44 | 990 | extern cb_uint16 cbBM_getRemoteNameConnLatency(void); |
lypinator | 0:bb348c97df44 | 991 | |
lypinator | 0:bb348c97df44 | 992 | /** |
lypinator | 0:bb348c97df44 | 993 | * Get remote name link loss (or supervision) timeout |
lypinator | 0:bb348c97df44 | 994 | * |
lypinator | 0:bb348c97df44 | 995 | * @return Time in ms |
lypinator | 0:bb348c97df44 | 996 | */ |
lypinator | 0:bb348c97df44 | 997 | extern cb_uint16 cbBM_getRemoteNameLinklossTmo(void); |
lypinator | 0:bb348c97df44 | 998 | |
lypinator | 0:bb348c97df44 | 999 | /** |
lypinator | 0:bb348c97df44 | 1000 | * Get remote name connection (or page) timeout |
lypinator | 0:bb348c97df44 | 1001 | * |
lypinator | 0:bb348c97df44 | 1002 | * @return Time in ms |
lypinator | 0:bb348c97df44 | 1003 | */ |
lypinator | 0:bb348c97df44 | 1004 | extern cb_uint16 cbBM_getRemoteNameCreateConnTmo(void); |
lypinator | 0:bb348c97df44 | 1005 | |
lypinator | 0:bb348c97df44 | 1006 | /** |
lypinator | 0:bb348c97df44 | 1007 | * Get remote name scan interval |
lypinator | 0:bb348c97df44 | 1008 | * |
lypinator | 0:bb348c97df44 | 1009 | * @return Time in slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 1010 | */ |
lypinator | 0:bb348c97df44 | 1011 | extern cb_uint16 cbBM_getRemoteNameScanInterval(void); |
lypinator | 0:bb348c97df44 | 1012 | |
lypinator | 0:bb348c97df44 | 1013 | /** |
lypinator | 0:bb348c97df44 | 1014 | * Get remote name scan window |
lypinator | 0:bb348c97df44 | 1015 | * |
lypinator | 0:bb348c97df44 | 1016 | * @return Time in slots (1 slot is 0.625ms) |
lypinator | 0:bb348c97df44 | 1017 | */ |
lypinator | 0:bb348c97df44 | 1018 | extern cb_uint16 cbBM_getRemoteNameScanWindow(void); |
lypinator | 0:bb348c97df44 | 1019 | |
lypinator | 0:bb348c97df44 | 1020 | #ifdef __cplusplus |
lypinator | 0:bb348c97df44 | 1021 | } |
lypinator | 0:bb348c97df44 | 1022 | #endif |
lypinator | 0:bb348c97df44 | 1023 | |
lypinator | 0:bb348c97df44 | 1024 | #endif |