Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of BLE_BlueNRG by
bluenrg_hci.h
00001 /******************** (C) COPYRIGHT 2013 STMicroelectronics ******************** 00002 * File Name : bluenrg_hci.h 00003 * Author : AMS - HEA&RF BU 00004 * Version : V1.0.0 00005 * Date : 4-Oct-2013 00006 * Description : Header file with HCI commands for BlueNRG FW6.0 and above. 00007 ******************************************************************************** 00008 * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS 00009 * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. 00010 * AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, 00011 * INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE 00012 * CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING 00013 * INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. 00014 *******************************************************************************/ 00015 00016 #ifndef __BLUENRG_HCI_H__ 00017 #define __BLUENRG_HCI_H__ 00018 00019 #include "gatt_service.h" 00020 00021 tBleStatus aci_gatt_init(void); 00022 tBleStatus aci_gap_init(uint8_t role, 00023 uint16_t* service_handle, 00024 uint16_t* dev_name_char_handle, 00025 uint16_t* appearance_char_handle); 00026 tBleStatus aci_gap_update_adv_data(uint8_t AdvLen, const uint8_t *AdvData); 00027 tBleStatus aci_gap_set_non_discoverable(void); 00028 tBleStatus aci_gap_set_discoverable(uint8_t AdvType, uint16_t AdvIntervMin, uint16_t AdvIntervMax, 00029 uint8_t OwnAddrType, uint8_t AdvFilterPolicy, uint8_t LocalNameLen, 00030 const char *LocalName, uint8_t ServiceUUIDLen, const uint8_t* ServiceUUIDList, 00031 uint16_t SlaveConnIntervMin, uint16_t SlaveConnIntervMax); 00032 tBleStatus aci_gap_set_auth_requirement(uint8_t mitm_mode, 00033 uint8_t oob_enable, 00034 uint8_t oob_data[16], 00035 uint8_t min_encryption_key_size, 00036 uint8_t max_encryption_key_size, 00037 uint8_t use_fixed_pin, 00038 uint32_t fixed_pin, 00039 uint8_t bonding_mode); 00040 tBleStatus aci_gap_start_limited_discovery_proc(uint16_t scanInterval, uint16_t scanWindow, 00041 uint8_t own_address_type, uint8_t filterDuplicates); 00042 tBleStatus aci_gap_start_general_discovery_proc(uint16_t scanInterval, uint16_t scanWindow, 00043 uint8_t own_address_type, uint8_t filterDuplicates); 00044 tBleStatus aci_gap_start_auto_conn_establishment(uint16_t scanInterval, uint16_t scanWindow, 00045 uint8_t own_bdaddr_type, uint16_t conn_min_interval, 00046 uint16_t conn_max_interval, uint16_t conn_latency, 00047 uint16_t supervision_timeout, uint16_t min_conn_length, 00048 uint16_t max_conn_length, uint8_t num_whitelist_entries, 00049 uint8_t *addr_array); 00050 tBleStatus aci_gap_create_connection(uint16_t scanInterval, uint16_t scanWindow, 00051 uint8_t peer_bdaddr_type, tBDAddr peer_bdaddr, 00052 uint8_t own_bdaddr_type, uint16_t conn_min_interval, 00053 uint16_t conn_max_interval, uint16_t conn_latency, 00054 uint16_t supervision_timeout, uint16_t min_conn_length, 00055 uint16_t max_conn_length); 00056 tBleStatus aci_gap_terminate_gap_procedure(uint8_t procedure_code); 00057 tBleStatus aci_gap_terminate(uint16_t conn_handle, uint8_t reason); 00058 tBleStatus aci_gatt_add_serv(tHalUint8 service_uuid_type, 00059 const tHalUint8* service_uuid, 00060 tHalUint8 service_type, 00061 tHalUint8 max_attr_records, 00062 tHalUint16 *serviceHandle); 00063 tBleStatus aci_gatt_add_char(tHalUint16 serviceHandle, 00064 tUuidType charUuidType, 00065 const tHalUint8* charUuid, 00066 tHalUint16 charValueLen, 00067 tHalUint8 charProperties, 00068 tAttrSecurityFlags secPermissions, 00069 tGattServerEvent gattEvtMask, 00070 tHalUint8 encryKeySize, 00071 tHalUint8 isVariable, 00072 tHalUint16* charHandle); 00073 tBleStatus aci_gatt_add_char_desc(tHalUint16 serviceHandle, 00074 tHalUint16 charHandle, 00075 tUuidType descUuidType, 00076 const tHalUint8* uuid, 00077 tHalUint8 descValueMaxLen, 00078 tHalUint8 descValueLen, 00079 const void* descValue, 00080 tAttrSecurityFlags secPermissions, 00081 tAttrSecurityFlags accPermissions, 00082 tGattServerEvent gattEvtMask, 00083 tHalUint8 encryKeySize, 00084 tHalUint8 isVariable, 00085 tHalUint16* descHandle); 00086 tBleStatus aci_gatt_update_char_value(tHalUint16 servHandle, 00087 tHalUint16 charHandle, 00088 tHalUint8 charValOffset, 00089 tHalUint8 charValueLen, 00090 const tHalUint8 *charValue); 00091 00092 tBleStatus aci_gatt_set_desc_value(tHalUint16 servHandle, 00093 tHalUint16 charHandle, 00094 tHalUint16 charDescHandle, 00095 tHalUint16 charDescValOffset, 00096 tHalUint8 charDescValueLen, 00097 const tHalUint8 *charDescValue); 00098 00099 tBleStatus aci_l2cap_connection_parameter_update_request(uint16_t conn_handle, uint16_t interval_min, uint16_t interval_max, 00100 uint16_t slave_latency, uint16_t timeout_mult); 00101 00102 tBleStatus aci_hal_set_tx_power_level(uint8_t en_high_power, uint8_t pa_level); 00103 00104 tBleStatus aci_hal_write_config_data(tHalUint8 offset, 00105 tHalUint8 len, 00106 const tHalUint8 *val); 00107 tBleStatus aci_hal_tone_start(uint8_t rf_channel); 00108 00109 tBleStatus aci_gatt_allow_read(tHalUint16 conn_handle); 00110 00111 tBleStatus aci_gatt_disc_all_prim_services(uint16_t conn_handle); 00112 00113 tBleStatus aci_gatt_find_included_services(uint16_t conn_handle, uint16_t start_handle, 00114 uint16_t end_handle); 00115 00116 tBleStatus aci_gatt_disc_all_charac_of_serv(uint16_t conn_handle, uint16_t start_attr_handle, 00117 uint16_t end_attr_handle); 00118 00119 tBleStatus aci_gatt_disc_all_charac_descriptors(uint16_t conn_handle, uint16_t char_val_handle, 00120 uint16_t char_end_handle); 00121 00122 tBleStatus aci_gatt_read_charac_val(uint16_t conn_handle, uint16_t attr_handle); 00123 00124 tBleStatus aci_gatt_read_long_charac_val(uint16_t conn_handle, uint16_t attr_handle, 00125 uint16_t val_offset); 00126 00127 tBleStatus aci_gatt_write_charac_value(uint16_t conn_handle, uint16_t attr_handle, 00128 uint8_t value_len, uint8_t *attr_value); 00129 00130 tBleStatus aci_gatt_write_charac_descriptor(uint16_t conn_handle, uint16_t attr_handle, 00131 uint8_t value_len, uint8_t *attr_value); 00132 00133 tBleStatus aci_gatt_write_without_response(uint16_t conn_handle, uint16_t attr_handle, 00134 uint8_t value_len, uint8_t *attr_value); 00135 00136 tBleStatus aci_gatt_write_response(uint16_t conn_handle, 00137 uint16_t attr_handle, 00138 uint8_t write_status, 00139 uint8_t err_code, 00140 uint8_t att_val_len, 00141 uint8_t *att_val); 00142 00143 #endif /* __BLUENRG_HCI_H__ */
Generated on Tue Jul 12 2022 16:24:20 by
1.7.2
