U.S. patent application number 13/296104 was filed with the patent office on 2012-03-08 for portable media device with workout support.
This patent application is currently assigned to APPLE INC.. Invention is credited to John Wesley ARCHIBALD, Sandeep GUPTA, Greg MARRIOTT, David A. SHAYER, Max SPRAUER, Shannon E. WELLS.
Application Number | 20120060118 13/296104 |
Document ID | / |
Family ID | 42100013 |
Filed Date | 2012-03-08 |
United States Patent
Application |
20120060118 |
Kind Code |
A1 |
GUPTA; Sandeep ; et
al. |
March 8, 2012 |
PORTABLE MEDIA DEVICE WITH WORKOUT SUPPORT
Abstract
Improved techniques and systems for utilizing a portable
electronic device to monitor, process, present and manage data
captured by a remote sensor are disclosed. The portable electronic
device offers a convenient user interface that can be visual and/or
audio based customized to a particular application, user-friendly
and/or dynamic. The portable electronic device can pertain to a
portable media player and thus also provide media playback.
Inventors: |
GUPTA; Sandeep; (Fremont,
CA) ; MARRIOTT; Greg; (Honolulu, HI) ;
SPRAUER; Max; (San Jose, CA) ; SHAYER; David A.;
(Palo Alto, CA) ; ARCHIBALD; John Wesley;
(Sunnyvale, CA) ; WELLS; Shannon E.; (Santa Clara,
CA) |
Assignee: |
APPLE INC.
Cupertino
CA
|
Family ID: |
42100013 |
Appl. No.: |
13/296104 |
Filed: |
November 14, 2011 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
12635968 |
Dec 11, 2009 |
8060229 |
|
|
13296104 |
|
|
|
|
11439523 |
May 22, 2006 |
7643895 |
|
|
12635968 |
|
|
|
|
Current U.S.
Class: |
715/810 |
Current CPC
Class: |
A63B 2071/0661 20130101;
A63B 2230/75 20130101; A43B 3/0021 20130101; A43B 3/0005 20130101;
A63B 2220/12 20130101; A63B 2230/06 20130101; G11B 27/105 20130101;
A63B 2220/20 20130101; A63B 2071/0625 20130101; A63B 2024/0065
20130101; A63B 2024/0078 20130101; A63B 2225/50 20130101; A63B
2220/30 20130101; A63B 2220/833 20130101; A63B 2071/063 20130101;
A63B 71/0686 20130101; A63B 2225/20 20130101; A63B 2220/836
20130101; A63B 24/0075 20130101; A63B 2220/803 20130101; A63B
24/0062 20130101 |
Class at
Publication: |
715/810 |
International
Class: |
G06F 3/048 20060101
G06F003/048 |
Claims
1. (canceled)
2. A method of operating a portable media device including a
processor and a memory, comprising: establishing, by the processor,
communications with a sensor; receiving, in the processor, sensor
data from the sensor; receiving, in the processor, a selection of a
media item; controlling, in the processor, an output of first audio
data associated with the selected media item; determining, in the
processor, communications have been lost with the sensor; in
response to the determining communications have been lost with the
sensor, generating, in the processor, second audio data including
speech; mixing, in the processor, the second audio data with the
first audio data; and controlling, in the processor, an output of
the mixed audio data including the speech.
3. The method of claim 2, wherein the speech includes an indication
that communications with the sensor have been lost.
4. The method of claim 2, wherein the sensor is configured to
monitor a physiological characteristic of a person.
5. The method of claim 2, wherein the sensor is a remote sensor
coupled to a sporting device separate from the portable media
device.
6. The method of claim 2, wherein the sensor data includes work out
data associated with a user of the portable media device.
7. The method of claim 2, wherein the generating the second audio
data includes retrieving an audio snippet including the speech from
a memory device coupled to the portable media device.
8. The method of claim 2, wherein the generating the second audio
data includes synthesizing the speech.
9. The method of claim 2, further comprising: determining a
language to use for the speech and generating the speech in the
determined language.
10. The method of claim 2, further comprising: selecting a voice
type for the speech.
11. The method of claim 10, wherein the voice type is a male voice
or a female voice.
12. A portable media device comprising: a display; a user interface
configured to receive user inputs; a memory device storing a
plurality of media items; a processor, coupled to the display, the
user interface and the memory device, the processor configured to
1) establishing communications with a sensor; 2) receive sensor
data from the sensor; 3) receive a selection of a media item from
the plurality of media items; 4) control an output of first audio
data associated with the selected media item; 5) determine
communications have been lost with the sensor; 6) in response to
the determining communications have been lost with the sensor,
generate second audio data including speech; 7) the second audio
data with the first audio data; and 8) control an output of the
mixed audio data including the speech.
13. A computer readable medium for storing computer code executed
by a processor, the computer readable medium comprising: computer
code for establishing communications with a sensor; computer code
for receiving sensor data from the sensor; computer code for
receiving a selection of a media item; computer code for
controlling an output of first audio data associated with the
selected media item; computer code for determining communications
have been lost with the sensor; computer code for, in response to
the determining communications have been lost with the sensor,
generating second audio data including speech; computer code for
mixing the second audio data with the first audio data; and
computer code for controlling an output of the mixed audio data
including the speech.
14. A method of operating a portable media device, including a
processor and a memory, comprising: receiving, in the processor, a
selection of a media item; controlling, in the processor, an output
of first audio data associated with the selected media item;
determining, in the processor, that device feedback related to a
device status is to be output; in response to the determining,
generating second audio data including speech related to the device
status; mixing, in the processor, the second audio data with the
first audio data; and controlling, in the processor, an output of
the mixed audio data including the speech.
15. The method of claim 14, further comprising: retrieving device
status information related to the device status.
16. The method of claim 14, wherein the media item is a music
file.
17. The method of claim 14, wherein the mixing includes fading the
first audio data, the second audio data or combinations
thereof.
18. The method of claim 14, further comprising: synthesizing the
speech.
19. A computer readable medium for storing computer code executed
by a processor, the computer readable medium comprising: computer
code for receiving a selection of a media item; computer code for
controlling an output of first audio data associated with the
selected media item; computer code for determining that device
feedback related to a device status is to be output; computer code
for, in response to the determining, generating second audio data
including speech related to the device status; computer code for
mixing the second audio data with the first audio data; and
computer code for controlling an output of the mixed audio data
including the speech.
20. A portable media device comprising: a display; a user interface
configured to receive user inputs; a memory device storing a
plurality of media items; a processor, coupled to the display, the
user interface and the memory device, the processor configured to:
1) receive a selection of a media item from the plurality of media
items; 2) control an output of first audio data associated with the
selected media item; 3) determine that device feedback related to a
device status is to be output; 4) in response to the determining,
generate second audio data including speech related to the device
status; 5) mix the second audio data with the first audio data; and
6) controlling an output of the mixed audio data including the
speech.
21. A method of operating a portable media device, including a
processor and a memory, comprising: receiving, in the processor, a
trigger condition for generating a message including speech;
determining, in the processor, a workout by a user has begun;
receiving, in the processor, workout data associated with the
workout; based upon the workout data and the trigger condition,
determining, in the processor, the message including speech is to
be generated; generating, in the processor, audio data for the
speech; and outputting under control of the processor the audio
data including the speech.
22. The method of claim 21, wherein the workout data is received
from a remote sensor.
23. The method of claim 22, wherein the remote sensor is located in
a shoe.
24. The method of claim 21, further comprising: receiving a
selection of a media item; generating first audio data for the
media item; mixing the audio data and the first audio data; and
outputting the mixed audio data including the speech.
25. The method of claim 21, further comprising: in response to
determining the workout has begun, generating a message including
speech indicating the workout has begun.
26. The method of claim 21, further comprising: determining the
workout has been paused; in response to determining the workout has
paused, generating a message including speech indicating the
workout has paused.
27. The method of claim 21, further comprising: outputting to a
display a settings screen that allows a user to select one or more
settings that affect the output of the speech.
28. The method of claim 21, further comprising: receiving a signal
indicating an input button has been selected; in response to the
signal, immediately generating the audio data for the message
including speech.
29. A computer readable medium for storing computer code executed
by a processor, the computer readable medium comprising: computer
code for receiving a trigger condition for generating a message
including speech; computer code for determining a workout by a user
has begun; computer code for receiving workout data associated with
the workout; computer code for, based upon the workout data and the
trigger condition, determining the message including speech is to
be generated; computer code for, generating audio data for the
speech; and computer code for outputting the audio data including
the speech.
30. A portable media device comprising: a display; a user interface
configured to receive user inputs; a memory device storing a
plurality of media items; a processor, coupled to the display, the
user interface and the memory device, the processor configured to:
1) receive a trigger condition for generating a message including
speech; 2) determine a workout by a user has begun; 3) receive
workout data associated with the workout; 4) based upon the workout
data and the trigger condition, determine the message including
speech is to be generated; 5) generating audio data for the speech;
and 6) output the audio data including the speech.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation of and claims priority
under 35 USC .sctn.120 to U.S. patent application Ser. No.
12/635,968 filed Dec. 11, 2009, which is a divisional of U.S.
patent application Ser. No. 11/439,523 filed May 22, 2006, now U.S.
Pat. No. 7,643,895 issued Jan. 5, 2010, all of which are hereby
incorporated by reference herein.
[0002] This application is related to: (i) U.S. patent application
Ser. No. 11/144,541, filed Jun. 3, 2005, and entitled "TECHNIQUES
FOR PRESENTING SOUND EFFECTS ON A PORTABLE MEDIA PLAYER"; (ii) U.S.
patent application Ser. No. 11/209,367, filed Aug. 22, 2005, and
entitled "AUDIO STATUS INFORMATION FOR A PORTABLE ELECTRONIC
DEVICE", now U.S. Pat. No. 7,590,772, issued Sep. 15, 2009; (iii)
U.S. patent application Ser. No. 11/245,937, filed Oct. 7, 2005,
and entitled "TECHNIQUES FOR PAIRING REMOTE CONTROLLERS WITH HOST
DEVICES", and (iv) U.S. Provisional Patent Application No.
60/802,889, filed May 22, 2006, and entitled "ACTIVITY MONITORING
SYSTEM", all of which are hereby incorporated by reference
herein.
BACKGROUND OF THE INVENTION
[0003] 1. Field of the Invention
[0004] The present invention relates to portable media devices and,
more particularly, to portable media players that support user
exercise routines.
[0005] 2. Description of the Related Art
[0006] A media player stores media assets, such as audio tracks,
that can be played or displayed on the media player. One example of
a portable media player is the iPod.RTM. media player, which is
available from Apple Inc. of Cupertino, Calif. Often, a media
player acquires its media assets from a host computer that serves
to enable a user to manage media assets. In managing media assets,
a user can create playlists for audio tracks. These playlists can
be created at the host computer. Media assets within the playlists
can then be copied to the media player. As an example, the host
computer can execute a media management application to acquire and
manage media assets. One example of a media management application
is iTunes.RTM. produced by Apple Inc.
[0007] Portable media players, such as MP3 players, are able to
play music for users often via earphones or a headset. Typically,
portable media players are dedicated to playing media. Lately,
media players have been integrated into mobile telephones as well
as personal information managers (or digital personal assistants).
However, many users of portable media players utilize their media
players in the context of exercising, such as at the gym or while
running outdoors. Unfortunately, however, portable music players
are not designed to assist the users in the context of their
exercising. Although portable media players can play music for the
users, there is traditionally no capability to provide any
non-media information to the user.
[0008] Recently, a MP3 player has been enhanced to support wireless
communications, through a Bluetooth module, with a wireless speed
and distance sensor that is coupled to the shoelaces of the user's
shoe. The wireless speed and distance sensor operates as a
pedometer and can wirelessly transmit data to the MP3 player. Such
a system permits interaction between a MP3 player and a pedometer,
which are conventionally separate devices. Another existing
approach is to use a wristwatch including GPS technology to track
distance of runs, but such lack the ability to provide media
playback. Regardless, there remains a need for improved interaction
between portable media players and other devices so that users of
portable media players can be better provided with non-media
information.
SUMMARY OF THE INVENTION
[0009] The invention relates to improved techniques and systems for
utilizing a portable electronic device to monitor, process, present
and manage data captured by a remote sensor. The portable
electronic device offers a convenient user interface that can be
visual and/or audio based customized to a particular application,
user-friendly and/or dynamic. The portable electronic device can
pertain to a portable media player and thus also provide media
playback.
[0010] The invention can be implemented in numerous ways, including
as a method, system, device, apparatus (including graphical user
interface), or computer readable medium. Several embodiments of the
invention are discussed below.
[0011] As a workout monitoring process operable on a portable
electronic device, one embodiment of the invention includes at
least the acts of: determining a workout to be performed by a user
of the portable electronic device; determining workout music to be
utilized for the workout; receiving, processing and storing workout
data acquired from a sensor; playing the workout music; and
presenting at least a portion of the workout data to the user.
[0012] As a graphical user interface presented by a portable
electronic device for enabling a user of the portable electronic
device to configure the portable electronic device to monitor a
workout undertaken by the user, where the portable electronic
device has a display, one embodiment of the invention includes at
least: a workout screen presented on the display of the portable
electronic device, the workout screen enabling the user to select
at least a workout type; and a workout characteristics screen
presented on the display of the portable electronic device in
response to the user selection of the workout type, the workout
characteristics screen enabling the user to select at least one
workout characteristic for the workout of the workout type.
[0013] As a workout template for with a portable electronic device,
one embodiment of the invention includes at least an identification
of what to display during a workout on a display associated with
the portable electronic device.
[0014] As a workout template for with a portable electronic device,
another embodiment of the invention includes at least a header and
at least one interval. The header includes at least an
identification of what to display following a workout on a display
associated with the portable electronic device. The at least one
interval includes at least: an identification of what to display
during at least an interval of the workout on the display
associated with the portable electronic device; an indication of
what and when voice prompts are to be provided during at least the
interval of the workout; and an identification of what to display
during at least the interval of a workout on the display associated
with the portable electronic device.
[0015] As a method for informing a user of exercise-related
information, the user utilizing a portable electronic device while
exercising, one embodiment of the invention includes at least the
acts of: receiving exercise-related data from a data sensor during
the exercising, the data sensor being operatively connected to the
portable electronic device in a wired or wireless manner;
determining whether audio feedback is to be provided to the user of
the portable electronic device; and outputting audio data
corresponding to the audio feedback to the user.
[0016] As a method for playing media items on a portable media
player, one embodiment of the invention includes at least the acts
of: receiving a request to play a particular predetermined song,
the request being received while a set of other songs are being
sequentially played; identifying the particular predetermined song
to be played in response to the request, the particular
predetermined song being stored on the portable media player;
stopping the playing of the set of other songs; playing the
particular predetermined song; and subsequently resuming playing of
the set of other songs after the playing the particular
predetermined song has ended.
[0017] As a system, one embodiment includes at least: a portable
electronic device; a removable wireless interface device coupled to
the portable electronic device; and a remote wireless sensor.
[0018] As a computer readable medium including at least computer
program code for workout monitoring on a portable electronic
device, one embodiment of the invention includes at least: computer
program code for determining a workout to be performed by a user of
the portable electronic device; computer program code for
determining workout music to be utilized for the workout; computer
program code for receiving, processing and storing workout data
acquired from a sensor; computer program code for playing the
workout music; and computer program code for presenting at least a
portion of the workout data to the user.
[0019] As a computer readable medium including at least computer
program code for informing a user of exercise-related information,
where the user utilizes a portable electronic device while
exercising, one embodiment of the invention includes at least:
computer program code for receiving exercise-related data from a
data sensor during the exercising, the data sensor being
operatively connected to the portable electronic device in a wired
or wireless manner; computer program code for determining whether
audio feedback is to be provided to the user of the portable
electronic device; and computer program code for outputting audio
data corresponding to the audio feedback to the user.
[0020] As a method for playing media items on a portable media
player, one embodiment of the invention includes at least: computer
program code for receiving a request to play a particular
predetermined song, the request being received while a set of other
media items are being sequentially played; computer program code
for identifying the particular predetermined media item to be
played in response to the request, the particular predetermined
media item being stored on the portable media player; computer
program code for stopping the playing of the set of other songs;
computer program code for playing the particular predetermined
song; and computer program code for resuming playing of the set of
other media items after playing of the particular predetermined
media item has ended.
[0021] 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
[0022] 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:
[0023] FIG. 1 is a block diagram of a sports monitoring system
according to one embodiment of the invention.
[0024] FIG. 2 illustrates a block diagram of a sports device
according to one embodiment of the invention.
[0025] FIG. 3 is a block diagram of a wireless interface accessory
according to one embodiment of the invention.
[0026] FIG. 4A is a block diagram of an arrangement of functional
modules utilized by a portable media device.
[0027] FIG. 4B is a block diagram of a media player suitable for
use with the invention.
[0028] FIG. 5 is a flow diagram of a workout process according to
one embodiment of the invention.
[0029] FIG. 6 is a flow diagram of a workout monitoring process
according to one embodiment of the invention.
[0030] FIGS. 7A and 7B are flow diagrams of a workout setup process
according to one embodiment of the invention.
[0031] FIGS. 8A and 8B are flow diagrams of a workout manager
process according to one embodiment of the invention.
[0032] FIG. 9 is a flow diagram of a workout data process according
to one embodiment of the invention.
[0033] FIGS. 10A and 10B are flow diagrams of an audio feedback
process according to one embodiment of the invention.
[0034] FIG. 11 is a flow diagram of a power song process according
to one embodiment of the invention.
[0035] FIGS. 12-79 are exemplary screens that can be provided by a
portable electronic device associated with an application directed
to monitoring run-based workouts while also permitting workout
music to be presented.
[0036] FIG. 80 is a diagram of a template control system according
to one embodiment of the invention.
DETAILED DESCRIPTION OF THE INVENTION
[0037] The invention relates to improved techniques and systems for
utilizing a portable electronic device to monitor, process, present
and manage data captured by a remote sensor. The portable
electronic device offers a convenient user interface that can be
visual and/or audio based customized to a particular application,
user-friendly and/or dynamic. The portable electronic device can
pertain to a portable media player and thus also provide media
playback.
[0038] In one embodiment, the portable electronic device can also
either directly support wireless communication with the remote
sensor or indirectly support wireless communications by using an
attachable accessory device that provides wireless capability to
the portable electronic device.
[0039] The invention is particularly well suited for use in
monitoring sports-related data, such as exercise data (e.g., run
data). However, it should be recognized that the invention is not
limited to sports monitoring, but instead is applicable to any type
of monitoring. For example, the monitoring can be any physiological
monitoring of a person, who is typically the user of a portable
electronic device.
[0040] One aspect of the invention is organization of data
monitoring and management into workouts. Another aspect of the
invention is a graphical user interface that permits user
configuration or user selections, presents menus for workout
selection, presents workout status information, and provides
workout results. Still another aspect of the invention is use of
templates to describe characteristics of workouts. Yet still
another aspect of the invention is playing a designated playlist
(i.e., a group of songs) during a workout. Still yet another aspect
of the invention is near immediate playback a particular
predetermined media item (e.g., song) on-demand (e.g., requested by
a predetermined user interface action or by system based on workout
monitoring) and disregarding any other media item being otherwise
played. These aspects and various others discussed herein can be
used separately or in any combination.
[0041] Embodiments of the invention are discussed below with
reference to FIGS. 1-80. However, those skilled in the art will
readily appreciate that the detailed description given herein with
respect to these figures is for explanatory purposes as the
invention extends beyond these limited embodiments.
[0042] FIG. 1 is a block diagram of a sports monitoring system 100
according to one embodiment of the invention. The sports monitoring
system 100 is an electronic system that enables sports related
information to be acquired, stored, analyzed, presented and
shared.
[0043] The sports monitoring system 100 includes a portable media
device 102. The portable media device 102 is capable of storing and
playing media for its user. For example, the portable media device
102 can output (e.g., play) audio or video. The sports monitoring
system 100 also includes a sports device 104. The sports device 104
is, for example, a pedometer, a heart rate monitor, etc. The sports
device 104 includes one or more sensors that acquire sports related
data.
[0044] The sports device 104 also includes wireless transmission
capability so that the sports related data can be transmitted to
the portable media device 102. In particular, the portable media
device 102 includes a wireless interface accessory 106. The
wireless interface accessory 106 includes a wireless transceiver so
that the wireless interface accessory 106 can receive the sports
related data being transmitted by the sports device 104 by way of a
wireless connection through a personal wireless network 108. The
portable media device 102 can receive the sports related data from
the sports device 104 via the wireless interface accessory 106 and
can then operate to process and store the sports related data at
the portable media device 102.
[0045] The sports monitoring system 100 also includes a personal
computer 110. The portable media device 102 can be electrically
connected to the personal computer 110 by way of a cable 112. The
cable 112 can, for example, be a Firewire or USB cable.
Alternatively, the cable 112 can be replaced with a wireless link.
Although the portable media device 102 is not normally electrically
connected to the personal computer 110, the electrical connection
when present facilitates information exchange between the portable
media device 102 and the personal computer 110.
[0046] The personal computer 110 includes a media management
application 114. The media management application 114, in one
embodiment, can not only manage the media assets stored on the
personal computer 110, but can also store and manage sports related
data. In one embodiment, the media management application 114 can
operate to cause the sports related data stored on the portable
media device 102 to be copied to the personal computer 110.
Thereafter, the sports related data can be analyzed at the personal
computer 110 and/or made available to the user of the personal
computer 110. In addition, the sports monitoring system 100 can
facilitate the personal computer 110 coupling to a data network
116. The data network 116 can represent a global or Wide Area
network, such as the World Wide Web (or the Internet). When the
personal computer 110 is coupled to the data network 116, the
sports related data present at the personal computer 110 can be
transferred to a sports management server 118. At the sports
management server 118, the sports related data can be further
analyzed and/or processed to facilitate usefulness of the data. The
sports management server 118 supports storage and analysis of
sports related data from a large number of different portable media
devices and/or personal computers. Hence, the sports management
server 118 can also compare the sports related data from different
users. The sports management server 118 can also provide a website
that can be accessed by a network browser operating on the personal
computer 110 or other computing device to access sports related
information or other information made available via the
website.
[0047] The sports monitoring system 100 can also support one or
more remote controllers (not shown). A remote controller can also
communicate with portable media device 102 via the wireless
interface accessory 106. The remote controller may require it be
paired or linked with the wireless interface accessory 106 or the
portable media device 102.
[0048] The sports device 104 illustrated in FIG. 1 can take a
variety of different forms. In one embodiment, the sports device is
a sensor-based device. One example of a sensor-based device is a
pedometer.
[0049] FIG. 2 illustrates a block diagram of a sports device 200
according to one embodiment of the invention. The sports device 200
is, for example, suitable for use as the sports device 104
illustrated in FIG. 1.
[0050] The sports device 200 includes a microcontroller 202 that
controls the overall operation of the sports device 200. The sports
device 200 also includes a transducer 204 that acquires raw sports
data. As an example, the transducer 204 can pertain to a
piezo-electric device (e.g., piezo-electric pedometer). With a
piezo-electric device, electrical signals associated with pressure
applied to the transducer 204 are produced as a user of the sports
device walks or runs. In one embodiment, the sports device 200 can
be embedded within a shoe, such as within a sole of a shoe. A
signal conditioning circuit 206 filters and/or amplifies the raw
sports data supplied by the transducer 204. The resulting
conditioned sports data is then supplied to the microcontroller
202. The microcontroller 202 include memory that can store the
conditioned sports data. The sports device 202 also includes a
transceiver 208 to transmit the conditioned sports data to a
portable media device, such as the portable media device 102 via
the wireless interface accessory 106 illustrated in FIG. 1. Since
the sports device 200 need not receive data back from the portable
media device 102, the transceiver 208 can alternatively be a
transmitter.
[0051] Still further, the sports device 200 is battery powered by a
battery 210. In one embodiment, the battery 210 is not replaceable
by the user of the sports device 200. Accordingly, the sports
device 200 is designed to operate in a low power manner. In this
regard, the microcontroller 202 is a low power design and can be
placed in a sleep/hibernate mode when sports data is not being
acquired. In one embodiment, the sports device 200 includes an
activity detector 212. The activity detector 212 can monitor the
transducer 204 or the signal conditioning circuit 206 to determine
whether the sports data is indicating that there is some sports
related activity (e.g., running, walking, etc.) being undertaken.
When the activity detector 212 determines that there is no sports
related activity, the activity detector 212 can cause or signal the
microcontroller 202 to enter a low power mode (i.e., sleep or
hibernate). When the activity detector 212 determines that there is
sports related activity while the microcontroller 202 is in the low
power mode, the activity detector 212 can cause or signal the
microcontroller 202 to awaken to a normal mode.
[0052] FIG. 3 is a block diagram of a wireless interface accessory
300 according to one embodiment of the invention. The wireless
interface accessory 300 is, for example, suitable for use as the
wireless interface accessory 106 illustrated in FIG. 1. The
wireless interface accessory 300 includes a microcontroller 302
that controls the overall operation of the wireless interface
accessory 300. The wireless interface accessory 300 also includes a
transceiver 304 and a chip antenna 306. The transceiver 304
operates to wirelessly communicate with the counterpart device,
such as a sports device, to receive sports related data. The sports
related data is then temporarily stored in memory provided with the
microcontroller 302 and then forwarded to a portable media device
via a connector 308. The connector 308 can couple with a
counterpart connector associated with the portable media device.
The microcontroller 302 can also store some user data, including
calibration data, as well as sports data, including as data
summaries, workout data, etc. The wireless interface accessory 300
can also includes a power controller 310. The power controller 310
couples to a power source and ground from the connector 308. The
power controller 310 typically converts the incoming voltage level
to a different voltage level to be utilized by the microcontroller
302 and the transceiver 304.
[0053] FIG. 4A is a block diagram of an arrangement 400 of
functional modules utilized by a portable media device. The
portable media device can, for example, be the portable media
device 102 illustrated in FIG. 1. The arrangement 400 includes a
media player 402 that is able to output media for a user of the
portable media device but also store and retrieve data with respect
to a data storage 404. The arrangement 400 also includes a
graphical user interface (GUI) manager 406. The GUI manager 406
operates to control information being provided to and displayed on
a display device. The arrangement 400 also includes a communication
module 408 that facilitates communication between the portable
media device and an accessory device. Still further, the
arrangement 400 includes an accessory manager 410 that operates to
authenticate and acquire data from an accessory device that may be
coupled to the portable media device. For example, the accessory
device can be a wireless interface accessory, such as the wireless
interface accessory 106 illustrated in FIG. 1 as being coupled to
the portable media device 102.
[0054] FIG. 4B is a block diagram of a media player 450 suitable
for use with the invention. The media player 450 illustrates
circuitry of a representative portable media device.
[0055] The media player 450 includes a processor 452 that pertains
to a microprocessor or controller for controlling the overall
operation of the media player 450. The media player 450 stores
media data pertaining to media items in a file system 454 and a
cache 456. The file system 454 is, typically, a storage disk or a
plurality of disks. The file system 454 typically provides high
capacity storage capability for the media player 450. However,
since the access time to the file system 454 is relatively slow,
the media player 450 can also include a cache 456. The cache 456
is, for example, Random-Access Memory (RAM) provided by
semiconductor memory. The relative access time to the cache 456 is
substantially shorter than for the file system 454. However, the
cache 456 does not have the large storage capacity of the file
system 454. Further, the file system 454, when active, consumes
more power than does the cache 456. The power consumption is often
a concern when the media player 450 is a portable media player that
is powered by a battery 474. The media player 450 also includes a
RAM 470 and a Read-Only Memory (ROM) 472. The ROM 472 can store
programs, utilities or processes to be executed in a non-volatile
manner. The RAM 470 provides volatile data storage, such as for the
cache 456.
[0056] The media player 450 also includes a user input device 458
that allows a user of the media player 450 to interact with the
media player 450. For example, the user input device 458 can take a
variety of forms, such as a button, keypad, dial, etc. Still
further, the media player 450 includes a display 460 (screen
display) that can be controlled by the processor 452 to display
information to the user. A data bus 461 can facilitate data
transfer between at least the file system 454, the cache 456, the
processor 452, and the CODEC 462.
[0057] In one embodiment, the media player 450 serves to store a
plurality of media items (e.g., songs, podcasts, etc.) in the file
system 454. When a user desires to have the media player play a
particular media item, a list of available media items is displayed
on the display 460. Then, using the user input device 458, a user
can select one of the available media items. The processor 452,
upon receiving a selection of a particular media item, supplies the
media data (e.g., audio file) for the particular media item to a
coder/decoder (CODEC) 462. The CODEC 462 then produces analog
output signals for a speaker 464. The speaker 464 can be a speaker
internal to the media player 450 or external to the media player
450. For example, headphones or earphones that connect to the media
player 450 would be considered an external speaker.
[0058] The media player 450 also includes a bus interface 466 that
couples to a data link 468. The data link 468 allows the media
player 450 to couple to a host device (e.g., host computer or power
source). The data link 468 can also provide power to the media
player 450.
[0059] The media player 450 also includes a network/bus interface
466 that couples to a data link 468. The data link 468 allows the
media player 450 to couple to a host computer or to accessory
devices. The data link 468 can be provided over a wired connection
or a wireless connection. In the case of a wireless connection, the
network/bus interface 466 can include a wireless transceiver. The
media items (media assets) can pertain to one or more different
types of media content. In one embodiment, the media items are
audio tracks (e.g., songs, audiobooks, podcasts). In another
embodiment, the media items are images (e.g., photos). However, in
other embodiments, the media items can be any combination of audio,
graphical or video content.
[0060] FIG. 5 is a flow diagram of a workout process 500 according
to one embodiment of the invention. The workout process 500 is, for
example, performed by a computing device, typically a portable
computing device. For example, the computing device can be a
portable media device, such as the portable media device 102
illustrated in FIG. 1.
[0061] The workout process 500 initially determines 502 a workout
to be performed. Typically, this involves user interaction with the
computing device to select or enter information that leads to
determination of a workout. For example, the determination 502 of
the workout can include receiving a workout type indication and
also receiving one or more workout characteristics for the workout.
Nevertheless, after a workout has been determined 502, workout
music for the workout is determined 504. The workout music is music
that is played by the computing device (e.g., portable media
device) during the workout.
[0062] Next, as the workout is ongoing, workout data is received,
processed and stored 506 at the computing device. The workout data
can, for example, be received from a sports device, such as the
sports device 104 illustrated in FIG. 1. In addition, updated
workout data is displayed 508. Typically, the computing device
includes a display device that is able to display workout data
during the workout. In addition, the workout music is played 510
during the workout by the computing device. By playing the workout
music, the workout can be enhanced by motivating the individual or
otherwise entertaining the individual during the workout.
[0063] Next, a decision 512 determines whether the workout has
ended. The workout can end in response to a user request or
automatically based on a condition (e.g., time, distance, etc.).
When the decision 512 determines that the workout has not ended,
the workout process 500 returns to repeat the block 506 and
subsequent blocks so that subsequent workout data can be received,
processed and stored 506. Thereafter, the updated workout data can
be displayed 508 and the workout music can continue to be played
510. Hence, the blocks 506-510 are performed during the workout
such that (i) new workout data can be periodically captured, (ii)
updated workout data can be periodically displayed, and (iii) the
workout music can be continuously played throughout the workout. On
the other hand, once the decision 512 determines that the workout
has ended, the workout data no longer needs to be received,
processed and stored. Instead, once the workout has ended, workout
summary data is displayed 514. The workout summary data 514
displays data that summarizes the workout. The workout music may or
may not automatically end at the end of the workout. Following the
block 514, the workout process 500 ends.
[0064] FIG. 6 is a flow diagram of a workout monitoring process 600
according to one embodiment of the invention. The workout
monitoring process 600 is, for example, performed by a portable
media device, such as the portable media device 102 illustrated in
FIG. 1.
[0065] The workout monitoring process 600 initially displays 602 a
workout screen. From the workout screen, a user can select a
workout type, workout data, or back (go-back). Hence, following the
block 602, a decision 604 determines whether a workout type
selection has been made. When the decision 604 determines that a
workout type selection has been made, a workout setup process 606
is performed. Details on exemplary processing associated with the
workout setup process 606 are discussed below with respect to FIGS.
7A and 7B. Alternatively, when the decision 604 determines that a
workout type selection has not been made, a decision 608 determines
whether a workout data selection has been made. When the decision
608 determines that a workout data selection has been made, a
workout data process 610 is performed. An example of a workout data
process that can be performed at the block 610 is described below
with reference to FIG. 9. On the other hand, when the decision 608
determines that a workout data selection has not been made, a
decision 612 determines whether a "back" selection has been made.
When the decision 612 determines that a "back" selection has not
been made, the workout monitoring process 600 returns to repeat the
decision 604 so that a user's selection, once provided, can be
processed. Alternatively, when the decision 612 determines that a
"back" selection has been made, a prior screen is displayed 614 and
processed appropriately.
[0066] FIGS. 7A and 7B are flow diagrams of a workout setup process
700 according to one embodiment of the invention. The workout setup
process 700 is, for example, suitable for use as the workout setup
process 606 illustrated in FIG. 6.
[0067] The workout setup process 700 initially displays 702 a
workout characteristic screen based on the selected workout type.
From the workout characteristic screen, a user is able to select
one or more characteristics for the workout. Hence, a decision 704
determines whether workout characteristics have been selected. When
the decision 704 determines that workout characteristics have not
yet been selected, the workout setup process 700 awaits such
selection. On the other hand, once the decision 704 determines that
workout characteristics have been selected, a workout music screen
is displayed 706. The workout music screen allows a user to select
music to utilize during the workout. The music being selected can
be a song, an album, a group of songs, etc. After the workout music
screen has been displayed 706, a decision 708 determines whether
workout music has been selected. When the decision 708 determines
that workout music has not yet been selected, the workout setup
process 700 awaits such a selection. It should be noted, however,
that a workout music selection could be predetermined or assigned
by default. Nevertheless, when the decision 708 determines that
workout music has been selected, a workout manager is configured
710 based on the selected workout type and the selected workout
characteristics. Additional details on the operation of the workout
manager are described below with reference to FIGS. 8A and 8B.
[0068] After the workout manager has been configured for the
workout, a decision 712 determines whether a sensor is available.
The sensor can correspond to the sports device 104 illustrated in
FIG. 1. When the decision 712 determines that the sensor is not
available, an error screen can be displayed 714. The error screen
notifies the user of the computing device (portable media device)
that the sensor (or sports device) is not available and thus there
is no ability to monitor sports related data. In this case, the
workout monitoring will not be performed.
[0069] On the other hand, when the decision 712 determines that the
sensor is available, a workout start screen is displayed 716. The
workout start screen allows a user of the computing device
(portable media device) to designate when they begin their workout.
Hence, a decision 718 determines whether start of the workout has
been selected. When the decision 718 determines that the start of
workout has not been selected, the workout setup process 700 awaits
such as selection. Once the decision 718 determines that start of
the workout has been selected, the workout manager is initiated 720
so that it begins the monitoring of the workout (and thus the
sports related data) as discussed in more detail below. In
addition, playback of the selected workout music is activated 722
so that the music is presented to the user during their workout.
Following the block 722, as well as following the block 714, the
workout setup process 700 ends.
[0070] FIGS. 8A and 8B are flow diagrams of a workout manager
process 800 according to one embodiment of the invention. The
workout manager process 800 is associated with a workout manager
that is a software module that operates to manage the capture,
processing and storage of sports related data as well as displaying
appropriate information and playing music to the user of the
computing device (portable media device).
[0071] The workout manager process 800 activates 802 reception of
sensor data. The sensor data is, for example, data provided by a
sensor within a sports device. For example, the sports device can
be the sports device 104 illustrated in FIG. 1. Next, a workout
progress screen is displayed 804. The workout progress screen
provides information to the user as to their progress through the
workout. As the workout proceeds, sensor data is received 806. The
sensor data is processed 808 in accordance with calibration data.
The calibration data is data that is provided through a calibration
process so that the sensor data can be better interpreted and thus
more accurate in the determination of the user's progress with
respect to the workout. The progress can be measured in a variety
of different ways depending upon the application. In one exemplary
application, the sensor data can be used to determine pace and
distance traveled by a user during a workout. Hence, the
calibration data can be used in such a case to more accurately
determine the pace and distance for a workout. After the sensor
data is processed 808, the sensor data is stored 810.
[0072] As the workout is ongoing, voice prompts can be provided to
the user. Hence, a decision 812 determines whether a voice prompt
is to be provided. When the decision 812 determines that a voice
prompt is to be provided, workout data for the voice prompt is
retrieved 814. Here, the voice prompt is to be associated with the
workout that is ongoing. Hence, the voice prompt is associated with
and provides to the user voice feedback pertaining to workout data.
Next, the voice prompt is initiated 816. In one embodiment, the
voice prompts are provided at predetermined points along a given
type of workout. In another embodiment, the voice prompt can be
provided based on performance metrics. For example, when the user
runs his/her fastest mile the user can be provided with a voice
prompt indicating that they have achieved a personal best. Here,
the user can be congratulated for reaching a particular performance
metric. Alternatively, when the decision 812 determines that a
voice prompt is not to be provided, the blocks 814 and 816 can be
bypassed.
[0073] Following the block 816 or its being bypassed, a decision
818 determines whether a workout is complete. When the decision 818
determines that the workout is complete, reception of sensor data
is deactivated 820. Next, a workout summary screen is displayed
822. The workout summary screen provides a summary of the workout
for the user. For example, in the case of a workout involving
running, the workout summary can provide the user with information
on total distance, total time, pace, etc. for the workout performed
by the user. Following the block 822, the workout manager process
800 ends.
[0074] Alternatively, when the decision 818 determines that the
workout is not complete, a decision 824 determines whether a pause
has been requested. A user can pause a workout as they desire, such
as through a user input action with respect to the computing device
(portable media device). In any case, when the decision 824
determines that a pause has not been requested, the workout manager
process 800 returns to repeat the block 804 and subsequent blocks
so that the workout monitoring can continue, the workout progress
screen can be updated, sensor data can be retrieved, processed and
stored, and any voice prompts that are appropriate can be
presented. Alternatively, when the decision 824 determines that a
pause has been requested, a decision 826 determines whether the
workout is to be resumed. That is, once the workout is paused, the
user can resume the workout by another user interface interaction
with the computing device. If the decision 826 determines that the
workout has been resumed, the workout manager process 800 again
returns to repeat the block 804 and subsequent blocks. On the other
hand, when the decision 826 determines that the workout is not to
be resumed, a decision 828 determines whether the workout is to be
stopped. When the decision 828 determines that a workout is not to
be stopped, the workout manager process 800 returns to repeat the
decision 826 so that the workout can be resumed or stopped as
requested by the user. Alternatively, when the decision 828
determines that the workout is to be stopped, the workout manager
process 800 returns to repeat the block 820 and subsequent blocks
so that the workout can be ended in its normal fashion.
[0075] FIG. 9 is a flow diagram of a workout data process 900
according to one embodiment of the invention. The workout data
process 900 is, for example, processing associated with the workout
data process 610 illustrated in FIG. 6.
[0076] The workout data process 900 displays 902 a workout data
selection screen. The workout data selection screen is a screen
that allows a user to select workout data to be viewed. In this
regard, the workout data can be divided into categories, and
possibly further divided into subcategories. In any case, a
decision 904 determines whether a data category has been selected.
Here, it is assumed that the workout data selection screen offers a
plurality of different data categories that can be selected. When
the decision 904 determines that a data category has not been
selected, the decision 904 awaits such a selection. Once the
decision 904 determines that a data category has been selected,
workout data for the selected data category is retrieved 906. Here,
the workout data for the selected data category is retrieved 906 by
the computing device through access of the stored workout data. The
workout data may or may not be further processed or analyzed once
the appropriate workout data is retrieved. In any case, a workout
data review screen is then displayed 908. The workout data review
screen includes the retrieved workout data, either as retrieved or
as further processed. Following the block 908, the workout data
process 900 ends.
[0077] In an alternative embodiment of the workout data process
900, the workout data review screen might permit the user to
further select subcategories or request additional details on
certain workout data. A user can also transition back to the
workout data selection screen so that they are able to select a
different data category and thus be presented with the associated
workout data. A user might also be permitted to select one or more
subcategories at the workout data selection screen.
[0078] FIGS. 10A and 10B are flow diagrams of an audio feedback
process 1000 according to one embodiment of the invention. The
audio feedback process 1000 concerns generation of audio feedback
for a user of a portable electronic device. The audio feedback can
yield an audio prompt, such as a voice prompt. Hence, in accordance
with one embodiment, the audio feedback process 1000 can be
considered a replacement for blocks 812-816 of the workout manager
process 800 illustrated in FIG. 8A.
[0079] The audio feedback process 1000 includes a decision 1002
that determines whether workout feedback is to be provided in an
audio manner. When the decision 1002 determines that workout
feedback is to be provided, workout data needed for a voice prompt
is determined 1004. Here, the audio feedback is provided in the
nature of a voice prompt. The workout data for the voice prompt is
then retrieved 1006. Next, audible speech for the workout feedback
is generated 1008. Here, the audible speech could be resident on
the computing device (e.g., portable computing device) or could be
generated as needed by the computing device. For example, the
audible speech can use speech synthesis or a combination of
predetermined audio snippets and speech synthesis. Thereafter, the
audible speech is output 1010 by mixing the audible speech with the
workout music also being played. In one embodiment, the mixing can
operate to fade out the workout music while fading in the audible
speech for the workout feedback, and then at the end of the audible
speech, fading out the end of the audible speech and fading in the
workout music.
[0080] Following the block 1010, as well as following the decision
1002 when workout feedback is not to be provided, a decision 1012
determines whether motivational feedback is to be provided. When
the decision 1012 determines that motivational feedback is to be
provided, a motivational message to be provided is identified 1014.
Next, audio data corresponding to the identified motivational
message is retrieved 1016. Typically, the computing device
(portable electronic device) will store in data memory
predetermined motivational messages that can be used to provide
motivational feedback for the user. Hence, the audio data
corresponding to the identified motivational message can be
retrieved 1016 from data memory provided in the computing device.
Thereafter, the audio data is output 1018 by mixing the audio data
with the workout music being played. In one embodiment, the mixing
can operate to fade out the workout music while fading in the audio
data corresponding to the identified motivational message, and then
at the end of the audio data, fading out the end of the audio data
and fading in the workout music.
[0081] Following the block 1018, as well as following the decision
1012 when motivational feedback is not to be provided, a decision
1020 determines whether device feedback is to be provided. When the
decision 1020 determines that device feedback is to be provided, a
device status type to be provided is determined 1022. Device status
information can then be retrieved 1024. Here, the device status
information that is retrieved 1024 can pertain to or include the
device status type to be provided. Next, audio data for the device
status can be generated or retrieved 1026. Thereafter, the audio
data can be output 1028 by mixing the audio data with the workout
music being played. Following the block 1028, as well as following
the decision 1020 when device feedback is not to be provided, the
audio feedback process 1000 ends. Additional details on device
feedback, such as device status information, are described in U.S.
patent application Ser. No. 11/209,367, filed Aug. 22, 2005, and
entitled "AUDIO STATUS INFORMATION FOR A PORTABLE ELECTRONIC
DEVICE".
[0082] According to another aspect of the invention, a power song
can be played by the computing device (e.g., portable computing
device). The power song can be provided on a priority basis, so as
to replace or override any other song that might be playing. In one
embodiment, the power song is a particular predetermined song that
was previously selected by the user to motivate the user with
regards to a workout.
[0083] FIG. 11 is a flow diagram of a power song process 1100
according to one embodiment of the invention. A computing device
(e.g., portable computing device) can support a power song that is
played for the user upon request. Hence, the power song process
1100 begins with a decision 1102. The decision 1102 determines
whether a power song request has been issued. The power song
request can be issued manually by a user of the portable electronic
device, or automatically by the computing device itself. In the
case in which the user manually causes the power song request, the
user might use a user interface action, such as selection of a
predetermined button or other action with respect to the computing
device.
[0084] In any case, when the decision 1002 determines that a power
song request has been issued, the power song to be played is
identified 1104. Typically, a user of a portable electronic device
can configure the computing device so as to provide a particular
power song that the user desires. Hence, in one embodiment, the
power song to be identified 1104 can pertain to a power song that
the user has previously configured the computing device to specify.
After the power song has been identified 1104, the workout music
that is otherwise being played during the workout can be stopped
1106. The power song is then played 1108. The power song is thus
played on a priority basis over any workout music that might be
playing. After the power song has played to completion or stopped,
the workout music can resume 1110 playing. Following the block
1110, the power song process 1100 is complete and ends.
[0085] When resuming 1110 playing of the workout music, in one
embodiment, the resume playback position in the workout music can
be offset by the duration of the power song. The workout music can
pertains to a single audio track or a group of audio tracks. When
the workout music is a group (or set) of tracks (songs), if the
resume playback position would extend into the next track (song),
then the resume playback position can, for example, be placed at
the start of the next song.
[0086] One aspect of the invention pertains to a user interface for
an electronic device, such as a portable computing device. One
example of a portable computing device is a portable media device.
FIGS. 12-79 are exemplary screens that can be provided by a
portable electronic device associated with an application directed
to monitoring run-based workouts while also permitting workout
music to be presented.
[0087] FIG. 12 is a main screen that provides a main menu having a
plurality of menu items. The menu item highlighted in FIG. 12 is
available in the main menu when a sports monitoring device is
available to the portable electronic device. In such case, the
portable electronic device provides workout monitoring. When
workout monitoring is selected from the main menu, a workout screen
can be presented. FIG. 13 illustrates an exemplary workout screen.
When a "Basic" workout type is selected, a workout music screen
such as shown in FIG. 14 can be displayed. A user can then interact
with the workout music screen to select music to be played during a
workout. In this example, a user can select a workout related mix
of music, e.g., "30 Minute Run Mix" as illustrated in FIG. 14.
Alternatively, the user can select from other playlists available
to the portable electronic device. After workout music has been
selected, a workout start screen such as illustrated in FIG. 15 can
be displayed. The workout start screen enables a user to initiate a
workout monitoring session.
[0088] The workout screen can also be used to initiate other types
of workouts. These other types of workouts can be based on time,
distance or calories. FIG. 16 illustrates a workout screen in which
a time-based workout is being requested. When a time-based workout
is requested, a workout characteristic screen such as shown in FIG.
17 can be displayed so that a user can select from various
different timed workouts. Assuming that the user selects "20 Min"
for a 20 minute timed workout as shown in FIG. 17, a workout start
screen such as shown in FIG. 18 can be displayed to enable the user
to start the workout monitoring session for a 20 minute workout.
Alternatively, a user can select a distance type workout as shown
in FIG. 19. When a distance-type workout is selected, a workout
characteristic screen such as shown in FIG. 20 is displayed. The
workout characteristic screen shown in FIG. 20 allows the user to
select from various different distance workouts. Assuming that the
user has selected "5K" for a 5 k distance workout as shown in FIG.
20, a workout start screen such as shown in FIG. 21 is displayed
that enables the user to start the workout monitoring session for a
5 k workout. As another alternative, a user can select a
calorie-type workout from the workout screen such as shown in FIG.
22. When the calories-based workout has been selected, a workout
characteristic screen such as shown in FIG. 23 can be displayed so
that a user can select from different levels of calorie workouts.
After the user has selected one of the different calorie workouts,
a workout start screen such as shown in FIG. 24 can be displayed so
that the user can start a workout monitoring session for the
determined calorie workout.
[0089] In the embodiment discussed above with respect to FIG. 1,
the sports device 104 needs to be in wireless communication with
the portable media device 102 for workout monitoring to be
performed. When the sports device 104 cannot be located by the
portable media device 102, a sensor availability warning screen
such as shown in FIG. 25 can be displayed. Here, the sensor
availability warning screen informs the user that the sports device
104, which in this example is located within a shoe of the user,
has not been located. Hence, it is recommended that the user walk
around to activate the sports device 104 (or sensor) residing in
the shoe. It should be noted that the sports device 104 can utilize
a low power mode in which it conserves energy when there is a lack
of movement. Hence, by walking around, the user can cause the
sports device 104 to awaken from any low-power state it may be
in.
[0090] In addition, a battery status notification screen such as
shown in FIG. 26 can be presented to a user. The battery status
notification screen is provided to inform the user that the battery
residing in the sports device 104 is low and will soon need to be
replaced. Similar status screens could also be provided to inform
the user of other status conditions of the sports device 104 or of
the portable media device 102. In one embodiment, the battery
status notification screen can be presented to the user prior to
presenting a workout start screen to the user.
[0091] FIG. 27 illustrates a workout status screen according to one
embodiment of the invention. The workout status screen can also be
referred to as a workout progress screen. In any case, the workout
status screen 2700 includes a shoe icon 2702 that can visually
indicate (e.g., flash) when the associated sports device is in
communication with the portable electronic device (portable media
device). The workout status screen 2700 also includes display of a
main metric 2704 and two minor metrics 2706. These metrics are
typically associated with the workout monitoring being performed.
In this case, the application is for run monitoring, hence, the
main metric 2704 displays time and the minor metrics 2706 display
pace and distance (miles). The workout status screen 2700 also
displays music information 2708, such as song name, artist or album
for a song being played. The display format can operate to scroll
between song name, artist and album. The workout status screen can
be displayed to the user once the user begins a workout, such as
following a workout start screen. The workout status screen 2700
can be presented to the user during the workout. In addition, once
the workout begins, such as by a user interacting with a workout
start screen, an audio indication can also be output to the user,
such as the audio indication "Beginning Workout".
[0092] During a workout, a user may wish to pause the workout or
stop the workout. In one embodiment, pressing a predetermined
button associated with the portable electronic device can cause a
workout to be paused. When paused, the workout can suspend data
collection for workout monitoring and may also pause the workout
music being played. Still further, an audio indication can be
output to the user that the workout has been paused, such as the
audio indication "Workout Paused". When the predetermined button is
pressed, a pause screen such as illustrated in FIG. 28 can be
displayed. From the pause screen, a user can resume a workout and
thus return to the workout status screen. Alternatively, as
illustrated in FIG. 29, a user can request to pause the workout in
which case a workout screen such as illustrated in FIG. 30 can be
displayed. In the workout screen illustrated in FIG. 30, when the
"Resume Workout" item is selected as illustrated in FIG. 30,
workout monitoring can restart and the workout status screen
displayed.
[0093] On the other hand, when a stop workout selection is made
with respect to a pause screen such as illustrated in FIG. 31, the
workout is stopped. Once the workout is stopped, a workout summary
screen can be displayed as illustrated in FIG. 32. In this example,
the workout summary screen pertains to a 60 minute workout. The
workout summary screen indicates the date, time, distance,
duration, pace, calories, battery condition, and date fine-tuned
(calibrated).
[0094] FIG. 33 illustrates an exemplary screen that can be
presented to the user when the sports device has lost wireless
communication with respect to the portable electronic device. In
this case, the workout ends when the sports device has lost
communication with the portable electronic device. Additionally, in
one embodiment, audio feedback can be provided to the user that the
portable electronic device has "Lost Contact With Shoe Sensor" and
subsequently that "Workout Completed".
[0095] From the workout screen, such as illustrated in FIG. 34, a
user can also select a "Data" item so that workout data can be
reviewed. When the data item from the workout screen is selected, a
workout data selection screen such as illustrated in FIG. 35 is
displayed. The workout data selection screen allows the user to
review data from past workouts. The data can pertain to an
individual workout, all workouts, recent workouts, or summaries or
totals from various workouts. When the user selects to review "Most
Recent" data such as illustrated in FIG. 35, a workout data review
screen such as illustrated in FIG. 36 can be displayed so that the
user can review the data associated with the user's most recent
workout. Alternatively, when the user selects the "Last 7 Days"
item from the workout data selection screen such as illustrated in
FIG. 37, a second workout data selection screen such as illustrated
in FIG. 38 can be displayed. The second workout data selection
screen provides different groupings of workouts that have been
performed within the last 7 days. In one embodiment, the workout
data selection screen can correspond to categories of workout data,
whereas the second workout data selection screen can refer to
subcategories of workout data. In any case, when the user selects
one of the items from the second workout data selection screen,
such as "60 Min" as illustrated in FIG. 38, a workout data review
screen, such as the workout data review screen illustrated in FIG.
36 can be displayed. Similarly, when the user selects the "All
Workouts" item from the workout data selection screen such as
illustrated in FIG. 39, a second workout data selection screen such
as illustrated in FIG. 40 can be displayed. Then, if the user
selects the "60 Min" grouping for all of the user's prior workouts,
the appropriate data can then be displayed to the user, such as
using a workout data review screen.
[0096] Once a workout data review screen is displayed, a user can
press a predetermined button to cause deletion of data
corresponding to an individual workout. As an example, when the
predetermined button is pressed, a delete workout screen such as
illustrated in FIG. 41 can be displayed. From the delete workout
screen, the delete request can be cancelled or the delete can be
processed depending upon a subsequent user selection.
[0097] The portable electronic device can also maintain data
pertaining to personal best across the various workouts that the
user has in the past performed. From the workout data selection
screen a "Personal Best" item can be selected such as illustrated
in FIG. 42. When the "Personal Best" item is selected from the
workout data selection screen, a personal best screen can be
displayed such as illustrated in FIG. 43. In this example, the
personal best information provided in the personal best screen is
categorized for different distances that the user has in the past
run. If the user has not performed any runs or workouts for any of
the available predetermined distances, such distances or categories
would not have any corresponding data. Hence, in one embodiment,
those categories or distances for which there is no data, are not
displayed in the personal best screen.
[0098] Still further, from the workout data selection screen, a
user can also select to review data corresponding to their totals
across the various workouts that the user has in the past
performed. As shown in FIG. 44, when the "Total" items from the
workout data selection screen is selected, a totals screen such as
illustrated in FIG. 45 can be displayed. The totals screen provides
data corresponding to all of the workouts previously performed by
the user with respect to the portable electronic device. In this
example, the total screen indicates number of workouts, farthest
distance run, total distance run, total time run, and total
calories consumed. In addition, by pressing a predetermined button,
the user can cause display of a clear totals screen such as
illustrated in FIG. 46. Using the clear totals screen the user can
cause the totals to be cleared if so desired.
[0099] Besides the predetermined distance workouts that are made
available in the workout characteristics screen illustrated in FIG.
20, a custom distance workout can also be performed. For example,
when the "Custom" item is selected from the workout characteristics
screen, a custom distance screen such as illustrated in FIG. 47 can
be displayed. The custom distance screen enables the user to set
the distance (e.g., in miles) for a distance workout to be
performed. Similarly, in the case of a caloric workout, the workout
characteristic screen can include a "Custom" item such as
illustrated in FIG. 23. Upon selection of the "Custom" item, the
user can be presented with a custom calorie screen (not shown) that
enables the user to enter a number of calories to be associated
with the workout. Yet still further, when a timed workout is to be
performed, the workout characteristic screen can include a "Custom"
item such as illustrated in FIG. 17. When the "Custom" item is
selected from the workout characteristic screen, the user can be
presented with a time entry screen that allows a user to enter a
duration of time for the workout.
[0100] As noted above, the portable electronic device can provide
voice feedback (more generally, audio feedback) to its user. In
this regard, a settings screen, such as shown in FIGS. 48-50 can be
used to configure the voice feedback (spoken feedback). The three
options for voice feedback include a female voice, as shown in FIG.
48, a male voice as shown in FIG. 49, and no voice feedback as
shown in FIG. 50.
[0101] The settings screen can also be used to set the user's
weight. In FIG. 51, the settings screen is indicated with a
"Weight" item highlighted. When the "Weight" item is selected, a
weight entry screen such as illustrated in FIG. 52 can be displayed
so that the user can enter his/her weight. Weight entry is
important for calorie workouts so that the portable electronic
device is able to compute the number of calories being burned
during the workout. The weight can be entered in kilograms or
pounds.
[0102] The setting screen can also be utilized to fine-tune the
accuracy of the portable electronic device. FIGS. 53-66 pertain to
fine-tuning of the accuracy, which is also known as calibration. In
FIG. 53, a settings screen is illustrated with the "Shoes" item
highlighted. Upon selection of the "Shoes" item, a shoes screen
such as illustrated in FIG. 54 can be displayed. As shown in FIG.
54, the "Fine-Tune" item is highlighted. When the "Fine-Tune" item
is selected, a fine-tune screen is displayed such as illustrated in
FIG. 55. In the fine-tune screen, an explanatory message can be
provided to the user regarding how the fine-tuning (i.e.,
calibration) process is to be performed. From the fine-tune screen,
a fine-tune status screen can be displayed such as illustrated in
FIG. 56. In this example, the fine-tune status screen indicates
that a walk-type fine-tune was performed on Oct. 4, 2005 and that a
run-type fine-tune was performed on Oct. 8, 2005. The "Pro Run"
item is shown in the fine-tune screen as not having yet been
performed. When the "Run" item is selected from the fine-tune
screen such as illustrated in FIG. 56, a fine-tune run screen such
as illustrated in FIG. 57 can be displayed. From the fine-tune run
screen, a user can select either a 400 meter run or a custom
distance to be utilize for a fine-tune operation. Alternatively,
the user could reset the fine-tune run data to its default data.
When the fine-tune run screen is used to select the "Custom
Distance" item as shown in FIG. 58, a custom distance screen such
as illustrated in FIG. 59 can be displayed so that a user can enter
a custom distance to be utilized with respect to the fine-tune
run.
[0103] The fine-tune screen illustrated in FIG. 60 shows the "Pro
Run" item being highlighted. When the "Pro Run" item is selected, a
fine-tune pro run screen such as illustrated in FIG. 61 is
displayed. The fine tune pro run screen allows the user to elect to
run at a slower pace or a faster pace for the fine-tune operation.
Regardless of which pace is selected, a fine-tune pro run screen
such as illustrated in FIG. 62 is displayed. The fine-tune pro run
screen illustrated in FIG. 62 allows the user to select a
predetermined distance, a custom distance or a reset operation.
[0104] Once the fine-tune run has been specified, the user can be
presented with a music selection screen and then a start screen.
Once the user has indicated that they have started the fine tune
run, a workout status screen can be displayed as discussed above.
When a pause request has been activated, such as by pressing a
predetermined button, a fine-tune pause screen such as illustrated
in FIG. 63 can be displayed. The fine-tune pause screen enables a
user to end the fine-tuning or resume the fine-tuning. Regardless,
when the fine-tune run has completed in a successful manner, a
fine-tune run screen such as illustrated in FIG. 64 can be
displayed. Alternatively, when the fine-tune run does not complete
successfully, error screens such as illustrated in FIG. 65 or FIG.
66 can be displayed. The error screen shown in FIG. 65 indicates
that the distance run by the user was not the chosen distance for
the fine-tuning. FIG. 66 indicates that the user varied their pace
too much during the fine-tuning run, which caused inaccuracies.
[0105] FIGS. 67-72 are representative screens pertaining to linking
of a sports device (e.g., within a shoe) with a portable electronic
device. From a settings screen, a user can select a "Shoes" item.
When the "Shoes" item of a settings screen is selected, a shoes
screen such as illustrated in FIG. 67 can be displayed. When the
"Link" item from the shoes screen is highlighted as shown in FIG.
67, the user can select the "Link" item to link the portable
electronic device to the sports device within a shoe. FIG. 68 is a
linking screen that indicates to the user that has requested
linking that the portable electronic device is already linked. If
desired, the user can continue to link the portable electronic
device with a different pair of shoes (i.e., different sports
device). Upon successful linking, a linking screen such as shown in
FIG. 69 can be displayed to the user. Further, during the linking
operation, if the portable electronic device is having difficulty
locating the shoes (i.e., sports sensor) to be linked with, a
linking screen such as shown in FIG. 70 can be displayed to the
user requesting that the user walk around with the shoe so that the
sports device is activated. Here, the sports device may be inactive
or in a low power state when the shoe has not been used for walking
or running in the immediate past. The sports device can be awakened
by the user walking around with the shoe. Also, during the linking
operation, if the portable electronic device detects more than one
shoe having a sports device, a linking screen such as shown in FIG.
71 can be displayed to inform the user and request that they
isolate all but one shoe from the portable electronic device.
[0106] FIGS. 72-79 pertain to linking of a remote controller with
the portable electronic device. In FIG. 72, a settings screen is
illustrated having the "Remote" item highlighted. When the "Remote"
item is selected, a remote screen such as illustrated in FIG. 73
can be displayed. The remote screen can be used to enable or
disable remote commands, and can also link or unlink a remote
controller to the portable electronic device. When the "Link" item
is selected from the remote screen illustrated in FIG. 73, a
linking screen such as shown in FIG. 74 can be displayed informing
the user that the portable electronic device is already linked with
a wireless remote (remote controller). Alternatively, during the
linking operation, a linking screen such as shown in FIG. 75 can be
displayed to inform the user that a portable electronic device is
searching for the wireless remote and that the user should press a
button on the wireless remote so that it is activated. Once the
linking with the wireless remote has been successfully performed,
the portable electronic device can display a linking screen such as
shown in FIG. 76. During the linking operation, if the portable
electronic device detects more than one wireless remote in the
vicinity, a linking screen such as shown in FIG. 77 can be
displayed to advise the user to remove all but one wireless remote
from the vicinity of the portable electronic device.
[0107] The remote screen such as shown in FIG. 73 can also be used
to unlink a wireless remote from being linked with the portable
electronic device. When the "Unlink" item in the remote screen is
selected, an unlinking screen such as illustrated in FIG. 78 is
displayed. The unlinking screen can advise the user on pressing a
button to unlink the current wireless remote.
[0108] During the linking operation, with respect to a shoe or a
wireless remote, in the event that the shoe or wireless remote is
unable to be detected, an error screen can be presented to the
user. For example, FIG. 79 illustrates an error screen informing
the user that no shoes were detected during a linking operation
with respect to a shoe and the portable electronic device. A
similar error screen could be displayed when no wireless remote is
detected during a linking operation with respect to a wireless
remote and the portable electronic device.
[0109] Another aspect of the invention pertains to the use of
templates to affect operation of a portable electronic device.
Templates can be used to define workouts. A template can
characterize or describe a workout. A template can, for example, be
provided as a XML file. The templates can be included in firmware
of the portable electronic device, such as the portable media
device 102, or downloaded to the portable electronic device. For
example, with respect to FIG. 1, templates can be downloaded from
the media management application 114 operating on the personal
computer 110 to the portable media device 102. The portable
electronic device can present on a display those templates
available on the portable electronic device.
[0110] In one embodiment, the templates are run templates. A run
template characterizes or describes a run workout. When utilized by
the portable electronic device, the run templates can affect one or
more aspects of the run workout. The one or more aspects of the run
workout can include a workout status screen, workout goal (e.g.,
distance), data monitoring, voice feedback, media output (e.g.,
music), etc.
[0111] FIG. 80 is a diagram of a template control system 8000
according to one embodiment of the invention. The template control
system 8000 is managed by a workout manager 8002 provided within a
computing device, such as a portable computing device. The template
control system 8000 utilizes one or more workout templates 8004.
The workout templates 8004 are provided to a workout manager 8002.
The workout manager 8002 can control operation of the computing
device during a workout in accordance with the workout templates
8004. In this regard, using information from the workout templates
8004, the workout manager 8002 can control whether or not workout
data 8006, such as workout data provided by a sports device, is
recorded. In addition, the workout manager 8002 can control or
influence what is presented on a display 8008 based on the workout
templates 8004. For example, the information being presented on a
workout screen can be controlled by information within the workout
templates 8004. As a particular example, the workout status screen
illustrated in FIG. 27 can have the information being displayed in
the major metric area 2704 and the minor metric areas 2706 be
determined by information within the workout template. Also, the
workout template 8004 can control when and what audio feedback 8010
is provided to the user of the computing device (portable
electronic device). Still further, the workout template 8004 can be
used to determine what music 8012 is output during the workout.
[0112] In one embodiment, each template is provided with a template
identifier that is unique or pseudo unique. The template identifier
can be referred to when selecting a desired template, when
downloading templates, etc.
[0113] According to one embodiment, a run template can include a
header section and one or more interval sections. The header
section can include: a title for the run, instructions for the run,
a workout category, a template version, a template format version,
and/or description of what to display in a data summary screen.
Each interval section can include: a goal base for the run (e.g., a
time, a distance, a number of calories, a number of strides, etc.),
whether data for the interval should be recorded, what music (e.g.,
playlist) to use for the interval, what to display in a workout
status screen, and/or what voice prompts are to be used and at what
points during the workout.
[0114] The title for the run can vary. For example, the title can
be "5 k Workout". The instruction for the run, if provided, can be
displayed for the user prior to beginning the run workout. The
template version can be used to determine whether a new version of
the template needs to be downloaded. The template format version
can be used for compatibility purposes. Templates with a higher
format version than the firmware in the portable electronic device
can allow the system to ignore unknown tags. Unknown tags in a
template claiming an equal or lower template format version will
cause the template to be rejected.
[0115] The contents for the data summary screen can be specified by
at least one field identifier that identifies information, namely,
run history, to be displayed. The information can be displayed in
the order listed in the template. Some possible examples of
information that can be specified for inclusion in the data summary
screen include: weekly average pace, weekly average distance,
overall averages of various types, total weekly distance, total
distance for this run, total number of steps for this run, total
time for this run, total calories burned during this run, and every
recorded interval time.
[0116] The interval section includes one or more intervals. Each
interval can provide the following information: interval goal base
(e.g., a time, distance, number of calories, number of strides), or
if not specified then the run is an open-ended run; decimal values;
whether data is recorded or not; a playlist; one or more on-demand
voice prompts; and/or what to display in a workout status
screen.
[0117] Totals for the run can be calculated only using the recorded
intervals. An interval may specify a time extension increment. The
intervals may be of mixed type (not all interval goals have to be a
distance (or a time, etc). The current calibration data could be
used to calculate and verify intervals.
[0118] Intervals can be used for a variety of things, like laps,
interval training, or just an entire run. One use for an unrecorded
interval would be warm-up or cool-down periods. During such a
period, the user probably does not care so much about
performance.
[0119] As noted above, the intervals can also specify what to
display in the workout status screen (e.g., Now Running screen)
during the given interval. The interval can specify what to display
in the large metric area as well as in the smaller metric areas of
the workout status screen, such as the workout status screen
illustrated in FIG. 27. This can be done using a display format ID
which will be used to identify both the numerical format and units
to be used. Some examples of metrics that can be specified include:
total distance, total time, last interval time, current elapsed
interval time, current interval time remaining, time remaining,
distance remaining, number of steps, kilometer or mile pace, number
of steps per minute, calories burned, etc. In FIG. 27, the large
metric displayed is total time, and the smaller metrics are total
distance in miles and total number of steps run.
[0120] A playlist to be used during an interval can be specified.
The playlist can be identified by its title. Alternatively, the
playlist could be identified by an identifier. In any event, the
portable electronic device needs to have access to the
playlist.
[0121] As noted above, the interval can be one or more voice
prompts, which can be held in a voice prompt list. Each voice
prompt includes a format list and a trigger. The format list
includes one or more voice prompt format identifiers. The voice
prompts will be played in the order in which they appear in the
format list. A trigger can specify a type: regular distance (play
this prompt every N distance), regular time (play this prompt every
N amount of time), regular calories (play this prompt every N
calories burned), regular strides (play this prompt every N strides
taken), a particular distance, time, calorie value or number of
strides, or on-demand (play this prompt whenever the user presses a
predetermined button). The trigger values can be set relative to
the current interval.
[0122] For localization, the title and the instructions for the
different languages would need to be provided. English is used as
the default language. The localization for the voice prompts can be
handled separately from the template. When the user changes
languages at the portable electronic device, any strings that have
been localized will automatically be updated, and if there are
corresponding entries in the voice prompt dictionary, they will be
used.
[0123] Validation and range checking can be performed on loading
each individual template. The template format version will also be
used to determine validity of the template. If a template fails the
validation and range checking, the template is not utilized (e.g.,
not made available to the user).
[0124] An exemplary template in an XML format for a 5 k run is
provided below:
TABLE-US-00001 <template tmplID="9223372036854775808"
formatVer="1.0" tmplVer="1.0" category="dist"> <!-- tmplID
must be unique --> <title lang=en-US>5K
Workout</title> <shortTitle
lang=en-US>5K</shortTitle> <sumFmt> <field
fieldID="distT"> <field fieldID="timeT"> <field
fieldID="calrT"> </sumFmt> <goal
units="km">5.00</goal> <vpList> <vpLI
triggerValue="0.00" triggerType="atNsecs"> <vpFmtList>
<vpID promptID="vpStart"/> </vpFmtList> </vpLI>
<vpLI triggerValue="0" triggerType="onDem"> <vpFmtList>
<vpID promptID="vpDist"/> <vpID promptID="vpTime"/>
<vpID promptID="vpPace"/> <vpID
promptID="vpDistContext"/> </vpFmtList> </vpLI>
<vpLI triggerValue="1.00" triggerType="everyNdist">
<vpFmtList> <vpID promptID="vpDistContext"/>
</vpFmtList> </vpLI> <vpLI triggerValue="2.50"
triggerType="atNdist"> <vpFmtList> <vpID
promptID="vpHalf"/> <vpID promptID="vpDistRem"/>
</vpFmtList> </vpLI> <vpLI triggerValue="4600"
triggerType="atNdist" units="m"> <vpFmtList> <vpID
promptID="vpDistRem"/> </vpFmtList> </vpLI> <vpLI
triggerValue="4700" triggerType="atNdist" units="m">
<vpFmtList> <vpID promptID="vpDistRem"/>
</vpFmtList> </vpLI> <vpLI triggerValue="4800"
triggerType="atNdist" units="m"> <vpFmtList> <vpID
promptID="vpDistRem"/> </vpFmtList> </vpLI> <vpLI
triggerValue="4900" triggerType="atNdist" units="m">
<vpFmtList> <vpID promptID="vpDistRem"/>
</vpFmtList> </vpLI> <vpLI triggerValue="5.00"
triggerType="atNdist" units="m"> <vpFmtList> <vpID
promptID="vpGoal"/> </vpFmtList> </vpLI> <vpLI
triggerValue="0" triggerType="onStop"> <vpFmtList>
<vpID promptID="vpEnd"/> <vpID promptID="vpDist"/>
<vpID promptID="vpTime"/> <vpID promptID="vpPace"/>
<vpID promptID="vpCal"/> </vpFmtList> </vpLI>
</vpList> </template>
[0125] The various aspects, embodiments, implementations or
features of the invention can be used separately or in any
combination.
[0126] The invention is preferably implemented by software,
hardware or a combination of hardware and software. The invention
can also be embodied as computer readable code on a computer
readable medium. The computer readable medium is any data storage
device that can store data which can thereafter be read by a
computer system. Examples of the computer readable medium include
read-only memory, random-access memory, CD-ROMs, DVDs, magnetic
tape, optical data storage devices, and carrier waves. The computer
readable medium can also be distributed over network-coupled
computer systems so that the computer readable code is stored and
executed in a distributed fashion.
[0127] The many features and advantages of the present invention
are apparent from the written description and, thus, it is intended
by the appended claims to cover all such features and advantages of
the invention. Further, since numerous modifications and changes
will readily occur to those skilled in the art, the invention
should not be limited to the exact construction and operation as
illustrated and described. Hence, all suitable modifications and
equivalents may be resorted to as falling within the scope of the
invention.
* * * * *