NUCLEO-F401RE + BlueNRG shield client test (TI Sensortag reading)

Dependencies:   mbed-src

Committer:
ostapsky
Date:
Sat Aug 16 11:00:04 2014 +0000
Revision:
0:aa1e012ec210
CLIENT mode first revision

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ostapsky 0:aa1e012ec210 1 /******************** (C) COPYRIGHT 2012 STMicroelectronics ********************
ostapsky 0:aa1e012ec210 2 * File Name : link_layer.h
ostapsky 0:aa1e012ec210 3 * Author : AMS - HEA&RF BU
ostapsky 0:aa1e012ec210 4 * Version : V1.0.0
ostapsky 0:aa1e012ec210 5 * Date : 19-July-2012
ostapsky 0:aa1e012ec210 6 * Description : Header file for BlueNRG's link layer. It contains
ostapsky 0:aa1e012ec210 7 * definition of functions for link layer, most of which are
ostapsky 0:aa1e012ec210 8 * mapped to HCI commands.
ostapsky 0:aa1e012ec210 9 ********************************************************************************
ostapsky 0:aa1e012ec210 10 * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
ostapsky 0:aa1e012ec210 11 * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
ostapsky 0:aa1e012ec210 12 * AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
ostapsky 0:aa1e012ec210 13 * INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
ostapsky 0:aa1e012ec210 14 * CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
ostapsky 0:aa1e012ec210 15 * INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
ostapsky 0:aa1e012ec210 16 *******************************************************************************/
ostapsky 0:aa1e012ec210 17
ostapsky 0:aa1e012ec210 18 #ifndef _LINK_LAYER_H
ostapsky 0:aa1e012ec210 19 #define _LINK_LAYER_H
ostapsky 0:aa1e012ec210 20
ostapsky 0:aa1e012ec210 21 #include <ble_status.h>
ostapsky 0:aa1e012ec210 22
ostapsky 0:aa1e012ec210 23 /******************************************************************************
ostapsky 0:aa1e012ec210 24 * Types
ostapsky 0:aa1e012ec210 25 *****************************************************************************/
ostapsky 0:aa1e012ec210 26
ostapsky 0:aa1e012ec210 27 /**
ostapsky 0:aa1e012ec210 28 * advertising policy for filtering (white list related)
ostapsky 0:aa1e012ec210 29 */
ostapsky 0:aa1e012ec210 30 typedef tHalUint8 tAdvPolicy;
ostapsky 0:aa1e012ec210 31 #define NO_WHITE_LIST_USE (0X00)
ostapsky 0:aa1e012ec210 32 #define WHITE_LIST_FOR_ONLY_SCAN (0X01)
ostapsky 0:aa1e012ec210 33 #define WHITE_LIST_FOR_ONLY_CONN (0X02)
ostapsky 0:aa1e012ec210 34 #define WHITE_LIST_FOR_ALL (0X03)
ostapsky 0:aa1e012ec210 35
ostapsky 0:aa1e012ec210 36 /**
ostapsky 0:aa1e012ec210 37 * Bluetooth 48 bit address (in little-endian order).
ostapsky 0:aa1e012ec210 38 */
ostapsky 0:aa1e012ec210 39 typedef tHalUint8 tBDAddr[6];
ostapsky 0:aa1e012ec210 40
ostapsky 0:aa1e012ec210 41
ostapsky 0:aa1e012ec210 42 /**
ostapsky 0:aa1e012ec210 43 * Bluetooth address type
ostapsky 0:aa1e012ec210 44 */
ostapsky 0:aa1e012ec210 45 typedef tHalUint8 tAddrType;
ostapsky 0:aa1e012ec210 46 #define RANDOM_ADDR (1)
ostapsky 0:aa1e012ec210 47 #define PUBLIC_ADDR (0)
ostapsky 0:aa1e012ec210 48
ostapsky 0:aa1e012ec210 49 /**
ostapsky 0:aa1e012ec210 50 * Advertising type
ostapsky 0:aa1e012ec210 51 */
ostapsky 0:aa1e012ec210 52 typedef tHalUint8 tAdvType;
ostapsky 0:aa1e012ec210 53 /**
ostapsky 0:aa1e012ec210 54 * undirected scannable and connectable
ostapsky 0:aa1e012ec210 55 */
ostapsky 0:aa1e012ec210 56 #define ADV_IND (0x00)
ostapsky 0:aa1e012ec210 57
ostapsky 0:aa1e012ec210 58 /**
ostapsky 0:aa1e012ec210 59 * directed non scannable
ostapsky 0:aa1e012ec210 60 */
ostapsky 0:aa1e012ec210 61 #define ADV_DIRECT_IND (0x01)
ostapsky 0:aa1e012ec210 62
ostapsky 0:aa1e012ec210 63 /**
ostapsky 0:aa1e012ec210 64 * scannable non connectable
ostapsky 0:aa1e012ec210 65 */
ostapsky 0:aa1e012ec210 66 #define ADV_SCAN_IND (0x02)
ostapsky 0:aa1e012ec210 67
ostapsky 0:aa1e012ec210 68 /**
ostapsky 0:aa1e012ec210 69 * non-connectable and no scan response (used for passive scan)
ostapsky 0:aa1e012ec210 70 */
ostapsky 0:aa1e012ec210 71 #define ADV_NONCONN_IND (0x03)
ostapsky 0:aa1e012ec210 72
ostapsky 0:aa1e012ec210 73
ostapsky 0:aa1e012ec210 74 /* 0X04-0XFF RESERVED */
ostapsky 0:aa1e012ec210 75
ostapsky 0:aa1e012ec210 76
ostapsky 0:aa1e012ec210 77 /**
ostapsky 0:aa1e012ec210 78 * lowest allowed interval value for connectable types(20ms)..multiple of 625us
ostapsky 0:aa1e012ec210 79 */
ostapsky 0:aa1e012ec210 80 #define ADV_INTERVAL_LOWEST_CONN (0X0020)
ostapsky 0:aa1e012ec210 81
ostapsky 0:aa1e012ec210 82 /**
ostapsky 0:aa1e012ec210 83 * highest allowed interval value (10.24s)..multiple of 625us.
ostapsky 0:aa1e012ec210 84 */
ostapsky 0:aa1e012ec210 85 #define ADV_INTERVAL_HIGHEST (0X4000)
ostapsky 0:aa1e012ec210 86
ostapsky 0:aa1e012ec210 87 /**
ostapsky 0:aa1e012ec210 88 * lowest allowed interval value for non connectable types
ostapsky 0:aa1e012ec210 89 * (100ms)..multiple of 625us.
ostapsky 0:aa1e012ec210 90 */
ostapsky 0:aa1e012ec210 91 #define ADV_INTERVAL_LOWEST_NONCONN (0X00a0)
ostapsky 0:aa1e012ec210 92
ostapsky 0:aa1e012ec210 93 /**
ostapsky 0:aa1e012ec210 94 * Default value of advertising interval for both min/max values.
ostapsky 0:aa1e012ec210 95 * This will be used if host does not specify any advertising parameters
ostapsky 0:aa1e012ec210 96 * including advIntervalMax and advIntervalMin
ostapsky 0:aa1e012ec210 97 * value = 1.28 sec (in units of 625 us)
ostapsky 0:aa1e012ec210 98 */
ostapsky 0:aa1e012ec210 99 #define ADV_INTERVAL_DEFAULT (0x0800)
ostapsky 0:aa1e012ec210 100
ostapsky 0:aa1e012ec210 101 #define ADV_CH_37 0x01
ostapsky 0:aa1e012ec210 102 #define ADV_CH_38 0x02
ostapsky 0:aa1e012ec210 103 #define ADV_CH_39 0x04
ostapsky 0:aa1e012ec210 104
ostapsky 0:aa1e012ec210 105
ostapsky 0:aa1e012ec210 106
ostapsky 0:aa1e012ec210 107 #endif /* _LINK_LAYER_H */