OTA V3 错误码
1.iOS Sdk 错误码
错误码 |
含义 |
处理方式 |
---|---|---|
SFCoreErrorTypeTimeout = 1 |
搜索设备超时 |
重试 |
SFCoreErrorTypeCanceled = 2 |
调用了取消连接 |
|
SFCoreErrorTypeDisconnected = 3 |
连接断开 |
|
SFCoreErrorTypeFailedToConnect = 4 |
主动连接失败 |
重试 |
SFCoreErrorTypeUserStop = 5 |
用户主动停止 |
|
SFCoreErrorTypeInvalidParameter = 6 |
无效参数 |
检查输入参数 |
SFCoreErrorTypeReadFileError = 7 |
读取文件失败 |
检查xcode日志,输入参数 |
SFOtaV3ErrorTypeSearchTimeout = 100 |
搜索设备超时 |
重试 |
SFOtaV3ErrorTypeRequestTimeout = 110 |
请求超时 |
重试 |
SFOtaV3ErrorTypeErrorCodeFromDevice = 120 |
设备错误码 errorType 为此值时,devErrorCode有值 |
查看设备错误码 |
SFOtaV3ErrorTypeUnavailableBleStatus = 130 |
蓝牙状态异常 |
检查手机蓝牙开关是否打开 |
SFOtaV3ErrorTypeInvalidParams = 140 |
无效参数 |
检查输入sdk的参数内容 |
SFOtaV3ErrorTypeOutOfRange = 150 |
数据超出范围 |
反馈原厂 |
SFOtaV3ErrorTypeFailToParsePacket = 160 |
解析响应数据失败 |
检查固件端响应数据 |
SFOtaV3ErrorTypeUserStop = 170 |
用户主动停止 |
|
SFOtaV3ErrorTypeRemoteAbort = 180 |
手表用户主动停止 |
|
SFOtaV3ErrorTypeFailToUnzip = 190 |
解压失败 |
检查输入zip文件格式 |
SFOtaV3ErrorTypeNoFileInZip = 200 |
解压失败 |
检查输入zip文件格式 |
SFOtaV3ErrorTypeFailToReadFile = 210 |
读取文件失败 |
检查xcode日志 |
SFOtaV3ErrorTypeDebug = 220 |
调试期间才可能出现的错误,正式版不应当出现 |
|
SFOtaV3ErrorTypeInvalidMaxDataLen = 230 |
设备返回无效的最大切片长度 |
检查固件响应数据 |
SFOtaV3ErrorTypeInvalidBlockLength = 240 |
设备返回无效的块长度 |
检查固件响应数据 |
SFOtaV3ErrorTypeInvalidExpectIndex = 250 |
设备返回无效的期望索引 |
检查固件端 |
SFOtaV3ErrorTypePushSliceTooLarge = 260 |
lose check 返回错误码2,通信错误次数超过3,可能是切片太大 |
|
SFOtaV3ErrorTypeSliceError = 270 |
制作切片出错 |
反馈原厂 |
SFOtaV3ErrorTypeRspWhenNoRspWriting = 280 |
无响应写入期间收到响应 |
反馈原厂,检查固件端 |
SFOtaV3ErrorTypeV3FileDataRspError = 290 |
文件包序号错误 |
反馈原厂,检查固件端 |
SFOtaV3ErrorTypeV3HcpuImageIdNotFound = 300 |
Image列表中没有找到对应的ImageID V3_ |
检查ota输入参数文件 |
SFOtaV3ErrorTypeV3HcpuImageDeviceCompleteCountInvalid = 310 |
固件端返回的完成切片数量错误 |
反馈原厂,检查固件端 |
SFOtaV3ErrorTypeV3NandResOrderFileNotExist = 320 |
差分包资源的orderFile 不存在 |
检查输入差分包 |
SFOtaV3ErrorTypeV3NandResSubFileNotExist = 330 |
nand res order file 清单中的文件不存在 |
检查输入差分包 |
SFOtaV3ErrorTypeV3CtrlFileValidateError = 340 |
ctrl file 校验错误 |
检查输入的ctrl file,image file一致性 |
2.android Sdk 错误码
错误码 |
含义 |
处理方式 |
---|---|---|
BLE_DISCONNECTED = 2 |
蓝牙失去连接 |
|
BLE_FAIL_TO_CONNECT = 3 |
连接失败 |
|
BLE_NOTIFY_LISTEN_FAIL = 4 |
监听通知失败 |
|
BLE_SET_MTU_FAIL = 5 |
设置 MTU 失败 |
|
BLE_WRITE_CHARICTER_FAIL = 6 |
写入特征值失败 |
检查logcat日志,是否有写入冲突;设备状态 |
BLE_DEVICE_NOT_HANDSHAKE = 7 |
写入特征值失败,设备未处于握手状态 |
检查logcat日志,结合业务分析 |
BLE_SEARCH_TIMEOUT = 8 |
搜索设备超时 |
重试 |
BLE_HANDSHAKE_TIMEOUT = 9 |
蓝牙握手超时 |
重试 |
BLE_NOT_ENABLE = 10 |
BLE 蓝牙不可用 |
检查手机蓝牙开关 |
BLE_NO_MAC = 11 |
发起连接时缺少 MAC 地址 |
检查输入参数 |
SF_TASK_TIME_OUT = 12 |
任务超时 |
|
SF_SERIAL_TRANSPORT_RSP_ERROR = 13 |
串行协议解析错误 |
检查固件响应数据 |
SF_MANUAL_STOP = 14 |
主动停止 |
|
SF_INVALID_PARAM = 15 |
输入参数有误 |
|
SF_DEVICE_ERROR_CODE = 16 |
设备错误码 |
检查设备错误码 |
SF_FAIL_TO_READ_FILE = 17 |
读取文件错误 |
检查logcat日志 |
REMOTE_USER_ABORT = 230 |
手表端用户终止 |
检查设备错误码 |
V3_SLICE_ERROR = 330 |
切片数据错误 |
检查logcat日志,反馈原厂 |
V3_PUSH_FAIL_TO_CREATE_CACHE_DIR = 340 |
创建缓存目录失败 |
检查logcat,系统环境 |
V3_PUSH_FAIL_TO_UNZIP_FILE = 350 |
解压 zip 文件失败 |
检查输入zip文件 |
V3_PUSH_FAIL_TO_LIST_FILE = 360 |
读取目录中的文件列表失败 |
检查logcat日志,系统环境 |
V3_PUSH_FILE_NOT_EXIST = 370 |
文件不存在 |
检查输入文件参数 |
V3_PUSH_FAIL_TO_GET_FILE_MD5 = 380 |
获取文件 MD5 值失败 |
检查logcat日志,系统环境 |
V3_RES_INIT_RSP_ERROR = 390 |
资源传输响应错误 |
检查固件端响应数据 |
V3_HCPU_CTRL_DATA_MISSING = 400 |
固件 OTA 控制文件缺失 |
检查输入参数 |
V3_HCPU_UNKOWN_IMAGE_ID = 410 |
固件 OTA 未知的 ImageFile ID |
检查固件端 |
V3_HCPU_IMAGE_ID_NOT_FOUND = 420 |
固件 OTA 未找到远端指定的 ImageID |
检查固件端 |
V3_HCPU_IMAGE_DEVICE_COMPLETE_COUNT_INVALID = 430 |
固件 OTA 远端返回无效的切片完成数量 |
检查固件端 |
V3_HCPU_IMAGE_RSP_WHEN_NO_RSP_WRITING = 440 |
在无响应写入期间收到响应 |
检查固件端 |
V3_RES_RSP_WHEN_NO_RSP_WRITING = 450 |
在无响应写入期间收到响应 |
检查固件端 |
V3_FILE_DATA_RSP_ERROR = 460 |
文件包序号错误 |
检查固件端响应数据 |
V3_USER_CANCEL = 470 |
用户取消 |
|
V3_CTRL_CHECK_IMAGE_SIZE_ERROR = 480 |
ctrl file 校验 image 数量和传入的不符合 |
检查输入文件 |
V3_CTRL_CHECK_IMAGE_ID_MISMATCH = 490 |
ctrl file 校验 image ID 不匹配 |
检查输入文件 |
V3_CTRL_CHECK_IMAGE_ID_REPEAT = 500 |
ctrl file 校验 image ID 重复 |
检查输入文件 |
V3_CTRL_DECRYPT_FAIL = 520 |
ctrl file 校验 ctrl file 解码失败 |
检查输入文件 |
3.固件端错误码
3.1.固件ota,蓝牙
错误码1,General_error:
ctrl包解析错误
数据包解析错误。
不在预期状态接收到数据包,常见于在nor flash升级,OTA manager没有连接成功,重启到正常模式后,开始发送数据包。
错误码2,parameter_invalid:
升级了未实现的image id
续传检查错误
未下载ctrl包中所有image,见于下载结束
错误码3,space_not_enough
制作的bin,超过了flash map中定义的长度,检查是否制作错误或者flash map结构有变更
如果变更flash map,需要启用DFU_DISABLE_IMAGE_LENGTH_CHECK
错误码4,nor_ready
Dfu nv开机初始化失败
错误码5,HW_VER
未启用
错误码6,SDK_VER_ERROR
制作升级包时,sdk_ver填写内容错误
错误码7,FW_VER_ERROR
制作升级包时,fw_ver填写内容错误
错误码8,FW_INVALID
安装失败
单个Image下载完成后检验失败,检查制作和下载的升级包是否错误,检查擦和写的区域是否符合预期,或者读出下载区域和原始bin进行比较
错误码9,CTRL_PACKET_INVALID
ctrl包签名验证失败
错误码10,DOWNLOAD_ONGOING
55x版本OTA,nor v1,下载中如果中断,再使用start接口开始会报此错,需要使用resume或者force start开始
错误码11,USER_REJECT
用户在手表升级弹窗,点击了取消或者超时未点击
错误码12,UNEXPECT_STATE
OTA下载中,开始了新的OTA下载,状态错误。需要重试
错误码13,INDEX_ERROR
数据包序号错误
较新的版本会自动重试,失败次数超过上限时才返回该错误码
较早的版本会失败,需要尽量减少手机的其他BLE使用,APP置于前台,避免锁屏,iOS的packet frequency调小。
错误码14,RES_UPDATING
未启用
错误码15,PACKET_VERIFY_ERROR,
数据包校验错误,较新版本会自动重试
较早版本会失败退出
错误码16,FLASH_ERROR
擦flash错误,检查flash驱动,擦的地址和长度是否合法
错误码17,RES_INSTALL_ERROR
资源差分包安装失败
错误码18,内部使用
错误码19,IMAGE_VERIFY_FAIL
同8-2,会自动重试,重试若干次仍然校验不过,会返回错误码8
错误码20
PACKET_VERIFY_FAIL 当15-1,重传失败次数超过上限时,返回该错误,需检查制作和选择升级包有无错误。
3.2.文件接收、进度显示
65 当前UI不支持OTA,原因是页面设置了禁止OTA或者退出页面,未使能OTA
66 版本不支持,暂未使用
67 空间不足,root分区无空间存储ota辅助文件,或者备份空间不够,或者进入覆盖模式,覆盖安装分区空间不够
68 总大小未四字节对齐,原因是使能了对齐参数,但是实际大小未对齐
69 文件大小未四字节对齐,原因是使能了对齐参数,但是实际大小未对齐
70 创建目录失败
71 切换目录失败
72 文件打开失败
73 文件关闭失败
74 文件大小错误,接收累计的大小和文件的总大小不匹配
75 crc校验失败,接收数据有异常
76 文件写入失败
77 文件总数校验失败,接收文件的数量和文件的总数量不匹配
78 申请连续空间失败
79 用户拒绝
80 低电拒绝
81 上一次ota未结束
82 获取文件状态失败
83 数据接收超时,超时时间30s
84 img安装失败
85 ota类型不是指定类型,如在ota异常界面中,只能升级固件,不能升级表盘
86 文件对齐属性错误,nand 资源升级必须有对齐属性和校验
87 传输过来的文件路径错误,
88 固件不支持的类型
89 需要手机需要指定路径(固件未设置目标路径属性)