-
Notifications
You must be signed in to change notification settings - Fork 35
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
固件更新比较慢 #17
Comments
这是每次回调过来的时间差值。开始时间在写数据之前,结束时间在回调开始。 |
Tywei24 ,确认下,你说的“时间需要100ms左右”,该时间是从收到广播ACTION_CHARACTER_CHANGED后到onResponse的时间,还是从writeNoRsp开始到onResponse的时间? |
从写开始,到收到广播ACTION_CHARACTER_CHANGED的时间 |
可以尝试下减少每次写入的数据size;其他方面来讲,mijiaSDK使用的是原生Android蓝牙的发送接口,目前暂时没有很好的办法在mijiaSDK来优化该时间。 |
因为不能设置mtu的原因,(大包传入不了)现在每次写入一个数据包,大小为20byte。回调接收正确的状态时,再写入下一个。导致固件更新很慢。(总的数据包有60045byte) |
我现在做的是插件,不是mijiaSDK。 |
可以做分包处理,每个数据包添加一个标记,使用writeNoRsp方法,写完后不用等返回继续写,最后重试写失败的数据包 |
你好,
在做固件更新中,我用此方法往设备写入数据。
XmBluetoothManager.getInstance().writeNoRsp(mDeviceMac, UUID.fromString(MMCGattAttributes.SENSOR_SERVICE_UUID_OAD),
UUID.fromString(MMCGattAttributes.SENSOR_SPOTA_SERV_PATCH_DATA),
chunk, new Response.BleWriteResponse() {
@OverRide
public void onResponse(int code, Void data) {
但是在广播包它public static final String ACTION_CHARACTER_CHANGED = "com.xiaomi.smarthome.bluetooth.character_changed";接收数据返回的状态中。时间需要100ms左右,我该如何提升更新的速度呢?
The text was updated successfully, but these errors were encountered: