实现修改UUID

This commit is contained in:
OPTOC
2025-09-16 18:50:22 +08:00
parent 6289a93cd3
commit 3f12c83014

View File

@@ -61,13 +61,23 @@ static struct
#define ESP_SPP_APP_ID 0x56
#define SPP_SVC_INST_ID 0
// /// SPP Service
// static const uint16_t spp_service_uuid = 0xABF0;
// /// Characteristic UUID
// #define ESP_GATT_UUID_SPP_DATA_RECEIVE 0xABF1 // 透传数据接收
// #define ESP_GATT_UUID_SPP_DATA_NOTIFY 0xABF2 // 透传数据发送
// #define ESP_GATT_UUID_SPP_COMMAND_RECEIVE 0xABF3 // 命令接收
// #define ESP_GATT_UUID_SPP_COMMAND_NOTIFY 0xABF4 // 命令响应的返回。
/// SPP Service
static const uint16_t spp_service_uuid = 0xABF0;
static const uint8_t spp_service_uuid[16] = {0x6E,0x40,0x00,0x01,0xB5,0xA3,0xF3,0x93,0xE0,0xA9,0xE5,0x0E,0x24,0xDC,0xCA,0x9E};
/// Characteristic UUID
#define ESP_GATT_UUID_SPP_DATA_RECEIVE 0xABF1 // 透传数据接收
#define ESP_GATT_UUID_SPP_DATA_NOTIFY 0xABF2 // 透传数据发送
#define ESP_GATT_UUID_SPP_COMMAND_RECEIVE 0xABF3 // 命令接收
#define ESP_GATT_UUID_SPP_COMMAND_NOTIFY 0xABF4 // 命令响应的返回。
#define ESP_GATT_UUID_SPP_DATA_RECEIVE {0x6E,0x40,0x00,0x03,0xB5,0xA3,0xF3,0x93,0xE0,0xA9,0xE5,0x0E,0x24,0xDC,0xCA,0x9E} // 透传数据接收
#define ESP_GATT_UUID_SPP_DATA_NOTIFY {0x6E,0x40,0x00,0x02,0xB5,0xA3,0xF3,0x93,0xE0,0xA9,0xE5,0x0E,0x24,0xDC,0xCA,0x9E} // 透传数据发送
// static const int16_t spp_service_cmd_uuid = 0xABF0;
#define ESP_GATT_UUID_SPP_COMMAND_RECEIVE 0xABF1// 命令接收
#define ESP_GATT_UUID_SPP_COMMAND_NOTIFY 0xABF2// 命令响应的返回。
#define ADV_CONFIG_FLAG (1 << 0)
#define SCAN_RSP_CONFIG_FLAG (1 << 1)
@@ -213,11 +223,11 @@ static const uint8_t char_prop_read_write_notify = ESP_GATT_CHAR_PROP_BIT_READ |
#endif
/// SPP Service - data receive characteristic, read&write without response
static const uint16_t spp_data_receive_uuid = ESP_GATT_UUID_SPP_DATA_RECEIVE;
static const uint8_t spp_data_receive_uuid[16] = ESP_GATT_UUID_SPP_DATA_RECEIVE;
static const uint8_t spp_data_receive_val[20] = {0x00};
/// SPP Service - data notify characteristic, notify&read
static const uint16_t spp_data_notify_uuid = ESP_GATT_UUID_SPP_DATA_NOTIFY;
static const uint8_t spp_data_notify_uuid[16] = ESP_GATT_UUID_SPP_DATA_NOTIFY;
static const uint8_t spp_data_notify_val[20] = {0x00};
static const uint8_t spp_data_notify_ccc[2] = {0x00, 0x00};
@@ -251,7 +261,7 @@ static esp_gatts_attr_db_t const spp_gatt_db[SPP_IDX_NB] = {
// SPP - data receive characteristic Value
[SPP_IDX_SPP_DATA_RECV_VAL] =
{{ESP_GATT_AUTO_RSP}, {ESP_UUID_LEN_16, (uint8_t *)&spp_data_receive_uuid, ESP_GATT_PERM_READ | ESP_GATT_PERM_WRITE, // 特征值value的UUID
{{ESP_GATT_AUTO_RSP}, {ESP_UUID_LEN_128, (uint8_t *)spp_data_receive_uuid, ESP_GATT_PERM_READ | ESP_GATT_PERM_WRITE, // 特征值value的UUID
SPP_DATA_MAX_LEN, sizeof(spp_data_receive_val), (uint8_t *)spp_data_receive_val}}, // 对应的变量
// SPP - data notify characteristic Declaration
@@ -261,7 +271,7 @@ static esp_gatts_attr_db_t const spp_gatt_db[SPP_IDX_NB] = {
// SPP - data notify characteristic Value
[SPP_IDX_SPP_DATA_NTY_VAL] =
{{ESP_GATT_AUTO_RSP}, {ESP_UUID_LEN_16, (uint8_t *)&spp_data_notify_uuid, ESP_GATT_PERM_READ, // 特征值声明的类型 0X2803
{{ESP_GATT_AUTO_RSP}, {ESP_UUID_LEN_128, (uint8_t *)spp_data_notify_uuid, ESP_GATT_PERM_READ, // 特征值声明的类型 0X2803
SPP_DATA_MAX_LEN, sizeof(spp_data_notify_val), (uint8_t *)spp_data_notify_val}}, // 对应的变量
// SPP - data notify characteristic - Client Characteristic Configuration Descriptor
@@ -317,7 +327,7 @@ static uint8_t find_char_and_desr_index(uint16_t handle)
{
if (handle == spp_handle_table[i])
{
return i;
return (uint8_t)i;
}
}