throbber
as) United States
`a2) Patent Application Publication co) Pub. No.: US 2002/0159401 Al
`(43) Pub. Date: Oct. 31, 2002
`
`Boger
`
`US 20020159401A1
`
`(54)
`
`MASTERLESS SLAVE / MASTER ROLE
`SWITCH IN A BLUETOOTH PICONET
`
`(57)
`
`ABSTRACT
`
`(75)
`
`Inventor: Yoel Boger, Shoham (IL)
`
`Correspondence Address:
`DR. MARK FRIEDMAN LTD.
`c/a ANTHONY CASTORINA
`SUITE 207
`2001 JEFFERSON DAVIS HIGHWAY
`ARLINGTON,VA 22202 (US)
`
`Assignee: BRIGHTCOM
`LTD.
`
`TECHNOLOGIES
`
`Appl. No.:
`
`09/840,891
`
`Filed:
`
`Apr. 25, 2001
`
`Publication Classification
`
`Int: Gl? sercenwesccnecmannnenencnemetcn HO4L 5/14
`US. C1. ccc sees ceesseesseeneseeese 370/294; 370/338
`
`The present invention discloses a method by which a new
`Bluetooth piconet is established amongst participants of an
`old Bluetooth piconet whose master has disappeared. After
`determining that the master has disappeared, one of the
`slaves is selected to take the function of the master and
`
`the Baseband layer by
`reestablishes communications at
`contacting each of the other participants. Further, the present
`invention discloses a method and an associated device for
`
`realizing point-to-multipomt communications using a Blue-
`tooth piconet by using an application adaptation layer and a
`local addressing list. Also, the present invention discloses a
`method by which point-to-multipoint communications by an
`application using a Bluetooth piconet
`is
`reestablished
`amongst participants of an old Bluetooth piconet whose
`master has disappeared. After reestablishing the piconet at
`the Baseband layer, communicationsat higher layers of the
`Bluetooth protocol stack are reestablished from the bottom
`up, that is, reestablishing communications at the LM layer
`precedes reestablishing communications at
`the L2CAP
`layer.
`
`application (s1)
`lolly to therese
`packet
`
`|
`
`|packet
`
`
`
`
`Baseband (s3)
`
`NZ
`
`LM (83)
`
`eas
`
`L2CAP(s3)
`
`ib
`application layer (53)
`olly to therese
`packet
`\v
`application (3)
`olly to therese
`
` [packet
`
`|
`
`APPLE
`APPLE
`EXHIBIT 1005 - PAGE 0001
`EXHIBIT 1005 - PAGE 0001
`
`application layer (s1)
`olly to therese
`
`
`applicationlayer (m0)
`LCID{0x43)
`olly to therese
`\7 packet
`
`L2CAP (m0)
`CH (0x03)
`lolly to therese
`\v [packet
`LM (m0)
`
`AAM_ADDR#3
`lolly to therese
`[packet
`\/7
`Baseband (mq)
`
`
`
`
`
`
`58
`
`60
`
`62
`
`64
`
`66
`
`70
`
`74
`
`76
`
`

`

`NR ineeARERaReOMonOP RieichcareehSLtenharay i
`
`terinet ca arena aime
`
`US 2002/0159401 Al
`
`Patent Application Publication Oct. 31,2002 Sheet 1 of 7
`
`islaqante© ETCUREh(PRIORART)
`
`
`
`
`
`EEEASERTboilirawhattenenacegh
`
`APPLE
`APPLE
`EXHIBIT 1005 - PAGE 0002
`EXHIBIT 1005 - PAGE 0002
`
`

`

`Patent Application Publication
`
`Oct. 31, 2002 Sheet 2 of 7
`
`US 2002/0159401 Al
`
`
`
`
`
`
`
` 09xggE0pXQ9¢0Zxyore0.00xX_&YOUMSS/NZE
`Pv9ggg8zZboy999z02Zo¢veO°00ZZae0Q8000¢00g0881O-oOv09sieeddessipQuw=QL0|oO.ZzOo.
`|pessjodgu=r}o.0Z|ZzZL0os)0|OL
`
`
`9°—Q,8,“OL0pecso}suioied1Sof
`Tas91¢ssodguvZSsljodQUIzLssjjodQu0uo"J0|$
`
`
`
`
`
`
`@synod
`
`APPLE
`APPLE
`EXHIBIT 1005 - PAGE 0003
`EXHIBIT 1005 - PAGE 0003
`
`
`

`

