Home | History | Annotate | Download | only in c++
      1 #include "hal_platform.h"
      2 #include "aci.h"
      3 
      4 #pragma once
      5 
      6 #define SETUP_ID 0
      7 #define SETUP_FORMAT 2 /** nRF8001 Cx */
      8 #define ACI_DYNAMIC_DATA_SIZE 263
      9 
     10 /* Service: GATT - Characteristic: Service Changed - Pipe: TX_ACK */
     11 #define PIPE_GATT_SERVICE_CHANGED_TX_ACK          1
     12 #define PIPE_GATT_SERVICE_CHANGED_TX_ACK_MAX_SIZE 4
     13 
     14 /* Service: Device Information - Characteristic: Hardware Revision String - Pipe: SET */
     15 #define PIPE_DEVICE_INFORMATION_HARDWARE_REVISION_STRING_SET          2
     16 #define PIPE_DEVICE_INFORMATION_HARDWARE_REVISION_STRING_SET_MAX_SIZE 9
     17 
     18 /* Service: Device Information - Characteristic: Manufacturer Name String - Pipe: SET */
     19 #define PIPE_DEVICE_INFORMATION_MANUFACTURER_NAME_STRING_SET          3
     20 #define PIPE_DEVICE_INFORMATION_MANUFACTURER_NAME_STRING_SET_MAX_SIZE 20
     21 
     22 /* Service: Device Information - Characteristic: Model Number String - Pipe: SET */
     23 #define PIPE_DEVICE_INFORMATION_MODEL_NUMBER_STRING_SET          4
     24 #define PIPE_DEVICE_INFORMATION_MODEL_NUMBER_STRING_SET_MAX_SIZE 8
     25 
     26 /* Service: Device Information - Characteristic: Firmware Revision String - Pipe: SET */
     27 #define PIPE_DEVICE_INFORMATION_FIRMWARE_REVISION_STRING_SET          5
     28 #define PIPE_DEVICE_INFORMATION_FIRMWARE_REVISION_STRING_SET_MAX_SIZE 4
     29 
     30 /* Service: Device Information - Characteristic: PNP_ID - Pipe: SET */
     31 #define PIPE_DEVICE_INFORMATION_PNP_ID_SET          6
     32 #define PIPE_DEVICE_INFORMATION_PNP_ID_SET_MAX_SIZE 7
     33 
     34 /* Service: UART over BTLE - Characteristic: UART RX - Pipe: RX */
     35 #define PIPE_UART_OVER_BTLE_UART_RX_RX          7
     36 #define PIPE_UART_OVER_BTLE_UART_RX_RX_MAX_SIZE 20
     37 
     38 /* Service: UART over BTLE - Characteristic: UART TX - Pipe: TX */
     39 #define PIPE_UART_OVER_BTLE_UART_TX_TX          8
     40 #define PIPE_UART_OVER_BTLE_UART_TX_TX_MAX_SIZE 20
     41 
     42 /* Service: UART over BTLE - Characteristic: UART Control Point - Pipe: TX */
     43 #define PIPE_UART_OVER_BTLE_UART_CONTROL_POINT_TX          9
     44 #define PIPE_UART_OVER_BTLE_UART_CONTROL_POINT_TX_MAX_SIZE 9
     45 
     46 /* Service: UART over BTLE - Characteristic: UART Control Point - Pipe: RX */
     47 #define PIPE_UART_OVER_BTLE_UART_CONTROL_POINT_RX          10
     48 #define PIPE_UART_OVER_BTLE_UART_CONTROL_POINT_RX_MAX_SIZE 9
     49 
     50 /* Service: UART over BTLE - Characteristic: UART Link Timing Current - Pipe: SET */
     51 #define PIPE_UART_OVER_BTLE_UART_LINK_TIMING_CURRENT_SET          11
     52 #define PIPE_UART_OVER_BTLE_UART_LINK_TIMING_CURRENT_SET_MAX_SIZE 6
     53 
     54 
     55 #define NUMBER_OF_PIPES 11
     56 
     57 #define SERVICES_PIPE_TYPE_MAPPING_CONTENT {\
     58   {ACI_STORE_LOCAL, ACI_TX_ACK},   \
     59   {ACI_STORE_LOCAL, ACI_SET},   \
     60   {ACI_STORE_LOCAL, ACI_SET},   \
     61   {ACI_STORE_LOCAL, ACI_SET},   \
     62   {ACI_STORE_LOCAL, ACI_SET},   \
     63   {ACI_STORE_LOCAL, ACI_SET},   \
     64   {ACI_STORE_LOCAL, ACI_RX},   \
     65   {ACI_STORE_LOCAL, ACI_TX},   \
     66   {ACI_STORE_LOCAL, ACI_TX},   \
     67   {ACI_STORE_LOCAL, ACI_RX},   \
     68   {ACI_STORE_LOCAL, ACI_SET},   \
     69 }
     70 
     71 #define GAP_PPCP_MAX_CONN_INT 0x12 /**< Maximum connection interval as a multiple of 1.25 msec , 0xFFFF means no specific value requested */
     72 #define GAP_PPCP_MIN_CONN_INT  0xa /**< Minimum connection interval as a multiple of 1.25 msec , 0xFFFF means no specific value requested */
     73 #define GAP_PPCP_SLAVE_LATENCY 0
     74 #define GAP_PPCP_CONN_TIMEOUT 0xa /** Connection Supervision timeout multiplier as a multiple of 10msec, 0xFFFF means no specific value requested */
     75 
     76 #define NB_SETUP_MESSAGES 30
     77 #define SETUP_MESSAGES_CONTENT {\
     78     {0x00,\
     79         {\
     80             0x07,0x06,0x00,0x00,0x02,0x02,0x41,0xfe,\
     81         },\
     82     },\
     83     {0x00,\
     84         {\
     85             0x1f,0x06,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0a,0x00,0x0b,0x01,0x01,0x00,0x00,0x06,0x00,0x00,\
     86             0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\
     87         },\
     88     },\
     89     {0x00,\
     90         {\
     91             0x1e,0x06,0x10,0x1c,0x01,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\
     92             0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x14,0x03,0x90,0x01,\
     93         },\
     94     },\
     95     {0x00,\
     96         {\
     97             0x1f,0x06,0x20,0x00,0x04,0x04,0x02,0x02,0x00,0x01,0x28,0x00,0x01,0x00,0x18,0x04,0x04,0x05,0x05,0x00,\
     98             0x02,0x28,0x03,0x01,0x02,0x03,0x00,0x00,0x2a,0x04,0x04,0x14,\
     99         },\
    100     },\
    101     {0x00,\
    102         {\
    103             0x1f,0x06,0x20,0x1c,0x05,0x00,0x03,0x2a,0x00,0x01,0x48,0x65,0x6c,0x6c,0x6f,0x63,0x73,0x65,0x6d,0x69,\
    104             0x2e,0x63,0x6f,0x6d,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x04,\
    105         },\
    106     },\
    107     {0x00,\
    108         {\
    109             0x1f,0x06,0x20,0x38,0x05,0x05,0x00,0x04,0x28,0x03,0x01,0x02,0x05,0x00,0x01,0x2a,0x06,0x04,0x03,0x02,\
    110             0x00,0x05,0x2a,0x01,0x01,0x80,0x00,0x04,0x04,0x05,0x05,0x00,\
    111         },\
    112     },\
    113     {0x00,\
    114         {\
    115             0x1f,0x06,0x20,0x54,0x06,0x28,0x03,0x01,0x02,0x07,0x00,0x04,0x2a,0x06,0x04,0x09,0x08,0x00,0x07,0x2a,\
    116             0x04,0x01,0x0a,0x00,0x12,0x00,0x00,0x00,0x0a,0x00,0x04,0x04,\
    117         },\
    118     },\
    119     {0x00,\
    120         {\
    121             0x1f,0x06,0x20,0x70,0x02,0x02,0x00,0x08,0x28,0x00,0x01,0x01,0x18,0x04,0x04,0x05,0x05,0x00,0x09,0x28,\
    122             0x03,0x01,0x22,0x0a,0x00,0x05,0x2a,0x26,0x04,0x05,0x04,0x00,\
    123         },\
    124     },\
    125     {0x00,\
    126         {\
    127             0x1f,0x06,0x20,0x8c,0x0a,0x2a,0x05,0x01,0x00,0x00,0x00,0x00,0x46,0x14,0x03,0x02,0x00,0x0b,0x29,0x02,\
    128             0x01,0x00,0x00,0x04,0x04,0x02,0x02,0x00,0x0c,0x28,0x00,0x01,\
    129         },\
    130     },\
    131     {0x00,\
    132         {\
    133             0x1f,0x06,0x20,0xa8,0x0a,0x18,0x04,0x04,0x05,0x05,0x00,0x0d,0x28,0x03,0x01,0x02,0x0e,0x00,0x27,0x2a,\
    134             0x04,0x04,0x09,0x01,0x00,0x0e,0x2a,0x27,0x01,0x0a,0x00,0x00,\
    135         },\
    136     },\
    137     {0x00,\
    138         {\
    139             0x1f,0x06,0x20,0xc4,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x04,0x05,0x05,0x00,0x0f,0x28,0x03,0x01,0x02,\
    140             0x10,0x00,0x29,0x2a,0x04,0x04,0x14,0x02,0x00,0x10,0x2a,0x29,\
    141         },\
    142     },\
    143     {0x00,\
    144         {\
    145             0x1f,0x06,0x20,0xe0,0x01,0x30,0x31,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\
    146             0x00,0x00,0x00,0x00,0x00,0x04,0x04,0x05,0x05,0x00,0x11,0x28,\
    147         },\
    148     },\
    149     {0x00,\
    150         {\
    151             0x1f,0x06,0x20,0xfc,0x03,0x01,0x02,0x12,0x00,0x24,0x2a,0x04,0x04,0x08,0x02,0x00,0x12,0x2a,0x24,0x01,\
    152             0x31,0x32,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x04,0x05,0x05,\
    153         },\
    154     },\
    155     {0x00,\
    156         {\
    157             0x1f,0x06,0x21,0x18,0x00,0x13,0x28,0x03,0x01,0x02,0x14,0x00,0x26,0x2a,0x04,0x04,0x04,0x02,0x00,0x14,\
    158             0x2a,0x26,0x01,0x33,0x34,0x00,0x00,0x04,0x04,0x05,0x05,0x00,\
    159         },\
    160     },\
    161     {0x00,\
    162         {\
    163             0x1f,0x06,0x21,0x34,0x15,0x28,0x03,0x01,0x02,0x16,0x00,0x50,0x2a,0x06,0x04,0x08,0x07,0x00,0x16,0x2a,\
    164             0x50,0x01,0x02,0x00,0x00,0xaa,0xaa,0xcc,0xcc,0x04,0x04,0x10,\
    165         },\
    166     },\
    167     {0x00,\
    168         {\
    169             0x1f,0x06,0x21,0x50,0x10,0x00,0x17,0x28,0x00,0x01,0x9e,0xca,0xdc,0x24,0x0e,0xe5,0xa9,0xe0,0x93,0xf3,\
    170             0xa3,0xb5,0x01,0x00,0x40,0x6e,0x04,0x04,0x13,0x13,0x00,0x18,\
    171         },\
    172     },\
    173     {0x00,\
    174         {\
    175             0x1f,0x06,0x21,0x6c,0x28,0x03,0x01,0x04,0x19,0x00,0x9e,0xca,0xdc,0x24,0x0e,0xe5,0xa9,0xe0,0x93,0xf3,\
    176             0xa3,0xb5,0x02,0x00,0x40,0x6e,0x44,0x10,0x14,0x00,0x00,0x19,\
    177         },\
    178     },\
    179     {0x00,\
    180         {\
    181             0x1f,0x06,0x21,0x88,0x00,0x02,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\
    182             0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x04,0x13,0x13,0x00,\
    183         },\
    184     },\
    185     {0x00,\
    186         {\
    187             0x1f,0x06,0x21,0xa4,0x1a,0x28,0x03,0x01,0x10,0x1b,0x00,0x9e,0xca,0xdc,0x24,0x0e,0xe5,0xa9,0xe0,0x93,\
    188             0xf3,0xa3,0xb5,0x03,0x00,0x40,0x6e,0x14,0x00,0x14,0x00,0x00,\
    189         },\
    190     },\
    191     {0x00,\
    192         {\
    193             0x1f,0x06,0x21,0xc0,0x1b,0x00,0x03,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\
    194             0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x46,0x14,0x03,0x02,\
    195         },\
    196     },\
    197     {0x00,\
    198         {\
    199             0x1f,0x06,0x21,0xdc,0x00,0x1c,0x29,0x02,0x01,0x00,0x00,0x04,0x04,0x13,0x13,0x00,0x1d,0x28,0x03,0x01,\
    200             0x14,0x1e,0x00,0x9e,0xca,0xdc,0x24,0x0e,0xe5,0xa9,0xe0,0x93,\
    201         },\
    202     },\
    203     {0x00,\
    204         {\
    205             0x1f,0x06,0x21,0xf8,0xf3,0xa3,0xb5,0x04,0x00,0x40,0x6e,0x54,0x10,0x09,0x00,0x00,0x1e,0x00,0x04,0x02,\
    206             0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x46,0x14,0x03,\
    207         },\
    208     },\
    209     {0x00,\
    210         {\
    211             0x1f,0x06,0x22,0x14,0x02,0x00,0x1f,0x29,0x02,0x01,0x00,0x00,0x04,0x04,0x13,0x13,0x00,0x20,0x28,0x03,\
    212             0x01,0x02,0x21,0x00,0x9e,0xca,0xdc,0x24,0x0e,0xe5,0xa9,0xe0,\
    213         },\
    214     },\
    215     {0x00,\
    216         {\
    217             0x1b,0x06,0x22,0x30,0x93,0xf3,0xa3,0xb5,0x05,0x00,0x40,0x6e,0x06,0x04,0x07,0x06,0x00,0x21,0x00,0x05,\
    218             0x02,0xff,0xff,0xff,0xff,0xff,0xff,0x00,\
    219         },\
    220     },\
    221     {0x00,\
    222         {\
    223             0x1f,0x06,0x40,0x00,0x2a,0x05,0x01,0x00,0x04,0x04,0x00,0x0a,0x00,0x0b,0x2a,0x27,0x01,0x00,0x80,0x04,\
    224             0x00,0x0e,0x00,0x00,0x2a,0x29,0x01,0x00,0x80,0x04,0x00,0x10,\
    225         },\
    226     },\
    227     {0x00,\
    228         {\
    229             0x1f,0x06,0x40,0x1c,0x00,0x00,0x2a,0x24,0x01,0x00,0x80,0x04,0x00,0x12,0x00,0x00,0x2a,0x26,0x01,0x00,\
    230             0x80,0x04,0x00,0x14,0x00,0x00,0x2a,0x50,0x01,0x00,0x80,0x04,\
    231         },\
    232     },\
    233     {0x00,\
    234         {\
    235             0x1f,0x06,0x40,0x38,0x00,0x16,0x00,0x00,0x00,0x02,0x02,0x00,0x08,0x04,0x00,0x19,0x00,0x00,0x00,0x03,\
    236             0x02,0x00,0x02,0x04,0x00,0x1b,0x00,0x1c,0x00,0x04,0x02,0x00,\
    237         },\
    238     },\
    239     {0x00,\
    240         {\
    241             0x13,0x06,0x40,0x54,0x0a,0x04,0x00,0x1e,0x00,0x1f,0x00,0x05,0x02,0x00,0x80,0x04,0x00,0x21,0x00,0x00,\
    242         },\
    243     },\
    244     {0x00,\
    245         {\
    246             0x13,0x06,0x50,0x00,0x9e,0xca,0xdc,0x24,0x0e,0xe5,0xa9,0xe0,0x93,0xf3,0xa3,0xb5,0x00,0x00,0x40,0x6e,\
    247         },\
    248     },\
    249     {0x00,\
    250         {\
    251             0x06,0x06,0xf0,0x00,0x02,0xb2,0xd1,\
    252         },\
    253     },\
    254 }
    255