beautypg.com

1 low power modes using sniff, Low power modes using sniff – Rainbow Electronics DAB-WLS-C21 (BlueTooth) User Manual

Page 15

background image

www.EZURiO.com

DSH_BTM402_0v9 BISM2 PA Data Sheet.DOC

© 2007 EZURiO Ltd

15

Typical current consumption is given in Section 4.1.

The current drain while waiting for a connection or discoverable mode is about 30 times higher than

in idle mode. This is when the page/inquiry scan duty cycle is 100%. These modes give the quickest

response to a page or inquiry request from a remote peer.

It is possible to reduce the duty cycle down to as low as 0.5% at the expense of response time. The

response time can be specified via S Registers 508 and 510 for page and inquiry respectively, where

the worst case response time can be as high as 2.5 seconds. Then the duty cycle can be varied by

changing the value of S Registers 509 and 511 appropriately.

For example, if S Register 508 and 510 are both set to 1000ms and S Register 509 and 511 are both

set to 11ms then the duty cycle is reduced to 1%, this means that average current drain at 5.0v will

be 2% of 65mA plus the normal idle mode current, that is, it is as low as 2.75mA. However, in this

case, it can take up to 1 second to establish a connection.

The connected state current consumption while a master or slave can be considerably reduced by

enabling Sniff mode, described in detail in the next section.

When a Bluetooth connection has been made, the units in the connection will use internal

measurements of the signal quality to implement power control, reducing the transmit power at each

end of the link to a level sufficient to maintain the connection. For this reason power consumption

will vary with range.

8.1

Low Power Modes using Sniff

Bluetooth connections are master/slave in nature. A master sends packets and a slave has to

acknowledge that packet in the next timeslot. Timeslots in Bluetooth are 625 microseconds wide. This

implies that a master will always know when packets will be sent and received, which further means

it is able to optimise power usage by switching on power hungry circuitry only when needed.

A slave on the other hand does NOT have prior knowledge of when a packet will be received and has

to assume that a packet will be received from a master on every receive slot. This means that it has

to leave its receiving circuitry on for most of the receive slot duration. This problem was identified

very early in the evolution of Bluetooth (especially since headsets spend all their time as a slave in a

Bluetooth connection) and it was solved by having a mode called Sniff, with appropriate lower layer

negotiating protocol.

Sniff mode during connection is basically an agreement between the slave and its master that data

packets will only be exchanged for N timeslots every M slots. The slave can then assume that it will

never be contacted during N-M slots, and so can switch its power hungry circuitry off. The

specification goes further by also specifying a third parameter called ‘timeout’ (T) which specifies

‘extra’ timeslots that the slave will agree to listen for after receiving a valid data packet. Put another

way, if a data packet is received by the slave, then it knows that it MUST carry on listening for at

least T more slots. If within that T slot time period another data packet is received, then the timer is

restarted. This mechanism ensures low power consumption when there is no data transfer – at the

expense of latency. When there is a lot of data to be transferred, it acts as if sniff mode were not

enabled.

It is stated above that during sniff mode, a slave listens for N slots every M slots. The Bluetooth

specification states that a master can have up to 7 slaves attached to it with all slaves having

requested varying sniff parameters. It may therefore be impossible to guarantee that each slave gets

the M parameter it requested. In light of this, the protocol for enabling sniff mode specifies that a

requesting peer specify the M parameter as a minimum and maximum value. This will allow the

master to interleave the sniff modes for all slaves attached.

For this reason, the sniff parameters are specified in the BISM II PA module via four S registers. S

Register 561 is used to specify ‘N’, S Register 562 is used to specify ‘T’ and S Registers 563/564 are

used to specify minimum ‘M’ and maximum ‘M’ respectively. Although the specification defines these

parameters in terms of timeslots, the S register values have to be specified in units of milliseconds

and the firmware does the necessary translation to timeslots.