Example #1
0
/**
 *@brief  Board Initializition
 *@param  None
 *@retval ret
 */
tBleStatus ble_init_bluenrg(void)
{
#ifdef BLUENRG_MS
    uint8_t SERVER_BDADDR[] = {0x04, 0x34, 0x00, 0xE1, 0x80, 0x02};
#else
    uint8_t SERVER_BDADDR[] = {0x12, 0x34, 0x00, 0xE1, 0x80, 0x02};
#endif
    uint8_t bdaddr[BDADDR_SIZE];

    tBleStatus ret;
    /*gatt_Init*/
    ret = aci_gatt_init();

    if(ret) {
        return BLE_GATT_INIT_FAILED;
    }


#ifdef BLUENRG_MS
    /*BUG: Name Length*/
    ret = aci_gap_init(GAP_PERIPHERAL_ROLE, 0, AdvNameLen, &service_handle, &dev_name_char_handle, &appearance_char_handle);
#else
    ret = aci_gap_init(GAP_PERIPHERAL_ROLE, &service_handle, &dev_name_char_handle, &appearance_char_handle);
#endif

    if(ret != BLE_STATUS_SUCCESS) {
        return BLE_GAP_INIT_FAILED;
    }

    ret = aci_gap_set_auth_requirement(MITM_PROTECTION_REQUIRED,
                                       OOB_AUTH_DATA_ABSENT,
                                       NULL,
                                       7,
                                       16,
                                       USE_FIXED_PIN_FOR_PAIRING,
                                       123456,
                                       BONDING);
    if (ret != BLE_STATUS_SUCCESS) {
        return BLE_STACK_INIT_FAILED;
    }

    /* add JUMA SERVICE*/
    ret = Add_Service();
    if(ret != BLE_STATUS_SUCCESS) {
        return BLE_ADD_SERVICE_FAILED;
    }

}
Example #2
0
/**
	*@brief  Board Initializition
	*@param  None
	*@retval ret
	*/
uint8_t ble_init_bluenrg(void)
{
    uint8_t ret;
    /*gatt_Init*/
    ret = aci_gatt_init();

    if(ret) {
        return BLE_GATT_INIT_FAILED;
    }

    if(BLE_Role == SERVER) {
#ifdef BLUENRG_MS
        /*BUG: Name Length*/
        ret = aci_gap_init(GAP_PERIPHERAL_ROLE, 0, adv_name_len, &service_handle, &dev_name_char_handle, &appearance_char_handle);
#else
        ret = aci_gap_init(GAP_PERIPHERAL_ROLE, &service_handle, &dev_name_char_handle, &appearance_char_handle);
#endif
    } else if(BLE_Role == CLIENT_SERVER) {
#ifdef BLUENRG_MS
        ret = aci_gap_init(GAP_CENTRAL_ROLE | GAP_PERIPHERAL_ROLE, 0, adv_name_len, &service_handle, &dev_name_char_handle, &appearance_char_handle);
#endif
    } else {
#ifdef BLUENRG_MS
        /*BUG: Name Length*/
        ret = aci_gap_init(GAP_CENTRAL_ROLE, 0, adv_name_len, &service_handle, &dev_name_char_handle, &appearance_char_handle);
#else
        ret = aci_gap_init(GAP_CENTRAL_ROLE, &service_handle, &dev_name_char_handle, &appearance_char_handle);
#endif
    }
    if(ret != BLE_STATUS_SUCCESS) {
        printf("GAP_Init failed.\n");
    }

    if(ret != BLE_STATUS_SUCCESS) {
        return BLE_GAP_INIT_FAILED;
    }

    ret = aci_gap_set_auth_requirement(MITM_PROTECTION_REQUIRED,
                                       OOB_AUTH_DATA_ABSENT,
                                       NULL,
                                       7,
                                       16,
                                       USE_FIXED_PIN_FOR_PAIRING,
                                       123456,
                                       BONDING);
    if (ret == BLE_STATUS_SUCCESS) {
        printf("BLE Stack Initialized.\n");
    }

    if (ret != BLE_STATUS_SUCCESS) {
        return BLE_STACK_INIT_FAILED;
    }
    if(BLE_Role == SERVER) {
        printf("SERVER: BLE Stack Initialized\n");
        /* add JUMA.IO SERVICE*/
        ret = Add_Service();
        if(ret == BLE_STATUS_SUCCESS)
            printf("Service added successfully.\n");
        if(ret != BLE_STATUS_SUCCESS) {
            return BLE_ADD_SERVICE_FAILED;
        }
    } else if(BLE_Role == CLIENT_SERVER) {
        printf("CLIENT_SERVER: BLE Stack Initialized\n");
        /* add JUMA.IO SERVICE*/
        ret = Add_Service();
        if(ret == BLE_STATUS_SUCCESS)
            printf("Service added successfully.\n");
        if(ret != BLE_STATUS_SUCCESS) {
            return BLE_ADD_SERVICE_FAILED;
        }

    } else {
        printf("CLIENT: BLE Stack Initialized\n");
    }

    return 0;
}