The LMP protocol defines a Quality-of-Service (QoS) parameter called Tpoll. This parameter sets the maximum time among transmissions that may exist for a Bluetooth device, expressed in time slots.
A slave will only transmit once per round robin cycle when it receives either a POLL packet or a data packet from the master. However, if the slave sends a NULL packet (no data to transmit), the master will wait a period of time equals to Tpoll before sending a new POLL packet to the slave.
These periods of inactivity provide a rough QoS mechanism. This has some benefits: in terms of fairness, it can control the latency and the bandwidth allocation directly on the link, reduce interferences on the environment and maintains the synchronism between the master and the slaves. Finally, it helps to reduce energy consumption of Bluetooth device, being this feature of great importance in mobile devices which also may have some impact on performance.
Despite this variety of side effects, its default value is not set in the Bluetooth specification. Notwithstanding many manufacturers set its value to 40 time slots which is the value that presumably enables a Best Effort type of service.
