Team,
Can you please hlep about the following question for WL1837MOD.
Thanks in advance.
Anthony
1) Latency in Bluetooth:
About every 1-10 second we see an additional latency for L2CAP data packets (DM1 packets). We have been struggling to find out why but we cannot find any other conclusion (so far) that something happens in the radio. We have turned off Wifi, BT connectability, BT discoverability and eliminated our application but we still see this additional latency from time to time. Do you have any suggestion what this could be?
2) QoS:
Because of 1) we started to look at QoS:
Trying to find information of how to implement quality of service to get a short latency when sending data.
The following HCI commands are from BT 4.0 Core specification:
HCI_QoS_Setup_Command
HCI_FlowSpecification_Command
There are also vendor specific commands:
HCI_CS_QoS_Scheduler_Configuration
(also there are some vendor specific command in our old software but I don’t think it is applicable anymore: HCI_SetQoSInterval).
Test performed so far:
a) Test 1 using device A and B:
Steps to reproduce:
1. Initiate an ACL link from A to B (A is master). This is a point-to-point connection, no other connections are enabled.
2. Send HCI_QoS_Setup_Command from A where all parameters are set as default except the latency parameter which is set to 4*625.
Results:
- Successful response from radio QoS Setup Complete event.
- Sniffed LMP message:
Role: Master
Address: 5
Opcode: LMP_quality_of_service
Transaction ID: Initiated by master
Poll Interval: 40
NBC: 3
Comment:
No matter how the latency is set, we always get poll interval 40.
b) Test 2 using device A and B
Steps to reproduce:
1. Initiate an ACL link from A to B (A is master). This is a point-to-point connection, no other connections are enabled.
2. Send HCI_FlowSpecification_Command from A where all parameters are set as default except the latency parameter which is set to 4*625 and flowDirection is set to 1 “incoming data”.
Results:
- Successful response from radio Flow Specification Complete event.
- Short latency when sending data.
- Sniffed LMP message:
Role: Master
Address: 5
Opcode: LMP_quality_of_service
Transaction ID: Initiated by master
Poll Interval: 4
NBC: 3
Comment:
We only get this successful when I send the HCI_FlowSpecification_Command using flowDirection ‘1’. After I’ve sent this I can do a preceeding HCI_FlowSpecification_Command with flowDirection ’0’ but I never see any difference in the latency for outgoing packets.
My questions are:
1. Is the suggested implementation to use the HCI_FlowSpecification_Command from master and parameter flowDirection ‘1’?
If not – how is this best implemented? Do you have an example?
2. Why do I only get a fixed poll interval for HCI_QoS_Setup_Command?
3. Could you explain the HCI_CS_QoS_Scheduler_Configuration command? I am not sure I fully follow how to use the parameters? Do you have an example?
4. Is the vendor specific command HCI_SetQoSInterval obsolete?