cyw20706 read delay

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

cross mob
lock attach
Attachments are accessible only for community members.
maze_1672671
Level 4
Level 4
First like received 25 replies posted 25 sign-ins

Hello all

 

in our setup we have a cyw20706 central and a cyble-214015 peripheral, with a 500 bytes characteristic

 

Both have the same connection parameters:

maze_1672671_0-1653637149207.png

and:

.conn_min_interval = 8,
.conn_max_interval = 10,

 

They share also mtu and dle:

maze_1672671_2-1653638331366.png

and

#define MAX_MTU_SIZE 512

...

.max_mtu_size = MAX_MTU_SIZE,

Here (lettura.png) what happens with wiced_bt_gatt_send_read(GATT_READ_BY_HANDLE):

lettura.png

In the first row the pin goes high just before calling wiced_bt_gatt_send_read() and low when the event GATTC_OPTYPE_READ is received

In the second row the pin goes high and low (A1) when CYBLE_EVT_GATTS_READ_CHAR_VAL_ACCESS_REQ is received

So:

  • it takes 11.2 ms from wiced_bt_gatt_send_read and CYBLE_EVT_GATTS_READ_CHAR_VAL_ACCESS_REQ 
  • then another 33.9 ms from CYBLE_EVT_GATTS_READ_CHAR_VAL_ACCESS_REQ  and GATTC_OPTYPE_READ 

 Can you explain the two timings?

How can we shorten the 45.1 ms of total time spent in the reading procedure?

0 Likes
1 Solution
maze_1672671
Level 4
Level 4
First like received 25 replies posted 25 sign-ins

In the psoc doc I found that CYBLE_EVT_GATTS_READ_CHAR_VAL_ACCESS_REQ " It is triggered on server side when client sends read request"

So, before A1 there is the "preparation" and after there is the data exchange

View solution in original post

0 Likes
3 Replies
Owen_Zhang123
Moderator
Moderator
Moderator
5 questions asked 500 solutions authored 250 sign-ins

Could you catch some OTA log to check it?

0 Likes
maze_1672671
Level 4
Level 4
First like received 25 replies posted 25 sign-ins

Hello @Owen_Zhang123 , it is a "normal" read, not an OTA

We have removed all the print because we don't want "disturbing activities"

0 Likes
maze_1672671
Level 4
Level 4
First like received 25 replies posted 25 sign-ins

In the psoc doc I found that CYBLE_EVT_GATTS_READ_CHAR_VAL_ACCESS_REQ " It is triggered on server side when client sends read request"

So, before A1 there is the "preparation" and after there is the data exchange

0 Likes