Other Parts Discussed in Thread: CC2650, ,
Hi,
I am developing a Cordova native application to upgrade the firmware of a cc2640 chip with OAD protocol.
As a reference, I have a CC2650 LaunchPad board with BLE Device Monitor installed, that produces a complete log of the upgrade process.
My app is developed to respond to a block notify with a block write, as per protocol definition.
Upgrading throught the LaunchPad works, but log shows that it uses a quite different approach, notifying and writing 2 blocks at a time, i.e.:
Notif.[FFC2]: st=0 n=2 01 00
Notif.[FFC2]: st=0 n=2 02 00
WrNoRsp[FFC2,18]: 02 00 29 CA 00 00 29 CA 00 00 29 CA 00 00 29 CA 00 00
WrNoRsp[FFC2,18]: 03 00 29 CA 00 00 29 CA 00 00 29 CA 00 00 29 CA 00 00
Notif.[FFC2]: st=0 n=2 03 00
Notif.[FFC2]: st=0 n=2 04 00
WrNoRsp[FFC2,18]: 04 00 29 CA 00 00 29 CA 00 00 BF CF 00 00 2D E9 FE 4F
WrNoRsp[FFC2,18]: 05 00 05 46 00 24 DF F8 D8 82 DF F8 D8 92 A8 78 00 28
....
Problem is, despite the number of writes and notify is the same both in the app and with the LaunchPad, the process using my Cordova app returns 1, that is related to wrong CRC calculation.
Is this caused by the different approach LauchPad uses or something else?
waiting for your kind reply.
Regards,
Stefano