`Oct. 31, 2002 Sheet 3 of 7
`
`US 2002/0159401 Al
`
`Patent Application Publication
`
`€AHNOld
`
`p=ddavWY0}SH4spues1s]0¢|ainpeooid
`
`jauOd!dMAUeu}sulolGs]Pe|G=ydqvWw0}SH4spuss|S]2
`
`
`Buluiofpue
`
`APPLE
`APPLE
`EXHIBIT 1005 - PAGE 0004
`EXHIBIT 1005 - PAGE 0004
`
`
`

`

`Patent Application Publication Oct. 31,2002 Sheet 4 of 7
`
`US 2002/0159401 Al
`
`LCIDCH
`UnitNameAMADDR
`
`e
`
`_
`
`*
`
`o-)
`
`w
`
`LO
`
`Ww
`
`FIGURE4
`
`APPLE
`APPLE
`EXHIBIT 1005 - PAGE 0005
`EXHIBIT 1005 - PAGE 0005
`
`

`

`Patent Application Publication
`
`Oct. 31, 2002 Sheet 5 of 7
`
`US 2002/0159401 Al
`
`FIGURE 5
`
`application (s1)ato therese
`
`packet
`
`7 packet
`
`application layer ($1)
`olly to therese
`
`application layer (m0)
`
`LCID(0x43)
`
`olly to therese
`packet
`
`L2CAP (m0)
`
`CH (0x03)
`olly to therese
`packet
`
`
`
`
`
`64
`
`
`
`AM_ADDR=3
`olly to therese
`packet
`Baseband (m0)
`
`| B
`
`aseband (s3)
`
`L2CAP(s3)
`
`“J
`
`application layer (s3)
`olly to therese
`packet
`
`76
`
`application (s3)
`olly to therese
`packet
`
`APPLE
`APPLE
`EXHIBIT 1005 - PAGE 0006
`EXHIBIT 1005 - PAGE 0006
`
`

