OTA DFU BLE with CySmart Mobile app

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

cross mob
piseek
Level 1
Level 1
5 sign-ins First reply posted First question asked

Hi everyone,

I'm trying to develop OTA DFU for PSoC 6 MCU (CYBLE-416045-02).

I thought DFU_BLE_Upgradable_Stack (app0, app1, app2) example (PSoC Creator 4.4) and CySmart Mobile app would be a good place to start. But I run into multiple problems.

1. It happens a lot that when trying to connect I get "Services unavailable" message. After multiple retries and toggling Bluetooth on/off it starts working again.

2. When there is only Launcher (app0) and BLE stack (app1) flashed the app (app2) gets flashed (updated) and run successfully. If app is already flashed, I am always stuck at entering bootloader command (0%).

3. Every second time the CySmart Mobile app gets stuck at reading the file, it completely freezes.

I also tired PSoC6DfuBle example (the one with separate stack - app0, app1) and run into exactly same problems. This can be reproduces with multiple  cell phones and android versions.

What could be causing this? Is there some common issue that I am overseeing?

Thanks in advance.

 

0 Likes
1 Solution
Yugandhar
Moderator
Moderator
Moderator
500 solutions authored 1000 replies posted 5 likes given

Hello, 

Apologize for the delay. I have tried the PSOC6BLE DFU project with Redmi Note 7 mobile(i don't have the Redmi Note 10 and POCO mobiles to test) and it is working fine in that mobile where i'm able to upgrade the application. 

Could you please let me know the PDL version which you are using in the PSoC6 BLE Project ? Please check with pdl v3.1.3, 3.1.5 and 3.0.4.

If you are still facing the issue in all these versions, then please share your project for testing at our end. 

Thanks,

P Yugandhar. 

View solution in original post

0 Likes
4 Replies
Yugandhar
Moderator
Moderator
Moderator
500 solutions authored 1000 replies posted 5 likes given

Hello, 

I have tried PSoC6DfuBle example( stack - app0, app1). I didn't observed any issues in transfer between the applications.

Could you please share the project which you are using ? Please let me know the steps to replicate the problem. 

Thanks,

P Yugandhar. 

0 Likes

Hello,

Thank you for quick reply.

I did some more investigation and found out that if works (always) with Samsung devices.
The most sever  problems are with Xiaomi phones. I've tried with Redmi Note 10 and POCO F3, although POCO phone preforms a bit better it never succeeds on second retry. Redmi Note 10 can not even read services.

 

Best Regards.

0 Likes
Yugandhar
Moderator
Moderator
Moderator
500 solutions authored 1000 replies posted 5 likes given

Hello, 

Apologize for the delay. I have tried the PSOC6BLE DFU project with Redmi Note 7 mobile(i don't have the Redmi Note 10 and POCO mobiles to test) and it is working fine in that mobile where i'm able to upgrade the application. 

Could you please let me know the PDL version which you are using in the PSoC6 BLE Project ? Please check with pdl v3.1.3, 3.1.5 and 3.0.4.

If you are still facing the issue in all these versions, then please share your project for testing at our end. 

Thanks,

P Yugandhar. 

0 Likes

Hi,

I am using PLD v3.1.3.
The example is DFU_BLE_Upgradable_Stack, straight out of PSoC Creator 4.4. With no modifications. CySmart app is deployed from Android Studio (master branch). No modifications. I run the test on three devices.

  • Samsung Tab S8 Ultra had no problems whatsoever.
  • Xiaomi Redmi Note 10 - when only bootloader and stack were flashed, app could be updated. But when app is flashed. It had severe problems with acquiring the services and when it finally connect, DFU stopped at 0%.
  • Google Pixel 7 Pro, DFU stops at 0% always.

I repeated the tests with PDL v3.1.5 and 3.0.4 - changed the PDL path in bat files and in Creator (Tools->Options->PDL v3 location). Same problems persist.

 

Best regards.

0 Likes