`(12) Patent Application Publication (10) Pub. No.: US 2008/0070501 A1
`Wyld
`(43) Pub. Date:
`Mar. 20, 2008
`
`US 20080070501A1
`
`(54) PAIRING OF WIRELESS DEVICES USINGA
`WIRED MEDUM
`
`(75) Inventor:
`
`Jeremy Wyld, San Jose, CA (US)
`
`Correspondence Address:
`BEYER WEAVER LLPAAPPLE INC.
`P.O. BOX 7O2SO
`OAKLAND, CA 94612-0250
`
`(73) Assignee:
`
`Apple Computer, Inc.
`
`(21) Appl. No.:
`
`11/513,692
`
`(22) Filed:
`
`Aug. 30, 2006
`
`Publication Classification
`
`(51) Int. Cl.
`(2006.01)
`H04B 700
`(52) U.S. CI. ... 455/4.1.2: 370/313; 713/168; 340/825.22
`(57)
`ABSTRACT
`Techniques that facilitate pairing of wireless devices with
`other wireless devices are disclosed. According to one
`aspect, a pair of wireless devices can be paired for wireless
`data exchange using an available wired link. Advanta
`geously, the wired link can be used to transport a pin code
`from one of the wireless devices to the other. Consequently,
`pairing of the wireless devices can be completed without
`necessitating user entry of a pin code so long as the wired
`link is available.
`
`300
`
`-
`
`302
`
`WIRED
`DATA LINK
`
`WIRELESS
`NO DATA LINK
`
`304
`
`
`
`YES
`
`RETRIEVE PIN CODE
`
`SEND THE PIN CODE OVER
`THE WIRED DATA LINK
`
`308
`
`
`
`
`
`RECEIVE
`AUTH.
`DATA
`
`NO
`
`
`
`
`
`EVALUATE AUTHENTICATION DATA
`
`
`
`1
`
`PINN-2011
`
`
`
`Patent Application Publication
`
`Mar. 20, 2008 Sheet 1 of 8
`
`US 2008/0070501 A1
`
`100
`
`106
`
`LOCAL
`WIRELESS
`NETWORK
`
`
`
`
`
`
`
`
`
`
`
`102
`
`HOST DEVICE
`
`104
`
`WRELESS
`DEVICE
`
`F.G. 1
`
`2
`
`PINN-2011
`
`
`
`Patent Application Publication Mar. 20, 2008 Sheet 2 of 8
`
`US 2008/0070501 A1
`
`ACCESSORY DEVICE
`
`OUTPUT
`DEVICE
`
`
`
`211
`
`2OO
`
`-
`
`USER INPUT DEVICE
`
`2O8
`
`MEMORY
`
`CONTROLLER
`
`WIRELESS
`MODULE
`
`TRANSCEIVER
`
`
`
`BATTERY
`
`PERIPHERAL BUS
`DRVER
`
`202
`
`206
`
`238
`
`
`
`
`
`
`
`210
`
`212
`
`215
`
`214
`
`
`
`
`
`
`
`
`
`218
`
`220
`
`224
`
`226
`
`
`
`
`
`236
`
`HOST DEVICE
`PERP ERAL BUS
`DRIVER
`
`TRANSCEIVER
`
`
`
`
`
`CONTROLLER
`
`MEMORY
`
`OPERATING SYSTEM
`
`232
`
`
`
`APPLICATION PROGRAM(S)
`
`USER
`INPUT
`DEVICE
`
`
`
`OUTPUT
`DEVICE
`
`WIRELESS
`MODULE
`PIN coDECODE
`
`240
`
`
`
`204
`
`228
`
`FIG 2
`
`3
`
`PINN-2011
`
`
`
`Patent Application Publication
`
`Mar. 20, 2008 Sheet 3 of 8
`
`US 2008/0070501 A1
`
`
`
`302
`
`WIRED
`DATA LINK
`2
`
`300
`
`-
`
`3O4.
`
`WRELESS
`NO DATA LINK
`2
`
`
`
`
`
`YES
`
`RETRIEVE PIN CODE
`
`306
`
`
`
`SEND THE PIN CODE OVER
`THE WIRED DATA LINK
`
`308
`
`
`
`
`
`NO
`
`ECEIVE
`R
`AUTH.
`DATA
`
`
`
`310
`
`
`
`EVALUATE AUTHENTICATION DATA
`
`
`
`FIG. 3A
`
`4
`
`PINN-2011
`
`
`
`Patent Application Publication Mar. 20, 2008 Sheet 4 of 8
`
`US 2008/0070501 A1
`
`AUTHENTCATED
`
`
`
`
`
`
`
`GENERATE ONE ORMORE KEYS
`
`SEND AT LEAST ONE OF THE ONE OR MORE KEYS
`
`318
`
`FIG. 3B
`
`5
`
`PINN-2011
`
`
`
`Patent Application Publication Mar. 20, 2008 Sheet 5 of 8
`
`US 2008/0070501 A1
`
`s
`
`CSTARD
`
`402
`
`
`
`
`
`WIRED
`DATA LINK
`?
`
`NO
`
`YES
`
`404
`
`NO
`
`WIRELESS
`DATA LINK
`?
`
`
`
`YES
`
`
`
`406
`
`
`
`
`
`
`
`RECEIVE
`PIN CODE
`
`YES
`
`4.08
`
`GENERATE AUTHENTICATION DATA
`BASED ON THE PIN CODE
`
`SEND THE AUTHENTICATION DATA
`
`41 O
`
`4. 412
`
`NO
`
`YES
`
`STORE THE RECEIVEDKEY
`
`414
`
`(END)
`
`FIG. 4
`
`6
`
`PINN-2011
`
`
`
`Patent Application Publication Mar. 20, 2008 Sheet 6 of 8
`
`US 2008/0070501 A1
`
`500
`
`-
`
`502
`
`
`
`
`
`PERIPHERAL
`BUS
`CONNECTION
`ESTABLISHED
`
`ALREADYS 504
`PARED
`?
`
`SEND PARING REOUEST OVER
`WRELESS NETWORK
`
`506
`
`RETRIEVE PIN CODE
`
`508
`
`PRESENT THE PIN CODE VIA
`AN OUTPUT DEVICE
`
`51O
`
`SEND THE PIN CODE OVER
`THE PERPHERAL BUS
`
`
`
`PERFORM KEY EXCHANGE
`OVER WIRELESS NETWORK
`
`512
`
`514
`
`
`
`
`
`
`
`
`
`
`
`7
`
`PINN-2011
`
`
`
`Patent Application Publication Mar. 20, 2008 Sheet 7 of 8
`
`US 2008/0070501 A1
`
`CSTARD
`
`p
`
`602 -N/PARING
`REO UEST
`RECEIVED
`OVER
`WIRELESS
`NETWORK
`?
`
`
`
`
`
`
`
`
`
`6O4
`
`PRESENT PIN CODE PROMPT SCREEN
`
`YES
`
`
`
`
`
`606
`
`PERIPHERAL
`BUS (PB)
`CONNECTION
`ESTABLISHED
`2
`
`
`
`
`
`608
`
`
`
`
`
`
`
`PN
`CODE
`RECEIVED
`OVER
`PB
`?
`
`
`
`610
`
`SUBMT PIN CODE
`
`YES
`
`NO
`
`612
`
`PERFORM KEY EXCHANGE
`OVERWIRELESS NETWORK
`
`614
`
`(END)
`
`FIG. 6
`
`8
`
`PINN-2011
`
`
`
`Patent Application Publication
`
`Mar. 20, 2008 Sheet 8 of 8
`
`US 2008/0070501 A1
`
`
`
`702
`
`
`
`CONNECTION
`TO WIRELESS
`ACCESSORY
`DEVICE
`DESIRED
`
`704
`
`LINK KEY
`FOR USE WITH
`WIRELESS
`ACCESSORY
`DEVICE
`
`
`
`
`
`
`
`
`
`
`
`
`
`700
`
`-
`
`CONNECTION NOT
`AVAILABLE
`
`708
`
`
`
`
`
`714
`
`TRANSFER DATA OVER
`WIRELESS LINK
`
`CLOSE
`CONNECTION
`
`FIG. 7
`
`9
`
`PINN-2011
`
`
`
`US 2008/0070501 A1
`
`Mar. 20, 2008
`
`PARING OF WIRELESS DEVICES USING A
`WIRED MEDIUM
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`0001. This application is related to: (i) U.S. patent appli
`cation Ser. No. 1 1/245,937, filed Oct. 7, 2005, and entitled
`“TECHNIQUES FOR PAIRING REMOTE CONTROL
`LERS WITH HOST DEVICES.” Att. Dkt. No.:
`APL1P392, which is hereby incorporated by reference
`herein; and (ii) U.S. patent application Ser. No.
`, filed
`concurrently herewith, and entitled “AUTOMATED PAIR
`ING OF WIRELESS ACCESSORIES WITH HOST
`DEVICE Att. Dkt. No.: APL1P480), which is hereby
`incorporated by reference herein.
`
`BACKGROUND OF THE INVENTION
`0002 1. Field of the Invention
`0003. The present invention relates to wireless devices
`and, more particularly, to pairing wireless devices for autho
`rized data exchange.
`0004 2. Description of the Related Art
`0005 Traditionally, headphones or earphones are con
`nected to an audio output device, such as a mobile phone,
`through a wired connection. The wired connection can,
`however, in many cases be cumbersome or annoying to the
`user. Hence, in recent times, wireless headsets or earphones
`have been developed. Typically, these wireless devices uti
`lize Bluetooth technology in order to wirelessly transmit
`data between the headset or earphone and the mobile phone.
`As a result, there is no need for a wired connection between
`the headset or earphones and the media player.
`0006 Unfortunately, however, before the wireless head
`set or earphone can operate in a wireless manner with a
`mobile phone, the wireless headset or earphone must be
`paired with the mobile phone. Pairing is a process that is
`used to associate a headset or earphone with a particular
`mobile phone, and vice versa. The pairing provides for
`secure data transfer between the devices, typically through
`use of encryption. Thus, the pairing helps ensure that the
`data being transferred is not only secured but also trans
`ferred to the appropriate recipient device. Pairing, however,
`requires that a pin code be entered in order to pair a mobile
`phone with a headset or earphone. Entering of a pin code is
`sometimes problematic for a user. For example, often mobile
`audio devices are Small handheld devices and the entering of
`a pin code can be cumbersome given the Small scale of
`mobile audio devices (e.g., mobile phones, portable music
`players, etc.). The mobile audio devices may also not offer
`a user interface that Supports ease of entry of a pin code. Still
`further, users often do not know the appropriate pin code to
`be utilized.
`0007 Moreover, similar difficulties exist for other types
`of wireless devices besides headsets and earphones. For
`example, other wireless devices that also need to undergo
`pairing include remote controllers, computing devices,
`peripheral devices, etc.
`0008 Thus, there is a need for improved techniques to
`facilitate pairing of wireless devices.
`
`SUMMARY OF THE INVENTION
`0009. The invention pertains to improved techniques that
`facilitate pairing of wireless devices with other wireless
`
`devices. According to one aspect of the invention, a pair of
`wireless devices can be paired for wireless data exchange
`using an available wired link. Advantageously, the wired
`link can be used to transport a pin code from one of the
`wireless devices to the other. Consequently, pairing of the
`wireless devices can be completed without necessitating
`user entry of a pin code so long as the wired link is available.
`0010. The invention can be implemented in numerous
`ways, including as a method, system, device, apparatus, or
`computer readable medium. Several embodiments of the
`invention are discussed below.
`0011. As a method for pairing a host device with a
`wireless device, one embodiment of the invention includes
`at least the acts of detecting a wired data link between the
`host device and the wireless device; establishing a wireless
`data link between the host device and the wireless device;
`retrieving a pin code internal to the host device; sending the
`pin code to the wireless device over the wired data link:
`receiving authentication data from the wireless device;
`authenticating the wireless device based on the received
`authentication data; and completing pairing of the host
`device with the wireless device when the wireless device has
`been authenticated.
`0012. As a host computing device with support for a
`wired data link and a wireless data link, one embodiment of
`the invention includes at least: a connection manager con
`figured to detect a wired data link between the host com
`puting device and a wireless device; a wireless transceiver
`for transferring data between the host computing device and
`the wireless device over a wireless data link, and a pairing
`manager operatively connected to the peripheral bus driver
`and the wireless transceiver. The pairing manager manages
`pairing of the host computing device and the wireless
`device. The pairing manager can operate to: (i) retrieve a pin
`code internal to the host computing device, (ii) send the pin
`code to the wireless device over the wired data link, (iii)
`receive authentication data from the wireless device, and (iv)
`authenticate the wireless device based on the received
`authentication data.
`0013 As a method for pairing a wireless device with a
`host device, one embodiment of the invention includes at
`least the acts of detecting a wired data link between the host
`device and the wireless device; detecting a wireless data link
`between the host device and the wireless device; receiving
`a pin code over the wired data link from the host device:
`generating authentication data at the wireless device based
`on the pin code; sending the authentication data from the
`wireless device to the host device; and Subsequently com
`pleting pairing of the wireless device with the host device
`when authentication is successful.
`0014. As a computer readable medium including at least
`computer program code for pairing a first wireless device
`with a second wireless device, one embodiment of the
`invention includes at least: computer program code for
`detecting a wired data link between the first wireless device
`and the second wireless device; computer program code for
`detecting a wireless data link between the first wireless
`device and the second wireless device; computer program
`code for receiving, at the second wireless device, a code over
`the wired data link from the first wireless device; and
`performing pairing operations to pair the first wireless
`device and the second wireless device based on the code
`received over the wired data link.
`
`10
`
`PINN-2011
`
`
`
`US 2008/0070501 A1
`
`Mar. 20, 2008
`
`0015. As an electronic device having wireless capabili
`ties, another embodiment of the invention includes at least
`operating the electronic device Such that pairing of the
`electronic device to another electronic device having wire
`less capabilities includes electrically sending a code over a
`physical connection between the electronic device and the
`another electronic device.
`0016 Other aspects and advantages of the invention will
`become apparent from the following detailed description
`taken in conjunction with the accompanying drawings which
`illustrate, by way of example, the principles of the invention.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`0017. The invention will be readily understood by the
`following detailed description in conjunction with the
`accompanying drawings, wherein like reference numerals
`designate like structural elements, and in which:
`0018 FIG. 1 is a block diagram of a wireless pairing
`system according to one embodiment of the invention.
`0019 FIG. 2 is a diagram of a wireless system according
`to one embodiment of the invention.
`0020 FIGS. 3A and 3B are flow diagrams of a host
`device pairing process according to one embodiment of the
`invention.
`0021
`FIG. 4 is a flow diagram of a wireless device
`pairing process according to one embodiment of the inven
`tion.
`0022 FIG. 5 is a flow diagram of a host pairing process
`according to one embodiment of the invention.
`0023 FIG. 6 is a flow diagram of an accessory pairing
`process according to one embodiment of the invention.
`0024 FIG. 7 is a flow diagram of wireless data transfer
`between a wireless host device and a wireless accessory
`device that have been successfully paired.
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`0025. The invention pertains to improved techniques that
`facilitate pairing of wireless devices with other wireless
`devices. According to one aspect of the invention, a pair of
`wireless devices can be paired for wireless data exchange
`using an available wired link. Advantageously, the wired
`link can be used to transport a pin code from one of the
`wireless devices to the other. Consequently, pairing of the
`wireless devices can be completed without necessitating
`user entry of a pin code so long as the wired link is available.
`0026. The wired link can be implemented by a wired
`medium that physically provides one or more electrical
`connections. Typically, the wired medium is used to remov
`ably connect a pair of wireless devices. As one example, the
`wired medium can be a peripheral bus (e.g., USB or
`Firewire) cable (or cord) that removably connects the pair of
`wireless devices together and permits a peripheral bus to be
`established therebetween.
`0027 Of a pair of wireless devices being paired, one of
`the wireless devices can be a wireless host device. As an
`example, the wireless host device can be a computing device
`(e.g., personal computer, media device, etc.). The other of
`the wireless devices can be a peripheral device, an accessory
`or another computing device. As examples, a peripheral
`device can be a data storage device, a printer, or an input
`device (e.g., mouse, keyboard). An accessory device can, for
`example, be a headset, earphones or remote controller. In
`
`one embodiment, a media device can be a mobile phone, a
`media player (e.g., portable media player), a docking station
`for a portable media player, or a dedicated media appliance.
`0028 Embodiments of this aspect of the invention are
`discussed below with reference to FIGS. 1-7. However,
`those skilled in the art will readily appreciate that the
`detailed description given herein with respect to these fig
`ures is for explanatory purposes as the invention extends
`beyond these limited embodiments.
`0029 FIG. 1 is a block diagram of a wireless pairing
`system 100 according to one embodiment of the invention.
`The wireless pairing system 100 includes a host device 102
`and a wireless device 104. The host device 102 is an
`electronic device, such as a personal computer, a mobile
`communication device, a portable media device, etc. The
`wireless device 104 is an electronic device that can be used
`in conjunction with the host device 102. For example, the
`wireless device 104 can be a peripheral device or an acces
`sory device that augments the capabilities of the host device
`102. As a specific example, the wireless device 104, for
`example, could pertain to a wireless headset that is used in
`conjunction with the host device 102 that provides media
`playback (e.g., audio and/or video playback). Typically, the
`wireless device 104 is coupled to the host device 102 in a
`wireless manner. That is, the wireless device 104 need not be
`physically connected with the host device 102. Instead, a
`wireless link can be facilitated by a local wireless network
`106. The wireless link connects the host device 102 to the
`wireless device 104 via the local wireless network 106. The
`local wireless network 106 is often referred to as a piconet,
`which is a short range local wireless network. One example
`of the local wireless network 106 is a Bluetooth network.
`0030. In addition, according to the invention, to facilitate
`pairing of the host device 102 with the wireless device 104,
`a cable 108 is coupled between the host device 102 and the
`wireless device 104. Typically, the cable 108 is coupled to
`the host device 102 and the wireless device 104 during a
`pairing operation. However, the cable 108 could also couple
`the host device 102 and the wireless device 104 at other
`times if so desired. Once paired, however, the host device
`102 would typically communicate with the wireless device
`104 by way of the local wireless network 106.
`0031. According to the invention, the wireless device 104
`is able to be paired with the host device 102 without
`requiring user input of a pin code. In other words, instead of
`the user of the wireless device 104 being required to enter a
`pin code, the required pin code can be delivered to the
`wireless device 104 over the cable 108. As such, the user
`does not have to remember and enter the appropriate pin
`code, thus the pairing can be performed in a Substantially
`automated manner that reduces cumbersome and tedious
`pairing actions that a user would otherwise have to perform.
`Failed pairing attempts can also be reduced given that user
`pin code entry errors no longer contribute to failed pairing
`attempts.
`0032 FIG. 2 is a diagram of a wireless system 200
`according to one embodiment of the invention. The wireless
`system 200 includes an accessory device 202 and a host
`device 204. As an example, the accessory device 202 can
`represent the wireless device 104 illustrated in FIG. 1, and
`the host device 204 can represent the host device 102
`illustrated in FIG. 1.
`0033. The accessory device 202 is typically a portable
`device that is powered by a battery 206. The accessory
`
`11
`
`PINN-2011
`
`
`
`US 2008/0070501 A1
`
`Mar. 20, 2008
`
`device 202 also includes at least a controller 208, a user
`input device 210, a user output device 211, and a memory
`212. The controller 208 controls the overall operation of the
`accessory device 202. The user input device 210 enables a
`user to interact with the accessory device 202. As an
`example, the user input device 210 can include a button that
`enables a user to place the accessory device 202 into a
`pairing mode. The user output device 211 displays informa
`tion for the user to view. As an example, the user output
`device 211 can be a display device (e.g., LCD display). The
`memory 212 provides persistent data storage for various
`elements, including program code and data. Still further, the
`accessory device 202 includes a transceiver 214. In one
`embodiment, the transceiver 214 is a radio-frequency (RF)
`transceiver. The transceiver 214 can output a wireless trans
`mission 216. Typically, the wireless transmission 216 is
`directed toward the host device 204.
`0034. The host device 204 includes a transceiver 218 for
`the wireless transmission medium 216 (e.g., wireless link).
`The host device 204 also includes at least a controller 220,
`a memory 222, an operating system 224, application pro
`gram(s) 226, an output device 228, and a user input device
`230. The controller 220 controls the overall operation of the
`host device 204. The memory 222 can be used to store
`persistent data, including program code (e.g., for the oper
`ating system 224 and the application program(s) 226) and
`data. The operating system 224 together with the controller
`220 enables the host device 204 to not only wirelessly
`receive transmissions from the accessory device 202, but to
`also Support and operate one or more application programs
`226 as well as to utilize the output device 228 and the user
`input device 230.
`0035. The host device 204 can also include a wireless
`module 232. The wireless module 232 can pertain to one or
`a set of integrated circuits that provide wireless communi
`cation functionality. The wireless module 232 is used when
`communicating over the wireless link 216 to the wireless
`module 215. In this regard, the wireless module 232 couples
`to or includes the transceiver 218. In one embodiment, the
`wireless module 232 can store a pin code (or key) 234 that
`is used to pair wireless devices.
`0036 Besides the wireless link 216, the accessory device
`202 and the host device 204 can also communicate over a
`wired link 236. The wired link 236 can be provided by a
`cable (which contains one or more wires) connected
`between the accessory device 202 and the host device 204.
`The accessory device 202 also includes a peripheral bus
`driver 238, and the host device 204 also includes a periph
`eral bus driver 240. The wired link 236 can be established
`over the cable that connects the peripheral bus driver 238 of
`the accessory device 202 to the peripheral bus driver 240 of
`the host device 204.
`0037 According to one aspect of the invention, the
`accessory device 202 can be paired with the host device 204.
`When paired, the host device 204 is responsive only to the
`accessory device 202. Hence, if there are other accessory
`devices in the vicinity of the host device 204, the host device
`204 understands to ignore wireless communications from
`Such other accessory devices. In contrast, when unpaired, the
`host device 204 is responsive to any compatible accessory
`devices in the vicinity.
`0038. Additional details are discussed below for the
`operations associated with pairing wireless devices (e.g.,
`accessory devices) to host devices. When paired, a user of
`
`the accessory device 202 can interact with the one or more
`application programs 226 operating on the host device 204.
`For example, one type of application program 226 is a media
`player program capable of playing digital media assets
`stored in the memory 222 or some other memory accessible
`by the host device 204. Hence, the user of the accessory
`device 202 can interact with the user input device 210 of the
`accessory device 202 to manipulate media playback con
`trols, such as Volume changes, next track, previous track,
`and play and pause operations associated with the media
`player program. For other types of application programs 226
`available at the host device 204, the particular controls or
`commands being provided by the accessory device 202 to
`the host device 204 can vary widely depending upon the
`application.
`0039 FIGS. 3A and 3B are flow diagrams of a host
`device pairing process 300 according to one embodiment of
`the invention. The host device pairing process 300 is, for
`example, performed by a host device. For example, the host
`device can, for example, pertain to the host device 102
`illustrated in FIG. 1 or the host device 204 illustrated in FIG.
`2
`0040. The host device pairing process 300 begins with a
`decision 302 that determines whether a wired data link exists
`between a host device and a wireless accessory device.
`When the decision 302 determines that a wired data link is
`not present, the host device pairing process 300 awaits the
`availability of a wired data link. On the other hand, when the
`decision 302 determines that a wired data link is available,
`a decision 304 determines whether a wireless data link is
`available. When the decision 304 determines that a wireless
`data link is not available, the host device pairing process 300
`awaits the availability of a wireless data link. Once the
`decision 304 determines that a wireless data link is available,
`then a pairing operation can be performed to pair together
`the host device and the wireless accessory device. Hence,
`the following processing assumes that the host device is not
`already paired with the wireless accessory device. In other
`words, the host device pairing process 300, or at least the
`following processing thereof, can be skipped if the host
`device and the wireless accessory device have already been
`paired.
`0041. In any event, when the host device pairing process
`300 continues, a pin code is retrieved 306. Typically, the pin
`code is retrieved 306 from the host device itself. That is, the
`pin code is typically a pin code stored in a data storage
`device internal to the host device. For example, as illustrated
`in FIG. 2, the pin code 235 can be stored in the wireless
`module 232. Once the pin code is retrieved 306, the pin code
`can be sent 308 over the wired data link. Here, the pin code
`is sent 308 from the host device to the wireless accessory
`device. Given that the pin code is sent 308 over the wired
`data link established through physical connection, its trans
`port is relatively secured from unauthorized interception.
`Optionally, the pin code could be encrypted for further
`security.
`0042. Next, a decision 310 determines whether authen
`tication data has been received. When the decision 310
`determines that authentication data has not been received,
`the host device pairing process 300 awaits such data. Alter
`natively, when the decision 310 determines that authentica
`tion data has been received, the authentication data is
`evaluated 312. In one embodiment, the authentication data
`can be received at the host device as part of an authentication
`
`12
`
`PINN-2011
`
`
`
`US 2008/0070501 A1
`
`Mar. 20, 2008
`
`response being provided to the host device by the wireless
`accessory device. Following the evaluation 312 of the
`authentication data, a decision 314 then determines whether
`the devices have been authenticated. When the decision 314
`determines that the wireless accessory device has been
`authenticated to the host device, the host device pairing
`process generates 316 one or more keys. Then, at least one
`of the one or more keys is sent 318 to the wireless accessory
`device. Additionally, the at least one of the one or more keys
`can be stored at the host device. In one embodiment, the one
`or more keys can be stored in the wireless module 232 of the
`host device 204. Following the block 318, the host device
`pairing process 300 ends. Also, following the decision 314
`when authentication has not been successfully verified, the
`host device pairing process 300 ends while bypassing the
`operations 316 and 318.
`0043 FIG. 4 is a flow diagram of a wireless device
`pairing process 400 according to one embodiment of the
`invention. The wireless device pairing process 400 is, for
`example, performed by a wireless accessory device. For
`example, the wireless accessory device can, for example,
`pertain to the wireless device 104 illustrated in FIG. 1 or the
`accessory device 202 illustrated in FIG. 2. The wireless
`device pairing process 400 is complementary process to the
`host device pairing process 300 illustrated in FIGS. 3A and
`3B.
`0044) The wireless device pairing process 400 begins
`with a decision 402 that determines whether a wired data
`link exists between a host device and a wireless accessory
`device. When the decision 402 determines that a wired data
`link is not present, the wireless device pairing process 400
`awaits the availability of a wired data link. When the
`decision 402 determines that a wired data link is present, a
`decision 404 determines whether a wireless data link is
`present. When the decision 404 determines that the wireless
`data link is not present, the wireless device pairing process
`400 can await its availability.
`0045. Once the decision 404 determines that a wireless
`data link is available, then a pairing operation can be
`performed to pair together the host device and the wireless
`accessory device. Hence, the following processing assumes
`that the host device is not already paired with the wireless
`accessory device. In other words, the wireless device pairing
`process 400, or at least the following processing thereof, can
`be skipped if the host device and the wireless accessory
`device have already been paired.
`0046 Accordingly, when the decision 404 determines
`that the wireless data link is available, a decision 406
`determines whether a pin code has been received. The pin
`code is provided to the wireless accessory device over the
`wired data link according to one embodiment of the inven
`tion. As illustrated in FIG. 3A, the block 308 operates to
`send the pin code to the wireless accessory device over the
`wired data link. When the decision 406 determines that a pin
`code has not been received over the wired data link, the
`wireless device pairing process 400 can await the pin code.
`After a period of time, the waiting could cease and a user
`could enter the required pin code or the wireless pairing
`process 400 could end.
`0047. In any case, once the decision 406 determines that
`a pin code has been received over the wired data link,
`authentication data is generated 408 at the wireless acces
`sory device based on the pin code. The authentication data
`is then sent 410 to the host device. In one embodiment, the
`
`authentication data is sent to the host device over the
`wireless data link. However, in an alternative embodiment,
`the authentication data could be sent over the wired data
`link. In any case, after the authentication data has been sent
`410, a decision 412 determines whether a key has been
`received from the host device. Here, assuming that the host
`device determines that the wireless accessory device is
`indeed authenticated, pairing can be completed by storing
`keys at the wireless device as well as at the host device. In
`one embodiment, these keys can be referred to as link keys,
`in accordance with Bluetooth protocol. Hence, the decision
`412 determines whether a key has been received. When the
`decision 412 determines that a key has not yet been received,
`the wireless device pairing process 400 awaits receipt of a
`key. Once the decision 412 determines that a key has been
`received, the received key is stored 414 at the wireless
`device. The received key is then subsequently used to
`authenticate the wireless device to the host device prior to
`the transfer of data between the wireless device and the host
`device. The wireless device and the host device have thus
`been Successfully paired and are able to exchange data over
`the wireless data link. Following the block 414, the wireless
`device pairing process 400 ends.
`0048 FIG. 5 is a flow diagram of a host pairing process
`500 according to one embodiment of the invention. The host
`pairing process 500 is, for example, performed by a host
`device, such as the host device 102 illustrated in FIG. 1 or
`the host device 204 illustrated in FIG. 2.
`0049. The host pairing process 500 begins with a decision
`502 that determines whether a peripheral bus connection has
`been established between the host device and the wireless
`accessory device. The peripheral bus connection is a wired
`connection and examples of which are Universal Serial Bus
`(USB) and Firewire. When the decision 502 determines that
`a peripheral bus connection has not been established, the
`host pairing process 500 can await the presence of a periph
`eral bus connection. In one implementation, the host pairing
`process 500 could be initiated automatically when a periph
`eral bus connection is established between the host device
`and a wireless accessory device.
`0050. In any event, once the decision 502 determines that
`a peripheral bus connection has been established, a decision
`504 determines whether the host device has already been
`paired to the wireless accessory device. When the decision
`504 determines that the host device is already paired to the
`wireless accessory device, the host pairing process 500 ends
`since pairing processing is not required. On the other hand,
`when the decision 504 determines that the host device is not
`already paired with the wireless accessory device, a pairing
`request is sent 506 over the wireless network from the host
`device to the wireless accessory device. A pin code is also
`retrieved 508. The pin code is retrieved 508 from the host
`device itself. For example, the host device can include a
`wireless module (e.g., wireless module 232) that stores
`within the wireless module at least one pin code. The pin
`code can be presented 510 via an output device associated
`with the host device. Here, the pin code can be presented 510
`(e.g., displayed) on the output device of the host device. The
`pin code is also sent 512 to the wireless accessory device
`over the peripheral bus. Thereafter, assuming that the host
`device is able to authenticate the accessory device through
`use of the pin code, key