52 #define UBLE_PARAM_COMMON_START 0 65 #define UBLE_PARAM_RFPRIORITY (UBLE_PARAM_COMMON_START+0) 74 #define UBLE_PARAM_TXPOWER (UBLE_PARAM_COMMON_START+1) 77 #define UBLE_PARAM_COMMON_END UBLE_PARAM_TXPOWER 78 #if defined(FEATURE_ADVERTISER) 80 #define UBLE_PARAM_ADV_CMN_START (UBLE_PARAM_COMMON_END+1) 91 #define UBLE_PARAM_ADVINTERVAL (UBLE_PARAM_ADV_CMN_START+0) 99 #define UBLE_PARAM_ADVCHANMAP (UBLE_PARAM_ADV_CMN_START+1) 107 #define UBLE_PARAM_ADVTYPE (UBLE_PARAM_ADV_CMN_START+2) 119 #define UBLE_PARAM_TIMETOADV (UBLE_PARAM_ADV_CMN_START+3) 127 #define UBLE_PARAM_ADVDATA (UBLE_PARAM_ADV_CMN_START+4) 130 #define UBLE_PARAM_ADV_CMN_END UBLE_PARAM_ADVDATA 131 #if defined(FEATURE_SCAN_RESPONSE) 133 #define UBLE_PARAM_ADV_SR_START (UBLE_PARAM_ADV_CMN_END+1) 144 #define UBLE_PARAM_SCANRSPDATA (UBLE_PARAM_ADV_SR_START+0) 154 #define UBLE_PARAM_ADVFLTPOLICY (UBLE_PARAM_ADV_SR_START+1) 155 #define UBLE_PARAM_ADV_SR_END UBLE_PARAM_ADVFLTPOLICY 159 #define UBLE_PARAM_ADV_SR_END UBLE_PARAM_ADV_CMN_END 164 #define UBLE_PARAM_ADV_SR_END UBLE_PARAM_COMMON_END 168 #if defined(FEATURE_SCANNER) 169 #define UBLE_PARAM_SCAN_START (UBLE_PARAM_ADV_SR_END+1) 179 #define UBLE_PARAM_SCANINTERVAL (UBLE_PARAM_SCAN_START+0) 187 #define UBLE_PARAM_SCANWINDOW (UBLE_PARAM_SCAN_START+1) 195 #define UBLE_PARAM_SCANCHANMAP (UBLE_PARAM_SCAN_START+2) 203 #define UBLE_PARAM_SCANTYPE (UBLE_PARAM_SCAN_START+3) 211 #define UBLE_PARAM_FLTDUPLICATE (UBLE_PARAM_SCAN_START+4) 219 #define UBLE_PARAM_SCANFLTPOLICY (UBLE_PARAM_SCAN_START+5) 220 #define UBLE_PARAM_SCAN_END UBLE_PARAM_SCANFLTPOLICY 224 #define UBLE_PARAM_SCAN_END UBLE_PARAM_ADV_SR_END 228 #if defined(FEATURE_MONITOR) 229 #define UBLE_PARAM_MONITOR_START (UBLE_PARAM_ADV_SR_END+1) 240 #define UBLE_PARAM_SESSIONID (UBLE_PARAM_MONITOR_START+0) 248 #define UBLE_PARAM_MONITOR_CHAN (UBLE_PARAM_MONITOR_START+1) 256 #define UBLE_PARAM_MONITOR_DURATION (UBLE_PARAM_MONITOR_START+2) 264 #define UBLE_PARAM_MONITOR_START_TIME (UBLE_PARAM_MONITOR_START+3) 272 #define UBLE_PARAM_MONITOR_ACCESS_ADDR (UBLE_PARAM_MONITOR_START+4) 273 #define UBLE_PARAM_MONITOR_END UBLE_PARAM_MONITOR_ACCESS_ADDR 277 #define UBLE_PARAM_MONITOR_END UBLE_PARAM_ADV_SR_END 281 #define UBLE_NUM_PARAM (UBLE_PARAM_MONITOR_END+1) 290 #define UBLE_RF_PRI_NORMAL ((uint8) RCL_Schedule_Now) 291 #define UBLE_RF_PRI_HIGH ((uint8) RCL_Schedule_Now) 292 #define UBLE_RF_PRI_HIGHEST ((uint8) RCL_Schedule_Now) 295 #define UBLE_RF_PRI_NORMAL ((uint8) RF_PriorityNormal) 296 #define UBLE_RF_PRI_HIGH ((uint8) RF_PriorityHigh) 297 #define UBLE_RF_PRI_HIGHEST ((uint8) RF_PriorityHighest) 304 #define RF_TIME_RELAXED 0 305 #define RF_TIME_CRITICAL 1 309 #define UBLE_TX_POWER_INVALID 0xFFFF 314 #define UBLE_ADDRTYPE_PUBLIC 0 315 #define UBLE_ADDRTYPE_STATIC 1 316 #define UBLE_ADDRTYPE_NONRESOLVABLE 2 317 #define UBLE_ADDRTYPE_RESOLVABLE 3 318 #define UBLE_ADDRTYPE_BD 4 324 #define UBLE_ADVTYPE_ADV_NC 5 325 #define UBLE_ADVTYPE_ADV_SCAN 6 332 #define UBLE_ADV_CHAN_37 0x01 333 #define UBLE_ADV_CHAN_38 0x02 334 #define UBLE_ADV_CHAN_39 0x04 335 #define UBLE_ADV_CHAN_ALL (UBLE_ADV_CHAN_37 | UBLE_ADV_CHAN_38 | UBLE_ADV_CHAN_39) 339 #define UBLE_MIN_ADV_INTERVAL 160 340 #define UBLE_MAX_ADV_INTERVAL 16384 341 #define UBLE_MIN_CHANNEL_MAP UBLE_ADV_CHAN_37 342 #define UBLE_MAX_CHANNEL_MAP UBLE_ADV_CHAN_ALL 343 #define UBLE_MIN_TX_POWER TX_POWER_MINUS_21_DBM 344 #define UBLE_MAX_TX_POWER TX_POWER_5_DBM 345 #define UBLE_MIN_SCAN_INTERVAL 4 346 #define UBLE_MAX_SCAN_INTERVAL 16384 347 #define UBLE_MIN_SCAN_WINDOW 4 348 #define UBLE_MAX_SCAN_WINDOW 16384 349 #define UBLE_MIN_MONITOR_HANDLE 0 350 #define UBLE_MAX_MONITOR_HANDLE 8 351 #define UBLE_MIN_MONITOR_CHAN 0 352 #define UBLE_MAX_MONITOR_CHAN 39 353 #define UBLE_MIN_MONITOR_DURATION 0 354 #define UBLE_MAX_MONITOR_DURATION 64000 357 #define UBLE_PARAM_DFLT_RFPRIORITY UBLE_RF_PRI_NORMAL 358 #define UBLE_PARAM_DFLT_RFTIMECRIT RF_TIME_RELAXED 360 #define UBLE_PARAM_DFLT_TXPOWER 0 362 #define UBLE_PARAM_DFLT_TXPOWER TX_POWER_0_DBM 364 #define UBLE_PARAM_DFLT_ADVINTERVAL 1600 365 #define UBLE_PARAM_DFLT_ADVCHANMAP UBLE_ADV_CHAN_ALL 366 #define UBLE_PARAM_DFLT_ADVTYPE UBLE_ADVTYPE_ADV_NC 367 #define UBLE_PARAM_DFLT_TIMETOADV 0 368 #define UBLE_PARAM_DFLT_ADVDATA {0} 369 #define UBLE_PARAM_DFLT_SCANRSPDATA {0} 370 #define UBLE_PARAM_DFLT_ADVFLTPOLICY 0 371 #define UBLE_PARAM_DFLT_SCANINTERVAL 16 372 #define UBLE_PARAM_DFLT_SCANWINDOW 16 373 #define UBLE_PARAM_DFLT_SCANCHAN UBLE_ADV_CHAN_ALL 374 #define UBLE_PARAM_DFLT_SCANTYPE 0 375 #define UBLE_PARAM_DFLT_FLTDUPLICATE 0 376 #define UBLE_PARAM_DFLT_SCANFLTPOLICY 0 377 #define UBLE_PARAM_DFLT_MONITOR_HANDLE 0 378 #define UBLE_PARAM_DFLT_MONITOR_CHAN 37 379 #define UBLE_PARAM_DFLT_MONITOR_DURATION 320 380 #define UBLE_PARAM_DFLT_MONITOR_START_TIME 6400 381 #define UBLE_PARAM_DFLT_MONITOR_ACCESS_ADDR 0x8E89BED6 382 #define UBLE_PARAM_DFLT_MONITOR_CRCINIT 0x555555 388 #define UBLE_EVTDST_LL 0 389 #define UBLE_EVTDST_GAP 1 390 #define UBLE_NUM_EVTDST 2 398 #define MS_TO_RAT 4000 400 #define BLE_TO_RAT 2500 402 #define SYSTICK_TO_RAT (Clock_tickPeriod * US_TO_RAT) 404 #define MS_TO_SYSTICK (1000 / Clock_tickPeriod) 406 #define BLE_TO_SYSTICK (625 / Clock_tickPeriod) 408 #define BYTE_TO_RAT (8 * US_TO_RAT) 411 #define UBLE_MAX_ADVDATA_LEN B_MAX_ADV_LEN 413 #define UBLE_MAX_OVERLAP_TIME_LIMIT 0x7270E000 // 8 minutes in 625us ticks. chosen to be half of 17 minutes RF overlap. 414 #define UBLE_MAX_32BIT_TIME 0xFFFFFFFF 416 #define BLE_ROLE_PERIPHERAL 4 417 #define BLE_ROLE_CENTRAL 8 485 #if defined(FEATURE_ADVERTISER) 491 #if defined(FEATURE_SCAN_RESPONSE) 496 #if defined(FEATURE_SCANNER) 504 #if defined(FEATURE_MONITOR) 507 uint16 monitorDuration;
673 #define BLE_LOG_MODULE_CTRL 0x01 674 #define BLE_LOG_MODULE_HOST 0x02 675 #define BLE_LOG_MODULE_APP 0x04 676 #define BLE_LOG_MODULE_OSAL_TASK 0x08 677 #define BLE_LOG_MODULE_RF_CMD 0x10 679 void bleLog_int_int(
void *handle, uint32_t type, uint8_t *format, uint32_t param1, uint32_t param2);
680 void bleLog_int_str(
void *handle, uint32_t type, uint8_t *format, uint32_t param1,
char *param2);
681 void bleLog_int_time(
void *handle, uint32_t type, uint8_t *start_str, uint32_t param1);
683 #define BLE_LOG_INT_INT(handle, type, format, param1, param2) bleLog_int_int(handle, type, format, param1, param2) 684 #define BLE_LOG_INT_STR(handle, type, format, param1, param2) bleLog_int_str(handle, type, format, param1, param2) 685 #define BLE_LOG_INT_TIME(handle, type, start_str, param1) bleLog_int_time(handle, type, start_str, param1) 687 #define BLE_LOG_INT_INT(handle, type, format, param1, param2) 688 #define BLE_LOG_INT_STR(handle, type, format, param1, param2) 689 #define BLE_LOG_INT_TIME(handle, type, start_str, param1) void uble_processMsg(void)
Let the Micro Stack process the queued messages.
bStatus_t uble_registerAntSwitchCB(ubleAntSwitchCB_t pfnAntSwitchCB)
Register callback for antenna switch.
void uble_resetAddr(void)
Make BD Addr revert to Random Static Address if exists or Public Address otherwise.
bStatus_t uble_stackInit(ubleAddrType_t addrType, uint8 *pStaticAddr, ublePostEvtProxyCB_t pfnPostEvtProxyCB, uint8 timeCritical)
Initialize Micro BLE Stack.
bStatus_t uble_getParameter(uint8 param, void *pValue)
Get a Micro BLE Stack parameter.
void(* ubleProcessMsg_t)(ubleEvtMsg_t *pEvtMsg)
Function to process event messages destined to the calle module.
Definition: uble.h:476
void(* ubleAntSwitchCB_t)(void)
Type of the callback to switch antenna in the application.
Definition: uble.h:471
#define UBLE_MAX_ADVDATA_LEN
Max Advertising Data Length.
Definition: uble.h:411
uint8 ubleEvt_t
Micro BLE Stack Event.
Definition: uble.h:436
bStatus_t uble_setParameter(uint8 param, uint8 len, void *pValue)
Set a Micro BLE Stack parameter.
uint8 ubleMsg_t
Type of Micro BLE Stack message.
Definition: uble.h:444
Status_t bStatus_t
BLE Generic Status return.
Definition: bcomdef.h:246
uint8 ubleEvtDst_t
Recipient of Micro BLE Stack Event.
Definition: uble.h:433
void(* ublePostEvtProxyCB_t)(void)
Type of the callback to have uble_processMsg called in the application task context.
Definition: uble.h:464
uint8 uble_timeCompare(uint32 time1, uint32 time2)
This function determines if the first time parameter is greater than the second time parameter...
uint8 ubleAddrType_t
Address Type.
Definition: uble.h:430
bStatus_t uble_getAddr(ubleAddrType_t addrType, uint8 *pAddr)
Retrieve the address corresponding to the given address type.
bStatus_t uble_checkAddr(ubleAddrType_t addrType, uint8 *pAddr)
Check if the given address is valid.
uint32 uble_timeDelta(uint32 time1, uint32 time2)
This function determines the difference between two time parameters, taking timer counter wrap into a...