系列文章目录
提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
最近用ESP32做了一个蓝牙相互传输的小应用,有几个小的TIPS简单记录一下。
提示:以下是本篇文章正文内容,下面案例可供参考
一、蓝牙名称修改
以修改设备名称 增加_2为例
1、在声明中修改设备蓝牙名称
#define SAMPLE_DEVICE_NAME "ESP_GATTS_DEMO_2"
2、修改广播数据
static uint8_t raw_adv_data[] = {
/* flags */
0x02, 0x01, 0x06,
/* tx power*/
0x02, 0x0a, 0xeb,
/* service uuid */
0x03, 0x03, 0xFF, 0x00,
/* device name */
0x11, 0x09, 'E', 'S', 'P', '_', 'G', 'A', 'T', 'T', 'S', '_', 'D', 'E', 'M', 'O','_','2'};
其中0x11是后面设备名称的字节长度。
如果这里不修改,再扫描端看到的蓝牙设备名称是不正常的。
二、断线重连设置
正常蓝牙从机开启扫描之后,超时扫描以后就不会再次连接。
这里是gap阶段,设置的扫描时长。duration就是超时时间。这里可以设置的长一点
case ESP_GAP_BLE_SCAN_PARAM_SET_COMPLETE_EVT: {
//the unit of the duration is second
uint32_t duration = 60000;
esp_ble_gap_start_scanning(duration);
break;
}
这里是GATT阶段中出现掉线的重连配置
case ESP_GATTC_DISCONNECT_EVT:
connect = false;
get_server = false;
is_connect = false;
uint32_t duration = 60000;
esp_ble_gap_start_scanning(duration);
ESP_LOGI(GATTC_TAG, "ESP_GATTC_DISCONNECT_EVT, reason = %d", p_data->disconnect.reason);
break;
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,蓝牙刚刚开始接触,还没有深入了解。