许愿 example/ble/file_transfer 的使用说明

期待这个例程的使用说明。

开发板:LB52-DEV
开发分支:siflisdk-master, buletouch-master

在 main.c 中增加 mnt_init 完成 mtd 设备挂载文件系统的操作。

在 bf0_sibles_watchface.c 的函数 ble_watchface_event_handler 的 switch 中插入LOG_E日志。

    case BLE_GAP_UPDATE_CONN_PARAM_CNF:
    {
        ble_gap_update_conn_param_cnf_t *cnf = (ble_gap_update_conn_param_cnf_t *)data;
        if (cnf->status != 0)
        {
            LOG_I("update fail with %d", cnf->status);
            if (env->state != BLE_WATCHFACE_IDLE && env->update_repeat < MAX_UPDATE_REPEAT && env->update_state == BLE_WF_UPDATE_UPDATING)
            {
                LOG_I("update again due to collision %d", env->update_repeat);
                env->update_repeat++;
                env->update_state = BLE_WF_UPDATE_NONE;
                ble_watchface_check_connection();
            }
        }
        env->update_state = BLE_WF_UPDATE_NONE;
        break;
    }
    default:
        LOG_E("%s No supported case. event_id %d ", __func__, event_id);
        break;
    }
    return 0;
}

测试方式:

安卓手机使用,使用 SIFLI BLE ,在 BLE 连接成功后,选择 WATCHFACE → 表盘 ZIP → 选择 zip 文件。

预期结果:
手机端发送的文件会被保存到 /recv_file 目录下。

实际结果:

[278158] I/sibles KE_EVT2: connected 0
[278177] I/ble_cm KE_EVT2: SIBLES_REMOTE_CONNECTED_IND
[278201] E/BLE_WATCHFACE KE_EVT2: ble_watchface_event_handler No supported case. event_id 100 
[278241] I/ble_app KE_EVT2: Peer device(50-21-ec-26-0-46) connected
[278270] I/ble_cm KE_EVT2: BLE_GAP_CONNECTED_IND
[278292] I/ble_cm KE_EVT2: Boned device connected
[278314] D/ble_cm KE_EVT2: connection_manager_event_process 0x40
[278338] E/BLE_WATCHFACE KE_EVT2: ble_watchface_event_handler No supported case. event_id 176 
[278376] I/ble_cm KE_EVT2: connection_manager_connection_state_change 0x20 to 0x23
[278409] D/sibles KE_EVT2: tb cb:1204050d,id:4
[278429] I/ble_app KE_EVT2: ADV stopped reason 0, mode 0

[278455] E/BLE_WATCHFACE KE_EVT2: ble_watchface_event_handler No supported case. event_id 47 
[286327] E/BLE_WATCHFACE KE_EVT2: ble_watchface_event_handler No supported case. event_id 75 
[291230] I/ble_app KE_EVT2: Exchanged MTU size: 512
[291254] I/ble_cm KE_EVT2: SIBLES_MTU_EXCHANGE_IND 0, 512
[291279] I/ble_cm KE_EVT2: update_data_length
[307724] D/BLE_GAP KE_EVT2: GAPC event status, op: 20, ret 0
[307748] E/BLE_WATCHFACE KE_EVT2: ble_watchface_event_handler No supported case. event_id 74 
[310887] E/BLE_WATCHFACE KE_EVT2: ble_watchface_event_handler No supported case. event_id 75 
[761449] I/ble_app KE_EVT2: Exchanged MTU size: 247
[761473] I/ble_cm KE_EVT2: SIBLES_MTU_EXCHANGE_IND 0, 247
[761498] I/ble_cm KE_EVT2: update_data_length
[777936] D/BLE_GAP KE_EVT2: GAPC event status, op: 20, ret 0
[777960] E/BLE_WATCHFACE KE_EVT2: ble_watchface_event_handler No supported case. event_id 74 
[781096] E/BLE_WATCHFACE KE_EVT2: ble_watchface_event_handler No supported case. event_id 75