# Patent

## Title
Athletic performance user interface

## Abstract

Athletic data may be recorded and displayed using a computing device such as a mobile communication device during performance of physical activity. In some examples, the device may provide options for defining and recording athletic activity performed by the user. Such options may include various content item selection and rendering controls. Additionally or alternatively, route selection and controls may be provided through the device. Recorded activity data may further be transmitted to a remote site through a network.

## Background
RELATED APPLICATIONS
The present application is a continuation and claims the benefit of U.S. patent application Ser. No. 12/424,851, entitled “ATHLETIC PERFORMANCE USER INTERFACE FOR MOBILE DEVICE” and filed Apr. 16, 2009, which claims the benefit of U.S. Patent Application No. 61/045,599, filed Apr. 16, 2008. Both applications are expressly incorporated herein by reference in their entirety.


FIELD OF THE INVENTION
The present invention relates to the collection and display of athletic information. Some aspects of the invention have particular applicability to the collection of athletic information over a network, and displaying the collected information.
BACKGROUND OF THE INVENTION
While most people appreciate the importance of physical fitness, many have difficulty finding the motivation required to maintain a regular exercise program. Some people find it particularly difficult to maintain an exercise regimen that involves continuously repetitive motions, such as running, walking and bicycling.
Experienced athletes and trainers have found that feedback provides many people with motivation to maintain a regular exercise program. When a person can directly experience the results provided by an exercise program, that person typically will be encouraged to continue exercising. Unfortunately, the physical improvements obtained from exercise often come too slowly to provide sufficient motivation for many people to maintain a regular exercise program. It would therefore be useful for many athletes to have a more immediate, visual type of feedback to provide motivation for regular exercise.
Many experienced athletes and trainers also have found that competition may provide an even stronger motivation to maintain a regular exercise program. Some athletes, for example, will be more motivated to exercise when competing against a partner than by exercising alone. These athletes may, for example, exercise with a partner, enter into athletic contests such as races, or even just compare their current performance ability with a friend's.
BRIEF SUMMARY OF THE INVENTION
Various aspects of the invention relate to the collection and display of athletic information. With some implementations of the invention, athletic data relating to a single person is collected and displayed so that the person can fully critique his or her performance. For example, a set of athletic data corresponding to athletic activity performed by a person over a first time period may be displayed as a graph. If the set of athletic data is generated from, e.g., a person running or walking, then the person's speed may be plotted against his or her distance over the time period for the activity. With some implementations, the set of athletic data can be analyzed, and the analysis results can be displayed simultaneously with the graph. For example, with a set of athletic data obtained from a person running, the data can be analyzed to determine the change in speed (i.e., acceleration or deceleration) between fixed distances (first mile, second mile, etc.). This information can then be displayed with the graph, so that the person can review when and how much he or she changed speed during the run.
With still other implementations of the invention, a person can compare a set of athletic data with another set of athletic data having a desired characteristic. For example, if a selected set of athletic data is generated from, e.g., a person running over a particular time period, then the person may wish to compare his or her performance for that “run” with his or her best speed for a similar previous run. Thus, if the run covered a distance of, e.g., 4 miles, earlier sets of athletic data will be analyzed to determine which data sets correspond to runs of approximately 4 miles. The data set having, e.g., the highest mean speed can then be identified, and data from that previously data set displayed simultaneously with data from the selected data set. For example, data from each athletic data set may be plotted as graph and rendered on a display. The person can then compare the selected set of athletic data with the set of athletic data representing his or her “best” speed in detail.
Still further, some implementations may collect sets of athletic data obtained over different time periods, and concurrently display data from these sets. Thus, if a person has multiple runs over a period of days, data from each run may be simultaneously displayed. For example, an icon, such as a bar or line, can be displayed for each data set. A dimension of the icon, such as, e.g., its height, can then correspond to some data in that data set, such as the median speed of the run or the total distance traveled over the run. With some implementations, data from multiple sets may be aggregated and displayed. For examples, runs falling within a specified category (e.g., occurring during the same week or month) can be grouped together, and the total distance data (or, alternatively, the total time data) for each data set in a group can be added together. An icon, such as a bar or line, then can be displayed to represent the sum of the data from each group. A dimension of the icon, such as, e.g., its height, may correspond to the data added together from its corresponding group of data sets.
In addition, some examples of the invention may allow a person to specify a goal related to an athletic activity. A person may, e.g., set a goal of running a specified total distance within a specified period of time. With these implementations of the invention, data from multiple sets of a person's athletic data may be aggregated and displayed in contrast with the person's specified goal. The goal may be displayed, for example, as an empty shape, like an oval. The aggregated data may then be displayed as fill within the empty shape. Thus, if the aggregated data shows that the person is within 80% of his or her goal, then the shape representing the goal will be displayed as 80% filled.
With some implementations, sets of athletic data may be obtained from a plurality of different persons and displayed. For example, one or more sets of data from each of a plurality of different persons may be collected. Data from each person's data sets can then be aggregated and displayed to each person. For example, a set of athletic data can be generated for each run a person makes. For each person, data from his or her data sets, such as distance data, can be added up. An icon, such as a bar or line, can then be displayed for each person to represent the sum of the data from his or her data sets. A dimension of the icon, such as, e.g., its height, may correspond to the sum of the data added from each of a person's data sets.
Still further, some examples of the invention may allow a person to “invite” one or more other persons to share athletic data corresponding to their athletic activities. With some implementations of the invention, for example, a user may send an invitation via electronic mail or a similar electronic medium to one or more other persons. Athletic data from only those invited persons may then be displayed simultaneously as noted above. This arrangement allows each invited person (including the inviting host, who inherently invites himself or herself and thus is considered an invitee as well) to compare his or her current athletic data with the other invitees.
With still other implementations of the invention, a person may alternately or additionally specify a common goal for the invitees. For example, the inviting host may specify a total combined distance that the invitees (including the host) are to run within a specified amount of time. Data from multiple sets of athletic data for each invitee may be aggregated and displayed in contrast with the person's specified goal. Again, the goal may be represented by the display of, for example, an empty shape, like an oval. The data aggregated from each invitee may then be displayed as fill within the empty shape. Thus, if the aggregated data shows that the collective athletic activity of the invitees is within 60% of the specified goal, then the shape representing the goal will be displayed as 60% filled.
For yet other implementations of the invention, the performance data collected from one or more users, details associated with one or more athletic performance goals or training programs, and the user interface associated therewith may be included in and/or displayed by a mobile device.
These and other features of the invention will become apparent from the following detailed description.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates a computing device that may be used to implement various examples of the invention.
FIGS. 2 and 3 illustrate an example of an athletic information monitoring device that may be employed according to various examples of the invention.
FIG. 4 illustrates one environment in which an athletic parameter measurement device according to various examples of the invention may be employed.
FIG. 5 illustrates an example of an athletic information collection and display device that may be employed to collect and/or display athletic data according to various implementations of the invention.
FIG. 6 illustrates an example of an athletic data display configuration device that may be employed according to various examples of the invention.
FIG. 7 illustrates a network including an athletic data display configuration device and a plurality of client devices of the type that may be employed according to various examples of the invention.
FIGS. 8A-8F, 9A and 9B illustrate examples of user interfaces that may be provided to display athletic data for a user according to various implementations of the invention.
FIGS. 10 and 11A-11E illustrate examples of user interfaces that may be provided to select goals for a user according to various implementations of the invention.
FIG. 12 illustrates an example of a user interface that may be provided to indicate a user's progress toward achieving an athletic activity goal according to various implementations of the invention.
FIGS. 13A-13F illustrate examples of user interfaces that may be provided to create a challenge to other users according to various implementations of the invention.
FIGS. 14A-14F illustrate examples of user interfaces that may be provided to compare a user's athletic data with the athletic data of other participating users according to various implementations of the invention.
FIG. 15 illustrates an example of a user interface that may be provided to memorialize a user's athletic achievements according to various implementations of the invention.
FIG. 16 illustrates an example of a user interface that may be provided to create a resolution to perform an athletic achievement according to various implementations of the invention.
FIG. 17 illustrates example user interfaces for initiating a workout according to one or more aspects described herein.
FIG. 18 illustrates example function mappings to hardware input controls without use of headphones according to one or more aspects described herein.
FIG. 19 illustrates example function mappings to hardware input controls with use of headphones according to one or more aspects described herein.
FIG. 20 illustrates example input controls for invoking a pause functionality according to one or more aspects described herein.
FIG. 21 illustrates example input controls for invoking an end workout functionality according to one or more aspects described herein.
FIG. 22 illustrates example workout data display interfaces according to one or more aspects described herein.
FIG. 23 illustrates example interfaces for viewing goals, challenges and workout maps according to one or more aspects described herein.
FIG. 24 illustrates example user interfaces for initiating a workout according to one or more aspects described herein.
FIG. 25 illustrates example function buttons and commands that may be used during a workout according to one or more aspects described herein.
FIG. 26 illustrates example input controls for invoking a pause functionality according to one or more aspects described herein.
FIG. 27 illustrates example input controls for invoking an end workout functionality according to one or more aspects described herein.
FIG. 28 illustrates an example user interface for displaying and mapping workout routes according to one or more aspects described herein.



