I2C Slave Polling Interval

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

cross mob
Anonymous
Not applicable

I'm using SDK 2.2 with the TAG3 eval board.


I'm trying to work out how quickly I can poll an I2C slave.  Is the shortest duration between polls restricted to 12ms? (12ms is the shortest duration you can set the fine timer field in the BLE_PROFILE_CFG constant).  To use this I would poll my slave in the fine timer callback. 

Or, is there another way to poll I2C slaves more frequently?  Thanks!

0 Likes
1 Solution
Anonymous
Not applicable

Hello Lewis,

From the developers:

1.  If you need to poll faster than the 12msec, this may be a bit difficult and still meet BLE timing.

2.  As an alternative, you would need to use the BT Clock ( A very low level activity that will be associated with meeting BLE Timing) but you may not be able to meet BLE timing.

3.  The BT Timer might get delayed because of you polling faster than 12msec

Hope this helps.

Thanks,

JT

View solution in original post

0 Likes
3 Replies
Anonymous
Not applicable

Hello Lewis,

From the developers:

1.  If you need to poll faster than the 12msec, this may be a bit difficult and still meet BLE timing.

2.  As an alternative, you would need to use the BT Clock ( A very low level activity that will be associated with meeting BLE Timing) but you may not be able to meet BLE timing.

3.  The BT Timer might get delayed because of you polling faster than 12msec

Hope this helps.

Thanks,

JT

0 Likes
Anonymous
Not applicable

Hi JT,

Thanks for checking with the developers.  I believe 12msec will be absolutely fine - I just wanted to check I was running at the maximum rate possible and was using the best approach. Our application will be primarily based on polling various peripherals, as opposed to being interrupt driven. 

Thanks,
Lewis

0 Likes
Anonymous
Not applicable

Great!

Good luck on your project!

Thanks,

JT

0 Likes