BLE OTA bootloader service

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
FaBi_2763241
Level 4
Level 4
10 likes given 5 likes given First like received

Hello there,

Looking at the examples for external memory OTA for BLE : on the BLE component, in the Bootloader Service, Command Characteristic the Data field is set at 137 .

How is the right figure calculated? I couldn't pinpoint a reference that explains it. With a different project, keeping the same value 137, the firmware transfer fails with a "write long characteristic value timed out" message. I suspect the error has to do with being the data field of the command characteristic in the bootloader service not right.

0 Likes
3 Replies
GyanC_36
Employee
Employee
250 replies posted 100 replies posted 50 replies posted

Hello,

  137 is the maximal length of a bootloader data in a BLE packet. Also, you cannot just changes this value in the firmware project, because it also hardcoded in CySmart App as well.

Anyways, there should not be any problem (No error like  "write long characteristic value timed out" message ) with 137 command data field value.

Could you please attach your project , so that we can have a look and resolve the issue.

Are you using CySmart PC as a OTA Host or CySmart Mobile App?

Regards,

Gyan

0 Likes

Hello,

I use the dongle on the pc; it did work when I tested it with the external memory bootloadable example code.

I have sent a link to my firmware if it work for you.

Regards,

Fausto

0 Likes

Well, now the OTA transfer process is successful with the dongle client.

Not sure what caused the failure previously: I re-made the project starting from the OTA External Memory Bootloadable example and added my application without any significant edit to the code.

regards.