`

`Patent Application Publication Oct. 31,2002 Sheet 6 of 7
`
`US 2002/0159401 Al
`
`FIGURE 6
`
`
`
`
`|
`
`‘010x417 [0x01
`Ky
`
`baseband(s1) informs application adaptation layer (s1) that Max is gone
`application adaptation layer(s1) informs application(s) that Max is gone
`
`
`
`baseband(s3) informs application adaptation layer (s3) that Max is gone
`application adaptation layer(s3) informs application(s3) that Max is gone
`
`
`baseband(s3) sends LCl_SwitchCompleteEvent( to LM(s3)
`
`baseband(s5) sends LCLSwitchCompleteEvent() to LM(s5)
`application adaptation layer(s5) informs application(s5) that Max is gone
`baseband(s5) sends LCLSwitchCompleteEvent() to LM(s5)
`
`addressing list ($1), ($3) and (s5) are amended
`
`
`10 /Ox44 [0x04|
`
`‘0!
`
`
`baseband(s1) sends LCI_SwitchCompleteEvent() to LM(st)
`
`
`
`LM(s1) connects to LM(s3), new CH parameters assigned
`
`[LiM(s1), (s3) send HC|_SwitchCompleteEvent() to L2CAP(s1), (s3)
`
`addressinglist (s1) and s(3) are amended
`
`
`
`
`
`
`LM(s1) connects to LM(s5), new CH parameters assigned
`
`LM(s1), (s5) send HCLSwitchCompleteEvent() to L2CAP(s1), (s5)
`
`
`
`
`Therese 3 [0x43 [0x03 [Olly
`10 [0x40 10x00
`
`Fay [0x05 [Fay 5. (51 -
`
`
`
`
`
`
`$1
`Therese
`13 |0x43 Qx03 Olly |
`7 +0 10x40 0x00|
`Fay (5{0x45 |0x05 [Fay
`_
`3] -
`4
`
`-
`
`APPLE
`APPLE
`EXHIBIT 1005 - PAGE 0007
`EXHIBIT 1005 - PAGE 0007
`
`80
`
`82
`
`84
`
`86
`
`83
`
`90
`
`92
`
`94
`
`96
`
`98
`
`100
`
`102
`
`104
`
`106
`
`108
`
`

`

`Patent Application Publication
`
`Oct. 31, 2002 Sheet 7 of 7
`
`US 2002/0159401 Al
`
`
`peerPURORESES
`
` Lsv7.|Suissovery|7
`
`
`wegsoley*wo}erzeadpd
`v8siea
`he,~.Ob
`
`
`
`niclaa
`
`#98097
`
`Li|
`
`
`[Tarrenarton*2,hotatectre
`awa30See
`|1G30léadTD?
`
`APPLE
`APPLE
`EXHIBIT 1005 - PAGE 0008
`EXHIBIT 1005 - PAGE 0008
`
`
`
`
`
`

`

`US 2002/0159401 Al
`
`Oct. 31, 2002
`
`MASTERLESS SLAVE / MASTER ROLE SWITCH
`longaslot is. To do this,all slaves continuously monitor the
`IN A BLUETOOTH PICONET
`system clock of the master and correct
`their individual
`clocks with an offset to match the master’s system clock.
`
`FIELD AND BACKGROUND OF THE
`INVENTION
`
`[0001] The present invention relates to hierarchy designa-
`tion within a Bluetooth piconet, and more specifically to
`selection of a master when the Master/Slave switch is
`impossible due to master disappearance. The present inven-
`tion also relates to the re-establishment of point-to-multi-
`point communications within a Bluetooth piconet after mas-
`ter disappearance.
`
`[0002] Bluetooth is a computing and telecommunications
`industry specification that describes how various electronic
`devices such as mobile phones, computers, and personal
`digital assistants can interconnect and communicate with
`each other. Ericsson Mobile Communications (Stockholm,
`Sweden) conceived Bluetooth in 1994 as a protocol enabling
`wireless communication to peripheral devices. With the
`establishment of a “special interest group” in 1998, Blue-
`tooth became an accepted standard, opening the way to
`development of technology that allows various devices to
`intercommunicate.
`
`[0003] To intercommunicate via the Bluetooth protocol,
`devices must be Bluetooth enabled, that is, they must be
`equipped with a transceiver that transmits and receives in a
`2.45 Ghz frequency band. Every Bluetooth enabled device
`has a 48-bit address called the BD_ADDR(Bluetooth device
`address) that uniquely identifies the device.
`
`[0004] Although the Bluetooth protocol uses point-to-
`point connectivity, its topology is based on ad hoc networks
`called piconets. A piconet is defined as a network of one
`master and one or more slaves. Up to seven slaves can be
`active at any one time.
`
`[0005] Communication within a piconet is based on a
`Time-Division Duplex (TDD) scheme. Timeis divided into
`slots of 625 microseconds. Transmission begins only at the
`beginning of a slot and occurs within a period of one or more
`slots. Devices transmit sequentially using a synchronous
`query-response scheme. Master transmissions start exclu-
`sively at even-numbered slots and slave transmissionsstart
`exclusively at odd-numbered slots. During a slot or an odd
`multiple of slots, information is transmitted as a packet.
`Rather than transmitting at one constant frequency, fre-
`quency hopping amongst 79 frequencies at a rate of 1600
`hops/s is used.
`
`[0006] The master is the most important entity in the
`piconet. The frequency hopping scheme and the channel
`access code of a piconetis defined based on the BD_LADDR
`of the master of the piconet. The system clock of the master
`determines the phase in the hopping sequence. During
`formation of the piconet the master assigns each slave an
`AM_ADDR(active member address), an integer from 1
`through 7, which uniquely identifies the slave within the
`piconet. All parameters necessary for communications in the
`piconet taken together are called the communication param-
`eters and include the frequency hopping scheme and the
`channel access code.
`
`[0007] Once a piconet has been established, all members
`of the piconet must be synchronized and must have an
`identical time reference, that is when a slot begins and how
`
`[0008] The master acts as the hub of the piconet. The
`master initiates a communication to a specific slave and
`allocates a slot or slots during which that slave can reply.
`During the allocated slot or slots, the slave replies. Slaves
`communicate only in slots allocated by the master.
`
`[0009] Transmission is done in packets. Each packet is
`made up of three parts: an access code, a packet header and
`a payload. The access code includes synchronization infor-
`mation and a code for identifying the transmission as
`belonging to a piconet or as being a step in the piconet
`formation process. The packet header includes information
`for packet acknowledgement and the AM_ADDRof the
`device for which the packet is intended. The payload con-
`tains the transmitted data and, optionally, a data header.
`
`[0010] Each device operating under the Bluetooth proto-
`col has an internal hierarchy, the Bluetooth protocol stack.
`Each layer of the stack is implemented as hardware, soft-
`ware or a combination thereof. A Bluetooth protocol stack is
`depicted in FIG. 1.
`
`{0011] The lowest layer is a RF transceiver 10. Overlaying
`RFtransceiver 10 is a Basebandlayer 12. Baseband layer 12
`manages physical channels and links. The Baseband proto-
`col is implemented as a link controller, and works with a
`Link Manager layer 14 (LM) for carrying out link level
`routines like link connection. Baseband layer 12 handles
`packets and applies the TDD scheme. Overlaying Baseband
`layer 12 is LM 14. LM 14carries out link setup, authenti-
`cation, link configuration and other protocols.
`
`{0012] Overlaying LM 14 is a Logical Link Control and
`Adaptation Protocol (L2CAP) layer 16. L2CAP 16 provides
`the connection-oriented and connectionless data services to
`upper layer protocols with protocol multiplexing capability,
`segmentation and reassembly operations and group abstrac-
`tions. Overlaying L2CAP 16 is application layer 18, the
`program that the operator of the device uses.
`
`(0013] Each layer of a device communicates with the
`corresponding layer of another device, that is, for example,
`the L2CAP layer of a device 1 sends information to the
`L2CAP layer of a device 2.
`
`[0014] Piconet formation is a well-defined sequential pro-
`cess that occurs between the Basebandlayers of the devices
`and is described by way of the following cxample. The
`Bluetooth-enabled devices unit @ and unit 1 are activated
`and are within range of each other. Unit 0 issues an Inquire
`packet using an inquiry frequency-hopping scheme. Since
`unit 0 issucs the Inquire transmissionit is by definition the
`unit which shall be master of the incipient piconet. Unit 1 is
`in a discoverable mode (inquiry scan state). Since unit 1 is
`receiving the Inquire transmissionit is by definition the unit
`which shall be a slave in the incipient piconet. Unit 1
`receives the Inquire transmission and responds with an FHS
`packet, which has the BD_ADDRandclocksetting of unit
`1.
`
`[0015] Unit 0 pages unit 1 using the BD_ADDR and,
`optionally, the clock setting of unit 1. If it is in a connectable
`mode, unit 1 enters a slave response state and sends a first
`reply to unit 0. Unit 0 sends an FHS packet with its own
`
`APPLE
`APPLE
`EXHIBIT 1005 - PAGE 0009
`EXHIBIT 1005 - PAGE 0009
`
`

`

`US 2002/0159401 Al
`
`Oct. 31, 2002
`
`BD_ADDRandits clock setting to unit 1. Unit 1 sends a
`second reply, confirming receipt of the FHS packet. The
`active slave state, the AM_ADDR and the BD_ADDRof
`unit 1 are noted in the table of active links of unit 0. In the
`table of active links of unit 1 the master status,
`the
`BD_ADDRand clock offset of unit 0 are noted.
`
`[0016] After these steps, a piconet exists where unit 0 is
`the master and unit 1 is the slave. Vurther intrapiconet
`communication is done using the communication param-
`eters of the piconet, that is a frequency hop schemecalcu-
`lated from the master BD_ADDRwith a phase determined
`by the clock of the master. The slave adapts its own clock
`with a timing offset to match the clock of the master. Further,
`transmissions in the piconet include a channel access code
`(CAC) derived from the master BD ADDRto identify the
`packet as belonging to the piconet.
`
`If other devices are in range, unit 0 can repeat the
`[0017]
`process above until a maximum of seven AM_ADDRshave
`been assigned to seven different devices. The master of a
`piconet uses the AM_ADDRto direct a packet to one of the
`slaves of the piconet. A slave responds only to packets
`addressed to it.
`
`[0018] According to the Bluetooth protocol it is possible
`for a master and a slave to switch roles. During an allocated
`slot, the master or a slave transmits a LMPSwitch_Req
`command requesting that the slave become the master of the
`piconet. If the switch is agreed to by transmission of a
`LMP_accepted command,a role switch is performed.
`
`[0019] Consider a piconet wherein a unit 0 is the master,
`designated m0, and unit 1 and unit 2 both are slaves
`designated sl and s2, respectively. mO and sl agree to
`exchange roles, whereby s1 shall become the new master m1
`and the master m0 shall become a slave, sO. mO and sl
`continue using the communication parameters ofthe original
`piconet (the frequency hopping scheme based on the unit 0
`BD_ADDRandclock), but perform a time-division switch,
`that is unit 1 transmits starting at even-numbered slots and
`unit 0 starting at odd-numberedslots.
`
`Thefirst step is to realign slot boundaries according
`[0020]
`to the clock of the new master m1 (unit 1). This is done by
`a LMPslot_offset command sent from the new master m1
`(unit 1) to the slave sO (unit 0). The new master m1 (unit 1)
`sends an FHS packet assigning a new AM_ADDRto the
`new slave sO (unit 0). The slave sO (unit 0) transmits an ID
`packet to acknowledge the receipt of the FHS packet. Both
`the new master (m1) unit 1 and the slave sO (unit 0)
`thereafter switch to use the slot boundaries,
`frequency
`hopping and timing as dictated by the new master. Unit 0
`then transfers the AM_ADDRsandother salient information
`concerning the other slaves of the piconet to the new master
`(unit 1).
`
`[0021] Unit 1 further enforces a piconet switch on each
`slave separately. The new slot alignmentoffset, the new
`AM_ADDRand other information are sent to each slave
`using the original piconet communication parameters. Upon
`acknowledgment, that slave switches to the new piconet
`communication parameters, as dictated by unit 1.
`
`[0022] At anytime after establishing communications, a
`master and a slave can negotiate a time-out period (Super-
`vision Time Out). After receipt of each packet, the timer
`dedicated to the time-out periodis reset to zero. If one of the
`
`two devices does not receive any packets from the other
`within the time-out period, that device assumesthat the link
`to the other device has been lost and the other device is
`deleted from its table of active links.
`
`Itcan occur that for some reason the master of the
`[0023]
`piconet disappears. This happensif the master experiences a
`powerblackout, is physically damagedor is turnedoff by the
`user. In the existing Bluetooth protocol, every slave of the
`piconet would continue anticipating a transmission from the
`master. Without a master acting as the hub of the piconet,
`information cannot be transferred and the piconet ceases to
`function. As each slave successively reaches its own time-
`out period without receiving any packets from the master, it
`stops to be a slave in the piconet and ultimately the piconet
`ceases to exist.
`
`[0024] There are instances whenthis situation is undesir-
`able. or example, in a multiplayer game played through a
`Bluetooth piconet, the participants who were slaves may
`want to continue playing the game despite the unexpected
`disappearance of the device designated as master of the
`piconet.
`
`[0025] There is a need for a method that allows a Blue-
`tooth piconet to continue functioning after the master of the
`piconet unexpectedly disappears. There must be method to
`reconstitute the piconet in a way that is transparent to the
`user and to the application.
`
`SUMMARYOF THE INVENTION
`
`[0026] The above and other objectives are achieved by the
`innovative methods and the innovative device provided by
`the present invention.
`
`[0027] As described above, the Bluetooth protocol allows
`establishment of a Bluetooth piconet where the master acts
`as a hub for all communications between units of the
`
`piconet. If the master disappears, communications between
`all other units ceases. The use of the teachings of the present
`invention allows a piconet to be established using the slaves
`of a Bluetooth piconet of which the master has disappeared.
`
`[0028] Further, there exist applications that rely on point-
`to-multipoint communications. In such cases it is preferable
`that the point-to-point topology of the piconet be hidden
`from the application. The use of the teachings of the present
`invention allows an application that relies on point-to-
`multipoint communications to use a Bluetooth piconet with-
`out needing any knowledge of the piconet. Furthermore, the
`use of the teachings of the present invention allows such an
`application to continue running with only slave units when
`the master of the piconet disappears without the application
`knowing that the master has disappeared.
`
`[0029] According to the teachings of the present invention
`there is provided a method of establishing a new Bluetooth
`piconet amongst the slaves of an old Bluetooth piconet after
`the disappearance of the master of the old Bluetooth piconet
`by a) determining that
`the master has disappeared; b)
`selecting one of the slaves to be a new master; and c)
`establishing the new Bluetooth piconet by the new masterat
`the Baseband layer.
`
`[0030] According to a further feature of the present inven-
`tion, the disappearance of the master is determined by each
`slave independently waiting a period of time after cessation
`
`APPLE
`APPLE
`EXHIBIT 1005 - PAGE 0010
`EXHIBIT 1005 - PAGE 0010
`
`

`

`US 2002/0159401 Al
`
`Oct. 31, 2002
`
`of transmissions from the old master, and where the first
`slave that completes waiting its period of time is selected as
`the new master.
`
`[0031] According to a still further feature of the present
`invention, the period of time each slave waits is predeter-
`mined and/oridentical for all slaves.
`
`[0032] According to a still further feature of the present
`invention, each slave is configuredto start waiting its period
`of time at a different moment.
`
`[0033] According to a further feature of the present inven-
`tion, each slave has a) a first timer set to overflow after
`counting a first period of time and to reset upon receipt of a
`transmission from the old master to that slave; b) a second
`timer configured to start counting when the first
`timer
`overflows,
`to overflow after counting a second period of
`time and to reset upon receipt of transmission from the old
`master to any slave; and wherein the slave whose second
`timer overflowsfirst is selected as said new master.It is often
`
`preferable that the second period of timeis at least as great
`as the first period of time to guarantee that the old master has
`truly disappeared from the piconet and has not just moved
`out of transmission range of one of the slaves.
`
`[0034] There is also provided accordingto the teachings of
`the present
`invention a method for establishing a new
`Bluetooth piconet amongst the slaves of an old Bluetooth
`piconet after the disappearance of the old master of the old
`Bluetooth piconet by a) selecting one of the slaves to be a
`new master; b) designating the other slaves of the old
`Bluetooth piconet as slaves of the new Bluetooth piconet; c)
`the new master transmitting new communication parameters
`for the new Bluetooth piconet sequentially to each of the
`new slaves beginning at slots reserved for master transmis-
`sions using communication parameters of the old piconet;
`and d) switching each of the slaves to use the new commu-
`nication parameters.
`
`[0035] According to a further feature of the present inven-
`tion each slave switches to use the new communication
`
`parameters upon receipt of the new communication param-
`eters from the new master. Alternatively, according to a
`further feature of the present invention each slave has a) a
`first timer set to overflow after counting a first period of time
`and to reset upon receipt of a transmission from the old
`master to that slave; and b) a flag which is set to TRUE when
`the first timer overflows and the flag is set to FALSE upon
`receipt of any transmission fromthe old master; and wherein
`a slave switches to the new communication parameters upon
`receipt thereof from said new masteronlyif said flag is set
`to TRUE.
`
`[0036] According to a further feature of the present inven-
`tion,
`the new master transmits the new communication
`parameters to each AM_ADDRofthe possible AM_ADDRs
`with the exception of the old AM_ADDRofthe new master.
`Altematively, according to a further feature of the present
`invention, the new master transmits the new communication
`parameters only to AM_ADDRsthat were assigned in the
`old piconet.
`
`[0037] According to a further feature of the present inven-
`tion the new master assigns a new AM_ADDRto eachofthe
`slaves joining the new piconet, where preferably the new
`AM_ADDRofeach slave is identical to its AM_ADDRin
`the original piconet.
`
`Thereis also provided accordingto the teachings of
`[0038]
`the present invention a Bluetooth enabled device configured
`to allow point-to-multipoint communications by an applica-
`tion betweenat least two units using a Bluetooth piconet by
`using an application adaptation layer. The application adap-
`tation layer receives packets from the application wherein
`each packetis labeled with a nameof the source unil and the
`name of the destination unit and the application does not
`need to be aware of the existence of the piconet.
`
`[0039] According to a further feature of the present inven-
`tion, the device also has a local addressing list accessible to
`the application adaptation layer. The local addressing list
`contains at least the name and the AM_ADDRofall other
`units participating in the Bluetooth piconet.
`
`[0040] According to a further feature of the present inven-
`tion, the local addressing list is accessible to the L2CAP
`layer. In this case, the local addressing list also contains the
`LCIDs corresponding to the logical
`links between the
`L2CAP layer of the device and the L2CAP layer of other
`units participating in the Bluetooth piconet.
`
`[0041] According to a further feature of the present inven-
`tion, the local addressing list is accessible to the LM layer.
`In this case, the local addressing list also contains the CHs
`corresponding to the logical links between the LM layer of
`the device and the LM layer of other units participating in
`the Bluetooth piconet.
`
`[0042] There is also provided accordingto the teachings of
`the present invention a method of restoring point-to-multi-
`point communications by an application amongst the slaves
`of an old Bluetooth piconet after the disappearance of the
`master of the old Bluetooth piconet by a) determining that
`the master has disappeared; b) selecting one of the slaves to
`be a new master; and c) establishing the new Bluetooth
`piconet by the new master at the Baseband layer; and d)
`establishing communications between the units at at least
`one layer of the Bluetooth protocol stack other then the
`Basebandlayer.
`
`[0043] According to a further feature of the present inven-
`tion, the application is informed of the disappearance of the
`master of the old piconet.
`
`[0044] According to a further feature of the present inven-
`tion, the Basebandlayer of a unit informsits respective LM
`layer of the fact that a new Bluetooth piconet has been
`established.
`
`[0045] According to a further feature of the present inven-
`tion, the LM layer of a unit informs its respective L2CAP
`layer of the fact that a new Bluetooth piconet has been
`established.
`
`[0046] According to a further feature of the present inven-
`tion, the new master is the unit that establishes communi-
`cations between the units at the layers of the Bluetooth
`protocol stack other then the Baseband layer. The new
`master establishes the communications either serially, that
`communications are established at all relevant layers of one
`unit before communications are established with another
`unit, or in parallel, where the communications are estab-
`lished to one layer with a numberof units, before proceeding
`to establishing communications with other levels.
`
`[0047] According to a further feature of the present inven-
`tion,
`the relevant layers include at least the LM and the
`
`APPLE
`APPLE
`EXHIBIT 1005 - PAGE 0011
`EXHIBIT 1005 - PAGE 0011
`
`

`