DETAILED DESCRIPTION OF THE INVENTION
Operating Environment
Overview
Aspects of the invention relate to the measurement, collection and display of athletic information. As will be appreciated by those of ordinary skill in the art, athletic information must first be obtained from an individual person. With various implementations of the invention, one or more different athletic information monitoring devices may be used to measure and record athletic data corresponding to athletic activity performed by a person. Typically, an athletic information monitoring device will incorporate a sensor for measuring parameters relating to the person being monitored, and a computing device for processing the parameters measured by the sensor.
Once an athletic information monitoring device has recorded athletic information for a person's athletic activity, the person may then transfer the recorded athletic information to one or more separate devices, in order to view the recorded athletic data. A user may, for example, download the recorded athletic information from an athletic information monitoring device to a separate collection device. The collection device may, in turn, transfer the athletic information collected from the athletic information monitoring device to a separate display configuration device, where the athletic information can be organized and configured for subsequent viewing with, e.g., still another device. As will be discussed in more detail below, various implementations of the invention will allow a person to record, collect and display athletic information using a group of computing devices communicating over a network, such as the Internet.
For example, some implementations of the invention may allow a person to measure and record athletic information using a special-purpose computing device. The user can then transfer the recorded athletic information to a local computing device, such as a personal desktop or laptop computer. More particularly, a user can download recorded athletic information from the athletic information monitoring device to a collection software tool on a local computer that acts as a “client” in a computer network. The collection software tool will then transfer the downloaded athletic information through the network to a remote “server” computer. A display configuration software tool on the remote server computer will then save the transferred athletic information. Later, a person can use the client computer or another local computer to retrieve the stored athletic information from the server computer. In response to a display request from a local computer, the display configuration software tool will configure the requested athletic information for display on the local computer, and then transmit the configured athletic information to the local computer for display.
Computing Device
Various examples of the invention may be implemented using electronic circuitry configured to perform one or more functions. For example, with some embodiments of the invention, the athletic information monitoring device, the collection device, the display device or any combination thereof may be implemented using one or more application-specific integrated circuits (ASICs). More typically, however, components of various examples of the invention will be implemented using a programmable computing device executing firmware or software instructions, or by some combination of purpose-specific electronic circuitry and firmware or software instructions executing on a programmable computing device.
Accordingly, FIG. 1 shows one illustrative example of a computer 101 that can be used to implement various embodiments of the invention. As seen in this figure, the computer 101 has a computing unit 103. The computing unit 103 typically includes a processing unit 105 and a system memory 107. The processing unit 105 may be any type of processing device for executing software instructions, but will conventionally be a microprocessor device. The system memory 107 may include both a read-only memory (ROM) 109 and a random access memory (RAM) 111. As will be appreciated by those of ordinary skill in the art, both the read-only memory (ROM) 109 and the random access memory (RAM) 111 may store software instructions for execution by the processing unit 105.
The processing unit 105 and the system memory 107 are connected, either directly or indirectly, through a bus 113 or alternate communication structure to one or more peripheral devices. For example, the processing unit 105 or the system memory 107 may be directly or indirectly connected to additional memory storage, such as the hard disk drive 115, the removable magnetic disk drive 117, the optical disk drive 119, and the flash memory card 121. The processing unit 105 and the system memory 107 also may be directly or indirectly connected to one or more input devices 123 and one or more output devices 125. The input devices 123 may include, for example, a keyboard, touch screen, a remote control pad, a pointing device (such as a mouse, touchpad, stylus, trackball, or joystick), a scanner, a camera or a microphone. The output devices 125 may include, for example, a monitor display, television, printer, stereo, or speakers.
Still further, the computing unit 103 will be directly or indirectly connected to one or more network interfaces 127 for communicating with a network. This type of network interface 127, also sometimes referred to as a network adapter or network interface card (NIC), translates data and control signals from the computing unit 103 into network messages according to one or more communication protocols, such as the Transmission Control Protocol (TCP), the Internet Protocol (IP), and the User Datagram Protocol (UDP). These protocols are well known in the art, and thus will not be discussed here in more detail. An interface 127 may employ any suitable connection agent for connecting to a network, including, for example, a wireless transceiver, a power line adapter, a modem, or an Ethernet connection.
It should be appreciated that, in addition to the input, output and storage peripheral devices specifically listed above, the computing device may be connected to a variety of other peripheral devices, including some that may perform input, output and storage functions, or some combination thereof. For example, the computer 101 may be connected to a digital music player, such as an IPOD® brand digital music player available from Apple, Inc. of Cupertino, Calif. As known in the art, this type of digital music player can server as both an output device for a computer (e.g., outputting music from a sound file or pictures from an image file) and a storage device. In addition, this type of digital music play also can serve as an input device for inputting recorded athletic information, as will be discussed in more detail below.
In addition to a digital music player, the computer 101 may be connected to or otherwise include one or more other peripheral devices, such as a telephone. The telephone may be, for example, a wireless “smart phone.” As known in the art, this type of telephone communicates through a wireless network using radio frequency transmissions. In addition to simple communication functionality, a “smart phone” may also provide a user with one or more data management functions, such as sending, receiving and viewing electronic messages (e.g., electronic mail messages, SMS text messages, etc.), recording or playing back sound files, recording or playing back image files (e.g., still picture or moving video image files), viewing and editing files with text (e.g., Microsoft Word or Excel files, or Adobe Acrobat files), etc. Because of the data management capability of this type of telephone, a user may connect the telephone with the computer 101 so that their data maintained may be synchronized.
Of course, still other peripheral devices may be included with our otherwise connected to a computer 101 of the type illustrated in FIG. 1, as is well known in the art. In some cases, a peripheral device may be permanently or semi-permanently connected to the computing unit 103. For example, with many computers, the computing unit 103, the hard disk drive 117, the removable optical disk drive 119 and a display are semi-permanently encased in a single housing. Still other peripheral devices may be removably connected to the computer 101, however. The computer 101 may include, for example, one or more communication ports through which a peripheral device can be connected to the computing unit 103 (either directly or indirectly through the bus 113). These communication ports may thus include a parallel bus port or a serial bus port, such as a serial bus port using the Universal Serial Bus (USB) standard or the IEEE 1394 High Speed Serial Bus standard (e.g., a Firewire port). Alternately or additionally, the computer 101 may include a wireless data “port,” such as a Bluetooth interface, a Wi-Fi interface, an infrared data port, or the like.
It should be appreciated that a computing device employed according various examples of the invention may include more components than the computer 101 illustrated in FIG. 1, fewer components than the computer 101, or a different combination of components than the computer 101. Some implementations of the invention, for example, may employ one or more computing devices that are intended to have a very specific functionality, such as a digital music player or server computer. These computing devices may thus omit unnecessary peripherals, such as the network interface 115, removable optical disk drive 119, printers, scanners, external hard drives, etc. Some implementations of the invention may alternately or additionally employ computing devices that are intended to be capable of a wide variety of functions, such as a desktop or laptop personal computer. These computing devices may have any combination of peripheral devices or additional components as desired.
Athletic Information Monitoring Device
FIG. 2 illustrates one example of an athletic information monitoring device 201 that may be employed according to various examples of the invention to measure athletic information corresponding a user's athletic activity. As shown in this figure, the athletic information monitoring device 201 includes a digital music player 203, an electronic interface device 205, and an athletic parameter measurement device 207. As will be described in more detail, the digital music player 203 is (releasably) connected to the electronic interface device 205, and the combination is worn or otherwise carried by the user while he or she is performing an athletic activity, such as running or walking. The athletic parameter measurement device 207 also is worn or carried by the user while he or she is performing an athletic activity, and measures one or more athletic parameters relating to the athletic performance being performed by the user. The athletic parameter measurement device 207 transmits signals to the electronic interface device 205 that correspond to the measured athletic parameter. The electronic interface device 205 receives the signals from the athletic parameter measurement device 207, and provides the received information to the digital music player 203.
As shown in more detail in FIG. 3, the athletic parameter measurement device 207 includes one or more sensors 301 for measuring an athletic parameter associated with a person wearing or otherwise using the athletic parameter measurement device 207. With the illustrated implementations, for example, the sensors 301A and 301B may be accelerometers (such as piezoelectric accelerometers) for measuring the acceleration of the athletic parameter measurement device 207 in two orthogonal directions. The athletic parameter measurement device 207 is carried or otherwise worn by a user to measure the desired athletic parameter while the user exercises. For example, as shown in FIG. 4, the athletic parameter measurement device 207 may be located the sole of a user's shoe 401 while the user walks or runs. With this arrangement, the sensors 301 will produce electrical signals corresponding to the movement of the user's foot. As known in the art, these signals can then be used to generate athletic data representative of the athletic activity performed by the user.
The athletic parameter measurement device 207 also includes a processor 303 for processing the electrical signals output by the sensors 301. With some implementations of the invention, the processor 303 may be a programmable microprocessor. For still other implementations of the invention, however, the processor 303 may be a purpose-specific circuit device, such as an ASIC. The processor 303 may perform any desired operation on the signals output from the sensors 301, such as curve smoothing, noise filtering, outlier removal, amplification, summation, integration, or the like. The processor 303 provides the processed signals to a transmitter 307. The athletic parameter measurement device 207 also includes a power supply 307, for providing power to the sensors 301, the processor 303, and the transmitter 305 as needed. The power supply 307 may be, for example, a battery.
The athletic parameter measurement device 207 transmits the processed signals to the electronic interface device 205, as seen in FIG. 4. Returning now to FIG. 3, the electronic interface device 205 includes a receiver 309 which receives the processed signals transmitted by the transmitter 305 in the athletic parameter measurement device 207. The receiver 309 relays the processed signals to a second processor 311, which processes the signals further. Like the processor 303, the processor 311 may perform any desired operation on the processed signals, such as curve smoothing, noise filtering, outlier removal, amplification, summation, integration, or the like.
The processor 303 provides the processed signals to the digital music player 203. Referring back now to FIG. 2, the electronic interface device 205 includes a connector system 209 that physically plugs into and connects with a conventional input port 211 provided on digital music player 203. The input port 211 into which the connector system 209 of the electronic interface device 205 connects may be any desired type of input port for transferring data, such as a parallel data port, a serial data port, an earphone or microphone jack, etc.) The connector system 209 may include any suitable connecting devices, such as wires, pins, electrical connectors, and the like, so as to make an electrical connection or other suitable connection with corresponding elements provided in the input port 211 of the digital music player 203 (e.g., to allow electronic and/or data communications between the interface device 205 and the electronic interface device 205). If necessary or desired, additional securing elements may be provided to securely connect the interface device 205 to the digital music player 203, such as straps, hooks, buckles, clips, clamps, clasps, retaining elements, mechanical connectors, and the like.
Returning now to FIG. 3, the processor 311 provides the processed signals to the computing unit 313. The computing unit 313 may initially store the processed signals in the memory 315. Further, with some implementations of the invention, the computing unit 313 may operate on the processed signals provided by the athletic information monitoring device 201 to generate a set of athletic data corresponding to the athletic activity performed by the user. For example, if the athletic information monitoring device 201 includes accelerometers for measuring the movement of the user's foot, the computing unit 313 may analyze the processed signals from the athletic information monitoring device 201 to generate a set of athletic data describing the user's speed at specific instances during the user's athletic activity and the total distance traveled by the user at each of those specific instances. Various techniques for determining a user's speed from accelerometer signals are described in, for example, U.S. Pat. No. 6,898,550 to Blackadar et al., entitled “Monitoring Activity Of A User In Locomotion On Foot,” and issued on May 24, 2005, U.S. Pat. No. 6,882,955 to Ohlenbusch et al., entitled “Monitoring Activity Of A User In Locomotion On Foot,” and issued on Apr. 19, 2005, U.S. Pat. No. 6,876,947 to Darley et al., entitled “Monitoring Activity Of A User In Locomotion On Foot,” and issued on Apr. 5, 2005, U.S. Pat. No. 6,493,652 to Ohlenbusch et al., entitled “Monitoring Activity Of A User In Locomotion On Foot,” and issued on Dec. 10, 2002, U.S. Pat. No. 6,298,314 to Blackadar et al., entitled “Detecting The Starting And Stopping Of Movement Of A Person On Foot,” and issued on Oct. 2, 2001, U.S. Pat. No. 6,052,654 to Gaudet et al., entitled “Measuring Foot Contact Time And Foot Loft Time Of A Person In Locomotion,” and issued on Apr. 18, 2000, U.S. Pat. No. 6,018,705 to Gaudet et al., entitled “Measuring Foot Contact Time And Foot Loft Time Of A Person In Locomotion,” and issued on Jan. 25, 2000, each of which are incorporated entirely herein by reference.
The athletic data set may also include a time value associated with each speed value and/or each distance value. If the athletic information monitoring device 201 can be employed to collect athletic information from different users, then the athletic data computing unit 313 may additionally prompt the user to identify himself or herself in some way. This identification information may then be included with the athletic data set generated from the information provided by the athletic information monitoring device 201. Once the computing unit 313 has generated a set of athletic data from the information provided by the athletic information monitoring device 201, the computing unit 313 may store the athletic data set in the memory 315. As will be discussed in more detail below, when the digital music player 203 subsequently is connected to a computing device implementing an athletic information collection tool, the computing unit 313 will download the athletic data to a display configuration tool hosted on a remote computing device.
While wireless communication between the between the athletic parameter measurement device 207 and the interface device 205 is described for the embodiments illustrated in FIGS. 2-4, any desired manner of communicating between the athletic parameter measurement device 207 and the interface device 205 may be used without departing from the invention, including wired connections. Also, any desired way of placing data derived from the physical or physiological data from the athletic parameter measurement device 207 in the proper form or format for display on or output from electronic device 210 may be provided without departing from the invention. For example, if desired, the athletic parameter measurement device 207 may be specially designed and/or programmed for use with one or more specific electronic devices, e.g., pre-programmed and/or wired to operate with a specific device or devices and to provide output data in a form and format suitable for those devices. In this situation, the interface devices 205 may be marketed and sold to specifically target certain electronic devices, such as specific models of digital music players and even other electronic devices, such as telephones, watches, personal digital assistants, etc. As another alternative, if desired, the interface devices 205 may be programmed at a later time to operate with a wide variety of different electronic devices, e.g., by downloading display or device driver and/or format data for specific electronic devices from the Internet, from disk, or from another source, etc.
If desired, in accordance with at least some examples of this invention, the electronic interface device 205 may further include a display 220 and/or a user input system 222, such as one or more rotary input devices, switches, buttons (as shown in the illustrated example in FIG. 2), mouse or trackball elements, touch screens, or the like, or some combination thereof. The display 220 may be employed to show, for example, information relating to music being played by the digital music player 203, information relating to the athletic information signals being received by the digital music player 203, athletic data being generated by the digital music player 203 from the received athletic information signals, etc. The user input system 222 may be employed, for example: to control one or more aspects of the processing of the input data received via interface device 205, to control input data receipt (e.g., timing, types of information received, on-demand data requests, etc.), to control data output to or by the electronic device 203, to control the athletic parameter measurement device 207, etc. Alternatively or additionally, if desired, the input system on the digital music player 203 (e.g., buttons 222, a touch screen, a digitizer/stylus based input, a rotary input device, a trackball or roller ball, a mouse, etc.), may be used to provide user input data to the interface device 205 and/or to the athletic parameter measurement device 207. As still another example, if desired, a voice input system may be provided with the interface device 205 and/or the digital music player 203, e.g., to enable user input via voice commands. Any other desired type of user input system, for control of any system elements and/or for any purpose, may be provided without departing from the invention.
The digital music player 203 may include additional input and/or output elements, e.g., such as ports 224 and 226 shown in FIG. 2, e.g., for headphones (or other audio output), power supplies, wireless communications, infrared input, microphone input, or other devices. If desired, and if these ports 224 and/or 226 would be covered when the interface device 205 is attached to the electronic device 203, the interface device 205 may be equipped with similar external ports to ports 224 and/or 226, and internal circuitry may be provided in the interface device 205 to enable the user to plug the same additional devices into the interface device 205 as they might plug into the digital music player 203 and still take advantage of the same functions (e.g., to thereby allow the necessary data, signals, power, and/or information to pass through the interface device 205 to the user, to another output, and/or to the digital music player 203).
It should be appreciated that, while some specific embodiments of the invention described above relate to a digital music player 203, alternate examples of the invention may be implemented using any portable electronic device. For example, with some implementations of the invention, the athletic parameter measurement device 207 may be used in conjunction with a mobile telephone, a watch, a personal digital assistant, anther type of music player (such as a compact disc or satellite radio music player), a portable computer, or any other desired electronic device. Still further, some implementations of the invention may alternately or additionally omit the use of the interface device 205. For example, the athletic parameter measurement device 207 may be configured to communicate using the Bluetooth wireless communication protocol, so that it can be employed with Bluetooth-capable mobile telephones, personal digital assistants, watches or personal computers. Of course, still other wireless or wired communication techniques could be employed while omitting the interface device 205.
It also should be appreciated that, while a specific example of an athletic parameter measurement device 207 has been described above for ease of understanding, any type of desired athletic parameter measurement device 207 can be employed with various embodiments of the invention. For example, with some implementations of the invention, the athletic parameter measurement device 207 may be a heart rate monitor, a blood oxygen monitor, a satellite positioning device (e.g., a Global Positioning Satellite (GPS) navigation device), a device for measuring the electrical activity of the user (e.g., an EKG monitor), or any other device that measures one or more physical parameters of the user. Still further, the athletic parameter measurement device 207 may measure one or more operational parameters of some device being manipulated by the user, such as the speed and/or distance of a bicycle, the speed and/or work performed by a treadmill, rowing machine, elliptical machine, stationary bicycle, the speed and/or distance traveled by skis (water or snow), skates (roller or ice), or snowshoes or the like worn by the user, etc.
Also, while the athletic parameter measurement device 207 has been described as being separate for the digital music player 203 or other portable electronic device that receives the signals from the athletic parameter measurement device 207, with some implementations of the invention the athletic parameter measurement device 207 may be incorporated into the digital music player 203 or other portable electronic device. For example, some implementations of the invention may employ a music player, mobile telephone, watch or personal digital assistant that incorporates accelerometers, a satellite positioning device, or any other desired device for measuring athletic activity. Still further, it should be appreciated that various implementations of the invention may employ a plurality of athletic parameter measurement devices 207, incorporated into the digital music player 203 or other portable electronic device, separate from the digital music player 203 or other portable electronic device, or some combination thereof.
Athletic Collection and Display Tools
FIG. 5 illustrates an example of an athletic information collection and display device 501 that may be employed to collect and/or display athletic data according to various implementations of the invention. As will be discussed in more detail below, the athletic information collection and display device 501 may both collect and display athletic data. The athletic information collection and display device 501 may be implemented using any suitable variation of the computing device 101 previously described. In some situations, however, the information collection and display device 501 may be commercially implemented using a desktop or laptop personal computer using, e.g., a version of the Microsoft Windows operating system available from Microsoft Corporation of Redmond, Wash., a version of the Apple Macintosh operating system available for Apple Corporation of Cupertino, Calif., or a version of the Unix or Linux operating systems available from a plurality of vendors.
As shown FIG. 5, the athletic information collection and display device 501 includes an interface 503 for receiving data from the athletic information monitoring device 201. The interface 503 may be implemented using, e.g., electrical components, software components (such as application program interfaces (APIs)), or some combination thereof. The athletic information collection and display device 501 also has an athletic data collection module 505. With various examples of the invention, the athletic data collection module 505 may detect when the digital music player 203 or other portable electronic device storing one or more athletic data sets is connected to the athletic information collection and display device 501 through the interface 503, establish a communication session with the digital music player 203 or other portable electronic device to retrieve the athletic data set or sets. In some implementations of the invention, the athletic data collection module 505 may delete athletic data sets from the digital music player 203 or other portable electronic device after the athletic data sets have been retrieved.
With some examples of the invention, the athletic data collection module 505 may perform some further operations on the athletic data sets retrieved from the digital music player 203 or other portable electronic device. For example, if the athletic information monitoring device 201 can be employed to collect athletic information from different users, then the athletic data collection module 505 may additionally prompt the user to identify himself or herself (if this information was not previously obtained by the athletic information collection and display device 501). This identification information may then be included with the retrieved athletic data sets.
As previously noted, the athletic information collection and display device 501 typically will generate sets of athletic data from information measured by one or more athletic parameter measurement devices 207. With some embodiments of the invention, however, the athletic information collection and display device 501 may instead store the raw information provided by the athletic parameter measurement devices 207. With these embodiments, the athletic data collection module 505 may retrieve the raw information from the digital music player 203 or other portable electronic device, and then generate athletic data sets from the raw information itself. Of course, still other examples of the invention may divide functions relating to the generation of athletic data from the raw information measured by athletic parameter measurement devices 207 between the athletic data collection module 505 and the digital music player 203 or other portable electronic device as desired.
The athletic data collection module 505 may be implemented by, for example, software instructions executed by a computing unit 113 of a computing device 101. With some examples of the invention the athletic data collection module 505 may be implemented by a conventional software tool, such as a browser. Alternately, athletic data collection module 505 may be implemented by a purpose-specific software tool or by a conventional software tool enhanced to perform athletic data collection functions. For example, the athletic data collection module 505 may be implemented by a software tool that incorporates a conventional browser to perform a variety of functions. These functions may include, e.g., selecting, purchasing, and downloading music and video content in addition to collecting athletic data from a digital music player 203 or other portable electronic device.
Once the athletic data collection module 505 has collected the processed signals provided by the athletic information monitoring device 201, the athletic data collection module 505 transmits the athletic data set to an athletic data display configuration device 601 through an interface module 507. The athletic information collection and display device 501 may communicate with the athletic data display configuration device 601 through a conventional network, such as the Internet. With these configurations, the interface module 507 may be implemented using any conventional type of network interface, such as a network interface card. Of course, any type of desired hardware or software combination alternately may be used to allow the athletic data collection module 505 to send the collected athletic data to the athletic data display configuration device 601. With some implementations of the invention, the athletic data collection module 505 may automatically forward collected athletic data to the athletic data display configuration device 601. For example, the athletic data collection module 505 may attempt to forward collected athletic data to the athletic data display configuration device 601 immediately after collection, at a prescheduled interval, upon the detection of a network connection to the athletic data display configuration device 601, or some combination thereof. Alternately or additionally, the athletic data collection module 505 may prompt a user to specify when collected athletic data is sent to the athletic data display configuration device 601.
FIG. 6 illustrates an example of an athletic data display configuration device 601 that may be employed according to various examples of the invention. As seen in this figure, the athletic data display configuration device 601 includes an interface module 603 for communicating with the athletic information collection and display device 501. As previously noted, the athletic information collection and display device 501 may communicate with the athletic data display configuration device 601 through a conventional network, such as the Internet. With these configurations, the interface module 603 may be implemented using any conventional type of network interface, such as a network interface card. Of course, any type of desired hardware or software combination alternately may be used to allow the athletic data display configuration device 601 to communicate with the athletic information collection and display device 501.
The athletic data display configuration device 601 also includes an athletic data display configuration module 605, and an athletic data storage 607. When the interface 603 of the athletic data display configuration device 601 receives athletic data from the athletic information collection and display device 501, it provides the received athletic data to the athletic data display configuration module 605. The athletic data display configuration module 603 may then store the athletic data in the athletic data storage 607 for future use. As will be discussed in more detail below, the athletic data display configuration module 605 also will retrieve athletic data from the athletic data storage 607, and configure the retrieved athletic data for display through one or more user interfaces in a manner that is meaningful to a user.
Returning now to FIG. 5, when a user wishes to view information relating to his or her athletic activities (or the athletic activities of another, as will be discussed in more detail below), the user submits this request to the athletic information collection and display device 501. More particularly, the user can employ conventional input and output devices, such as a keyboard, mouse, display and the like. The display request is then provided to an athletic data display module 509 through a conventional interface input/output interface 511. As well known in the art, the interface input/output interface 511 may be implemented using any desired combination of hardware and software components, such as conventional application programming interfaces (APIs) used to detect and process input from input devices, and to send data to and otherwise control output devices.
With some examples of the invention, the athletic data display module 509 may be implemented using any conventional tool for receiving input to request and control the display of data, and then subsequently displaying the data in the manner requested. For example, the athletic data display module 509 may be implemented using a conventional browser program, such as Microsoft Internet Explorer, Mozilla Firefox, or Opera executing on a computing unit 113. With still other embodiments of the invention, the athletic data display module 509 may be implemented using a conventional browser program that has been enhanced by one or more display tools, such as an ActiveX plug-in, a Java script or a version of the Macromedia Flash Player or Adobe Flash Player, available from Adobe Systems Incorporated of San Jose, Calif. In still other embodiments of the invention, the athletic data display module 509 may be implemented by, for example, a purpose-specific software tool for displaying athletic data.
As will be discussed in more detail below, when a user activates the athletic data display module 509, he or she is provided with a user interface prompting the use to select what collected athletic data he or she wishes to view, the format in which the user wishes to view the collected athletic data, etc. This user interface may be generated by the athletic data display module 509, the athletic data display configuration module 605, or some combination thereof. When a user employs the provided user interface to submit a request to view athletic data, the athletic data display module 509 relays the request to the athletic data display configuration module 605. In response, the athletic data display configuration module 605 configures the requested athletic data for display by the athletic data display module 509. For example, as will be discussed in more detail below, a user may request to view the total distance run by a user for each day in a one week period. In response, the athletic data display configuration module 605 will retrieve the relevant distance data from the athletic data storage 607. It will then configure the retrieved distance data to be displayed through a desired image (e.g., a bar graph), and provide the configured athletic data to the athletic data display module 509 for display to the user.
It should be noted that, with some embodiments of the invention, the data display configuration functions may be divided between the athletic data display module 509 and the athletic data display configuration module 605. For example, if the athletic data display module 509 is implemented by a simple browser, then the athletic data display module 509 may serve as a “thin client” for the athletic data display configuration module 605. That is, all of the data display configuration functions may be performed by the athletic data display configuration module 605. The athletic data display module 509 will then only display the information provided to it. Alternately, if the athletic data display module 509 is implemented by a purpose-specific software tool, then most or all of the data display configuration functions may be performed by the athletic data display module 509. With these examples, the athletic data display configuration module 605 may be used only to store and retrieve athletic data from the athletic data storage 607.
Typically, the athletic data display configuration device 601 will be implemented at a remote location from the athletic information collection and display device 501. The athletic information collection and display device 501 then may be connected to the athletic data display configuration device 601 through an electronic communication network, as previously noted. The electronic communication network may be a public network, such as the Internet, a private network, or include some combination of both. For example, FIG. 7 illustrates a network 701 including an athletic data display configuration device 601 and a plurality of client devices 705 for collecting and/or displaying athletic data. These client devices 705 may include personal computers 705A using some version of the Microsoft Windows operating systems available from Microsoft Corporation of Redmond, Wash., personal computers 705B using some version of the Apple operating system, personal digital assistants 705C and telephones 705D. Of course, various examples of the invention may alternately or additionally include any other desired electronic device that can be configured to collect and/or display athletic data as discussed above.
It should be appreciated that a client device 705 may perform an athletic data collection function, an athletic data display function, or both. That is, while the example of the athletic information collection and display device 501 described above is capable of both collecting and displaying athletic data, some client devices 705 may only collect athletic data. Further, some client devices may only display athletic data. For example, a user may employ a GPS-equipped smart telephone to collect athletic data and transmit the collected athletic data to the athletic data display configuration device 601. The user may then employ a personal computer equipped with only a conventional browser to subsequently download and display the collected athletic data.
Display of a User's Athletic Information
Display of Athletic Activity Values
In response to receiving a request to review athletic information from a user via the athletic data display module 509, the athletic data display configuration module 605 will determine the user's identity. The athletic data display configuration module 605 will then retrieve the athletic data associated with the user from the athletic data storage 607. Next, the athletic data display configuration module 605 will prepare a user interface for displaying the requested athletic data, and transmit the user interface with the athletic data to the athletic data display module 509 for display to the user.
FIG. 8A illustrates an example of an initial user interface that may be provided to a user according to various implementations of the invention. As seen in this figure, the user interface 801 includes a plurality of icons 803. Each icon 803 represents an athletic data value corresponding to an athletic activity performed by the user over a specified time period. More particularly, each icon 803 represents a distance value corresponding to athletic activity performed by a user. A calendar date field 805 associated with each icon 803 is shown at the bottom of each icon 803 to indicate the date on which the corresponding athletic activity was performed, as illustrated in FIG. 8. The user interface 801 also displays a number of control buttons 807-819 that allow the user to select what athletic data values will be displayed in the user interface as well as the time periods for which the athletic data values will be displayed. In addition, the interface 801 includes tabs 821-825, which will be discussed in more detail below.
As shown in FIG. 8A, the user has activated the “Distance” button 809 and the “Run” button 813. In response, the display 801 initially shows an icon 803 for the each of the most recent, e.g., twelve sets of athletic data collected by the server that corresponds to the user. As previously noted, each data set includes athletic data values generated from athletic information measured during a single, discrete athletic activity performed by a person over a particular time period. Further, the height of each icon 803 will correspond to the total distance value included in the set of athletic data represented by the icon 803. For example, on October 22, the user traveled a total distance of 4.05 miles during a run, whereas the user traveled a total distance of only 1.59 miles during a first run on December 23. Accordingly, the icon 803A corresponding to the athletic activity on October 22 will be proportionally larger than the icon 803B representing the athletic data collected for the user's first run on December 23, as shown in this figure. If the user wishes to view icons 803 for athletic activities performed before or after the athletic activities corresponding to the displayed icons 803, the user can view those additional icons 803 by activating the desired arrow buttons 807.
If a user subsequently selects the “Time” button 811, the athletic data display configuration module 605 will reconfigure the user interface 801 to display new icons 827 so that each icon 827 represents a total time value for each of the data sets. For example, as shown in FIG. 8B, the height of each icon 827 will correspond to the total time value in each represented data set. For example, if the length of the user's run on October 22 was 54 minutes, 2 seconds, whereas the duration of the user's first run on December 23 was only 18 minutes, 11 seconds, then the icon 827A corresponding to the athletic data set for October 22 will be proportionally taller than the icon 827B representing the athletic data set collected for the user's run on December 23.
In addition to displaying only distance and time information, the user interface 801 may optionally display additional information. For example, with some implementations of the invention, a user may employ a pointing device to select a specific icon 803 or 827. In response to the selection by, e.g. positioning a cursor over the icon, the user interface 801 may display additional information from the athletic data set represented by the selected icon. For example, the user interface 801 may use, e.g., a pop-up display (not shown) to display data values for the total distance, time, speed, and calories burned for the athletic activity represented by the selected icon 803 or 827. Still further, the user interface may use, e.g., color information to distinguish between the most-recently collected sets of athletic data and athletic data sets that were collected at an earlier time. Thus, the icons 803 or 827 representing data sets collected during the most recent download from an athletic information monitoring device 201 may be illustrated using, e.g., a light green color, while icons 803 or 827 representing previously-collected athletic data sets may be displayed with a dark green color.
With some implementations of the invention, a user may obtain still more detailed information regarding an athletic data set by “activating” the icon 803 or 827 representing the athletic data set. For example, a user may position a cursor over a desired icon 803 or 827 using a pointing device, and then depress a selection button to activate the icon 803 or 827. In response, the athletic data display configuration module 605 will configure and provide a user interface graphically illustrating the data values in the corresponding athletic data set in more detail. For example, as illustrated in FIG. 9A, various implementations of the inventions may display a user interface 901 plotting a first type of data in the data set against a second type of data in the data set to provide a visual graph 903. More particularly, as illustrated in this figure, the athletic data display configuration module 605 will plot speed values in the athletic data set against distance values data in the athletic data set, providing the graph 903. In this manner, a user can view what his or her instantaneous speed was at various points during the run. In addition, the graph 903 may include other relevant information such as, for example, an icon showing the type of athletic activity (e.g., running) and an indication on of the total distance traveled.
With some implementations of the invention, the graph 903 also may include specific distance waypoints 905, which will show the particular speed value measured at the distance during the athletic activity represented by the position of the waypoint 905. For example, if the user employs a pointing device to move a cursor over waypoint 905A, the user interface 901 will display a pop-up window (not shown) indicating that the user had an average speed of 12 minutes, 12 seconds at the first mile. Similarly, if the user employs a pointing device to move a cursor over the waypoint 905B, the user interface 901 will display a pop-up window (not shown) indicating that the user had an average speed of 12 minutes, 17 seconds at the second mile. If the user then employs a pointing device to move a cursor over the waypoint 905C, the user interface 901 will display a pop-up window (not shown) indicating that the user had an average speed of 12 minutes, 3 seconds at the third mile.
The user interface 901 also may include a value field 907 indicating the total distance value, total time value, total average pace value, total calories burned value, and athletic activity type value corresponding to the represented athletic activity. It also may include an “Options” button 909. If the user activates the “Options” button 909, the interface 901 may display additional command buttons (not shown) that allow the user to name the selected athletic data set or delete the athletic data set. Still further, the interface may include a “Comparison” button 911.
If the user selects the “Comparison” button 911, the athletic data display configuration module 605 will determine a time or distance classification for the selected athletic activity. For example, if the total distance value collected for the selected athletic activity is approximately 6 kilometers, then the athletic data display configuration module 605 will classify the athletic data set corresponding to the selected athletic activity as a “6 kilometer” athletic data set. Similarly, if the total distance value collected for the selected athletic activity is proximal to another specified distance category (e.g., 1 mile, 10 kilometers, 15 kilometers, 10 miles, 26 miles, etc.), then the athletic data display configuration module 605 will classify the athletic data set based upon the relevant category.
After the athletic data display configuration module 605 has classified the athletic data set, it examines the other athletic data sets in that classification to determine which athletic data set has the highest total distance value (or, if the classification is based upon time or speed, the lowest total time value or the highest average speed value). Once the athletic data display configuration module 605 identifies the “best” set of athletic data for the determined classification, it will then reconfigure the user interface 901 to include a graph of this “best” athletic data set as shown in FIG. 9B. As seen in this figure, the graph 915 may have the same characteristics and features as the graph 905 representing the selected athletic activity session.
If the user selects the “See My Runs” button 913, the athletic data display configuration module 605 will configure and provide the interface 801 for display, as shown in FIGS. 8A and 8B. Returning now to those figures, if the user selects the “Week” button 815 or the “Month” button 817, the athletic data display configuration module 605 will modify the user interface 801 to display one or more icons representing an aggregation of multiple sets of athletic data. More particularly, the athletic data display configuration module 605 will aggregate data values from each athletic data set based upon the designated time period.
For example, if the user has selected the “Distance” button 809 in addition to the “Week” button 815, then the athletic data display configuration module 605 will add up the total distance data values for each set of athletic data corresponding to an athletic activity session occurring within a particular calendar week. The athletic data display configuration module 605 will then modify the user interface 801 to include icons 829, where each icon 829 graphically represents the sum of total distance values in the athletic data sets generated during a particular week. The athletic data display configuration module 605 may also modify the user interface 801 to include a calendar week field 831 specifying the calendar week to which each icon 829 is associated. As shown in FIG. 8C, the height of each icon represents the sum of the total distance values for each athletic data set for the specified week period. For example, the user may have run a total of 4.05 miles during the weekly period from October 22 to October 28. On the other hand, the user may have run a total distance of 20.25 miles during the week period of December 3 to December 9. Accordingly, the icon 829B representing the aggregated athletic data for the week of December 3 to December 9 will be proportionally larger than the icon 829A representing the athletic data aggregated from the athletic data sets obtained for the week of October 22 to October 28.
Similarly, if the user selects the “Time” button 811, the athletic data display configuration module 605 will modify the user interface 801 to display icons 833 that represent the sum of total time values for aggregated sets of athletic data. More particularly, as shown in FIG. 8D, a height of each icon 833 will represent the sum of the total time values for each athletic data set obtained during the corresponding weekly period. For example, if a user ran for a total time of 54 minutes 2 seconds during the week from October 22 to October 28, but ran for a total time of 4 hours 7 minutes and 24 seconds during the week of December 3 to December 9, then the icon 833B representing the aggregation of athletic data for the week of December 3 to December 9 will be proportionally larger than the icon 833A representing the aggregation of athletic data for the weekly period of October 22 to October 28.
Similarly, if the user selects the “Month” button 817, the athletic data display configuration module 605 will modify the user interface 801 to display icons representing the aggregations of data values from athletic data sets obtained over each monthly time period. For example, if the user has selected the “Distance” button 809 as well, the user interface 801 may display an icon 835 representing the aggregation of total distance values from data sets obtained for athletic activity sessions performed during each calendar month, as illustrated in FIG. 8E. The user interface 801 also may include a calendar month field 837 specifying the calendar month to which each icon 835 is associated. As shown in this figure, the user interface 801 thus includes an icon 835A representing the aggregation of total distance values from data sets obtained for athletic activity sessions performed during the month of August, and another icon 835B representing the aggregation of total distance values from data sets obtained for athletic activity sessions performed during the month of January. The height of the icon 835A represents the sum of the total distance values for each athletic data set obtained for athletic activity sessions performed in August (i.e., 18.84 miles), while the height of the icon 835B correspond to the sum of each of the total distance data values for each athletic data set obtained for athletic activity sessions performed in January (i.e., 58.84 miles).
If, on the other hand, the user has selected the “Time” button 811, the user interface 801 may display an icon 839 representing the aggregation of total time values from data sets obtained for athletic activity sessions performed during each calendar month, as illustrated in FIG. 8F. As shown in this figure, the user interface 801 thus includes an icon 839A representing the aggregation of total distance values from data sets obtained for athletic activity sessions performed during the month of August, and another icon 839B representing the aggregation of total time values from data sets obtained for athletic activity sessions performed during the month of January. The height of the icon 839A represents the sum of the total time values for each athletic data set obtained for athletic activity sessions performed in August (i.e., 4 hours, 6 minutes, 1 second), while the height of the icon 839B correspond to the sum of each of the total time data values for each athletic data set obtained for athletic activity sessions performed in January (i.e., 10 hours, 47 minutes, 27 seconds).
In addition to displaying only distance and time information, the user interface 801 may optionally display additional information aggregated from multiple sets of athletic data. For example, with some implementations of the invention, a user may employ a pointing device to select a specific icon 829, 833, 835 or 839. In response to the selection by, e.g. positioning a cursor over the icon, the user interface 801 may display additional information from the aggregation of athletic data sets represented by the selected icon. For example, the user interface 801 may provide, e.g., a pop-up display (not shown) to display sum of total distance data values corresponding to the aggregation of athletic activity information represented by the selected icon, the some of the total time data values corresponding to the aggregation of athletic activity information represented by the selected icon, the average of the average speed data values corresponding to the aggregation of athletic activity information represented by the selected icon speed, and the sum of the calories burned data values data values corresponding to the aggregation of athletic activity information represented by the selected icon.
It should be noted that the athletic data display configuration module 605 (or, with some implementations of the invention, the athletic data display module 509) may aggregate data from multiple athletic data sets in advance of receiving a request to display aggregated athletic data from a user. Alternately, the athletic data display configuration module 605 (or, with some implementations of the invention, the athletic data display module 509) may aggregate data from multiple athletic data sets only in response to a specific request from a user to view the aggregated data.
Display of Goals
In addition to displaying specific athletic data values or aggregates of athletic data values, various embodiments of the invention may alternately or additionally permit a user to set a goal relating to his or her athletic activities, and then view one or more images graphically illustrating the user's progress toward accomplishing those goals. For example, with the embodiments illustrated in FIGS. 8A-9B, a user can select the “Goals” tab 823 shown in these figures. In response, the athletic data display configuration module 605 may configure and provide the user interface 1001 illustrated in FIG. 10. As seen in this figure, the user interface 1001 includes a “Set A Goal” button 1003 prompting the user to select a desired goal relating to his or her athletic activities.
When the user activates the “Set A Goal” button 1003, the athletic data display configuration module 605 will configure and provide the user interface 1101 shown in FIG. 11. As seen in this figure, the user interface 1101 includes a “More Often” button 1103, a “Distance” button 1105, a “Burn More Calories” button 1107, a “Faster” button 1109, and a “Back” button 1111. As known in the art, activating the “Back” button 1111 will cause the athletic data display configuration module 605 (or, with some examples of the invention, the athletic data display module 509) to configure and display the previously displayed configuration of the user interface 1101, or if the currently displayed configuration of the user interface 1101 is its initial configuration, a previously shown user interface.
If a user wishes to perform the athletic activity more often, then the user activates the “More Often” button 1103. In response, the athletic data display configuration module 605 reconfigures the user interface 1101 to include a sub-interface 1113. As seen in FIG. 11B, the sub-interface 1113 includes a “Number Of Runs” control 1115, a “Number Of Weeks” control 1117, and a “Set Goal” button 1119. By employing the “Number Of Runs” control 1115, a user can specify the number of runs (or the number of times to perform some other athletic activity, if appropriate) he or she wishes to make within a desired time period. Similarly, by employing the “Number Of Weeks” control 1117, a user can specify the number of weeks making up the desired time period allowed to reach the desired goal. In the illustrated example, the “Number Of Runs” control 1115 is a field control (i.e., having a field in which a value can be typed in) while the “Number Of Weeks” control 1117 is a radio control, but various examples of the invention may employ alternate types of controls as desired. Once a user has specified the number of runs that must be made and specified the time period in which they must be made to meet a desired goal, the user can finalize the goal parameters by activating the “Set Goal” button 1119.
Similarly, if a user wishes to run a longer distance in a given time period, then the user activates the “Distance” button 1105. In response, the athletic data display configuration module 605 reconfigures the user interface 1101 to include a sub-interface 1121. As seen in FIG. 11C, the sub-interface 1121 includes a “Total Distance” control 1123, a “Number Of Weeks” control 1125, and a “Set Goal” button 1127. By employing the “Total Distance” control 1123, a user can specify the total distance he or she wishes to run within a desired time period. Similarly, by employing the “Number Of Weeks” control 1125, a user can specify the number of weeks making up the desired time period allowed to reach the desired goal. In the illustrated example, the “Total Distance” control 1123 is a combination control, with both a field control (i.e., a field in which a value can be typed) and a drop down menu control (i.e., to allow the user to select the units in which the distance would be measure). The “Number Of Weeks” control 1125 illustrated in FIG. 11C then is a radio control. Various examples of the invention, however, may employ alternate types of controls as desired. Once a user has specified the number of runs that must be made and specified the time period in which they must be made to meet a desired goal, the user can finalize the goal parameters by activating the “Set Goal” button 1127.
If a user wishes to burn more calories during a particular time period, then the user activates the “Burn More Calories” button 1107. In response, the athletic data display configuration module 605 reconfigures the user interface 1101 to include a sub-interface 1129. As seen in FIG. 11D, the sub-interface 1129 includes a “Number Of Calories” control 1131, a “Number Of Weeks” control 1133, and a “Set Goal” button 1135. By employing the “Number Of Calories” control 1131, a user can specify the number of calories he or she wishes to burn within a desired time period. Similarly, by employing the “Number Of Weeks” control 1133, a user can specify the number of weeks making up the desired time period allowed to burn the desired number of calories. In the illustrated example, the “Number Of Calories” control 1131 is a field control (i.e., having a field in which a value can be typed in) while the “Number Of Weeks” control 1133 is a radio control, but various examples of the invention may employ alternate types of controls as desired. Once a user has specified the number of runs that must be made and specified the time period in which they must be made to meet a desired goal, the user can finalize the goal parameters by activating the “Set Goal” button 1135.
Lastly, if a user wishes to run faster for a desired number of runs, then the user activates the “Faster” button 1109. In response, the athletic data display configuration module 605 reconfigures the user interface 1101 to include a sub-interface 1137. As seen in FIG. 11E, the sub-interface 1137 includes an “Average Pace” control 1139, a “Number Of Runs” control 1141, and a “Set Goal” button 1143. By employing the “Average Pace” control 1139, a user can specify the minimum pace at which he or she wishes to travel for the desired number of runs. Similarly, by employing the “Number Of Runs” control 1141, a user can specify the number of runs for which the user wishes to run faster in order to reach the desired goal. In the illustrated example, the “Average Pace” control 1139 is a field control (i.e., having fields in which values can be typed) while the “Number Of Runs” control 1141 is a radio control, but various examples of the invention may employ alternate types of controls as desired. Once a user has specified the average pace and the number of runs for which he or she must run at or faster than the specified average pace to meet a desired goal, the user can finalize the goal parameters by activating the “Set Goal” button 1143.
After the user has specified a desired goal, the athletic data display configuration module 605 will monitor the athletic data collected by the athletic data collection module 505. When the user subsequently wishes to view his or her progress toward accomplishing the specified goals (by, e.g., selecting the “Goals” tab), then the athletic data display configuration module 605 will aggregate the relevant data from the collected athletic data set and configure a user interface graphically displaying the user's progress toward the specified goals. For example, with some implementations of the invention, the athletic data display configuration module 605 may configure a user interface displaying bar graph, such as the bar graph 1201 shown in FIG. 12. A portion of the bar graph corresponding to the user's progress is marked with fill 1203. Thus, in the illustrated example, the fill 1203 in the bar graph 1203 indicates that the user has accomplished more than 50% of the athletic activity required to complete his or her goal. Some implementations may simultaneously display a bar graph or other progress indicator for each goal set by the user. Still other implementations of the invention may provide controls to allow a user to select a single bar graph or other progress indicator for display in the user interface.
Display of Other User's Athletic Data
Challenges
Various examples of the invention may allow a user to “challenge” one or more other users (i.e., athletes employing embodiments of the invention) to a competition regarding athletic activities. With some implementations of the invention, for example, a user may issue a challenge to one or more other athletes by requesting the user interface 1301 shown in FIG. 13A. As seen in this figure, the interface 1301 includes a “Distance Race” button 1303, a “Most Miles” button 1305, a “Fastest Run” button 1307, a “Distance Goal” button 1309, and a “Back” button 1311. As known in the art, activating the “Back” button 1311 will cause the athletic data display configuration module 605 (or, with some examples of the invention, the athletic data display module 509) to configure and display the previously displayed configuration of the user interface 1301, or if the currently displayed configuration of the user interface 1301 is its initial configuration, a previously-shown user interface.
If a user wishes to establish a challenge regarding who can run a specified distance first, then the user activates the “Distance Race” button 1303. In response, the athletic data display configuration module 605 reconfigures the user interface 1301 to include a sub-interface 1313. As seen in FIG. 13B, the sub-interface 1313 includes a “Total Distance” control 1315, a “Challenge Name” control 1317, a “Start Date” control 1319, and a “Next Step” button 1321. By employing the “Total Distance” control 1315, a user can specify the total distance that a challenge participant must be the first to run in order to win the challenge. Next, the user can provide a specific name for the challenge using the “Challenge Name” control 1317. Naming each challenge allows an athlete to identify and keep track of a plurality of different challenges in which he or she may be concurrently participating. The user can then specify the starting date for the challenge using the “Start Date” control 1319. In the illustrated example, the “Total Distance” control 1315 and the “Challenge Name” control 1317 are each field controls (i.e., controls having a field in which a value can be typed), while the “Start Date” control 1319 is made up of a number of drop-down menus. It should be appreciated, however, that various examples of the invention may employ alternate types of controls as desired. Once a user has specified the parameters of the challenge, the user can begin the process of inviting specific athletes to participate in the challenge by activating the “Next Step” button 1321.
When the user activates the “Next Step” button 1321, the athletic data display configuration module 605 reconfigures the user interface 1301 to include a sub-interface 1323 in place of the “Distance Race” button 1303, as shown in FIG. 13C. As seen in this figure, the sub-interface 1323 includes a “Personal Message” control 1325, an “Email Address” control 1327, and a “Set Challenge” button 1329. The user can employ the “Personal Message” control 1325 to create a personal message to each athlete the user wishes to invite to participate in the challenge. Using the “Email Address” control 1327, the user can then specify the email address for each person he or she wishes to invite to participate in the challenge. In the illustrated example, the “Personal Message” control 1325 and the “Challenge Name” control 1317 are each field controls (i.e., controls having a field in which a value can be typed), but various examples of the invention may employ alternate types of controls as desired.
Once the user has provided the email address for each desired participant, the user can initiate the challenge by activating the “Set Challenge” button 1329. In response to the user activating the “Set Challenge” button 1329, the athletic data display configuration device 601 (or, with some implementations of the invention, the user's athletic information collection and display device 501) sends an email to each of the specified invitees. The email will contain the personal message and, e.g., an interactive prompt to join the challenge. If an invitee agrees to join the challenge by responding to the prompt, then the athletic data display configuration device 601 will be notified that the invitee has agreed to join the challenge. These types of email interactive prompts (such as the “voting” buttons provided in versions of the Outlook software tool available from Microsoft Corporation of Redmond, Wash.) are well known in the art, and will not be discussed here in detail.
After the athletic data display configuration device 601 has identified the participants in a challenge, it monitors the collected athletic data for each of the participants, and aggregates the relevant data values in the collected athletic data. For example, if the challenge is a race to determine who can be the first to run 100 miles, for each participant the athletic data display configuration device 601 will sum the total distance value in each athletic data set collected for that participant after the start date. When a participant has a sum of his or her total distance values that matches or exceeds the specified challenge distance (and is the first invitee to do so), then the athletic data display configuration device 601 will identify that participant as the winner of the challenge. In response, the athletic data display configuration device 601 will notify each participant of the winner. The athletic data display configuration device 601 may notify the participants using any desired technique, such as by sending an electronic mail message, by displaying a special-purpose interface when each participant connects to the athletic data display configuration device 601, etc. A variety of such notification techniques are well known in the art, and thus will not be discussed in detail.
With various examples of the invention, the athletic data display configuration device 601 may additionally provide updates regarding the status of a participant relative to the other participants. These updates also can be provided using any desired technique, such as by sending an electronic mail message, by displaying a special-purpose interface when each participant connects to the athletic data display configuration device 601, etc. For example, the athletic data display configuration device 601 may configure and provide a user interface showing each participant's progress toward the goal of the challenge using, e.g., bar graphs for each participant of the type previously described with regard to monitoring individual goals.
Returning now to FIG. 13A, if a user wishes to establish a challenge regarding who can run the most miles in a given period of time, then the user activates the “Most Miles” button 1305. In response, the athletic data display configuration module 605 reconfigures the user interface 1301 to include a sub-interface 1331, as seen in FIG. 13D. The sub-interface 1331 includes a “Challenge Duration” control 1333, a “Challenge Name” control 1335, a “Start Date” control 1337, and a “Next Step” button 1339. By employing the “Challenge Duration” control 1333, a user can specify the total amount of time for which a challenge participant has to run the greatest total distance in order to win the challenge. Next, the user can provide a specific name for the challenge using the “Challenge Name” control 1335. The user can then specify the starting date for the challenge using the “Start Date” control 1337. In the illustrated example, the “Challenge Duration” control 1333 and the “Challenge Name” control 1335 are each field controls (i.e., controls having a field in which a value can be typed), while the “Start Date” control 1337 is made up of a number of drop-down menus. It should be appreciated, however, that various examples of the invention may employ alternate types of controls as desired.
Once a user has specified the parameters of the challenge, the user can begin the process of inviting specific athletes to participate in the challenge by activating the “Next Step” button 1339. In response, the athletic data display configuration module 605 reconfigures the user interface 1301 to include the sub-interface 1323 in place of the “Most Miles” button 1305. (An example of sub-interface 1323 is illustrated in FIG. 13C.) As discussed in detail above, the user can employ the sub-interface 1323 to invite others to participate in the challenge, and ensure that the athletic data display configuration device 601 is informed of the participants in the challenge. As also previously discussed, the athletic data display configuration device 601 will monitor the collected athletic data for each participant, and aggregate the relevant data values from the collected athletic data to determine who wins the challenge. Still further, the athletic data display configuration device 601 can notify the participants of the winner of the challenge, and, with various examples of the invention, of the status of each participant during the challenge as described above.
If a user wishes to establish a challenge regarding who can make the fastest run in a given period of time, then the user activates the “Fastest Run” button 1307. In response, the athletic data display configuration module 605 reconfigures the user interface 1301 to include a sub-interface 1341 as seen in FIG. 13E. The sub-interface 1341 includes a “Total Distance” control 1343, a “Challenge Name” control 1345, a “Start Date” control 1347, and a “Next Step” button 1349. By employing the “Total Distance” control 1343, a user can specify the total distance a user must run in order to have his or her run time eligible to win the challenge. Next, the user can provide a specific name for the challenge using the “Challenge Name” control 1345. The user can then specify the starting date for the challenge using the “Start Date” control 1347. In the illustrated example, the “Total Distance” control 1343 and the “Challenge Name” control 1345 are each field controls (i.e., controls having a field in which a value can be typed), while the “Start Date” control 1347 is made up of a number of drop-down menus, but various examples of the invention may employ alternate types of controls as desired.
Once a user has specified the parameters of the challenge, the user can begin the process of inviting specific athletes to participate in the challenge by activating the “Next Step” button 1349. In response, the athletic data display configuration module 605 reconfigures the user interface 1301 to include a sub-interface 1323 in place of the “Fastest Run” button 1307. (An example of sub-interface 1323 is illustrated in FIG. 13C.) As discussed in detail above, the user can employ the sub-interface 1323 to invite others to participate in the challenge, and ensure that the athletic data display configuration device 601 is informed of the participants in the challenge. As also previously discussed, the athletic data display configuration device 601 will monitor the collected athletic data for each participant, and aggregate the relevant data values from the collected athletic data to determine who wins the challenge. Still further, the athletic data display configuration device 601 can notify the participants of the winner of the challenge, and, with various examples of the invention, of the status of each participant during the challenge as described above.
Lastly, if a user wishes to establish a challenge regarding who can run a specified distance in a given period of time, then the user activates the “Distance Goal” button 1309. In response, the athletic data display configuration module 605 reconfigures the user interface 1301 to include a sub-interface 1351. As seen in FIG. 13F, the sub-interface 1351 includes a “Total Distance” control 1353, a “Challenge Name” control 1355, a “Start Date” control 1357, and a “Next Step” button 1359. By employing the “Total Distance” control 1353, a user can specify the total distance a user must run over the specified time period in order to meet the challenge. Next, the user can provide a specific name for the challenge using the “Challenge Name” control 1355. The user can then specify the starting date for the challenge using the “Start Date” control 1357. In the illustrated example, the “Total Distance” control 1353 and the “Challenge Name” control 1355 are each field controls (i.e., controls having a field in which a value can be typed), while the “Start Date” control 1357 is made up of a number of drop-down menus, but various examples of the invention may employ alternate types of controls as desired.
Once a user has specified the parameters of the challenge, the user can begin the process of inviting specific athletes to participate in the challenge by activating the “Next Step” button 1359. In response, the athletic data display configuration module 605 reconfigures the user interface 1301 to include the sub-interface 1323 in place of the “Distance Goal” button 1309. (An example of sub-interface 1323 is illustrated in FIG. 13C.) As discussed in detail above, the user can employ the sub-interface 1323 to invite others to participate in the challenge, and ensure that the athletic data display configuration device 601 is informed of the participants in the challenge. As also previously discussed, the athletic data display configuration device 601 will monitor the collected athletic data for each participant, and aggregate the relevant data values from the collected athletic data to determine who wins the challenge. Still further, the athletic data display configuration device 601 can notify the participants of the winner of the challenge, and, with various examples of the invention, of the status of each participant during the challenge as described above.
Lists
As well as interactive comparisons of a user's athletic data with other users, such as the goals and challenges described in detail above, some implementations of the invention may alternately or additionally allow a user to passively compare his or her athletic data with other users. For example, some implementations of the invention may provide a ranking of where a user stands with respect to other users. The ranking may be based upon a simple comparison, or it may be limited to a specific demographic group, a particular geographic region, or some combination therefore.
For example, with some implementations of the invention, a user may request that the athletic data display configuration module 605 generate and display the user interface 1401 illustrated in FIG. 14A. As seen in this figure, the user interface 1401 includes a comparison criteria region 1403, a filter region 1405, and display region 1407. The comparison criteria region 1403 includes a plurality of “radio” style controls 1409, while the filter region 1405 includes a plurality of “drop-down” controls 1411-1413. The display region 1407 then displays user information based upon athletic data selected using the comparison and filter information selected using the controls 1409-1413.
More particularly, a user employs the “radio” style controls 1409 to specify the basic criteria according to which the athletic data display configuration module 605 will compare athletic data for a plurality of users. These controls 1409 are referred to herein as “radio” style controls because the selection of one of the controls (e.g., control 1409C) will automatically deselect a previously selected control, and only one control may be selected at any given time. Of course, it should be appreciated that other type of selection tools, including other types of controls, may be alternately or additionally employed with other implementations of the invention. Each control 1409 is associated with both a sorting criterion for sorting measured athletic data and a time criterion specifying a time period during which the athletic data being compared must have been measured. For example, each of controls 1409A-1409C is associated with total distance as a sorting criterion, while control 1409A is associated with a week time period, control 1409B is associated with a month time period, and control 1409C is associated with an unlimited time period. Control 1409D is then associated with a duration sorting criterion and a week time period.
With the example of the interface 1401 shown in FIG. 14A, each of the filter controls 1411-1415 are selected to “ALL,” as will be discussed in more detail below. Further, the control 1409A is selected. Because the control 1409A is associated with the “distance” sorting criterion and the “week” time criterion, the athletic data display configuration module 605 will sort the aggregated distance data for participating users that was measured during the preceding week. It then lists the names of the participating users having the ten highest aggregated distance data values in the filter region 1405. In addition, the athletic data display configuration module 605 will display in the aggregated distance data values measured during the preceding week for each of the identified participating users. Still further, the athletic data display configuration module 605 will display the user's corresponding aggregated distance measured for the preceding week. With some implementations of the invention, the athletic data display configuration module 605 also may display the ranking of the user's corresponding aggregated distance information measured for the preceding week relative to those participating users having a greater aggregated distance measured for the preceding week. Thus, in the illustrated example, the user “Rauchholz” has a ranking of 2932 relative to other participating users.
With some implementations of the invention, the participating users will be any user who provides athletic data to the athletic data storage 607 (or to an affiliated athletic data storage). For still other implementations of the invention, however, the participating users may be a subset of the all of the users who provide athletic data to the athletic data storage 607 or to an affiliated athletic data storage. For example, the participating users may be only those users who agree in advance to have their data shared with other users, or those users who do not specifically indicate that they wish for their athletic data to be private. Of course, still other criteria may be used to determine which users will be treated as participating users.
FIG. 14B illustrates another example of the interface 1401. Again, each of the filter controls 1411-1415 are selected to “ALL.” Further, the control 1409E is selected, which is associated with the “duration” sorting criterion and the “month” time criterion. Accordingly, the athletic data display configuration module 605 will sort the aggregated running (or walking) duration data for participating users that was measured during the preceding month. It then lists the names of the participating users having the ten highest aggregated duration data values in the filter region 1405. In addition, the athletic data display configuration module 605 will display in the aggregated duration data values measured during the preceding month for each of the identified participating users. Still further, the athletic data display configuration module 605 will display the user's corresponding aggregated duration data measured for the preceding month. Again, the athletic data display configuration module 605 also displays the ranking of the user's corresponding aggregated duration data measured for the preceding month relative to those participating users having a greater aggregated duration value measured for the preceding month. Thus, in the illustrated example, the user “Rauchholz” has a ranking of 28636 relative to other participating users.
FIG. 14C illustrates yet another example of the interface 1401. Again, each of the filter controls 1411-1415 are selected to “ALL.” Further, the control 1409I is selected, which is associated with the “fastest 5k” sorting criterion and the “ever” time criterion. Accordingly, the athletic data display configuration module 605 will identify and display the participating users with the ten fastest travel times for a 5k run that was measured at any time preceding the user's selection of the control 1409I. In addition, the athletic data display configuration module 605 will display in the fastest 5k time value for each of the identified participating users. Still further, the athletic data display configuration module 605 will display the user's fastest measured time for a 5k run, together with a ranking of that time relative to those participating users having a faster measured time for a 5k run. Thus, in the illustrated example, the user “Rauchholz” has a ranking of 40822 relative to other participating users.
In some situations, a user may wish to limit the pool of participating users to whom the user will be compared. As previously noted, the filter region 1405 includes filter controls 1411-1415. These filter controls may be employed to limit the participating users that will be considered for a desired comparison. For example, as illustrated in FIG. 14D, a user can employ the filter control 1411 to select between including all participating users for comparison, only male participating users for comparison, or only female participating users for comparison. Similarly, as shown in FIG. 14E, a user can employ filter control 1413 to limit the comparison to only those participating users within a desired age group. Still further, as shown in FIG. 14F, a user can employ the filter control 1415 to limit the comparison to participating users within a geographic region.
It should be appreciated that, with some implementations of the invention, a user can employ each of the filters 1411-1415 simultaneously. For example, a user may employ the filter controls 1411-1415 to limit the participating users considered for comparison with the users' athletic data to only men between the ages of 40-44 residing in the United States. The information required to filter the participating users may be obtained from any available source. Conveniently, however, the information may be obtained by requesting the users to submit this information for a user profile during an initial registration process. Of course, while three specific filtering criteria have been disclosed, it should be appreciated that any desired type and/or combination of characteristics be employed as filters.
Other Features
Record of Achievements
As discussed in detail above, various implementations of the invention may provide positive reinforcement to an athlete. For example, as discussed above, a user can employ various embodiments of the invention to set goals for himself or herself, and then track his or her progress toward attaining those goals. Similarly, a user may employ various embodiments of the invention to participate in a challenge. Once the goal is completed or the challenge is won, however, these achievements may be forgotten and thus not provide the user with any further positive reinforcement.
Accordingly, some implementations of the invention may provide a feature for memorializing a user's various athletic achievements. For example, with some embodiments of the invention, the athletic data display configuration module 605 may provide a user interface, such as the user interface 1501 shown in FIG. 15, for displaying athletic achievements recorded for a user. As seen in this figure, the user interface 1501 includes a “goal” region 1503, a “challenges” region 1505, an “events” region 1507, and a “milestones” region 1509. Each of these regions can be used to display an icon representing a user's previous achievement.
For example, if a user sets and then subsequently meets a goal, the achievement of this goal will be recorded by the athletic data display configuration module 605. In response, the athletic data display configuration module 605 will display an icon, such as a representation of a medal, graphically commemorating that achievement. Similarly, if the user wins a challenge, that achievement will be recorded by the athletic data display configuration module 605. In response, the athletic data display configuration module 605 will display an icon, such as a representation of a trophy, graphically commemorating that achievement.
Still further, a user may participate in an event associated with one or more implementations of the invention. For example, a race sponsor, such as a marathon race sponsor, may affiliate itself with embodiments of the invention. If a user runs in the race, completes the race, or places in the race, then the athletic data display configuration module 605 may record that achievement. In response, the athletic data display configuration module 605 will display an icon, such as a representation of a racing bib, graphically commemorating that achievement. The athletic data display configuration module 605 may employ any desired technique to record the user's participation in the race. For example, the race sponsor may physically monitor the user's participation, and subsequently update the athletic data storage 607 directly. Alternately, the user may update the athletic data storage 607 on an honor system basis.
Of course, still more sophisticated techniques can be used to have the athletic data display configuration module 605 record the user's achievement. For example, the race sponsor or a third party may provide the user with an electronic recording device that records the user's progress through the race. The user can then download the data from the electronic recording device to the athletic data storage 607 or to the athletic data display configuration module 605. With some implementations of the invention, the electronic interface device 205 or the athletic parameter measurement device 207 may even be used to record the user's progress through the race, and to subsequently download the data from the electronic recording device to the athletic data storage 607 or to the athletic data display configuration module 605.
Still further, a user may have still other milestones associated with his or her athletic performance. For example, a user may run achieve a relatively large total distance, such as 100 kilometers, 100 miles, 250 kilometers, 250 miles, etc., run at a particularly fast speed, such as a mile in less than five minutes, or run for a relatively large total duration, such as 1000 hours. In response, the athletic data display configuration module 605 may record that milestone achievement, and then display an icon, such as a representation of an award ribbon, graphically commemorating that achievement.
In this manner, various implementations of the invention can memorialize a user's past achievements to provide the user with positive feedback to inspire future athletic performance. Of course, some implementations of the invention may memorialize alternate or additional achievements.
Resolutions
Some implementations of the invention may assist a user in resolving to achieve a specific athletic achievement, and then keep that resolution. For example, various embodiments of the invention may provide a user interface like the user interface 1601 illustrated in FIG. 16. As seen in this figure, the interface 1601 provides a resolution statement 1603 with an achievement field 1605 and a consequence field 1607. The user interface also includes a submission button 1609. When a user wishes to make a resolution, he or she can insert the desired achievement goal (such as a distance) into the achievement field 1605, and some task or other action that will occur if the user does not meet the stated achievement in the consequence field 1607. Once the user has completed the information in the achievement field 1605 and the consequence field 1607, then the user actives the submission button 1609 to submit the resolution information to the athletic data display configuration module 605.
After receiving the resolution information, the athletic data display configuration module 605 will monitor the user's athletic activity to determine whether the user has complied with his or her resolution. If the athletic data display configuration module 605 determines that the user has met the stated resolution, then the athletic data display configuration module 605 may provide some type of positive feedback to the user. For example, the athletic data display configuration module 605 may send the user an electronic mail message congratulating the user on keeping his or her resolution. Alternately or additionally, the athletic data display configuration module 605 may memorialize the achievement as described above. If, however, the user does not meet the stated resolution, then the athletic data display configuration module 605 may encourage the user to perform the specified task or action. The athletic data display configuration module 605 may, for example, send an electronic mail message to the user to remind the user of his or her resolution. Of course, various implementations of the invention may perform alternate or additional actions to encourage the user to perform the specified task or action.
Mobile User Interface
Some or all of the features described with reference to the user interface of FIGS. 8A-16 may be implemented on a mobile device. The features may be provided via a web browser operating on the mobile device, one or more dedicated applications operating on the mobile device, or a combination thereof. In an embodiment, the mobile device may be any mobile device, for example a mobile telephone, a digital music player, a PDA, or any other mobile device including a display. In an embodiment the mobile device may include one or more user input devices such as hardware buttons, a touch-sensitive screen (“touchscreen”), or the like. The mobile device of an embodiment may be an iPhone or an iPod Touch manufactured by Apple Computer Inc. of Cupertino, Calif. and may include both hardware button and touchscreen user input devices.
For example, FIG. 17 illustrates a mobile device 1700 including a user interface, for example as explained with reference to FIGS. 8A-16. For example, from a main screen, a user or athlete may select an icon to access the user interface of an embodiment. The user or athlete may begin with, for example, a workout selection interface 1710 as selected by a workout icon to start a workout. Other menu options could be provided for the user or athlete to reach the workout selection interface 1710. From the workout selection interface 1710 a user or athlete may select from a number of workout types. For example, a user or athlete may select a basic workout, a timed workout, a distance workout, a pace workout, a calorie workout, a heart rate workout, or a workout associated with a training program. Training programs are described in U.S. patent application Ser. No. 61/032,018 filed Feb. 27, 2008, and U.S. application Ser. No. 12/395,047, entitled “INTERACTIVE ATHLETIC TRAINING LOG,” and filed on Feb. 27, 2009, which are both incorporated herein in their entirety. Pace workouts may be specialized workouts such as for maintaining a certain pace over a certain distance. Upon selecting a workout type, the user or athlete may select from a list of predetermined or saved workouts, or may input one or more custom parameters for the workout.
Further, a user or athlete may alter settings associated with their workouts. For example, and in particular for mobile devices including both touchscreen and hardware user input interfaces, the user or athlete may associate touchscreen icons or other touchscreen elements and/or hardware buttons and the like with particular functionality. For example, a user or athlete may designate hardware buttons and the like with commonly accessed functionality so that they may interact with the mobile device more blindly and/or to mitigate inadvertent input, for example during a workout.
The mobile device of an embodiment may include a digital music player, for example an MP3 player. For such an embodiment, once a user or athlete has selected a workout via workout selection interface 1710, they may select a music playlist via playlist interface 1720. The music playlist may be generated by the user or athlete or may be provided. For example, in an embodiment, a predetermined playlist may be provided based on the training program in which the user or athlete is participating. The user or athlete may associate names or other identifiers (e.g., icons or the like) with the playlists to facilitate the selection of the playlist of their choice.
Once the user or athlete has selected a workout, and in an embodiment has also selected a music playlist to accompany the workout, the user may be provided a workout start interface 1730. The workout start interface may specify the workout selected by the user or athlete, the playlist—if any—selected by the user or athlete, and a start icon for the user or athlete to select when they wish to begin the workout. Thereafter the mobile device provides the user or athlete with a workout interface 1740. The workout interface 1740 of an embodiment may include information related to the playlist (e.g., current playlist selection, artist information, and song information) and the workout (e.g., current workout type, total distance, total elapsed time, pace, calories burned, and/or goals for one or more of the parameters depending on workout type). The workout interface may also provide the user or athlete with the ability to navigate songs within the current playlist and to pause the music. In an embodiment, pausing the music may also pause the workout. Alternatively, the user or athlete may pause either the music or workout independently.
The workout interface 1740 may also provide the user or athlete the ability to select a power song and/or to have the mobile device provide audio information or voiceover related to their workout. The power song may be a predetermined audio track or song which the user or athlete may jump to upon pressing the power song icon. In an embodiment, each playlist has a power song. In an alternate embodiment, the power song is global and the user or athlete may select the power song regardless of the current playlist. Voiceover information may include the total distance, total elapsed time, pace, calories burned, and/or progress toward goals for one or more of the parameters depending on workout type. In an embodiment, the voiceover information may include total distance traversed and total elapsed time for a given workout.
FIG. 18 illustrates that once the workout begins, the user or athlete may lock out or otherwise deactivate one or more functions and/or one or more user input interfaces. For example, upon beginning a workout, the user or athlete may lock out or otherwise deactivate at least a portion of the touchscreen to mitigate inadvertent input. Alternatively or additionally, the device may automatically lockout one or more portions of the touchscreen in response to the beginning of the workout or user input corresponding thereto. The portions of the touchscreen that are to be locked out and the mappings or assignments of functions to hardware input controls may be predefined by a user or based on a default setting. Further, upon locking out or otherwise deactivating at least a portion of the touchscreen, the mobile device automatically may assign or map one or more functions to, for example, hardware buttons or may reassign or remap the functions assigned to one or more hardware buttons while, for example, the touchscreen is unlocked or otherwise activated. In this manner, a user or athlete may have substantially blind control of specific functions of the mobile device, for example while working out. For example, the user or athlete may access volume control, music track control or skip, voiceover, a power song and may unlock the mobile device by manipulating (e.g., single press, multiple press, and/or press-and-hold) of one or more hardware input devices, buttons, or the like. In an embodiment, the hardware input devices, buttons, and the like are incorporated into the mobile device. In an alternate embodiment, additional or alternate hardware input devices or buttons may be included in a device external to the mobile device. For example, FIG. 19 illustrates that one or more buttons may be included as part of a headphone system to provide the user or athlete convenient access to the one or more buttons included therein. In an embodiment, while locked or otherwise deactivated, the mobile device touchscreen may not provide display of any workout data.
FIG. 20 illustrates that the mobile device may also have a partially locked or deactivated configuration. For example, during a workout the touchscreen may provide data related to the user's or athlete's current workout including pace, calories burned, total elapsed time, and total distance traversed. Additionally, the user or athlete may have access to a power song, voiceover, and/or music track control. In particular, the user or athlete may be able to pause the workout and/or audio. As illustrated also by FIG. 21, when paused, the mobile device touchscreen may enable the user or athlete to end their current workout. Alternately, the user or athlete may manipulate a hardware button to end the workout. In one embodiment, a partially locked touchscreen may allow the user to operate pause or resume, operate volume controls, see displayed data, or operate the slide to unlock feature. Also in an embodiment, the manipulation is a push-and-hold manipulation to substantially prevent the user or athlete from inadvertently ending their workout. Whether paused or unpaused, the user or athlete may fully unlock the mobile device to access additional portions of the user interface. In addition, the interface can be configured to require the user to fully unlock the touchscreen to end the workout.
Once the user or athlete has ended their workout, information associated with their workout may be graphically displayed as illustrated by FIG. 22. Further, information associated with the workout may also be uploaded via a wired or wireless connection to a network and/or central location as described above with reference to FIGS. 1-16. In an embodiment for which the mobile device includes a mobile telephone, the information associated with the workout may be uploaded via the mobile telephone's wireless data connection.
More specifically, FIG. 22 illustrates that the mobile device may display chart and list views of the workout information. For example, the mobile device user interface may, upon selection of a “My Runs” icon, display a chart 2210 illustrating the user or athletes performance for a particular run. Further, the user interface may display a chart 2220 or list 2230 illustrating the user's or athlete's performance for multiple runs. In an embodiment for which the mobile device is an iPhone or iPod Touch, the user or athlete may alternate between a chart or list illustration of their workout information by rotating the iPhone or iPod touch. FIG. 23 illustrates that a user interface goal widget 2300 may provide (e.g., upon selection of a “goal” icon) workout information compared to a goal (e.g., as predetermined by the user or athlete and/or based on a training plan or training program in which they are participating). Further, a user interface challenge widget 2310 may provide (e.g., upon selection of a “challenge” icon) workout information related to one or more challenge as discussed above. Finally a map widget 2320 may provide (e.g., upon selection of a “map” icon) mapping and route information as described by U.S. patent application Ser. No. 12/031,380 filed Feb. 14, 2008, which is incorporated herein in its entirety. It is understood that the user can manipulate the displayed data via the touchscreen as shown.
FIGS. 24-27 illustrate an alternate mobile device 2400 including workout selection interface 2410, playlist interface 2420, workout start interface 2430, and workout interface 2440. Each has been described above with reference to mobile device 1700. FIGS. 25-27 illustrate substantially the same as FIGS. 18, 20, and 21 respectively, omitting hardware button volume control.
Though not illustrated, a carrier associated with mobile device 1700 or mobile device 2400 may provide a tactile interface for the touchscreen so that the user or athlete may navigate and/or control the touchscreen substantially blindly, in particular while the user or athlete is working out. For example, the mobile device 1700 or mobile device 2400 may not otherwise include features and user interface mechanisms that facilitate the application of the mobile device 1700 or mobile device 2400 to athletic performance. For each mobile device, and more specifically for mobile device 2400, substantially all of the functionality may be available from the touchscreen in the absence of multiple hardware input devices or buttons. For such an example, the carrier associated with mobile device 1700 or mobile device 2400 may provide one or more alternate and/or additional hardware input devices to substitute for touchscreen input that might otherwise be difficult to manipulate blindly.
As discussed herein, athletic workout data may be displayed on a mobile communication device. Referring again to FIG. 22, run data may be displayed in chart or graph form. The data may be uploaded to the device from a variety of sources such as a remote device on a wide area network, a local data storage device, an athletic performance monitoring system (e.g., a pedometer or heart rate monitor) and the like. Additionally, the manner in which the data is displayed (e.g., chart or graph) may depend on an orientation of the mobile communication device. In one example, if the device is vertical (i.e., length is oriented vertically), the display may provide workout information in a list form. If, on the other hand, the device is oriented horizontally (i.e., length is disposed along a horizontal axis), the display may provide the workout information in a graph form. Other workout related data that may be displayed on a mobile communication device may include workout goals and challenges as previously discussed above. For example, the device may display a current day's goal or task for reaching a specified ultimate goal. Additionally or alternatively, challenges may be received through a communication network from other users. The challenge information may then be stored in the communication device and displayed to the user. A user may provide feedback on the challenge (e.g., challenge progress, acceptance/rejection of the challenge) through the communication device and corresponding communication network.
FIG. 23 illustrates one example interface for displaying goal information. Display 2300, for instance, displays a progress bar indicating an amount of progress made by the user toward the goal. Display 2300 may also provide the amount of time left to reach the goal. A message may also be displayed to indicate to the user whether he or she is on target, behind or ahead of schedule. Although not shown, display 2300 may also be configured to display a workout or goal calendar that allows a user to select a specific day to see a projected goal for that day. A user may further be able to see a list of multiple goals and switch therebetween to view progress information of the different goals. For example, a first portion of the display may provide a list of goals while a second portion may provide progress information such as a progress bar for a selected goal in the list. Goals may be set based on distance, calories burned, pace, steps taken, weight lifted and the like.
According to one or more aspects, a mobile communication device may have geo-location capabilities. Such capabilities may allow a workout application to track the location of the user during the workout. Accordingly, the user's route may be recorded without having to have the user define it manually. Additionally or alternatively, the communication device may be configured to show a user where he or she is located in relation to a predefined workout path. The workout paths may also be stored and shared amongst users. For example, FIG. 28 illustrates a device interface 2800 where a list of possible routes is provided to a user. Upon selection of one of the routes, the device may display the route in interface 2810. The device may further determine and display the relative locations of two or more users along a route, e.g., during a challenge.
In one or more arrangements, various landmarks or noteworthy places on a workout path may be marked by a user on the communication device. For example, the location of a water fountain or restroom may be identified by the user and recorded by the communication device. Additionally, a user may capture an image of the location and store it in association with the marked location. Accordingly, the communication device may also be configured to store such images or other details such as audio information and latitude/longitude coordinates relating to the landmark with the route.
Upon completion of a workout, for example, a run, a user may review recorded workout data. The post workout data may be presented as raw numbers or may be displayed as a graph or chart as discussed herein. For example, interface 2210 (FIG. 22) illustrates a line graph displaying distance versus time while interface 2220 (FIG. 22) provides bar graphs displaying distance, time, pace or calories per workout, day or some other workout denomination. Additionally or alternatively, a device display may allow a user to zoom in on certain portions of data such as a portion of a line graph or chart. Zooming in may allow a user to see additional details that are not displayed in a zoomed out version of the graph or data display.
Post run information may also be sent to friends or other users through a messaging interface provided on the communication device. In one example, the post run data may be sent in a text message using Short Messaging Service (SMS), Multimedia Messaging Service (MMS) and the like. Alternatively or additionally, data may be transmitted as an attachment or in the body of an electronic mail message.
Further, a communication device having the capability of displaying and recording athletic workout information may be used to coordinate workout events with friends or other community members. In one example, a user may issue a challenge to a friend or other user. If the friend or other user accepts the challenge, the devices of the challenge participants may automatically add the challenge into the user's calendars. Additionally or alternatively, the devices may identify a location associated with the challenge and automatically determine a route to the challenge location. A user may also identify group workouts or workout events that are geographically close and at a desired time period (e.g., starting in the next hour or tomorrow).
During a workout, the communication devices may further allow users to communicate with one another. For example, a user may message another user with workout data to flaunt his or her accomplishments, motivate the other user, ask for feedback and the like. In another example, a user may send a competitive message that is intended to intimidate and/or motivate the recipient of the message. Messages may include text, video, audio and/or combinations thereof. Some messages may further include a prompt for requesting a response from the other user.
A workout enabled communication device may provide a user with coaching information in real-time. That is, coaching information may be downloaded from an athletic performance server or site to the user's communication device as the user is working out. Coaching information may include motivational statements, suggestions for improvement and the like. Messages may be provided to the user based on an analysis of workout data by the communication device and/or the athletic performance site. In one or more examples, a coach may recommend a workout routing to a user. Accordingly, the communication device may automatically download workout information from a remote athletic performance server once it becomes available. Availability may be indicated by a notification message sent from the athletic performance site. Alternatively or additionally, the athletic performance server may push or transmit such information to the communication device automatically. Coaching and training is further described in U.S. application Ser. No. 12/395,047, entitled “INTERACTIVE ATHLETIC TRAINING LOG,” and filed on Feb. 27, 2009.
Workout data may be recorded by a core workout tracking application operating on an athletic performance monitoring device. According to one configuration, the workout data may be synchronized to other locations and devices such as a mobile communication device or a remote network athletic performance tracking site. In one example, data may be synchronized to the mobile communication device or a remote network site through wireless or wired communication systems. Synchronization may be performed continuously as a workout is being performed. Alternatively or additionally, synchronization may take place at the end of the workout, i.e., once the user has completed the workout or based on a predefined schedule. In one or more instances, applications other than the core workout tracking application may be developed to process workout information. These other applications may similarly synchronize with the data recorded by the mobile communication device. In some arrangements, only those applications developed using a standard development kit associated with the core workout tracking application may be configured to synchronize with the workout data tracking application. A standard development kit (SDK) as used herein generally refers to a set of functions and tools for building applications according to a particular protocol. As an alternative, applications not developed using the standard development kit may synchronize workout data with the network athletic performance tracking site once the data has been synchronized thereto from the workout data tracking application. Thus, the network athletic performance tracking site acts as a intermediary between the workout data tracking application and other non-SDK applications.
Synchronization may be performed wirelessly or using wired devices. In one example, data may be synchronized from an athletic performance monitoring device to the communication device through wireless connection such as infrared, radio frequency (RF) or BLUETOOTH connections. In another example, if a wireless connection is not available, workout data may be synchronized by using a physical data transfer connection (e.g., Universal Serial Bus (USB) connection). In yet another example, workout data may be synchronized from an athletic performance monitoring device to a network athletic performance tracking site through an intermediary mobile communication device.
CONCLUSION
While the invention has been described with respect to specific examples including presently preferred modes of carrying out the invention, those skilled in the art will appreciate that there are numerous variations and permutations of the above described systems and techniques that fall within the spirit and scope of the invention as set forth in the appended claims.

## Claims

1. A non-transitory machine readable medium storing instructions that, when executed, cause a mobile device to:
generate a selection interface displaying a plurality of selectable athletic activity types;
receive a selection of an activity type from the selection interface; and
initiate an athletic activity recordation process including:
deactivating at least a portion of the selection interface;
mapping one or more selectable functions of the at least a portion of the selection interface to one or more hardware buttons of the mobile device;
generating an in-workout interface, wherein the in-workout interface includes at least two of: an amount of energy expended, a pace, a distance and a total amount of time spent performing an athletic activity corresponding to the selected activity type;
receiving athletic activity data for the athletic activity being performed from one or more sensors;
classifying the athletic activity data into a classification based upon one or more of a detected distance traveled, a total time spent performing the athletic activity, and an average speed value;
inferring, based upon the athletic activity data being proximal to a predetermined category threshold, a best set of saved athletic data for comparison to the classification; and
updating the in-workout interface by displaying a comparison of the best set of athletic data for the classification to the received athletic activity data.

2. The non-transitory machine readable medium of claim 1, wherein the instructions, when executed, further cause the mobile device to:
prior to initiating the athletic activity recording process, generate a content selection interface for selecting one or more content items to be rendered during the athletic activity.

3. The non-transitory machine readable medium of claim 2, wherein the content selection interface includes a pre-defined playlist.

4. The non-transitory machine readable medium of claim 1, wherein the instructions, when executed, further cause the mobile device to:
generate a workout initiation interface comprising information identifying the selected activity type and one or more selected content items, the workout initiation interface further comprising a command to begin recording the athletic activity, and
render the one or more selected content items during recordation of the athletic activity.

5. The non-transitory machine readable medium of claim 4, wherein the in-workout interface is generated in response to detecting a selection of the command to begin recording the athletic activity.

6. The non-transitory machine readable medium of claim 4, wherein the in-workout interface comprises the amount of energy expended, the pace, the distance and the total amount of time spent performing an athletic activity corresponding to the selected activity type.

7. The non-transitory machine readable medium of claim 4, wherein the in-workout interface further comprises a control option for controlling rendering of the one or more selected content items.

8. The non-transitory machine readable medium of claim 7, wherein the in-workout interface further comprises a selection button configured to cause the mobile device to begin rendering a content item specifically pre-associated with the selection button, wherein the selection button is different from the control options.

9. The non-transitory machine readable medium of claim 1, wherein the instructions, when executed, further cause the mobile device to upload the received athletic activity data to a remote device through a network.

10. The non-transitory machine readable medium of claim 1, wherein the instructions, when executed, further cause the mobile device to record a physical route taken by an individual during performance of the athletic activity.

11. The non-transitory machine readable medium of claim 1, wherein the instructions, when executed, further cause the mobile device to provide a physical route selection interface comprising a plurality of selectable routes.

12. The non-transitory machine readable medium of claim 11, wherein the instructions, when executed, further cause the mobile device to:
receive a selection of a physical route from the plurality of selectable routes; and
determine a user's location relative to the physical route.

13. An apparatus comprising:
a processor; and
memory storing instructions that, when executed, cause the apparatus to:
generate a selection interface displaying a plurality of selectable athletic activity types;
receive a selection of an activity type from the selection interface; and
initiate an athletic activity recordation process including:
deactivating at least a portion of the selection interface;
mapping one or more selectable functions of the at least a portion of the selection interface to one or more hardware buttons of the apparatus;
generating an in-workout interface, wherein the in-workout interface includes at least two of: an amount of energy expended, a pace, a distance and a total amount of time spent performing an athletic activity corresponding to the selected activity type;
receiving athletic activity data for the athletic activity being performed from one or more sensors;
classifying the athletic activity data into a classification based upon one or more of a detected distance traveled, a total time spent performing the athletic activity, and an average speed value;
inferring, based upon the athletic activity data being proximal to a predetermined category threshold, a best set of saved athletic data for comparison to the classification; and
updating the in-workout interface by displaying a comparison of the best set of athletic data for the classification to the received athletic activity data.

14. The apparatus of claim 13, wherein the instructions, when executed, further cause the apparatus to:
prior to initiating the athletic activity recording process, generate a content selection interface for selecting one or more content items to be rendered during the athletic activity.

15. The apparatus of claim 13, wherein the instructions, when executed, further cause the apparatus to:
generate a workout initiation interface comprising information identifying the selected activity type and one or more selected content items, the workout initiation interface further comprising a command to begin recording the athletic activity, and
render the one or more selected content items during recordation of the athletic activity.

16. The apparatus of claim 13, wherein the in-workout interface comprises the amount of energy expended, the pace, the distance and the total amount of time spent performing an athletic activity corresponding to the selected activity type.

17. The apparatus of claim 13, wherein the instructions, when executed, further cause the apparatus to record a physical route taken by an individual during performance of the athletic activity.

18. The apparatus of claim 13, wherein the instructions, when executed, further cause the apparatus to:
generate a route selection interface comprising a plurality of selectable routes;
receive a selection of a physical route from the plurality of selectable routes; and
determine a user's location relative to the physical route.

19. A method comprising:
generating, by a mobile computing device, a selection interface displaying a plurality of selectable athletic activity types;
receiving, by the mobile computing device, a selection of an activity type from the selection interface; and
initiating, by the mobile computing device, an athletic activity recordation process including:
deactivating at least a portion of the selection interface;
mapping one or more selectable functions of the at least a portion of the selection interface to one or more hardware buttons of the mobile computing device;
generating an in-workout interface, wherein the in-workout interface includes at least two of: an amount of energy expended, a pace, a distance and a total amount of time spent performing an athletic activity corresponding to the selected activity type;
receiving athletic activity data for the athletic activity being performed from one or more sensors;
classifying the athletic activity data into a classification based upon one or more of a detected distance traveled, a total time spent performing the athletic activity, and an average speed value;
inferring, based upon the athletic activity data being proximal to a predetermined category threshold, a best set of saved athletic data for comparison to the classification; and
updating the in-workout interface by displaying a comparison of the best set of athletic data for the classification to the received athletic activity data.

20. The method of claim 19, further comprising:
prior to initiating the athletic activity recording process, generating a content selection interface for selecting one or more content items to be rendered during the athletic activity;
generating a route selection menu comprising a plurality of selectable routes;
receiving a selection of a physical route from the plurality of selectable routes; and
determining a user's location relative to the physical route.