cancel
Showing results for 
Search instead for 
Did you mean: 

PSoC 4 MCU

Anonymous
Not applicable

Hello,

I performed current consumption measurements on the CY8CKIT-042-BLE Pioneer Kit. The measurements were mostly focused on the advertising of BLE, advertising on all three possible channels. While performing the current measurements I made a strange observation where I have no explanation for. Maybe someone here can help me:

Leaving the bytes of data under "Advertisement packet" constant and changing the "Scan response packet" data (so different number of bytes) showed a huge difference in current and therefore in power consumption. First I thought this would be because of another BLE device which is scanning. But this was not the case. There were no scan responses observable. Taking a closer look to the advertising event showed that there was a difference in the duration of the Inter-Channel-Delay. So, e.g., when choosing a scan response packet of 31 Bytes, the Inter-Channel-Delay took longer as when choosing a scan response packet of 3 Bytes. Nevertheless, the scan response was NEVER sent. According to AN92584 [1], page 37 the Inter-Channel-Delay should be fixed at 1.25ms, which is in my case definitely not true. Nevertheless, according to the Bluetooth Standard 4.2 this Inter-Channel-Delay has to be shorter than 10ms, therefore of course the functionality is not restricted.

Could someone explain to me why the Inter-Channel-Delay is variable? What is the reason behind it?

Best regards and many thanks in advance,
Tobias

[1] http://www.cypress.com/file/140991/download

0 Likes
5 Replies
Anonymous
Not applicable

Do you know the measurements of the inter-channel-delay range you were seeing? (can you post them here?)

Otherwise, that sounds like a bug with the BLE radio code for cypress to handle

0 Likes
Anonymous
Not applicable

Thanks for your answer!

The first plot shows the power consumption of an advertising event with 30 Bytes of payload data and 0 Bytes for the scan response packet. The whole duration of the advertising on all three channels is about 5.5 ms.
cypress_scan_respopnse_0.png

The second plot shows the power consumption of an advertising event with the same settings, except for the scan response packet: There 31 Bytes of payload were chosen.

cypress_scan_respopnse_30.png

Visible to the naked eye, the two Inter-Channel-Delays are longer, resulting in a total duration of about 6.6 ms.

For this measurement the code from Cypress 100 Projects in 100 Days, Day 27 BLE_Power_Measurement was used[1]. As mentioned in the previous post, all I am changing is the amount of payload for the scan response under tab "Gap Settings", Peripheral role -> Scan response packet.

Best regards!

[1] https://github.com/cypresssemiconductorco/PSoC-4-BLE/tree/master/100_Projects_in_100_Days/Day027_BLE...

Anonymous
Not applicable

Assuming you have all of your components in the project updated to the latest versions (BLE looked like v5.5 was latest?);

Potentially this delay could be caused by something weird with power saving mode, buffer overflow of the scan response data, or interrupts being handled/functions being run.

However, I think I agree with your initial assessment that the cypress library most likely has a bug causing this delay to fluctuate with scan response data.

0 Likes
Anonymous
Not applicable

Thanks a lot for your help! The latest version should be v3.30a (according to Cypress' website) and yes I am using this version.

Is there any possibility to get an answer from one of the Cypress guys?

Anonymous
Not applicable

Sorry, you're right; the version is 3.30 for the BLE component (I misread that pretty bad )

Potentially, you could open a case with them to get some direct communication with the Cypress FAEs on determining the cause of the issue.

0 Likes