`US 2002/0159401 Al
`
`Oct. 31, 2002
`
`L2CAP layers. According to a still further feature of the
`present invention, establishing communications with the LM
`layer of a unit precedes establishing communications with
`the L2CAP layer of that unit.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`[0048] The invention is herein described, by way of
`example only, with reference to the accompanying drawings,
`where:
`
`[0049] FIG. 1 (priorart) is a schematic description of a
`Bluetooth protocol stack;
`
`[0050] FIG. 2 showsthe process of selecting a slave to
`perform the masterless slave to master role switch according
`to the present invention;
`
`[0051] FIG. 3 shows the process of a new master recon-
`stituting a piconet during the masterless slave to master role
`switch according to the present invention;
`
`[0052] FIGS. 4a-4dare the addressing tables according to
`the present invention of a piconet composed of a master and
`three slaves;
`
`[0053] FIG. 5 is the flow of a packetthat is transmitted by
`one slave to a second slave according to the present inven-
`tion;
`
`[0054] FIG. 6 shows the sequential changes occurring in
`the addressing tables of a piconet during piconet reconsti-
`tution; and
`
`[0055] FIG. 7 is a schematic description of the protocol
`stack of a device of the present invention.
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`[0056] The principles and use of the methods according to
`the present invention may be better understood with refer-
`ence to the drawings and the accompanying description.
`Before turning to details of the present invention, it should
`be appreciated that the present invention provides two sets
`of features, which when combined provide a particularly
`useful method.
`
`[0057] The first feature relates to a method whereby a
`slave of a Bluetooth piconet performs a masterless role-
`switch after disappearance of the master. The first feature
`will be described with particular reference to FIGS. 2 and
`3.
`
`[0058] The second feature relates to a method that allows
`a point-to-multipoint application running on a Bluetooth
`piconet to continue functioning after disappearance of the
`piconet master. The second features will be described with
`reference to FIGS. 4 through 6.
`
`[0059] Recovery from the loss of the piconct master
`consists of the steps of designating one of the slaves as the
`new master followed by imposition of this new designation
`on the other slaves.
`
`[0060] As described above, each device in a piconet has a
`time out parameter (T_supervision) whichis the time used
`to decide if a master-slave link is lost. According to the first
`feature of the present invention, T_supervision is identical
`
`for all slaves in the piconet. Additionally, each slave device
`of the piconet is equipped with at least two timers, T1 and
`T2, and a T1_flag.
`
`[0061] T1 is a timer uscd to count T_supervision and is
`reset each time the slave receives a transmission addressed
`to it from the master. T1 overflows when T_supervision is
`reached. Once T1 has overflowed it is reset to zero and
`
`begins counting anew. The T1_flag is set to TRUL. The
`T1_flag is set to FALSE anytimethe slave receives a packet
`sent by the master to any one of the slaves of the piconet,
`including itself.
`
`[0062] T2 begins counting when T1 overflows. T2 is reset
`any time the slave receives a packet sent by the master to any
`one of the slaves of the piconet, includingitself.
`
`[0063] Once reset, T2 resumes counting only when T1
`again overflows.
`
`[0064] T2 overflows when a predetermined number of N
`slots is reached. All slaves in the piconet have the same value
`of N. When the T2 counter of a slave overflows, that slave
`initiates the masterless role-switching procedure.
`
`[0065] This arrangement of two counters ensures that a
`reasonable delay is maintained before a masterless role-
`switching procedureis initiated and that no two T2 counters
`of one piconet can overflow at the same time.
`
`[0066] The counting of the T1 and T2 timers in a piconet
`composed of one master m0 andthree slaves, 51, s2 and s3
`is schematically depicted in FIG. 2. All timers T1 and T2 are
`set to overflow after counting ten slots (T_supervision=N=
`10).
`
`[0067] At slots 0, 2 and 4 s1, s2 and s3 are respectively
`polled by the master, m0, resetting T1(s1), T1(s2) and
`T1(s3).
`
`[0068] At slot 10 T1(s1) overflows and T1_flag(s1)=
`‘TRUE. 'T'1(s1) is reset and 'T2(s1) begins counting.
`
`[0069] At slot 12 T1(s2) overflows and T1_flag(s2)=
`TRUE. T1(s2) is reset and T2(s2) begins counting.
`
`[0070] Atslot 14 m0 polls s3.T1(s3) is reset. T1_flag(s1)=
`FALSE and T1_flag(s2)=FALSE. T2(s1) and T2(s2) are
`reset.
`
`[0071] At slot 16, mO disappears and no longer transmits
`information.
`
`[0072] At slot 20, T1(s1) overflows and T1_flag(s1)=
`TRUE. T1(s1) is reset and T2(s1) begins counting.
`
`[0073] At slot 22, T1(s2) overflows and T1_flag(s2)=
`TRUE. T1(s2) is reset and T2(s2) begins counting.
`
`[0074] At slot 24, T1(s3) overflows and T1_flag(s3)=
`TRUE. T1(s3) is reset and T2(s3) begins counting.
`
`[0075] At slot 30, T2(s1) overflows. Since T1_flag(s1)=
`TRUE,s1 initiates the masterless role-switching procedure
`according to the first feature of the present invention.
`
`[0076] The slave initiating the masterless role-switching,
`procedure, sl, first performs a time-division switch and
`begins to transmit starting at even-numberedslots, being the
`slots reserved exclusively for use by the piconet master
`using the original piconet slot boundaries and original
`piconet frequency hopping scheme. The first packet trans-
`
`APPLE
`APPLE
`EXHIBIT 1005 - PAGE 0012
`EXHIBIT 1005 - PAGE 0012
`
`

`

`US 2002/0159401 Al
`
`Oct. 31, 2002
`
`mitted by the slave initiating the masterless role-switch will
`reset the T2 timer ofall the slaves of the piconet and thus
`will avoid a situation where another slave will also attempt
`to initiate a masterless role switch. The slave s1 attempts to
`switch all the potential slaves of the former piconet using
`each oneofthe six available AM_ADDRs,the seventh being
`ils Own original AM_ADDR. In the present example,
`the
`piconet switch will be acknowledged only for AM_ADDRs
`2 and 3, corresponding to slaves s2 and s3, respectively.
`
`Just as in a standard master-slave role switch, each
`[0077]
`FHS packet
`is addressed to a slave using its original
`AM_ADDR. In the packet payload, the new slot alignment
`offset, the new AM_ADDRandother informationis sent to
`each slave using the original piconet parameters. In prin-
`ciple, the new master can allocate new AM_ADDRsto each
`one of the slaves that joins the new piconet. It is however
`preferable that the slaves retain the same AM_ADDRin the
`new piconet as in the original piconet.
`
`In a first embodimentof the first feature of the
`[0078]
`present invention the addressed slave acknowledges receipt
`of the FHS packet immediately and switches to the new
`piconet parameters as dictated by the new master.
`
`Ina second embodimentofthe first feature of the
`[0079]
`invention the addressed slave checks its own
`present
`T1_fiag. If the T1_flag is FALSEit meansthat as far as that
`unit is concerned, the original master is sill functioning and
`piconet integrity is not compromised. In such a case it does
`not accept the piconet switch. If the T1_flag is TRUE the
`slave acknowledges receipt of the FHS packet, and

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket