BLE file transfer示例
源码路径:example/ble/file_transfer
支持的平台
全平台
概述
本例程演示了本平台如何做GAP peripheral然后接收手机端发送的文件
例程的使用
本例程的Finsh命令可以通过输入diss help来打印命令及使用方法。
作为从设备时开机会开启广播,广播名字以SIFLI_APP-xx-xx-xx-xx-xx-xx, 其中xx代表本设备的蓝牙地址。可以通过手机的BLE APP进行连接
可以使用sifli ble serial transport串行传输协议,从手机端发送文件到设备端,一次可以发送一个或者多个文件。
硬件需求
运行该例程前,需要准备:
一块本例程支持的开发板(支持的平台)。
手机设备。
编译和烧录
切换到例程project/common目录,运行scons命令执行编译:
> scons --board=eh-lb525 -j32
切换到例程project/common/build_xx目录,运行uart_download.bat,按提示选择端口即可进行下载:
$ ./uart_download.bat
Uart Download
please input the serial port num:5
关于编译、下载的详细步骤,请参考快速入门的相关介绍。
例程的预期结果
例程启动后:
可以被手机BLE APP搜到并连接。
将需要传输的一个或者多个文件,使用zip格式进行压缩,压缩后只有一个.zip文件,将该文件传入手机
使用SIFLI BLE APP搜索,连接该设备,然后再watchface界面,选择自定义文件,然后选择该文件,该文件就可以传输到开发板的文件系统中
手机使用步骤 :
开启位置允许使用权限

点击右下角查询按钮进入到扫描蓝牙界面

点击SCAN进行扫描

搜索到设备后,点击SORT,会将广播名为SIFLI_APP-xx-xx-xx-xx-xx-xx放置前排

点击SIFLI_APP-xx-xx-xx-xx-xx-xx广播名进入设备界面

点击右上角进入操作界面

点击CONNECT确保State 为CONNECT

上滑最后一栏框,找到文件传输 WFPUSH2点击进入文件传输界面

点击SELECT FILE选择手机里面事先准备好的zip文件,并把File Type设置为3, 勾选With Byte Align,最后点击START

传输完成后,在console窗口执行命令进入file_recv文件夹,并执行ls命令查看文件列表,其中就是zip文件内容的显示

手机APP和DEMO工程获取使用
Android sifli ble app下载地址
https://www.pgyer.com/gurSBc
Android demo工程
https://github.com/OpenSiFli/SiFli_OTA_APP
对应的部分在”3. SiFli-SDK OTA”
iOS demo工程
https://github.com/OpenSiFli/SiFli_OTA_APP_IOS
对应的部分在”SiFli-SDK OTA (Nor Offline)”
SiFli-SDK file transfer
异常诊断
当开发板回复某个异常错误时,检查bf0_sibles_watchface.h中的ble_watchface_status_id_t
参考文档
更新记录
版本 |
日期 |
发布说明 |
|---|---|---|
0.0.1 |
07/2025 |
初始版本 |