The Problem:
The OAD between the android app(GATT client) and a TI board(CC2640R2F, GATT server) is unstable. We use the example app provide in the Ti repository(https://git.ti.com/ble-oad-android-source-code/) to test. Only the Safe mode was used to perform the tests. OAD is successful only on the Samsung S8 and not on other devices such as the Samsung S7 edge, Huawei MLA-AL10, etc. In these devices, OAD progresses for ~20 seconds and then freezes. The device with the ti chip stops responding.
We also tested the OAD library on the repository(https://git.ti.com/simplelink-ble-oad-android/) and we are getting an error "OAD on peripheral has the wrong version !”. So we assume that this library does not support our stack.
Since we have already shipped the devices with this configuration to our customers already, it will be difficult to update the stacks on the devices.
Any insight on this matter will be appreciated.
Firmware info:
Chip: CC2640R2F
BLE Stack: CC2640R2 SDK 1.30.00.25 (also is called BLE-STACK v3.0.1)
TI Code Composer Studio: CCS- 7.1.0.00016
TI-RTOS for CC13XX: 3.01.01.19
C Compiler for ARM: 16.09.0.LTS
XDCTools: 3.32.01.22