【发布时间】:2021-09-19 20:32:00
【问题描述】:
我正在尝试在 ESP32 上使用 BLE 和 WiFi。正如我所见,它们不能同时使用,所以我试图找出一种方法来停止从 BLE 服务器接收数据。这是我迄今为止尝试过的停止 BLE 的方法:
btStop();
esp_bt_controller_disable();
esp_bluedroid_disable();
但是,似乎没有一个工作。 ESP32 应该连接到 WiFi(使用 WiFiManager),但是当我尝试连接到 Firebase 或 Twilio 时,连接被拒绝。在尝试连接到 Firebase 之前,我有 35000 个空闲堆和 twilio 80000。那么,有没有办法检查 BLE 扫描/连接是否已停止?是否有任何其他命令可以将其关闭?可能是我的堆用完了,因此我无法连接到 Firebase?
【问题讨论】:
-
esp_bt_controller_disable()应该可以解决问题。是什么让您认为 BLE 仍处于启用状态? -
@MichaelKotzjan 感谢您的回复!我认为它仍然处于启用状态,因为我无法向 Firebase 或 Twilio 发出 HTTP 请求。有没有办法检查BLE是否仍然启用?
-
如果您完全删除蓝牙代码,您尝试与 Firebase 通信的代码是否有效?我怀疑蓝牙可能不是问题。
-
@romkey 是的,当我不使用 BLE 时,我的代码工作正常并且成功地将数据推送到 Firebase。
标签: bluetooth-lowenergy wifi esp32 wifimanager arduino-esp32