esp32 蓝牙能设置联接密码嘛?
就象hc-05 06那样自带的示例里只有名称一联就联上了也没有密码
这个问题我也想知道 请问楼主解决了吗? #include <Arduino.h>
#include <BluetoothSerial.h>
BluetoothSerial SerialBT;
char *pin = "1124"; //与 hC02 的配对密码
void setup()
{
Serial.begin(115200);
SerialBT.setPin(pin); // 蓝牙连接的配对码
SerialBT.begin("BAKUMA",true); // 如果没有参数传入则默认是蓝牙名称是: "ESP32"
Serial.printf("BT initial ok and ready to pair. \r\n");
}
void loop()
{
if (Serial.available())
{
SerialBT.write(Serial.read());
}
if (SerialBT.available())
{
Serial.write(SerialBT.read());
}
delay(1);
} 13365336679 发表于 2022-5-4 23:32
#include
#include
我用这给测试代码测试,一直不成功,添加不上连接密码。请教一下哪的问题啊? 13365336679 发表于 2022-5-4 23:33
我用这给测试代码测试,一直不成功,添加不上连接密码。请教一下哪的问题啊? ...
他这个应该是两个蓝牙配对时用的 就是esp32主动去配对别的蓝牙 Arduino\packages\esp32\hardware\esp32\1.0.6\libraries
不可以设置,看看源码里面也没有相关的配置。
PIN码配对是蓝牙2.0及以前版本使用的流程,esp32可以使用SSP安全配对,蓝牙2.1及之后版本新增的流程 相默术璟 发表于 2022-5-8 15:00
Arduino\packages\esp32\hardware\esp32\1.0.6\libraries
不可以设置,看看源码里面也没有相关的配置。
PIN ...
谢谢明白了。 snyjw 发表于 2022-5-6 22:14
他这个应该是两个蓝牙配对时用的 就是esp32主动去配对别的蓝牙
谢谢。明白。 才看到如果是
spp模式,有个setpin的函数
bool BluetoothSerial::setPin(const char *pin)
如果是ble模式,设置稍微复杂些
首先特征里打开安全性
BLE2902* p2902Descriptor = new BLE2902();
//p2902Descriptor->setNotifications(true);
p2902Descriptor->setAccessPermissions(ESP_GATT_PERM_READ_ENCRYPTED | ESP_GATT_PERM_WRITE_ENCRYPTED);
pTxCharacteristic->addDescriptor(p2902Descriptor);
然后设置秘钥
BLESecurity *pSecurity = new BLESecurity();
pSecurity->setStaticPIN(123456);
pSecurity->setAuthenticationMode(ESP_LE_AUTH_REQ_SC_BOND);
附一个完整测试代码
页:
[1]