U.S. patent application number 14/774664 was filed with the patent office on 2016-01-28 for providing remote interactions with host device using a wireless device.
This patent application is currently assigned to APPLE INC.. The applicant listed for this patent is APPLE INC.. Invention is credited to Nikhil M. Bhatt.
Application Number | 20160028869 14/774664 |
Document ID | / |
Family ID | 55167680 |
Filed Date | 2016-01-28 |
United States Patent
Application |
20160028869 |
Kind Code |
A1 |
Bhatt; Nikhil M. |
January 28, 2016 |
PROVIDING REMOTE INTERACTIONS WITH HOST DEVICE USING A WIRELESS
DEVICE
Abstract
A wearable device that communicates with a host device can be
used to initiate a communication functionality of the host device
(e.g., telephone calls, text messages). The wearable device can
obtain user input indicating a recipient of the communication and
in some instances content for the communication and can provide an
instruction to the host device. The host device can use the
indicated recipient and content to initiate communication and where
applicable to send the content. Recipients and/or content can be
selected from predefined lists available on the wearable
device.
Inventors: |
Bhatt; Nikhil M.;
(Cupertino, CA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
APPLE INC. |
Cupertino |
CA |
US |
|
|
Assignee: |
APPLE INC.
Cupertino
CA
|
Family ID: |
55167680 |
Appl. No.: |
14/774664 |
Filed: |
March 14, 2014 |
PCT Filed: |
March 14, 2014 |
PCT NO: |
PCT/US14/27882 |
371 Date: |
September 10, 2015 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
PCT/US2013/032498 |
Mar 15, 2013 |
|
|
|
14774664 |
|
|
|
|
Current U.S.
Class: |
455/41.2 |
Current CPC
Class: |
H04W 4/80 20180201; H04M
1/7253 20130101 |
International
Class: |
H04M 1/725 20060101
H04M001/725; H04W 76/02 20060101 H04W076/02; H04W 4/00 20060101
H04W004/00 |
Claims
1.-27. (canceled)
28. A method of sending a message, the method comprising:
receiving, by a wearable device, first user input identifying a
recipient of the message; receiving, by the wearable device, second
user input comprising information that identifies a content of the
message; transmitting, by the wearable device, the information to
the host device over a first wireless connection; and transmitting,
by the wearable device, an instruction to the host device to
transmit the message over a second wireless connection, the
instruction comprising an identifier of the recipient and of the
information that identifies the content of the message.
29. The method of claim 28 further comprising receiving, over the
first wireless connection, a confirmation from the host device that
the message was sent.
30. The method of claim 28 further comprising: displaying, in a
user interface of the wearable device, a list of contacts; and
receiving, by the user interface, selection of a contact from the
list of contacts as the recipient of the message.
31. The method of claim 28 further comprising: displaying, in a
user interface of the wearable device, a virtual keypad; and
receiving, by the user interface, a sequence of characters selected
from the virtual keypad as an address of the recipient of the
message, wherein the host device transmits the message over the
second wireless connection to the address.
32. The method of claim 28 further comprising: displaying to the
user, in a user interface of the wearable device, a list of
predefined messages; and receiving, by the user interface,
selection of a predefined message from the list of predefined
messages, wherein the predefined message comprises the content of
the message.
33. The method of claim 28 wherein the second user input comprises
audio input, further comprising: converting, by the wearable
device, the audio input into text, wherein the information that
identifies the content of the message comprises the text.
34. The method of claim 28 wherein the second user input comprises
audio input, further comprising: transmitting the audio input to
the host device, over the first wireless connection, for
conversion, by the host device, to text.
35. The method of claim 28 wherein the instruction to the host
device is transmitted over the first wireless connection in
response to receipt of a third user input indicating a request to
send the message over the second wireless connection.
36. The method of claim 28 wherein the first wireless connection
comprises a Bluetooth connection.
37. A method of sending a message, the method comprising:
receiving, by a host device, information identifying a message from
a wearable device, the information received over a first wireless
connection; receiving, by the host device, an instruction to send
the message from the wearable device to a recipient over a second
wireless connection, the instruction comprising a recipient
identifier of the recipient and a content to be included in the
message; creating, by the host device, the message to be
transmitted based at least in part on the content; determining, by
the host device, a destination address for the message based at
least in part on the recipient identifier; and transmitting, by the
host device, the message to the destination address over the second
wireless connection.
38. The method of claim 37 wherein the message comprises a text
message.
39. The method of claim 37 wherein the recipient identifier
comprises an identifier of a contact in a contact list accessible
to the host device, and wherein determining the destination address
includes performing a lookup operation on the contact list to
obtain a phone number of the contact, wherein the phone number is
the destination address.
40. The method of claim 37 wherein the content comprises an
identifier of one of a plurality of predefined message texts and
wherein creating the message to be transmitted includes inserting
the predefined message text identified by the content into the
message.
41. The method of claim 37 further comprising transmitting, over
the first wireless connection, a confirmation to the wearable
device that the message was sent.
42. The method of claim 37 wherein the second wireless connection
comprises a cellular network connection.
43. The method of claim 37 wherein the message comprises an
image.
44. The method of claim 37 wherein the recipient identifier
comprises an email address.
45. A wearable device, comprising: a memory configured to store
computer-executable instructions; a processor configured to access
the memory and execute the computer-executable instructions to at
least: present a user interface; and receive, via the user
interface, user input identifying a message to be sent by a host
device to a recipient; and a wireless interface device configured
to: transmit the message to the host device over a first wireless
connection; and transmit, over the first wireless connection, an
instruction for the host device to transmit the message to the
recipient over a second wireless connection.
46. The wearable device of claim 45 wherein the wireless interface
device is further configured to receive, over the first wireless
connection, a confirmation from the host device that the message
was sent.
47. The wearable device of claim 46 wherein the processor is
further configured to present the confirmation in the user
interface.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to commonly-owned
International Application No. PCT/US/2013/032498, filed Mar. 15,
2013, entitled "Providing Remote Interactions with Host Device
Using a Wireless Device," the disclosure of which is incorporated
herein by reference in its entirety.
BACKGROUND
[0002] The present disclosure relates generally to wireless
electronic devices and in particular to providing remote
interactions with a host device using a wireless device.
[0003] Mobile electronic devices, such as mobile phones, smart
phones, tablet computers, media players, and the like, have become
quite popular. Many users carry a device almost everywhere they go
and use their devices for a variety of purposes, including making
and receiving phone calls, sending and receiving text messages and
emails, navigation (e.g., using maps and/or a GPS receiver),
purchasing items in stores (e.g., using contactless payment
systems), and/or accessing the Internet (e.g., to look up
information).
[0004] However, a user's mobile device is not always readily
accessible. For instance, when a mobile device receives a phone
call, the device may be in a user's bag or pocket, and the user may
be walking, driving, carrying something, or involved in other
activity that makes it inconvenient or impossible for the user to
reach into the bag or pocket to find the device.
SUMMARY
[0005] Certain embodiments of the present invention relate to
wearable electronic devices that can be connected (e.g., via
wireless pairing) with another device (referred to herein as a
"host device"), such as a smart phone, other mobile phone, tablet
computer, media player, laptop computer, or the like. When paired,
the wearable device can provide access to various functionalities
of the host device.
[0006] In some embodiments, a wearable device can be operated by a
user to respond to an event notification generated by a host
device. The wearable device can receive a notification of the event
from the host device and present the user with an alert and a
prompt to respond. If the user responds to the prompt, the wearable
device can transmit the response to the host device. For example, a
user can respond to a phone call, text message, or other
communication received at the host device.
[0007] In some embodiments, a wearable device can be operated by a
user to initiate a functionality of a host device, independently of
any prior event notification. For example, the wearable device can
present a user interface via which the user can select a
functionality to be invoked and further interfaces to control that
functionality. Accordingly, a user can operate a wearable device to
provide a phone number and instruct a host device to place a phone
call to that number, or a user can operate a wearable device to
send a text message to a specified recipient, or a user can operate
a wearable device to control media playback and/or any other
functionality available on a particular host device.
[0008] Certain embodiments of the invention relate to placing a
phone call using a wearable device that communicates with a host
device having a telephone transceiver. In some embodiments, a
wearable device can obtain user input indicative of a call to be
placed, including identifier of a recipient of the call. For
example, the wearable device can present to the user a list of the
user's contacts and can receive a user input selecting one of the
contacts from the list as the recipient. As another example, the
wearable device can present to the user a virtual keypad, which the
user can operate to enter a phone number to be called. The wearable
device can send an instruction to the host device to place a phone
call and provide the identifier of the recipient. The host device
can place the call. In some embodiments, e.g., where the recipient
is identified as a contact, the host device can perform a lookup
operation to determine a phone number associated with the contact,
then place the call to that phone number. Once the call as been
placed, the host device can send confirmation to the wearable
device. In response to receiving the confirmation, the wearable
device can present a control operable by the user to terminate the
call.
[0009] While the call is in progress, the host device can route
audio signals associated with the call between the telephone
transceiver and an audio device, and the routing can be based at
least in part on a user preference setting of the host device. For
instance, the host device can route a call-related audio output
signal received at the telephone transceiver to the wearable
device, which can deliver the signal to a speaker (which can be
part of the wearable device or a separate device). As another
example, the wearable device can also obtain a call-related audio
input signal from a microphone (which can be part of the wearable
device or a separate device) and can send the call-related audio
input signal to the host device, which can route the signal to the
telephone transceiver. In other embodiments, the host device can
route call-related audio input and/or call-related audio output
from and/or to audio devices other than the wearable device.
[0010] In some embodiments, a call can continue until it is
terminated. For example, the wearable device can detect user
operation of the control operable to end the call and can send a
notification to the host device that the call should be ended. As
another example, the wearable device can receive a notification
from the host device that the call has ended (e.g., because the
recipient terminated the call) and can present an alert to the user
indicating that the call has ended.
[0011] Certain embodiments of the invention relate to sending a
message (such as a text message) using a wearable device that
communicates with a host device having a telecommunication
interface. In some embodiments, the wearable device can obtain user
input indicative of a recipient of a message and further user input
indicative of content of the message. For example, the wearable
device can present to the user a list of the user's contacts and
can receive a user input selecting one of the contacts from the
list as the recipient. The wearable device can also present to the
user a list of predefined messages and can receive a user input
selecting one of the messages from the list as the message content.
The wearable device can send an instruction to the host device to
send the message, and the instruction can include an identifier of
the recipient and an indication of the content of the message. In
response to the instruction, the host can create a message based on
the provided indication of content. For example, if the content
indication provides an identifier of a message selected from a
list, the host device can perform a lookup operation to obtain
corresponding message content and include that content in the
message. The host device can send the message to a destination
address determined based on the recipient identifier. The host can
send a confirmation to the wearable device that the message has
been sent, and the wearable device can so inform the user.
[0012] Certain embodiments relate to facilitating user operation of
a wearable device, e.g., by automatically activating a user
interface of the wearable device in response to an event indicating
that a user is likely to begin using the wearable device. For
example, the wearable device can have a motion sensor that it can
use to detect a motion characteristic of a user moving the wearable
device into a viewing position. In the case of a wrist-worn device,
for instance, the characteristic motion can correspond to a motion
that moves the user's wrist into the user's line of sight. In
response to detecting this motion, the wearable device can activate
a user interface component such as a display, a touch sensor, a
touchscreen interface (which can include a display and a touch
sensor), a microphone, or the like. Other components of the
wearable device can be automatically activated based on motion
detection as well. In some embodiments, the wearable device can
also detect whether it is being worn, and motion detection to
trigger automatic activation can be limited to instances where the
device is being worn.
[0013] The following detailed description together with the
accompanying drawings will provide a better understanding of the
nature and advantages of the present invention.
BRIEF DESCRIPTION OF THE DRAWINGS
[0014] FIG. 1 shows a wearable device communicating wirelessly with
a host device according to an embodiment of the present
invention.
[0015] FIG. 2 is a simplified block diagram of a wearable device
according to an embodiment of the present invention.
[0016] FIGS. 3A and 3B illustrate a user operating a wearable
device according to an embodiment of the present invention
[0017] FIG. 4 is a flow diagram of a process for responding to an
event notification according to an embodiment of the present
invention.
[0018] FIG. 5 illustrates an interface for alerting a user
according to an embodiment of the present invention.
[0019] FIG. 6 illustrates another interface for alerting a user
according to an embodiment of the present invention.
[0020] FIG. 7 illustrates a user interface for selecting a
predefined message according to an embodiment of the present
invention.
[0021] FIG. 8 is a flow diagram of a process for generating an
event notification and receiving a response according to an
embodiment of the present invention
[0022] FIG. 9 is a flow diagram of a process for initiating a
phone-call functionality of a host device according to an
embodiment of the present invention.
[0023] FIG. 10 illustrates a function-selection user interface
according to an embodiment of the present invention.
[0024] FIG. 11 illustrates a user interface for placing a call
according to an embodiment of the present invention.
[0025] FIG. 12 illustrates a keypad user interface according to an
embodiment of the present invention.
[0026] FIG. 13 illustrates a contacts user interface according to
an embodiment of the present invention.
[0027] FIG. 14 is a flow diagram of a process for placing a call
using a wearable device according to an embodiment of the present
invention.
[0028] FIG. 15 is a flow diagram of a process for sending a text
message using a wearable device according to an embodiment of the
present invention.
[0029] FIG. 16 illustrates a user interface for selecting a
predefined message according to an embodiment of the present
invention.
DETAILED DESCRIPTION
[0030] Certain embodiments of the present invention relate to
wearable electronic devices that can be connected (e.g., via
wireless pairing) with another device (referred to herein as a
"host device"), such as a smart phone, other mobile phone, tablet
computer, media player, laptop computer, or the like. When paired,
the wearable device can provide access to various functionality of
the host device.
[0031] In some embodiments, a wearable device can be operated by a
user to respond to an event notification generated by a host
device. The wearable device can receive a notification of the event
from the host device and present the user with an alert and a
prompt to respond. If the user responds to the prompt, the wearable
device can transmit the response to the host device. For example, a
user can respond to a phone call, text message, or other
communication received at the host device.
[0032] In some embodiments, a wearable device can be operated by a
user to initiate a functionality of a host device, independently of
any prior event notification. For example, the wearable device can
present a user interface via which the user can select a
functionality to be invoked and further interfaces to control that
functionality. Accordingly, a user can operate a wearable device to
provide a phone number and instruct a host device to place a phone
call to that number, or a user can operate a wearable device to
send a text message to a specified recipient, or a user can operate
a wearable device to control media playback and/or any other
functionality available on a particular host device.
[0033] FIG. 1 shows a wearable device 100 communicating wirelessly
with a host device 102 according to an embodiment of the present
invention. In this example, wearable device 100 is shown as a
wristwatch-like device with a face portion 104 connected to straps
106a, 106b.
[0034] Face portion 104 can include, e.g., a touchscreen display
105 that can be appropriately sized depending on where on a user's
person wearable device 100 is intended to be worn. A user can view
information presented by wearable device 100 on touchscreen display
105 and provide input to wearable device 100 by touching
touchscreen display 105. In some embodiments, touchscreen display
105 can occupy most or all of the front surface of face portion
104.
[0035] Straps 106a, 106b can be provided to allow device 100 to be
removably worn by a user, e.g., around the user's wrist. In some
embodiments, straps 106a, 106b can be made of any flexible material
(e.g., fabrics, flexible plastics, leather, chains or flexibly
interleaved plates or links made of metal or other rigid materials)
and can be connected to face portion 104, e.g., by hinges.
Alternatively, straps 106a, 106b can be made of a rigid material,
with one or more hinges positioned at the junction of face 104 and
proximal ends 112a, 112b of straps 106a, 106b and/or elsewhere
along the lengths of straps 106a, 106b to allow a user to put on
and take off wearable device 100. Different portions of straps
106a, 106b can be made of different materials; for instance,
flexible or expandable sections can alternate with rigid sections.
In some embodiments, one or both of straps 106a, 106b can include
removable sections, allowing wearable device 100 to be resized to
accommodate a particular user's wrist size. In some embodiments,
straps 106a, 106b can be portions of a continuous strap member that
runs behind or through face portion 104. Face portion 104 can be
detachable from straps 106a, 106b; permanently attached to straps
106a, 106b; or integrally formed with straps 106a, 106b.
[0036] The distal ends of straps 106a, 106b opposite face portion
104 can provide complementary clasp members 108a, 108b that can be
engaged with each other to secure the distal ends of straps 106a,
106b to each other, forming a closed loop. In this manner, device
100 can be secured to a user's person, e.g., around the user's
wrist; clasp members 108a, 108b can be subsequently disengaged to
facilitate removal of device 100 from the user's person. The design
of clasp members 108a, 108b can be varied; in various embodiments,
clasp members 108a, 108b can include buckles, magnetic clasps,
mechanical clasps, snap closures, etc. In some embodiments, one or
both of clasp members 108a, 108b can be movable along at least a
portion of the length of corresponding strap 106a, 106b, allowing
wearable device 100 to be resized to accommodate a particular
user's wrist size.
[0037] Straps 106a, 106b can be two distinct segments, or they can
be formed as a continuous band of an elastic material (including,
e.g., elastic fabrics, expandable metal links, or a combination of
elastic and inelastic sections), allowing wearable device 100 to be
put on and taken off by stretching a band formed straps 106a, 106b.
In such embodiments, clasp members 108a, 108b can be omitted.
[0038] Straps 106a, 106b and/or clasp members 108a, 108b can
include sensors that allow wearable device 100 to determine whether
it is being worn at any given time. Wearable device 100 can operate
differently depending on whether it is currently being worn or not.
For example, wearable device 100 can inactivate various user
interface and/or RF interface components when it is not being worn.
In addition, in some embodiments, wearable device 100 can notify
host device 102 when a user puts on or takes off wearable device
100.
[0039] Host device 102 can be any device that communicates with
wearable device 100. In FIG. 1, host device 102 is shown as a smart
phone; however, other host devices can be substituted, such as a
tablet computer, a media player, any type of mobile phone, a laptop
or desktop computer, or the like. Other examples of host devices
can include point-of-sale terminals, security systems,
environmental control systems, and so on. Host device 102 can
communicate wirelessly with wearable device 100, e.g., using
protocols such as Bluetooth or Wi-Fi. In some embodiments, wearable
device 100 can include an electrical connector 110 that can be used
to provide a wired connection to host device 102 and/or to other
devices, e.g., by using suitable cables. For example, connector 110
can be used to connect to a power supply to charge an onboard
battery of wearable device 100.
[0040] In some embodiments, wearable device 100 and host device 102
can interoperate to enhance functionality available on host device
102. For example, wearable device 100 and host device 102 can
establish a pairing using a wireless communication technology such
as Bluetooth. While the devices are paired, host device 102 can
send notifications of selected events (e.g., receiving a phone
call, text message, or email message) to wearable device 100, and
wearable device 100 can present corresponding alerts to the user.
Wearable device 100 can also provide an input interface via which a
user can respond to an alert (e.g., to answer a phone call or reply
to a text message). In some embodiments, wearable device 100 can
also provide a user interface that allows a user to initiate an
action on host device 102, such as placing a phone call, sending a
text message, or controlling media playback operations of host
device 102. Techniques described herein can be adapted to allow a
wide range of host device functions to be enhanced by providing an
interface via wearable device 100.
[0041] It will be appreciated that wearable device 100 and host
device 102 are illustrative and that variations and modifications
are possible. For example, wearable device 100 can be implemented
in any wearable article, including a watch, a bracelet, a necklace,
a ring, a belt, a jacket, or the like. In some instances, wearable
device 100 can be a clip-on device or pin-on device that has a clip
or pin portion that attaches to the user's clothing. The interface
portion (including, e.g., touchscreen display 105) can be attached
to the clip or pin portion by a retractable cord, and a user can
easily pull touchscreen display 105 into view for use without
removing the clip or pin portion, then let go to return wearable
device 100 to its resting location. Thus, a user can wear device
100 in any convenient location.
[0042] Wearable device 100 can be implemented using electronic
components disposed within face portion 104, straps 106a, 106b,
and/or clasp members 108a, 108b. FIG. 2 is a simplified block
diagram of a wearable device 200 (e.g., implementing wearable
device 100) according to an embodiment of the present invention.
Wearable device 200 can include processing subsystem 202, storage
subsystem 204, user interface 206, RF interface 208, connector
interface 210, power subsystem 212, environmental sensors 214, and
strap sensors 216. Wearable device 200 can also include other
components (not explicitly shown).
[0043] Storage subsystem 204 can be implemented, e.g., using
magnetic storage media, flash memory, other semiconductor memory
(e.g., DRAM, SRAM), or any other non-transitory storage medium, or
a combination of media, and can include volatile and/or
non-volatile media. In some embodiments, storage subsystem 204 can
store media items such as audio files, video files, image or
artwork files; information about a user's contacts (names,
addresses, phone numbers, etc.); information about a user's
scheduled appointments and events; notes; and/or other types of
information, examples of which are described below. In some
embodiments, storage subsystem 204 can also store one or more
application programs to be executed by processing subsystem 210
(e.g., video game programs, personal information management
programs, media playback programs, interface programs associated
with particular host devices and/or host device functionalities,
etc.).
[0044] User interface 206 can include any combination of input and
output devices. A user can operate input devices of user interface
206 to invoke the functionality of wearable device 200 and can
view, hear, and/or otherwise experience output from wearable device
200 via output devices of user interface 206.
[0045] Examples of output devices include display 220, speakers
222, and haptic output generator 224. Display 220 can be
implemented using compact display technologies, e.g., LCD (liquid
crystal display), LED (light-emitting diode), OLED (organic
light-emitting diode), or the like. In some embodiments, display
220 can incorporate a flexible display element or curved-glass
display element, allowing wearable device 200 to conform to a
desired shape. One or more speakers 222 can be provided using
small-form-factor speaker technologies, including any technology
capable of converting electronic signals into audible sound waves.
In some embodiments, speakers 222 can be used to produce tones
(e.g., beeping or ringing) and can but need not be capable of
reproducing sounds such as speech or music with any particular
degree of fidelity. Haptic output generator 224 can be, e.g., a
device that converts electronic signals into vibrations; in some
embodiments, the vibrations can be strong enough to be felt by a
user wearing wearable device 200 but not so strong as to produce
distinct sounds.
[0046] Examples of input devices include microphone 226, touch
sensor 228, and camera 229. Microphone 226 can include any device
that converts sound waves into electronic signals. In some
embodiments, microphone 226 can be sufficiently sensitive to
provide a representation of specific words spoken by a user; in
other embodiments, microphone 226 can be usable to provide
indications of general ambient sound levels without necessarily
providing a high-quality electronic representation of specific
sounds.
[0047] Touch sensor 228 can include, e.g., a capacitive sensor
array with the ability to localize contacts to a particular point
or region on the surface of the sensor and in some instances, the
ability to distinguish multiple simultaneous contacts. In some
embodiments, touch sensor 228 can be overlaid over display 220 to
provide a touchscreen interface (e.g., touchscreen interface 105 of
FIG. 1), and processing subsystem 202 can translate touch events
(including taps and/or other gestures made with one or more
contacts) into specific user inputs depending on what is currently
displayed on display 220.
[0048] Camera 229 can include, e.g., a compact digital camera that
includes an image sensor such as a CMOS sensor and optical
components (e.g. lenses) arranged to focus an image onto the image
sensor, along with control logic operable to use the imaging
components to capture and store still and/or video images. Images
can be stored, e.g., in storage subsystem 204 and/or transmitted by
wearable device 200 to other devices for storage. Depending on
implementation, the optical components can provide fixed focal
distance or variable focal distance; in the latter case, autofocus
can be provided. In some embodiments, camera 229 can be disposed
along an edge of face member 104 of FIG. 1, e.g., the top edge, and
oriented to allow a user to capture images of nearby objects in the
environment such as a bar code or QR code. In other embodiments,
camera 229 can be disposed on the front surface of face member 104,
e.g., to capture images of the user. Zero, one, or more cameras can
be provided, depending on implementation.
[0049] In some embodiments, user interface 206 can provide output
to and/or receive input from an auxiliary device such as a headset.
For example, audio jack 230 can connect via an audio cable (e.g., a
standard 2.5-mm or 3.5-mm audio cable) to an auxiliary device.
Audio jack 230 can include input and/or output paths. Accordingly,
audio jack 230 can provide audio to the auxiliary device and/or
receive audio from the auxiliary device. In some embodiments, a
wireless connection interface can be used to communicate with an
auxiliary device.
[0050] Processing subsystem 202 can be implemented as one or more
integrated circuits, e.g., one or more single-core or multi-core
microprocessors or microcontrollers, examples of which are known in
the art. In operation, processing system 202 can control the
operation of wearable device 200. In various embodiments,
processing subsystem 202 can execute a variety of programs in
response to program code and can maintain multiple concurrently
executing programs or processes. At any given time, some or all of
the program code to be executed can be resident in processing
subsystem 210 and/or in storage media such as storage subsystem
204.
[0051] Through suitable programming, processing subsystem 202 can
provide various functionality for wearable device 200. For example,
in some embodiments, processing subsystem 202 can execute an
operating system (OS) 232 and various applications for interfacing
with a host device, such as a phone-interface application 234, a
text-interface application 236, and/or a media interface
application 238. In some embodiments, some or all of these
application programs can interact with a host device, e.g., by
generating messages to be sent to the host device and/or by
receiving and interpreting messages from the host device. In some
embodiments, some or all of the application programs can operate
locally to wearable device 200. For example, if wearable device 200
has a local media library stored in storage subsystem 204, media
interface application 238 can provide a user interface to select
and play locally stored media items. Examples of interface
applications are described below.
[0052] RF (radio frequency) interface 208 can allow wearable device
200 to communicate wirelessly with various host devices. RF
interface 208 can include RF transceiver components such as an
antenna and supporting circuitry to enable data communication over
a wireless medium, e.g., using Wi-Fi (IEEE 802.11 family
standards), Bluetooth.RTM. (a family of standards promulgated by
Bluetooth SIG, Inc.), or other protocols for wireless data
communication. RF interface 208 can be implemented using a
combination of hardware (e.g., driver circuits, antennas,
modulators/demodulators, encoders/decoders, and other analog and/or
digital signal processing circuits) and software components. In
some embodiments, RF interface 208 can provide near-field
communication ("NFC") capability, e.g., implementing the ISO/IEC
18092 standards or the like; NFC can support wireless data exchange
between devices over a very short range (e.g., 20 centimeters or
less). Multiple different wireless communication protocols and
associated hardware can be incorporated into RF interface 208.
[0053] Connector interface 210 can allow wearable device 200 to
communicate with various host devices via a wired communication
path, e.g., using Universal Serial Bus (USB), universal
asynchronous receiver/transmitter (UART), or other protocols for
wired data communication. In some embodiments, connector interface
210 can provide a power port, allowing wearable device 200 to
receive power, e.g., to charge an internal battery. For example,
connector interface 210 can include a connector such as a mini-USB
connector or a custom connector, as well as supporting circuitry.
In some embodiments, the connector can be a custom connector that
provides dedicated power and ground contacts, as well as digital
data contacts that can be used to implement different communication
technologies in parallel; for instance, two pins can be assigned as
USB data pins (D+ and D-) and two other pins can be assigned as
serial transmit/receive pins (e.g., implementing a UART interface).
The assignment of pins to particular communication technologies can
be hardwired or negotiated while the connection is being
established. In some embodiments, the connector can also provide
connections for audio and/or video signals, which may be
transmitted to or from host device 202 in analog and/or digital
formats.
[0054] In some embodiments, connector interface 210 and/or RF
interface 208 can be used to support synchronization operations in
which data is transferred from a host device to wearable device 200
(or vice versa). For example, as described below, a user can
customize certain information for wearable device 200 (e.g., a
"favorite" contacts list and/or specific predefined text messages
that can be sent). While user interface 206 can support data-entry
operations, a user may find it more convenient to define customized
information on a separate device (e.g., a tablet or smartphone)
that has a larger interface (e.g., including a real or virtual
alphanumeric keyboard), then transfer the customized information to
wearable device 200 via a synchronization operation.
Synchronization operations can also be used to load and/or update
other types of data in storage subsystem 204, such as media items,
application programs, and/or operating system programs.
Synchronization operations can be performed in response to an
explicit user request and/or automatically, e.g., when wireless
device 200 resumes communication with a particular host device or
in response to either device receiving an update to its copy of
synchronized information.
[0055] Environmental sensors 214 can include various electronic,
mechanical, electromechanical, optical, or other devices that
provide information related to external conditions around wearable
device 200. Sensors 214 in some embodiments can provide digital
signals to processing subsystem 202, e.g., on a streaming basis or
in response to polling by processing subsystem 202 as desired. Any
type and combination of environmental sensors can be used; shown by
way of example are accelerometer 242, a magnetometer 244, a
gyroscope 246, and a GPS receiver 248.
[0056] Some environmental sensors can provide information about the
location and/or motion of wearable device 200. For example,
accelerometer 242 can sense acceleration (relative to freefall)
along one or more axes, e.g., using piezoelectric or other
components in conjunction with associated electronics to produce a
signal. Magnetometer 244 can sense an ambient magnetic field (e.g.,
Earth's magnetic field) and generate a corresponding electrical
signal, which can be interpreted as a compass direction. Gyroscopic
sensor 246 can sense rotational motion in one or more directions,
e.g., using one or more MEMS (micro-electro-mechanical systems)
gyroscopes and related control and sensing circuitry. Global
Positioning System (GPS) receiver 248 can determine location based
on signals received from GPS satellites.
[0057] Other sensors can also be included in addition to or instead
of these examples. For example, a sound sensor can incorporate
microphone 226 together with associated circuitry and/or program
code to determine, e.g., a decibel level of ambient sound.
Temperature sensors, proximity sensors, ambient light sensors, or
the like can also be included.
[0058] Strap sensors 216 can include various electronic,
mechanical, electromechanical, optical, or other devices that
provide information as to whether wearable device 200 is currently
being worn. For instance, clasp sensor 250 can be at least
partially disposed within either or both of clasp members 108a,
108b of FIG. 1 and can detect when clasp members 108a, 108b are
engaged with each other or disengaged from each other. For example.
engaging clasp members 108a, 108b to each other can complete an
electrical circuit, allowing current to flow through clasp sensor
250; disengaging clasp members 108a, 108b from each other can break
the circuit. As another example, one or more contact sensors 252
can be disposed in straps 106a, 106b and can detect contact with a
user's skin, e.g., based on capacitive sensing, galvanic skin
response, or the like. Contact sensors 252 can also include
pressure sensors (e.g., piezoelectric devices) or the like. Any
other type of sensor that indicates whether wearable device 200 is
currently being worn can be used in addition to or instead of strap
sensors 216. For instance, physiological or biometric sensors, such
as pulse sensors, ECG sensors, or the like can be provided. In some
embodiments, physiological or biometric sensors can be used in
verifying the identity of the wearer of wearable device 200.
[0059] Power subsystem 212 can provide power and power management
capabilities for wearable device 200. For example, power subsystem
212 can include a battery 240 (e.g., a rechargeable battery) and
associated circuitry to distribute power from battery 240 to other
components of wearable device 200 that require electrical power. In
some embodiments, power subsystem 212 can also include circuitry
operable to charge battery 240, e.g., when connector interface 210
is connected to a power source. In some embodiments, power
subsystem 212 can include a "wireless" charger, such as an
inductive charger, to charge battery 240 without relying on
connector interface 210. In some embodiments, power subsystem 212
can also include other power sources, such as a solar cell, in
addition to or instead of battery 240.
[0060] In some embodiments, power subsystem 212 can control power
distribution to components within wearable device 200 to manage
power consumption efficiently. For example, power subsystem 212 can
automatically place device 200 into a "hibernation" state when
strap sensors 216 indicate that device 200 is not being worn. The
hibernation state can be designed to reduce power consumption;
accordingly, user interface 206 (or components thereof), RF
interface 208, connector interface 210, and/or environmental
sensors 214 can be powered down (e.g., to a low-power state or
turned off entirely), while strap sensors 216 are powered up
(either continuously or at intervals) to detect when a user puts on
wearable device 200. As another example, in some embodiments, while
wearable device 200 is being worn, power subsystem 212 can turn
display 220 and/or other components on or off depending on motion
and/or orientation of wearable device 200 detected by environmental
sensors 214. For instance, if wearable device 200 is designed to be
worn on a user's wrist, power subsystem 212 can detect raising and
rolling of a user's wrist, as is typically associated with looking
at a wristwatch, based on information provided by accelerometer
242. In response to this detected motion, power subsystem 212 can
automatically turn display 220 and/or touch sensor 228 on;
similarly, power subsystem 212 can automatically turn display 220
and/or touch sensor 228 off in response to detecting that user's
wrist has returned to a neutral position (e.g., hanging down).
[0061] Power subsystem 212 can also provide other power management
capabilities, such as regulating power consumption of other
components of wearable device 200 based on the source and amount of
available power, monitoring stored power in battery 240, generating
user alerts if the stored power drops below a minimum level, and so
on.
[0062] In some embodiments, control functions of power subsystem
212 can be implemented using programmable or controllable circuits
operating in response to control signals generated by processing
subsystem 202 in response to program code executing thereon, or as
a separate microprocessor or microcontroller.
[0063] It will be appreciated that wearable device 200 is
illustrative and that variations and modifications are possible.
For example, strap sensors 216 can be omitted, and wearable device
200 can include a user-operable control (e.g., a button or switch)
that the user can operate to indicate when wearable device 200 is
being worn. Controls can also be provided, e.g., to turn on or off
display 220, mute or unmute sounds from speakers 222, etc. In some
embodiments, other environmental sensors (e.g., accelerometer 242)
can be used to determine whether wearable device 200 is being worn,
in addition to or instead of strap sensors 216. Wearable device 200
can include any types and combination of sensors and in some
instances can include multiple sensors of a given type.
[0064] In various embodiments, a user interface can include any
combination of any or all of the components described above, as
well as other components not expressly described. For example, in
some embodiments, the user interface can include, e.g., just a
touchscreen, or a touchscreen and a speaker, or a touchscreen and a
haptic device. Where the wearable device has an RF interface, a
connector interface can be omitted, and all communication between
the wearable device and other devices can be conducted using
wireless communication protocols. A wired power connection, e.g.,
for charging a battery of the wearable device, can be provided
separately from any data connection.
[0065] Further, while the wearable device is described with
reference to particular blocks, it is to be understood that these
blocks are defined for convenience of description and are not
intended to imply a particular physical arrangement of component
parts. Further, the blocks need not correspond to physically
distinct components. Blocks can be configured to perform various
operations, e.g., by programming a processor or providing
appropriate control circuitry, and various blocks might or might
not be reconfigurable depending on how the initial configuration is
obtained. Embodiments of the present invention can be realized in a
variety of apparatus including electronic devices implemented using
any combination of circuitry and software.
[0066] A host device such as host device 102 of FIG. 1 can be
implemented as an electronic device using blocks similar to those
described above (e.g., processors, storage media, user interface
devices, data communication interfaces, etc.) and/or other blocks
or components. Those skilled in the art will recognize that any
electronic device capable of communicating with a particular
wearable device can act as a host device with respect to that
wearable device.
[0067] Communication between a host device and a wireless device
can be implemented according to any communication protocol (or
combination of protocols) that both devices are programmed or
otherwise configured to use. In some instances, standard protocols
such as Bluetooth protocols can be used. In some instances, a
custom message format and syntax (including, e.g., a set of rules
for interpreting particular bytes or sequences of bytes in a
digital data transmission) can be defined, and messages can be
transmitted using standard serial protocols such as a virtual
serial port defined in certain Bluetooth standards. Embodiments of
the invention are not limited to particular protocols, and those
skilled in the art with access to the present teachings will
recognize that numerous protocols can be used.
[0068] In some embodiments, wearable device 200 can detect a
transition from an "idle" position to an "active" position. For
example, FIGS. 3A and 3B illustrate a user 300 wearing wearable
device 302, which in this example is a wrist-worn device. As shown
in FIG. 3A, when user 300 is not actively using wearable device
302, the user's arm 304 may hang naturally at his side. To begin
using wearable device 302, user 300 can rotate his arm to the
position 304' shown in FIG. 3B, raising the elbow to bring wearable
device 302 into his line of sight. Dashed line 306 indicates an
approximate motion path of wearable device 302. Motion sensors
(e.g., accelerometer 242 and/or gyroscopic sensor 246) can detect a
characteristic motion associated with bringing wearable device 302
into the user's line of sight; upon detecting this motion, wearable
device 302 can automatically prepare itself to be used, e.g., by
activating user interface components such as display 220 and/or
touch sensor 228. Other patterns of motion can also be detected and
can trigger activation of user interface components; for example,
shaking of the wrist or a specific motion pattern of the arm or
hand (e.g., moving in an "S" curve or circle or triangle). In some
embodiments, wearable device 302 (or other wearable devices
described herein) can have a button (e.g., on the side of face 104
in FIG. 1) that a user can toggle to turn on or off a touchscreen
interface; the button can be provided in addition to or instead of
motion-based detection of activation.
[0069] Referring again to FIG. 1, in some embodiments, host device
102 can send various event notifications to wearable device 100,
and the user can respond to the notifications via wearable device
100. For example, host device 102 can alert wearable device 100 to
incoming communications such as phone calls, text messages,
voicemail messages, email messages, and the like; upcoming meetings
or events; stock market events such as change in price of a
particular stock; location-based reminders; and/or any other event
that can be identified by host device 102. In some embodiments, the
user may be able to select which types of events should generate
notifications to wearable device 102, e.g., by interacting with a
settings menu provided on host device 102.
[0070] FIG. 4 is a flow diagram of a process 400 for responding to
an event notification according to an embodiment of the present
invention. Process 400 can be implemented in a wearable device,
e.g., wearable device 100 of FIG. 1 or wearable device 200 of FIG.
2, which can be interacting with host device 102. In some
embodiments, the implementation of process 400 can include program
code executed by a processor of wearable device 100.
[0071] At block 402, wearable device 100 can pair with a host
device, e.g., host device 102. For example, standard Bluetooth
pairing techniques can be used; other techniques for establishing a
wireless connection between two devices can be used. In some
embodiments, an initial pairing between two devices may involve
user interaction with one or both devices to confirm that the
pairing should be established. Once the initial pairing is
established, the two devices can automatically reconnect to each
other (without further user intervention) any time they come within
communication range and are operating their respective RF
transceivers.
[0072] At block 404, wearable device 100 can receive an event
notification from host device 102. For example, host device 102 can
send a notification indicating an incoming phone call, text
message, or email message. At block 406, wearable device 100 can
present an alert to the user and can prompt the user for a
response. The alert can include, e.g., an audible alert, a
vibration, a visual alert, or any combination of multiple alerts.
The prompt can include, e.g., a visual prompt on display 220, an
audio prompt (e.g., a voice prompt), or the like.
[0073] FIG. 5 illustrates an alert-and-prompt screen 500 that can
be displayed at block 406 when the event notification corresponds
to an incoming phone call. Screen 500 can show an identifier of the
caller 502; the identifier can be determined by host device 102
(e.g., based on a contacts list stored therein and/or caller
identifying information received by host device 102) and sent to
wearable device 100 as part of the event notification. Screen 500
can also prompt the user to respond to the call, e.g., by selecting
virtual button 504 to instruct the phone to answer the call,
virtual button 506 to instruct the phone to place the caller on
hold, virtual button 508 to instruct the phone to divert the call
to voicemail, and virtual button 510 to decline the call. Other
alerts and prompts can be used, depending on the type of event,
available response options, screen size of the wearable device,
user preferences, and similar design considerations.
[0074] In some embodiments, a sequence of screens can be presented
as part of prompting the user for a response. For example, FIG. 6
illustrates a prompt screen 600 that can be displayed at block 406
of process 400 when the event notification corresponds to an
incoming text message. Screen 600 shows an identifier of the sender
of the text 602; as with a phone caller, the identifier of a sender
of a text can be determined by host device 102 (e.g., based on a
contacts list stored therein and/or source identifying information
received by host device 102). Screen 600 can also show a preview of
the text message 604; in some embodiments, the user can scroll
(e.g., by sliding a finger up or down on a touchscreen) to view
more message content. Screen 600 can also prompt the user to
respond to the text, e.g., by selecting virtual button 606 to reply
to the text or virtual button 608 to exit from screen 600 without
responding.
[0075] If the user selects virtual button 606, a message selection
screen 700 as shown in FIG. 7 can be displayed, providing a menu of
predefined text messages from which the user can select. For
example, virtual button 702 can be selected to send a "yes"
message, virtual button 704 can be selected to send a "no" message;
virtual button 706 can be selected to send a "thanks" message; and
virtual button 708 can be selected to send a "later" message
indicating that the user will contact the sender later. It is to be
understood that buttons 702, 704, 706, 708 may not contain the full
text message to be sent but rather a short identifier. For example,
the "no" identifier on button 704 can be associated with a less
terse message such as "No, sorry," and the "later" identifier on
button 708 can be associated with a more specific message such as
"I'll call you later."
[0076] Referring again to FIG. 4, at block 408, wearable device 100
can receive a user input in response to the prompt. For example,
the user can select virtual buttons via one or more of screens 500,
600, or 700, depending on context and what the user desires to do.
At block 410, wearable device 100 can transmit a response message
to the host based on the received user input.
[0077] It is not required that a user actually respond to any
particular alert on wearable device 100. For example, in some
embodiments process 400 can simply time out and end at block 408 if
the user does not provide input within some fixed time period
(e.g., 1 minute, 2 minutes, 5 minutes); the time period can be
different for different types of events. As another example, a user
can select the "close" option (button 608) from a screen such as
screen 600, and this can be interpreted by wearable device 100 as
an indication that the user does not intend to respond. In some
instances, a user may instead choose to respond to an alert by
using host device 102 directly; in such cases, host device 102 can
notify wearable device 100 if a response is received directly at
host device 102.
[0078] FIG. 8 is a flow diagram of a process 800 for generating an
event notification and receiving a response according to an
embodiment of the present invention. Process 800 can be implemented
in a host device, e.g., host device 102 of FIG. 1, which can be
interacting with a wearable device 100 that executes process 400 of
FIG. 4 or similar processes. In some embodiments, the
implementation of process 800 can include program code executed by
a processor of host device 102.
[0079] At block 802, host device 102 can detect an event that
triggers a user alert, such as an incoming call or text message. At
block 804, host device 102 can determine whether a wearable device
(e.g., wearable device 100) is currently paired. If not, then at
block 806, host device 102 can wait for a user input at its local
interface to determine whether and how the user chooses to
respond.
[0080] If wearable device 100 is currently paired, then at block
808, host device 102 can send an event notification to wearable
device 100. Any communication protocol can be used, including
standard Bluetooth messages (e.g., incoming call alert), a message
that conforms to a customized serial protocol that can be
transmitted using Bluetooth's virtual serial port capability, or
messages conforming to other protocols that are mutually understood
by the host device and the wearable device. The notification can
include information identifying the type of event (e.g., incoming
phone call, text message received, stock market alert, etc.) and
additional details specific to the event (e.g., name or other
identifier of the caller, content of a text message, etc.).
[0081] At block 810, host device 102 can wait for a response, which
can come from either the wearable device or a local user interface
of host device 102. For example, a user may receive an alert of an
incoming call on wearable device 100 but choose to answer the call
using host device 102. Accordingly, host device 102 can monitor
activity on the connection to wearable device 100 to detect a
response and at the same time present a local interface (e.g., on
its own touchscreen display) and monitor that interface to detect a
response.
[0082] At block 812, host device 102 can process the received
response, regardless of whether it was received from wearable
device 100 or via a local user interface of host device 102. For
example, referring to FIG. 5, if a user selects one of virtual
buttons 504, 506, 508, 510 from screen 500 on wearable device 100,
host device 102 can receive a response from wearable device 100
indicating which button was selected. In response to answer button
504 being selected, host device 102 can answer the call; call audio
can be routed to wearable device 100 or to another audio
input/output device, such as an internal audio interface of host
device 102 or a wireless headset that is paired with or otherwise
in communication with host device 102. In response to hold button
506 being selected, host device 102 can answer the call and play a
message to the caller indicating that the caller should hold. The
user can later take the call off hold, e.g., via a local user
interface of host device 102 or via wearable device 100, allowing
the user to speak with the caller. In response to voicemail button
508 being selected, host device 102 can redirect the call to a
voicemail account associated with the user, allowing the caller to
leave a message. In response to decline button 510 being selected,
host device 102 can reject or terminate the call.
[0083] As another example, referring to FIG. 7, if a user selects
to reply to a text message with a predefined response, e.g., by
selecting one of buttons 702, 704, 706, 708 on screen 700, host
device 102 can generate and send the corresponding text message
back to the sender. In some embodiments, wearable device 100 may
provide an index or other short name as an identifier for the text
message. Host device 102 can maintain a lookup table or other data
structure that maps the identifier to the actual message to be sent
(e.g., a short-name identifier such as "later" or an index such as
"3" can be mapped to "I'll call you later," which is the message
that would be sent). In some embodiments, a user can define a set
of text messages to be included in the predefined list by
interacting with host device 102, and host device 102 can provide
short names and/or other identifiers for the user-defined messages
to wearable device 100, e.g., in a synchronization operation.
[0084] It is not required that a user actually respond to a
particular alert, either locally on host device 102 or via wearable
device 100. In some instances, process 800 can allow the alert to
time out after a specific period (e.g., 1 minute, 2 minutes, 5
minutes) if the user does not respond, in which case process 800
can end at block 806 or 810. For example, if an incoming call is
not answered within the specified time period after generating the
alert, host device 102 can take a default action such as diverting
the call to a voicemail system. In some embodiments, if the user
does not respond within the specified time period, host device 102
can discontinue the alert and/or replace the alert with an
informational notice that is visible to the user (e.g., a
missed-call notification or the like).
[0085] It will be appreciated that processes 400 and 800 are
illustrative and that variations and modifications are possible.
Steps described as sequential may be executed in parallel, order of
steps may be varied, and steps may be modified, combined, added or
omitted. For instance, in some embodiments, a host device can
present a user alert via its own local interface in addition to
sending a notification to a wearable device; in some embodiments,
the host device presents a user alert via its own local user
interface only when the wearable device is not paired; and in some
embodiments, the user can specify whether the host should send a
particular notification to the wearable device, present an alert
locally, do both, or do neither. A user alert on a host device or a
wearable device can take the form of any sensory input detectable
by a human and can include visual alerts (e.g., lights; displayed
text, icons and or images), audible alerts (e.g., tones, buzzes,
ringtones, musical sounds, and/or speech sounds), and/or tactile
alerts (e.g., a vibration).
[0086] The particular response options described above, e.g., with
reference to FIGS. 5-7, are also illustrative, and the user may
have other options for responding to a given alert. Further, while
processes 400 and 800 have been described with reference to
specific types of events (incoming call, incoming text message), it
is to be understood that notifications of other types of events can
be processed in the same manner. For any type of event, the user
can have the option to select one of a set of responses (which may
be limited) via the wearable device's user interface or to use the
host device's local user interface to respond. In some instances,
the host device's interface can offer a larger or different range
of possible response options than the wearable device (e.g.,
composing an arbitrary message as opposed to selecting from a
finite set of predefined messages).
[0087] In some embodiments, in addition to or instead of responding
to an event on the host device, a user can use a wearable device to
initiate a functionality of the host device, e.g., placing a phone
call, sending a text message that is not in response to a received
text message, or initiating any other functionality that is
available on a particular host device. FIG. 9 is a flow diagram of
a process 900 for initiating a phone-call functionality of a host
device according to an embodiment of the present invention. Process
900 can be implemented in a wearable device, e.g., wearable device
100 of FIG. 1 or wearable device 200 of FIG. 2, which can be
interacting with a host device 102 that provides a telephone
transceiver capable of communicating over a phone network (e.g., a
cellular telephony network, voice-over-IP system, or the like). In
some embodiments, the implementation of process 900 can include
program code executed by a processor of wearable device 100.
[0088] At block 902, a user can select an option to place a call
using the user interface of wearable device 100. For example,
referring to FIG. 10, a user interface of wearable device 100 can
include a function selection screen 1000. Function selection screen
1000 can be a default screen that appears when the display of
wearable device 100 is activated or it can be a different screen
that the user can access through a touch gesture or sequence of
gestures (e.g., to navigate through menus) on a touchscreen
display, a hand or arm gesture detected by motion sensors built
into wearable device 100, or other operations. Function selection
screen 1000 can include various virtual buttons that the user can
select to invoke a functionality of host device 102, such as "call"
button 1002 to place a call, "text" button 1004 to send a text
message, and "music" button 1006 to invoke a media player
functionality of host device 102. In this example, a user can
select an option to place a call by selecting button 1002.
[0089] Referring again to FIG. 9, at block 904, wearable device 100
can determine whether it is currently paired with a host device 102
that is capable of making phone calls. If not, wearable device 100
can alert the user at block 906. The user can take corrective
action, such as getting within range of host device 102, turning
host device 102 on, etc.
[0090] Assuming wearable device 100 is paired with a phone-capable
host device 102, then at block 908, wearable device 100 can present
the user with calling options, and at block 910, wearable device
100 can receive user input selecting a calling option. For example,
when a user selects call button 1002 of FIG. 10, an interface such
as screen 1100 of FIG. 11 may be displayed. FIG. 11 shows options
for placing a call, such as an emergency call button 1102 that can
be programmed to place a call to a phone number associated with an
emergency service (such as 911 in the United States or 112 in many
European countries), a keypad button 1104 to allow a user to dial a
number, and a contacts button 1106 to allow a user to look up a
contact.
[0091] If the user selects keypad button 1104, wearable device 100
can present a keypad interface, such as screen 1200 of FIG. 12.
Screen 1200 includes a virtual phone keypad 1202 (e.g., a standard
phone keypad with digits 0-9 and "star" and "pound" keys) and a
number box 1204 to show the digits entered so far. In some
embodiments, other controls can be provided (e.g., back, cancel,
and done buttons); in some embodiments, gestures can be associated
with various control functions such as erasing a digit, canceling
the operation, or indicating that entry of the number is complete.
A user can operate keypad interface screen 1200 to dial an
arbitrary number.
[0092] If, from screen 1100 of FIG. 11, the user chooses contacts
button 1106, wearable device 100 can present a selectable contacts
list, such as screen 1300 of FIG. 13. Screen 1300 can present the
names of some or all of a user's contacts, e.g., as virtual buttons
1302, 1304, 1306, 1308. If the number of contacts exceeds the
available space on screen 1300, the list can be scrollable (e.g.,
using upward or downward gestures on a touchscreen) to allow the
user to view and select from any number of contacts.
[0093] Wearable device 100 can maintain various amounts of contact
information. For example, wearable device 100 can maintain a list
of names of the user's contacts, which it can obtain, e.g., via
synchronization operations with host device 102 or with other
devices. Wearable device 100 can maintain just the name and/or
other information about each contact (e.g., phone numbers, photos)
as desired. In some embodiments, a user can designate a subset of
her contacts to be synchronized with wearable device 100, and host
device 102 can have a larger list of contacts than wearable device
100 as well as more information about each contact. Alternatively,
wearable device 100 can obtain contact information from host device
102 in real time, e.g., with user-defined favorite contacts or
most-recently-contacted contacts being presented first and various
options to retrieve additional contacts. Accordingly, a user can
operate wearable device 100 to select a contact to be called.
[0094] Referring again to FIG. 9, once the user input that
determines a number to be called has been received (block 910),
process 900 can send a call instruction to host device 102 at block
912 to instruct host device 102 to place the call. In some
instances, e.g., where keypad screen 1200 was used, the call
instruction can include a phone number. In some instances, e.g.,
where contacts screen 1300 was used to select the party to be
called, the call instruction can include the selected contact's
name (or other unique identifier), from which host device 102 can
determine the phone number to be called, e.g., by looking up the
information in a user's contact list. Host device 102 can place the
call, and at block 914, wearable device 100 can receive
confirmation that the call has been placed. This confirmation can
indicate whether the call connected, or it can be sent before the
call is actually connected.
[0095] At block 916, wearable device 100 can receive and send
call-related audio signals, allowing the user to communicate with
the caller. Call-related audio signals can include input audio
signals (e.g., speech of the user picked up by a microphone and
delivered to the host device for transmission via the phone
network) and/or output audio signals (e.g., speech of the other
caller received at the host device via the phone network and
delivered to a speaker). In some instances, output and/or input
audio signals can be sent to and/or received from a built-in
speaker and/or microphone of wearable device 100. In other
instances, wearable device 100 can send output audio to and/or
receive input audio from external devices such as a wired or
wireless headset. It is not required that all call-related audio
signals, or indeed any call-related audio signals, be routed
through wearable device 100. For example, host device 102 can route
input (or output) audio to (or from) a device other than wearable
device 100 while using wearable device 100 to route the output (or
input) audio, and wearable device 100 can process the portion of
audio for which it is in the routing path. In some instances, all
call-related audio signals can be routed to and from devices other
than wearable device 100, in which case wearable device 100 would
not receive or send call-related audio signals but may simply wait
until the call is completed. In some embodiments, wearable device
100 can make other functions available to the user while a call is
in progress.
[0096] In some embodiments, while a call is in progress, wearable
device 100 can display a control operable by the user to end the
call. At block 918, if this control is operated, then at block 920,
wearable device 100 can alert host device 102 that the call should
be ended. Host device 102 can terminate the call and return a
confirmation to wearable device 100 at block 922. Wearable device
100 can present an alert to the user at block 924 to confirm that
the call has ended.
[0097] Host device 102 can also detect a call-termination event not
originating from wearable device 100, e.g., if the other party
disconnects or if the connection is dropped by the phone network.
If this occurs, host device 102 can send an event notification to
wearable device 100. Accordingly, if the user does not end the call
at block 918, then at block 926, wearable device 100 can determine
whether host device 102 has sent a call termination notification.
If so, then wearable device 100 can alert the user at block 924.
Otherwise, the call can continue (block 1408) until either the user
terminates it or the host detects a termination event.
[0098] FIG. 14 is a flow diagram of a process 1400 for placing a
call using a wearable device according to an embodiment of the
present invention. Process 1400 can be implemented in a host
device, e.g., host device 102 of FIG. 1, which can be interacting
with a wearable device 100 that executes process 900 of FIG. 9 or
similar processes, and host device 102 can provide a telephone
transceiver capable of communicating over a phone network (e.g., a
cellular telephony network, voice-over-IP system, or the like) In
some embodiments, the implementation of process 1400 can include
program code executed by a processor of host device 102.
[0099] At block 1402, host device 102 can receive a call
instruction from a paired wearable device 100 that instructs host
device 102 to place a phone call. The call instruction can include,
e.g., a phone number to be called or an identifier of a contact. At
block 1404, host device 102 can place the call. In some
embodiments, placing the call can include using the contact
identifier received at block 1402 to look up a corresponding phone
number. At block 1406, host device 102 can send a confirmation that
the call has been placed. The confirmation can be sent, e.g., while
the call is still being connected.
[0100] At block 1408, host device 102 can route the call-related
audio signals (including input and output audio signals as
described above with reference to FIG. 9) to and from appropriate
input and output devices. Audio input and output devices can
include an internal microphone or speaker of host device 102 and/or
an external microphone or speaker connected to host device 102 by
wired or wireless connections, including in some instances wearable
device 100. In some embodiments, host device 102 can determine the
routing based on what other devices are currently connected to host
device 102 and/or user-specified preferences regarding audio
routing. Accordingly, call-related audio can be routed to wearable
device 100 or to another device. In some instances, input and
output audio can be routed differently; for example, host device
102 can receive input audio from wearable device 102 while
providing output audio to a different device.
[0101] At block 1410, host device 102 can determine whether
wearable device 102 has sent a message indicating that the call
should end. If so, then host device 102 can end the call at block
1412 and send confirmation to wearable device 100 at block
1414.
[0102] If, at block 1410, wearable device 102 has not indicated
that the call should end, then at block 1416, host device 100 can
determine whether it has received notification via the phone
network that the call has ended (e.g., that the other endpoint has
terminated the call or that the connection has been dropped). In
addition, in some embodiments, a user who operated wearable device
102 to place a particular call can operate the user interface of
host device 100 to end the call. If host device 102 detects any of
these call-ending events, then host device 100 can notify wearable
device 102 that the call has ended at block 1418. In some
embodiments, the notification at block 1418 can include an
indication of how the call ended (e.g., terminated by the other
endpoint, dropped call, etc.).
[0103] If, at block 1416, host device 100 does not detect that the
call has ended, then process 1400 can return to block 1408 to
continue to route audio for the call. Accordingly, the call can
continue until it is terminated by either party.
[0104] Similar processes can be used to send other types of
communication, such as text messaging. For example, FIG. 15 is a
flow diagram of a process 1500 for sending a text message using a
wearable device, e.g., wearable device 100 of FIG. 1 or wearable
device 200 of FIG. 2, which can be interacting with a host device
102 that provides a telecommunication interface capable of
communicating text messages over a network (e.g., a cellular
telephony network, cellular data network, the Internet, or the
like) In some embodiments, the implementation of process 1500 can
include program code executed by a processor of wearable device
100.
[0105] At block 1502, a user can select an option to send a text
message, e.g., by selecting text button 1004 from interface screen
1000 of FIG. 10. At block 1504, wearable device 100 can determine
whether it is currently paired with a host device 102 that is
capable of making phone calls. If not, wearable device 100 can
alert the user at block 1506. The user can take corrective action,
such as getting within range of host device 102, turning host
device 102 on, etc.
[0106] At block 1508, wearable device 100 can present the user with
options for selecting a recipient, and at block 1510, wearable
device 100 can receive the user's selection. In some instances,
interface screens similar to those shown in FIGS. 11-13 can be
used. For example, the user can send a text to an arbitrary phone
number by entering the number into keypad 1202 of screen 1200, or
the user can select a contact from screen 1300. In some
embodiments, the same list of contacts can be used for both calls
and text messages; in other embodiments, a user can define
different lists of favorite contacts for different communication
media.
[0107] At block 1512, wearable device 100 can present the user with
options for texts to send, and at block 1514, wearable device 100
can receive the user's selection. For example, similarly to process
400 described above, a user can have a predefined list of texts to
send, allowing the user to avoid entering the text
character-by-character. FIG. 16 illustrates an interface screen
1600 for selecting a predefined text message that can be used at
block 1512. The predefined text messages can be different depending
on whether the user is initiating a new text message (as in process
1500) or responding to a received text message (as in process 400).
For example, button 1602 can be associated with a text such as "I'm
leaving now" and button 1604 with a text such as "I'm running
late," which are examples of text messages that a user might send
to a person she is going to meet. Button 1606 can be associated
with a text such as "Please call me," which requests the recipient
to take a particular action. Button 1608 can be associated with a
text such as "Do you need anything from the grocery store?" which a
user might send while on the way to the store. Other options can be
provided in addition to or instead of these examples, and in some
embodiments the user can define specific text messages and short
identifiers in a manner similar to that described above with
reference to FIG. 7.
[0108] In some embodiments, wearable device 100 can provide an
option to enter an arbitrary text using alphanumeric or other
character systems. For example, each character in a character
system can be mapped to a different touch gesture, and a user can
enter text by making touch gestures on touchscreen display 105. As
another example, each character can be mapped to a different
sequence of taps (e.g., Morse code or the like), and a user can
enter text by tapping touchscreen display 105. As yet another
example, touchscreen display 105 can present a compact virtual
keypad in which a character is determined based on the key location
and number of times the user taps the key.
[0109] At block 1516, wearable device 100 can instruct the host
device to send the text message and can provide an identifier of
the intended recipient (e.g., phone number or name) and an
identifier of the text to be sent; the identifier can be, e.g., an
index, a short identifier, or the actual text entered or selected
by the user. As in process 900 described above, host device 102 can
use the recipient identifier to determine the phone number, and as
in processes 400 and 800 described above, host device 102 can use a
short identifier of the text message to identify the actual message
to be sent. In some embodiments, at block 1518, wearable device 100
can receive a confirmation from host device 102 that the text was
sent and/or received; if desired, wearable device 100 can present a
corresponding alert or informational message to the user.
[0110] It will be appreciated that the communication-initiation
processes described above are illustrative and that variations and
modifications are possible. Steps described as sequential may be
executed in parallel, order of steps may be varied, and steps may
be modified, combined, added or omitted. Messages can be sent using
various communication media and formats, including text messages
(sent, e.g., via a short messaging service (SMS) provided by a
cellular communication network that carries voice and/or data);
email messages, instant messages, social-network messages (any of
which can be sent, e.g., via an Internet interface of the host
device); and other types of messages.
[0111] In some embodiments, a user can define "quick-access"
actions, such as "call Mom" or "text Bob that I'm running late"
that can be executed with a reduced number of input actions (e.g.,
a single gesture to bring up a quick-access list, followed by
tapping on the appropriate entry). This can facilitate
communication by and with users who are in the midst of other
activities and find it inconvenient to locate their phone to send a
quick message or place a call.
[0112] Control over host device functions is not limited to
communication functions. For example, in some embodiments, a host
device 102 can have media player capabilities, allowing a user to
select and play media tracks (e.g., audio and/or video), and
wearable device 100 can provide remote control over media playback
operations of a host device.
[0113] Referring again to FIG. 10, interface screen 1000 for
wearable device 100 includes a button 1006 that can be selected to
control media playback in a host device. In some embodiments, in
response to user selection of button 1006, wearable device 100 can
present an interface to select and control media player functions
of host device 102. For example, wearable device 100 can display
lists of playlists, albums, artists, genres, or songs from which
the user can select tracks to play; once a track is playing,
wearable device 100 can provide playback controls such as play,
pause, skip to previous or next track, rewind, fast-forward, volume
control and the like, and the user can control playback using touch
gestures on the display device.
[0114] In addition or instead, control can be provided based on
movement of wearable device 100 itself. For example,
accelerometers, gyroscopes, or the like can be used to detect
motion of wearable device 100, and certain motions can be defined
as spatial gestures, which in turn can be interpreted as controls.
Thus, in some embodiments, a user can control the volume, e.g., by
circling her wrist or arm clockwise to increase and
counterclockwise to lower. Other gestures can be associated with
other actions, e.g., a quick up-and-down to play, a quick
down-and-up to pause, quick right-then-left to skip ahead, quick
left-then-right to skip back, etc. Different gestures can be
associated with different control operations as desired.
[0115] It is to be understood that other devices can be controlled
by a wearable device. For example, a wearable device can provide
control over environmental systems (e.g., heating, lights) through
an appropriate user interface.
[0116] While the invention has been described with respect to
specific embodiments, one skilled in the art will recognize that
numerous modifications are possible and that components,
operations, and/or other features that may be described with
respect to different embodiments can be incorporated into the same
embodiment. Wearable devices can interact with host devices to
facilitate a variety of operations with increased convenience to
the user.
[0117] All user interfaces shown herein are also illustrative.
Sizes of user interfaces or graphical elements thereof can be
modified according to a particular desired form factor of a
wearable device and/or host device. Icons can be used in addition
to or instead of text to identify associated functions, and the
number and arrangement of controls can be varied to facilitate user
operation. In some embodiments, the user may be able to scroll the
display, e.g., by dragging one or two fingers along the surface of
a touchscreen display to see more options than can be presented at
once. Further, while the foregoing description may refer to
graphical user interfaces, other interfaces can also be used. For
example, an audio input interface can be provided by allowing the
user to speak into a microphone of a wearable device; the wearable
device can interpret the audio signal locally to determine a
corresponding instruction or send the audio to a host device for
interpretation. Similarly, an audio output interface can be
provided by using a speaker on the wearable device to produce
sounds. The sounds can include tones (beeps, whirrs, etc.) and/or
speech sounds; for example, synthesized speech can be generated on
a host device and transmitted to the wearable device as a digital
audio signal, or the wearable device can include its own speech
synthesizer. In some embodiments where a wearable device is worn on
the user's hand, wrist, or arm, user input can include spatial
gestures with the hand, wrist, and/or arm that are detected using
motion sensors of the wearable device in addition to or instead of
touch gestures involving contact with a touch-sensitive surface of
the wearable device. Different gestures can be assigned different
meanings, and the meaning of a gesture can be context-dependent,
e.g., depending on what operations of the host device and/or
wearable device are currently in progress. Thus, the same gesture
can, in different contexts, indicate hanging up a call or stopping
playback of a media track. Touch gestures and spatial gestures can
be used in various combinations as desired.
[0118] The foregoing description may make reference to specific
examples of a wearable device (e.g., a wrist-worn device) and/or a
host device (e.g., a smart phone). It is to be understood that
these examples are illustrative and not limiting; other devices can
be substituted and can implement similar functional blocks and/or
algorithms to perform operations described herein and/or other
operations.
[0119] Embodiments of the present invention, e.g., in methods,
apparatus, computer-readable media and the like, can be realized
using any combination of dedicated components and/or programmable
processors and/or other programmable devices. The various processes
described herein can be implemented on the same processor or
different processors in any combination. Where components are
described as being configured to perform certain operations, such
configuration can be accomplished, e.g., by designing electronic
circuits to perform the operation, by programming programmable
electronic circuits (such as microprocessors) to perform the
operation, or any combination thereof. Further, while the
embodiments described above may make reference to specific hardware
and software components, those skilled in the art will appreciate
that different combinations of hardware and/or software components
may also be used and that particular operations described as being
implemented in hardware might also be implemented in software or
vice versa.
[0120] Computer programs incorporating various features of the
present invention may be encoded and stored on various computer
readable storage media; suitable media include magnetic disk or
tape, optical storage media such as compact disk (CD) or DVD
(digital versatile disk), flash memory, and other non-transitory
media. Computer readable media encoded with the program code may be
packaged with a compatible electronic device, or the program code
may be provided separately from electronic devices (e.g., via
Internet download or as a separately packaged computer-readable
storage medium).
[0121] Thus, although the invention has been described with respect
to specific embodiments, it will be appreciated that the invention
is intended to cover all modifications and equivalents within the
scope of the following claims.
* * * * *