如何解决Arduino ESP32通过BLE接收文件用于OTA更新
我想通过BLE(https://github.com/xabre/xamarin-bluetooth-le)从Xamarin Forms(C#)iOS应用发送文件(bin)到ESP32(Arduino)。该文件将是用于更新的bin文件。我已经找到了一种解决方法,如何通过spip(arduino-esp32 do OTA via BLE)来更新ESP32,但是没有人知道我如何使用ESP32接收文件并将其保存到spif中吗?
(到esp32的BLE连接应用程序已经可以正常工作,我可以发送文本,但是我不知道如何发送文件)
最好的问候 nflug
解决方法
您必须将文件内容作为单独的字节发送并将其保存到 SPIFFS
您可以使用以下函数(Arduino 代码)创建并写入二进制文件
void writeBinary(fs::FS &fs,const char * path,uint8_t *dat,int len) {
//Serial.printf("Write binary file %s\r\n",path);
File file = fs.open(path,FILE_APPEND);
if (!file) {
Serial.println("- failed to open file for writing");
return;
}
file.write(dat,len);
file.close();
}
在此处查看用法ESP32_BLE_OTA_Arduino。
我还创建了一个 android 应用程序来上传文件 ESP32_BLE_OTA_Android
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。