US20080058125A1 - Mobile phone system and method for self-caddy - Google Patents

Mobile phone system and method for self-caddy Download PDF

Info

Publication number
US20080058125A1
US20080058125A1 US11/845,769 US84576907A US2008058125A1 US 20080058125 A1 US20080058125 A1 US 20080058125A1 US 84576907 A US84576907 A US 84576907A US 2008058125 A1 US2008058125 A1 US 2008058125A1
Authority
US
United States
Prior art keywords
club
hole
determining
location
engine
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US11/845,769
Inventor
Frank T. Nguyen
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
YOUCADDY Inc
Original Assignee
YOUCADDY Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by YOUCADDY Inc filed Critical YOUCADDY Inc
Priority to US11/845,769 priority Critical patent/US20080058125A1/en
Assigned to YOUCADDY, INC. reassignment YOUCADDY, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: NGUYEN, FRANK T.
Publication of US20080058125A1 publication Critical patent/US20080058125A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B57/00Golfing accessories
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2102/00Application of clubs, bats, rackets or the like to the sporting activity ; particular sports involving the use of balls and clubs, bats, rackets, or the like
    • A63B2102/32Golf
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/10Positions
    • A63B2220/12Absolute positions, e.g. by using GPS
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/10Positions
    • A63B2220/13Relative positions
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2225/00Miscellaneous features of sport apparatus, devices or equipment
    • A63B2225/20Miscellaneous features of sport apparatus, devices or equipment with means for remote communication, e.g. internet or the like
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2225/00Miscellaneous features of sport apparatus, devices or equipment
    • A63B2225/50Wireless data transmission, e.g. by radio transmitters or telemetry

Definitions

  • This invention relates generally to mobile phones, and more particularly, but not exclusively, provides a system and method to enable golfers to self-caddy using a mobile phone.
  • Mobile phones have become more of a Personal Digital Assistant (PDA) for the average person, performing more advanced tasks than just simply making and receiving phone calls.
  • PDA Personal Digital Assistant
  • GPS Global Positioning System
  • a mobile phone software application can be developed to help thousands of global golfers to improve their game on and off the golf course.
  • the key is the ability to pin point the exact location of every golf ball at rest during the game play, relatively to the digitized location (longitude and latitude) of every hole of the golf course.
  • the data then can be stored, analyzed, and utilized intelligently by the system to enable golfers to improve their game.
  • a method comprises: determining a stroke location of a golfer using global positioning system data received by a mobile phone carried by the golfer; determining a hole location; calculating a difference between the two determined locations; determining a club to use based on the difference; and presenting the determination of club.
  • a mobile phone comprises a global positioning system chipset; a hole engine; a distance engine; a club recommendation engine; and a club presentation engine.
  • the global positioning system chipset determines a stroke location of a golfer.
  • the hole engine determines a hole location.
  • the distance engine which is communicatively coupled to the chipset and the hole engine, calculates a difference between the two determined locations.
  • the club recommendation engine which is communicatively coupled to the distance engine, determines a club to use based on the difference.
  • the club presentation engine which is communicatively coupled to the club recommendation engine, presents the determination of club.
  • FIG. 1 is a block diagram illustrating a network system
  • FIG. 2 is a flow diagram illustrating data flow of the system
  • FIG. 3 is an example screenshot of a main menu of the system
  • FIG. 4 is a table of client/server command mapping
  • FIG. 5 is a block diagram illustrating a database of the system
  • FIG. 6 is a flowchart illustrating a method of self-caddying
  • FIG. 7 is a diagram illustrating a search club by name function
  • FIG. 8 is a diagram illustrating a search club by geocode function
  • FIG. 9 is an example screen shot of a golf club found screen
  • FIG. 10 is a diagram illustrating a get club info function
  • FIG. 11 is an example screenshot of a golf club info screen
  • FIG. 12 is a diagram illustrating a download course function
  • FIG. 13 is a diagram illustrating an example golf course download file
  • FIG. 14 is an example screenshot of a golf club info screen
  • FIG. 15 is an example screenshot of a play a round screen
  • FIG. 16 is a flowchart illustrating a method of playing a round
  • FIG. 17 is an example screenshot of a play a hole screen
  • FIG. 18 is a flowchart illustrating a method of playing a hole
  • FIG. 19 is a diagram illustrating a get current location function
  • FIG. 20 is an example screenshot of a record pin screen
  • FIG. 21 is an example screenshot of a play a stroke screen
  • FIG. 22 is a flowchart illustrating a method of playing a stroke
  • FIG. 23 is a diagram illustrating a get pin location function
  • FIG. 24 is a diagram illustrating a golf distance function
  • FIG. 25 is an example screenshot of a playing a stroke with distance to pin screen
  • FIG. 26 is a diagram illustrating a get club function
  • FIG. 27 is a diagram illustrating a get club most accurate function
  • FIG. 28 is a diagram illustrating example output of the get club most accurate function
  • FIG. 29 is a diagram illustrating a get club most used function
  • FIG. 30 is a diagram illustrating example output of the get club most used function
  • FIG. 31 is an example screenshot of a play a stroke with club recommendation screen
  • FIG. 32 is an example screenshot of a play a round screen with a completed round
  • FIG. 33 is an example screenshot of a play a round screen after successful upload
  • FIG. 34 is a block diagram illustrating a hosting server architecture
  • FIG. 35 is a block diagram illustrating a mobile phone
  • FIG. 36 is a block diagram illustrating a memory of the mobile phone.
  • FIG. 1 is a block diagram illustrating a network system 100 .
  • Embodiments of the invention include a new system and method that leverage the global positioning system (GPS) capability in mobile phones to help golfers to perform many tasks often provided by a caddie.
  • An embodiment of the system 100 comprises three main components:
  • GPS satellites 110 provide GPS signals to the phone 170 so that it can determine its position, which should coincide with a golf ball location 150 and therefore calculate a distance from the golf ball location 150 to a golf center of green location (hole) 160 .
  • the towers 120 provide wireless signals to the phone 170 .
  • the golf community (or others) 200 digitize golf course map and pin locations and store data into the hosting system 140 from the web site 130 via an Internet connection.
  • Golfer can send game plan, data, etc. directly to his/her mobile phone 170 via Internet/mobile wireless network.
  • an application sits in the phone 170 and has a small footprint, client software application written for mobile phone environment. It runs within the mobile phone operating system, utilizing mobile system interfaces provided by the mobile network carriers or mobile phone manufacturers. Some sample system interfaces are memory storage, network connection, hardware interface like GPS capability, native mobile phone features, etc.
  • the application can be distributed by users 200 downloading it from the Internet via wireless mobile network from the mobile carrier network, or pre-installed with other mobile network carrier's applications when the phone is available for commercially used. Upon successful installation, a user can run the application directly on the mobile phone 170 with screen display, interactive keypad control, and sound from the mobile phone 170 via a menu, as shown in FIG. 3 .
  • the mobile application communicates with the hosting system 140 by a set of command protocols. All requests are made by the mobile phone application. The commands are in text format. They are sent and received using TCP/IP protocol. To perform a certain task that needs the data from the hosting server 140 , the mobile application sends an encoded command along with its parameters to the server using TCP/IP connection. At the hosting server 140 , there is a mapping function (see FIG. 4 ) for each client command. For every client request, the server 140 performs the task and returns the results to the mobile client application.
  • the following tables are internal data structures used in mobile application memory for all operations.
  • the data structures are somewhat one-on-one mapping to database tables residing in the hosting system 140 . In most cases, these data structures are populated by the data downloaded from the golf course text file from the hosting server upon user's selection on the golf club 510 , golf course 540 to use (see FIG. 5 ).
  • User Profile 530 Object Name Description Example ID Unique system ID User ID User ID Driver Driver driving distance 3Wood 3Wood distance 5Wood 5Wood distance 7Wood 7Wood distance 2HB 2 Hybrid yardage 3HB 3 Hybrid yardage 4HB 4 Hybrid yardage 5HB 5 Hybrid 2Iron 2 Iron yardage 3Iron 3 Iron yardage 4Iron 5Iron 6Iron 7Iron 8Iron 9Iron PW Pitching Wedge yardage SW Sand Wedge yardage AW Approach Wedge yardage LW Lob Wedge yardage LastUpdate Date last yardage update Status General status
  • FIG. 6 is a flowchart illustrating a method 600 of self-caddying. The method 600 assumes user authentication upon application startup is completed.
  • Find a Golf Club is a command ( FIG. 7 and FIG. 8 ) from a main menu.
  • the command is an intuitive, simple, real-time search for users to look up any golf course available in the host system database. Users can select different search criteria to narrow the search. They can search the golf club by name, city, zip code, or by the nearest golf courses within the given range of current mobile phone position. Upon successful search, a list of matched golf clubs is returned to the mobile phone application to display. Followings are the sample functions for each search criteria.
  • a user can view and navigate through the list of matched golf clubs.
  • the user selects ( 620 ) a desired golf course.
  • the mobile phone 170 sends a GET_CLUB_INFO command ( FIG. 10 ) to the server 140 to retrieve more details of the selected golf club information from the database as follows:
  • the mobile phone 170 Upon receiving the club record, the mobile phone 170 displays the club information such as general description, address, contact phone numbers, type (public, private, etc.), weekend/weekday rates, course description, course par, tees (men/women), slope ratings, user rating, special promotion, ads, etc. as in example FIG. 11 .
  • club information such as general description, address, contact phone numbers, type (public, private, etc.), weekend/weekday rates, course description, course par, tees (men/women), slope ratings, user rating, special promotion, ads, etc. as in example FIG. 11 .
  • a golf course details file (see FIG. 13 ) contains golf club, golf course(s) and holes information data in a proprietary, pre-defined format, being mapped directly correlated with database tables fields. Pipe (
  • the mobile phone 170 parses and maps data into its internal data structures (see FIG. 5 and Tables I-VIII) accordingly for fast operations.
  • the mobile local data storage is a simple text file.
  • the screen sample after a successful download may resemble FIG. 14 .
  • Play A Round menu item 1610 ( FIG. 16 ) to start playing a golf round.
  • a Round record is created and assigned a sequential id as a name. (See FIG. 5 —Database and internal application data structures and tables.)
  • the golf round record is associated with a user, a golf course, and all its holes. Later, when a round is completed, it will associate with all the golf strokes performed during that round. The accumulative golf strokes, which is called score is also calculated and recorded. From this screen, a user can have a complete view of a play on a certain day. Each user can save more than one round.
  • a sample screen display is shown in FIG. 15 .
  • New Round command ( 1620 ) saves current round and starts a new round.
  • Upload command ( 1640 ) uploads user's round of golf data to the hosting system for future use in golf club recommendation and records tracking, as will be discussed further below. After a round is created, user is ready to start playing a round.
  • a user can select the menu item Play A Hole 1650 from the Play A Round screen ( FIG. 15 ) to start playing a golf hole.
  • the menu starts with the first hole as the default if there is no completed hole prior to that.
  • the screen starts with the current hole and stroke in progress otherwise.
  • a user can navigate using mobile phone keypad to the next and previous hole.
  • the number of holes is provided from the course download. For every hole, its information such as general description, pins' yardages, image, if any, local rules, play mode; View only or Play mode from the Setting menu, accumulative strokes and score, are displayed.
  • Record Pin command ( 1820 ): This command is available only if the golf course is being created by the user in the case that the golf course file does not exit in the hosting system (see Create a Golf Course, FIG. 3 —Main Menu). User can position him/herself at the center of the green of the hole and run this command to record the GPS coordinates of the center of the green for later upload to the hosting system.
  • the pin (or center of green) coordinates are saved to the mobile application internal data structures as well as the persistent text file on the device.
  • the Record Pin screen ( FIG. 20 ) shows the Pin location in the following sample screen:
  • Recommend command ( 1830 ) to display a hint text (and/or image), usually provided by the local club professional on the strategy and how to play on this hole. Data is available during the course download (see Internal Data Structure, Hole table, and Download Course).
  • a user can choose Complete Round command ( 1850 ) to view the completed round information and prepare to upload the data to the hosting system.
  • Play A Stroke command 1840
  • the function Play A Stroke ( 1840 ) is to assist user to manage every stroke play of any given hole.
  • the Play A Stroke screen FIG. 21 ) creates and starts with the first stroke as the default if there is no completed stroke prior to that. If not, the screen starts with the current hole and stroke in progress, otherwise.
  • the screen now displays the stroke information as well that include stroke number, distance to the pin (center of the green), or golf club recommendation.
  • a new Stroke record is created (see Stroke table in FIG. 5 —Database and internal application data structures and tables.).
  • the application also updates the previous stroke record. It prompts user to enter the club type used for the previous stroke. It also calculates the yardage needed (Yardage field) and yardage made (YardageMade field) based on the current golf ball position for future Stroke Recommendation function.
  • a Distance to Pin ( 2220 ) command from the Play A Stroke screen is used. It is to assist user to determine the distance in yards from the current location of the ball to the pin using built-in GPS capability in the mobile phone 170 at any given hole.
  • the mobile phone 170 calls function Get_Pin_Location(Current_Hole_Number) to get the Location structure. See FIG. 23 .
  • a Get_Distance(Get_Pin_Location(Current_Hole_Number)) ( FIG. 24 ) returns the distance of the current position where the golfer, the mobile phone 170 , and the ball lies at rest are to the pin (or center of the green).
  • Display_GPS_Info( ) displays the ball position to the pin on the LCD as in the sample screen as shown in FIG. 25 .
  • a user selects a Recommendation command from the Play A Stroke screen ( FIG. 25 ). It is to assist user to determine what golf club should be used, based on the distance in yards from the current location of the ball and the recommendation methodology or mode user prefers to use. There are three recommendation modes for the shot:
  • Display_Suggestion_Info( ) By calling Display_Suggestion_Info( ) to display the golf club recommendation, the screen sample looks like FIG. 31 .
  • the round played is the new golf course created by the user, it can be uploaded into the hosting system for others to share with the mobile phone application as well.
  • the sample screen looks like that shown in FIG. 33 .
  • the hosting server system 140 is a central hosting system that houses the database 3460 and all the intelligent business logic 3440 to serve mobile phone application 3410 , web site 3420 , and all internal back-end tools 3430 .
  • the database 3460 stores all users, golf club, golf courses, holes, rounds, shots, billing plan, promotion, ads, actions, and others.
  • the intelligent business logic 3440 performs all server tasks like user authentication, service rendered to clients based on subscription plan, sophisticated and heavy computing like shots statistics, golf course search, and many others. Result is sent to the client side via a proprietary client/server protocol via the Internet.
  • the database 3460 is stored in the mobile phone 170 so that a user does not need to access a network to perform the above-mentioned methods.
  • the website 3420 is another system portal for users to interface with the system. From the website, users can do several functions, such as golf course search; golf course creation; and participate in a golf forum.
  • the golf course search is similar to the mobile phone application feature.
  • the website provides an intuitive, simple, real-time search capability for users to look up any golf course available in the host system.
  • the system provides many search criteria that can be used singly or combined with others to narrow the search. User can search:
  • a user can use a web-based tool to create a golf course data it in the hosting system database for mobile phone application to use.
  • the golf club, golf course(s), and hole tables from the FIG. 5 Database and internal application data structures and tables are populated by the web-based tool.
  • the golf forum is a public forum for golfers to post any golf-related discussions, blogs, images, experiences, thoughts, etc.
  • One of the most important features of the forum is allow users to rate a golf course for references based on certain criteria.
  • the golf course rating can be used later by the system to mobile phone application.
  • FIG. 35 is a block diagram illustrating a wireless phone 170 ( FIG. 1 ) capable of hosting the functions described above.
  • the phone 170 includes a wireless transceiver 3510 capable to wirelessly communicate with wireless networks via cell sites, such as cell tower 120 ; a memory device 3560 , such as such as a magnetic disk, Random Access Memory (RAM), Flash Memory or other memory device or combination thereof a processor 3550 , such as an ARM 7 microprocessor or a Motorola 68000 microprocessor; a GPS receiver 3540 ; a display 3580 ; and an input device 3590 , all interconnected for communication by a system bus 3570 .
  • wireless transceiver 3510 is communicatively coupled to antenna 3500 .
  • the GPS receiver 3540 receives radio signals from GPS satellites orbiting the Earth. Based on the received signals, the receiver 3540 can calculate its position and altitude. The GPS receiver 3540 can then forward that data to processor 3550 for processing.
  • GPS refers to any generic global positioning system and not just satellite based. For example, the GPS receiver 3540 can use a Loran-C, GLONASS, Galileo, triangulation between cell phone towers or other location determination system.
  • the transceiver 210 can wirelessly transmit and receive data, including text messages, such as SMS messages or other data formats, and voice, via wireless networks, such as Cellular Digital Packet Data (CDPD) and ARDIS.
  • the transceiver 3510 comprises a transmitter 3520 for transmitting data and a receiver 3530 for receiving data.
  • the processor 3550 executes engines stored in memory 3560 to transmit and receive SMS text messages (or data in other formats) and to run the golf functions discussed above.
  • the display 3580 comprises a LCD display or other device for displaying data.
  • the input 3590 includes a keyboard and/or other input device.
  • FIG. 36 is a block diagram illustrating a memory 3560 of the mobile phone.
  • the memory 3560 includes a hole engine 3610 ; a distance engine 3620 ; a club recommendation engine 3630 ; a club presentation engine 3640 ; a golf course engine 3650 ; a storage engine 3660 ; and a map engine 3670 . While the engines 3610 - 3670 are shown in a software embodiment, they can also be implemented with other technology, such as Application Specific Integrated Circuits.
  • the hole engine 3610 determines a hole location (e.g., pin)
  • the hole engine 3610 may use the function Get_Pin_Location to get the pin location from a database stored in the memory 3560 and/or stored at another site.
  • the distance engine 3620 calculates a difference between the hole and current golfer position using the Get_Distance function.
  • the club recommendation engine 3630 determines a club to use based on the difference. Functions used by the engine 3630 may include the Get_Club_Profile (Distance) function, the Get_Club_Most_Accurate function and the Get_Club_Most_Used function.
  • the club presentation engine 3640 presents the determination of club on a screen.
  • the golf course engine 3650 receives golf course data including hole locations, either from a local database or from a database stored at another site.
  • the storage engine 3660 stores round play data locally and/or at another site.
  • the map engine 3670 shows stored data in a map format. That is, the map engine 3670 displays a map of the golf course (or section thereof) and round(s) played so that a user can improve his/her golf game by reviewing the strokes.
  • the map engine 3670 displays the map and data on the mobile phone 170 .
  • the map engine 3670 is resident on the server 140 , which displays the map either on the mobile phone 170 (when downloaded) or on a user's computer when a website is accessed.

Landscapes

  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Instructional Devices (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

A mobile phone incorporates a positioning system to calculate a user's distance from a golf hole. Based on the distance, the mobile phone recommends a golf club to use.

Description

    PRIORITY CLAIM TO RELATED APPLICATION
  • This application claims priority of and incorporates by reference U.S. Patent Application No. 60/824,277 filed Aug. 31, 2006 entitled “GPS-Enabled Mobile Phone Application System for Golfers to Self-Caddy,” by inventor Frank Nguyen.
  • TECHNICAL FIELD
  • This invention relates generally to mobile phones, and more particularly, but not exclusively, provides a system and method to enable golfers to self-caddy using a mobile phone.
  • BACKGROUND
  • Golfing requires precision execution of every stroke play. Reading the accurate yardage of every stroke, selecting the right club for play based on one's ability and statistics are essential for a golfer. Some of these critical decisions or help come from a golfer's assistant, such as a caddie. In reality, a caddie is only available for tour professional players or at expensive golf clubs. In most cases, golfers rely on themselves.
  • Accordingly, a new system and method are needed that enable self-caddying.
  • SUMMARY
  • Mobile phones have become more of a Personal Digital Assistant (PDA) for the average person, performing more advanced tasks than just simply making and receiving phone calls. Among the new advanced technologies enabled for mobile phones is built-in GPS (Global Positioning System) chipset into the mobile phone. Combining this GPS capability with other available technology in the mobile device such as Internet connection via mobile wireless network, digitized global map, and the community-driven Internet website, such a mobile phone software application can be developed to help thousands of global golfers to improve their game on and off the golf course. The key is the ability to pin point the exact location of every golf ball at rest during the game play, relatively to the digitized location (longitude and latitude) of every hole of the golf course. The data then can be stored, analyzed, and utilized intelligently by the system to enable golfers to improve their game.
  • In an embodiment, a method comprises: determining a stroke location of a golfer using global positioning system data received by a mobile phone carried by the golfer; determining a hole location; calculating a difference between the two determined locations; determining a club to use based on the difference; and presenting the determination of club.
  • In an embodiment, a mobile phone comprises a global positioning system chipset; a hole engine; a distance engine; a club recommendation engine; and a club presentation engine. The global positioning system chipset determines a stroke location of a golfer. The hole engine determines a hole location. The distance engine, which is communicatively coupled to the chipset and the hole engine, calculates a difference between the two determined locations. The club recommendation engine, which is communicatively coupled to the distance engine, determines a club to use based on the difference. The club presentation engine, which is communicatively coupled to the club recommendation engine, presents the determination of club.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Non-limiting and non-exhaustive embodiments of the present invention are described with reference to the following figures, wherein like reference numerals refer to like parts throughout the various views unless otherwise specified.
  • FIG. 1 is a block diagram illustrating a network system;
  • FIG. 2 is a flow diagram illustrating data flow of the system;
  • FIG. 3 is an example screenshot of a main menu of the system;
  • FIG. 4 is a table of client/server command mapping;
  • FIG. 5 is a block diagram illustrating a database of the system;
  • FIG. 6 is a flowchart illustrating a method of self-caddying;
  • FIG. 7 is a diagram illustrating a search club by name function;
  • FIG. 8 is a diagram illustrating a search club by geocode function;
  • FIG. 9 is an example screen shot of a golf club found screen;
  • FIG. 10 is a diagram illustrating a get club info function;
  • FIG. 11 is an example screenshot of a golf club info screen;
  • FIG. 12 is a diagram illustrating a download course function;
  • FIG. 13 is a diagram illustrating an example golf course download file;
  • FIG. 14 is an example screenshot of a golf club info screen;
  • FIG. 15 is an example screenshot of a play a round screen;
  • FIG. 16 is a flowchart illustrating a method of playing a round;
  • FIG. 17 is an example screenshot of a play a hole screen;
  • FIG. 18 is a flowchart illustrating a method of playing a hole
  • FIG. 19 is a diagram illustrating a get current location function;
  • FIG. 20 is an example screenshot of a record pin screen;
  • FIG. 21 is an example screenshot of a play a stroke screen
  • FIG. 22 is a flowchart illustrating a method of playing a stroke;
  • FIG. 23 is a diagram illustrating a get pin location function;
  • FIG. 24 is a diagram illustrating a golf distance function;
  • FIG. 25 is an example screenshot of a playing a stroke with distance to pin screen;
  • FIG. 26 is a diagram illustrating a get club function;
  • FIG. 27 is a diagram illustrating a get club most accurate function;
  • FIG. 28 is a diagram illustrating example output of the get club most accurate function;
  • FIG. 29 is a diagram illustrating a get club most used function;
  • FIG. 30 is a diagram illustrating example output of the get club most used function;
  • FIG. 31 is an example screenshot of a play a stroke with club recommendation screen;
  • FIG. 32 is an example screenshot of a play a round screen with a completed round;
  • FIG. 33 is an example screenshot of a play a round screen after successful upload;
  • FIG. 34 is a block diagram illustrating a hosting server architecture;
  • FIG. 35 is a block diagram illustrating a mobile phone; and
  • FIG. 36 is a block diagram illustrating a memory of the mobile phone.
  • DETAILED DESCRIPTION
  • The following description is provided to enable any person having ordinary skill in the art to make and use the invention, and is provided in the context of a particular application and its requirements. Various modifications to the embodiments will be readily apparent to those skilled in the art, and the principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles, features and teachings disclosed herein.
  • FIG. 1 is a block diagram illustrating a network system 100. Embodiments of the invention include a new system and method that leverage the global positioning system (GPS) capability in mobile phones to help golfers to perform many tasks often provided by a caddie. An embodiment of the system 100 comprises three main components:
      • Mobile Phone 170 which includes a friendly, graphical user interface software application for golfers to run on their mobile phone environment. The software enables golfer to search for nearest golf clubs within vicinity based on current location, assist a golfer during play to make wise decisions based on the yardage from the ball to the center of green or based on historical statistics, record game scores and strokes data for future game improvement.
      • Hosting System (Server) 140: a centralized, hosting computer system that stores all users, golf clubs, data and provide a central intelligent interface for mobile phone application, web site access, and internal back-end tools as well as third party software integration.
      • Community Internet Web Site 130 where users can search for golf course information and perform golf community activities like sharing experience tips, rating, etc. Users can have their own account to review their golf rounds play history, reports, analysis, rounds play with stroke by stroke displayed on a digital map format. Other features include online tee time booking, online golf lesson, local golf clubs news, special discounts, e-coupons, and other golf related-information. The website also allows community users to digitize local golf courses GPS locations of the pins and upload onto the hosting system for community users to share.
  • Other components of the system 100 include GPS satellites 110, and towers 120. The satellites provide GPS signals to the phone 170 so that it can determine its position, which should coincide with a golf ball location 150 and therefore calculate a distance from the golf ball location 150 to a golf center of green location (hole) 160. The towers 120 provide wireless signals to the phone 170.
  • In an embodiment:
  • (1) The golf community (or others) 200 digitize golf course map and pin locations and store data into the hosting system 140 from the web site 130 via an Internet connection.
  • (2) Golfer downloads digitized course map and pin locations from the hosting system 140 to his/her mobile phone 170 via the wireless mobile network. This data is used by the phone 170 with GPS capability to improve golfer's game.
  • (3) Upon completion, golfer uploads his/her game scores, GPS location data, or new golf course data to the hosting system 140 via the wireless mobile network for future analysis, references, and other users to share.
  • (4) Golfer can access his/her game scores, game plan, statistics, etc. from the Internet web site 130.
  • (5) Golfer can send game plan, data, etc. directly to his/her mobile phone 170 via Internet/mobile wireless network.
  • In an embodiment, an application sits in the phone 170 and has a small footprint, client software application written for mobile phone environment. It runs within the mobile phone operating system, utilizing mobile system interfaces provided by the mobile network carriers or mobile phone manufacturers. Some sample system interfaces are memory storage, network connection, hardware interface like GPS capability, native mobile phone features, etc. The application can be distributed by users 200 downloading it from the Internet via wireless mobile network from the mobile carrier network, or pre-installed with other mobile network carrier's applications when the phone is available for commercially used. Upon successful installation, a user can run the application directly on the mobile phone 170 with screen display, interactive keypad control, and sound from the mobile phone 170 via a menu, as shown in FIG. 3.
  • In an embodiment, the mobile application communicates with the hosting system 140 by a set of command protocols. All requests are made by the mobile phone application. The commands are in text format. They are sent and received using TCP/IP protocol. To perform a certain task that needs the data from the hosting server 140, the mobile application sends an encoded command along with its parameters to the server using TCP/IP connection. At the hosting server 140, there is a mapping function (see FIG. 4) for each client command. For every client request, the server 140 performs the task and returns the results to the mobile client application.
  • In an embodiment, the following tables are internal data structures used in mobile application memory for all operations. The data structures are somewhat one-on-one mapping to database tables residing in the hosting system 140. In most cases, these data structures are populated by the data downloaded from the golf course text file from the hosting server upon user's selection on the golf club 510, golf course 540 to use (see FIG. 5).
  • TABLE I
    Golf Club
    510
    Object
    Name Description Example
    ID Unique ID 1245
    Name Golf club name San Jose Municipal Golf
    Course
    Description Golf club description Municipal, 18 holes. Green
    Fees: $33-$47. Cart Fee:
    $25. Bob McGrath, PGA
    Class A Director of Golf;
    Dennis Tuhn, PGA Class A
    Pro; George Young, CGCS
    Supt. Non-member course.
    Course Designer: Robert
    Muir Graves. Course
    Record: 67 by John Ellis.
    Type Pubic, semi-public, private, public
    etc.
    Website Website address www.sjmuni.com
    Street Street
    City City
    State State
    Zip Zip code
    Country Country
    Phone Phone # including 1 and
    area code
    Fax Fax #
    Status Internal club status Pending, QA, Stating,
    Active, In-active, etc.
    Image Image URL
  • TABLE II
    Golf Course
    540
    Object
    Name Description Example
    ID Unique system id
    Name Golf course name
    Club ID Club id golf course belongs
    to
    Description Brief golf course
    description
    Image Golf course image URL
  • TABLE III
    Golf Round
    550
    5Object
    Name Description Example
    ID Unique system ID
    Course ID Golf course ID where hole San Jose Municipal Golf
    belongs to Course
    User ID User ID who played this
    round
    Date Date played
    Name Round name
    Total Score
    Status
  • TABLE IV
    Hole
    560
    Object
    Name Description Example
    ID Unique system ID
    Course ID Golf course ID where hole San Jose Municipal Golf
    belongs to Course
    Description Short hole description
    Name Hole name
    Hint Short hint from the pro on
    how to play this hole
    Latitude Latitude of the center of
    green (or pin)
    Longitude Longitude of the center of
    the green (or pin)
    Elevation Elevation of the green
    from the sea level
    Par Par of this hole
    Score Score of this hole
    T1name Tee
    1 name
    T2len Tee
    1 yardage
    T2name Tee
    2 name
    T2len Tee
    2 yardage
    T3name Tee
    3 name
    T3len Tee
    3 yardage
    T4name Tee
    4 name
    T4len Tee
    4 yardage
    T5name Tee
    5 name
    T5len Tee
    5 yardage
    Status status
  • TABLE V
    Stroke
    570
    Object
    Name Description Example
    ID Unique system ID
    Hole ID Hole ID that this stroke
    occurred at
    User ID User ID who made this
    stroke
    Round ID Round ID that this stroke
    occurred in
    Number Hole number
    Date Date stroke made
    Hint Future Use-
    Latitude Latitude of the ball
    position at rest prior to this
    stroke
    Longitude Longitude of the ball
    position at rest prior to this
    stroke
    Elevation Elevation of the ball
    position at rest prior to this
    stroke
    YardageMade Yardage made
    Yardage Yardage to shoot
    Club Used Golf Club used
    Status status
  • TABLE VI
    User
    520
    Object
    Name Description Example
    ID Unique system ID
    User Name Brief user name
    Password Password
    First First name
    Last Last name
    Email Email
    CPhone Cell phone
    HPhone Home phone
    WPhone Work phone
    Street Street number and name
    City City
    State State
    Zip Zipcode
    Country Country
    Status User status
    Member Since Member since
  • TABLE VII
    User Profile
    530
    Object
    Name Description Example
    ID Unique system ID
    User ID User ID
    Driver Driver driving distance
    3Wood 3Wood distance
    5Wood 5Wood distance
    7Wood 7Wood distance
    2HB
    2 Hybrid yardage
    3HB
    3 Hybrid yardage
    4HB
    4 Hybrid yardage
    5HB
    5 Hybrid
    2Iron
    2 Iron yardage
    3Iron
    3 Iron yardage
    4Iron
    5Iron
    6Iron
    7Iron
    8Iron
    9Iron
    PW Pitching Wedge yardage
    SW Sand Wedge yardage
    AW Approach Wedge yardage
    LW Lob Wedge yardage
    LastUpdate Date last yardage update
    Status General status
  • TABLE VIII
    Location
    Object
    Name Description Example
    Latitude Latitude of the ball
    position at rest prior to this
    stroke
    Longitude Longitude of the ball
    position at rest prior to this
    stroke
    Elevation Elevation of the ball
    position at rest prior to this
    stroke
  • FIG. 6 is a flowchart illustrating a method 600 of self-caddying. The method 600 assumes user authentication upon application startup is completed.
  • Find a Golf Club (610) is a command (FIG. 7 and FIG. 8) from a main menu. The command is an intuitive, simple, real-time search for users to look up any golf course available in the host system database. Users can select different search criteria to narrow the search. They can search the golf club by name, city, zip code, or by the nearest golf courses within the given range of current mobile phone position. Upon successful search, a list of matched golf clubs is returned to the mobile phone application to display. Followings are the sample functions for each search criteria.
  • As a result for the Find A Golf Club (610) command, a list of matched golf clubs are returned to the mobile application from the host system as shown in example FIG. 9.
  • A user can view and navigate through the list of matched golf clubs. The user then selects (620) a desired golf course. The mobile phone 170 sends a GET_CLUB_INFO command (FIG. 10) to the server 140 to retrieve more details of the selected golf club information from the database as follows:
  • Upon receiving the club record, the mobile phone 170 displays the club information such as general description, address, contact phone numbers, type (public, private, etc.), weekend/weekday rates, course description, course par, tees (men/women), slope ratings, user rating, special promotion, ads, etc. as in example FIG. 11.
  • After viewing the golf club course details, if users decide to play a golf round leveraging the phone 170 to assist in playing, then they can select command Download Golf Club/course (FIG. 12) to download golf course details files from the host system 140 via the Internet to the mobile phone 170.
  • A golf course details file (see FIG. 13) contains golf club, golf course(s) and holes information data in a proprietary, pre-defined format, being mapped directly correlated with database tables fields. Pipe (|) and new line are used as delimiters. Upon receiving the file, the mobile phone 170 parses and maps data into its internal data structures (see FIG. 5 and Tables I-VIII) accordingly for fast operations.
  • Due to the nature of mobile phone usage where user can close and open a clam shell any time during the play, it's important to have the downloaded file and any other critical data in application memory stored instantly on a persistent local storage. In this case, the mobile local data storage is a simple text file. In an embodiment, the screen sample after a successful download may resemble FIG. 14.
  • Upon successful download, a user can select Play A Round menu item 1610 (FIG. 16) to start playing a golf round. A Round record is created and assigned a sequential id as a name. (See FIG. 5—Database and internal application data structures and tables.) The golf round record is associated with a user, a golf course, and all its holes. Later, when a round is completed, it will associate with all the golf strokes performed during that round. The accumulative golf strokes, which is called score is also calculated and recorded. From this screen, a user can have a complete view of a play on a certain day. Each user can save more than one round. A sample screen display is shown in FIG. 15.
  • New Round command (1620) saves current round and starts a new round. Upload command (1640) uploads user's round of golf data to the hosting system for future use in golf club recommendation and records tracking, as will be discussed further below. After a round is created, user is ready to start playing a round.
  • A user can select the menu item Play A Hole 1650 from the Play A Round screen (FIG. 15) to start playing a golf hole. The menu starts with the first hole as the default if there is no completed hole prior to that. The screen starts with the current hole and stroke in progress otherwise. A user can navigate using mobile phone keypad to the next and previous hole. There are either 9 holes or 18 holes round. The number of holes is provided from the course download. For every hole, its information such as general description, pins' yardages, image, if any, local rules, play mode; View only or Play mode from the Setting menu, accumulative strokes and score, are displayed.
  • Record Pin command (1820): This command is available only if the golf course is being created by the user in the case that the golf course file does not exit in the hosting system (see Create a Golf Course, FIG. 3—Main Menu). User can position him/herself at the center of the green of the hole and run this command to record the GPS coordinates of the center of the green for later upload to the hosting system.
  • The pin (or center of green) coordinates are saved to the mobile application internal data structures as well as the persistent text file on the device. The Record Pin screen (FIG. 20) shows the Pin location in the following sample screen:
  • Recommend command (1830) to display a hint text (and/or image), usually provided by the local club professional on the strategy and how to play on this hole. Data is available during the course download (see Internal Data Structure, Hole table, and Download Course).
  • When a round is completed, either 9 or 18 holes, a user can choose Complete Round command (1850) to view the completed round information and prepare to upload the data to the hosting system.
  • To start playing stroke and record its data, a user can select the Play A Stroke command (1840). The function Play A Stroke (1840) is to assist user to manage every stroke play of any given hole. Upon being selected, the Play A Stroke screen (FIG. 21) creates and starts with the first stroke as the default if there is no completed stroke prior to that. If not, the screen starts with the current hole and stroke in progress, otherwise. In addition to the brief golf course, hole information, the screen now displays the stroke information as well that include stroke number, distance to the pin (center of the green), or golf club recommendation.
  • For New Stroke command (2250; FIG. 22), a new Stroke record is created (see Stroke table in FIG. 5—Database and internal application data structures and tables.). The application also updates the previous stroke record. It prompts user to enter the club type used for the previous stroke. It also calculates the yardage needed (Yardage field) and yardage made (YardageMade field) based on the current golf ball position for future Stroke Recommendation function.
  • To determine stroke position (670) a Distance to Pin (2220) command from the Play A Stroke screen is used. It is to assist user to determine the distance in yards from the current location of the ball to the pin using built-in GPS capability in the mobile phone 170 at any given hole. When user selects the Distance to Pin command, given that the current hole number is known, the mobile phone 170 calls function Get_Pin_Location(Current_Hole_Number) to get the Location structure. See FIG. 23.
  • Afterwards, a Get_Distance(Get_Pin_Location(Current_Hole_Number)) (FIG. 24) returns the distance of the current position where the golfer, the mobile phone 170, and the ball lies at rest are to the pin (or center of the green).
  • Then Display_GPS_Info( ) displays the ball position to the pin on the LCD as in the sample screen as shown in FIG. 25.
  • To recommend a stroke (680), a user selects a Recommendation command from the Play A Stroke screen (FIG. 25). It is to assist user to determine what golf club should be used, based on the distance in yards from the current location of the ball and the recommendation methodology or mode user prefers to use. There are three recommendation modes for the shot:
  • Profile: recommending a golf club based on the current distance and the preset user's profile on clubs distances. For example, if the distance is 110 yard and user's iron 9 club preset distance in the My Profile is 115 yards, then iron 9 club is recommended.
  • Most Accurate: recommending a golf club based on user's history of plays and statistics. For a given distance, it suggests the club used in the past that the result distance of a required yardage and yardage made is minimal. This rule is applied for all user's past strokes that have distance within +15 yards from a given distance.
  • For Example: For a shot that needs a distance of 135 yards; the system will pull up all stroke plays of that user in the database that has the Distance field +15 yards from 135 yards. (See Stroke table in FIG. 5—Database and internal application data structures and tables.) Among these strokes, the one that has Delta Yardage −5 yards is the closest one. Therefore, the iron club 8 is recommended. See FIG. 28—Example of Get Club Most Accurate Function below.
  • Most Frequently Used: recommending a golf club based on user's history of plays and statistics. For a given distance, it suggests the club mostly used in the past that the result distances are within +/−10 yards of a given distance.
  • For Example: For a shot that needs a distance of 135 yards; the system will pull up all stroke plays of that user in the database that has the YardMade field +/−10 yards from 135 yards. (See Stroke table in FIG. 5—Database and internal application data structures and tables.) Among these strokes, club iron 9 has been used to the most. Therefore, the iron club 9 is recommended. See FIG. 30.
  • By calling Display_Suggestion_Info( ) to display the golf club recommendation, the screen sample looks like FIG. 31.
  • After finishing the last stroke of the hole, user can select a Complete Hole (FIG. 31) to go back to the Play A Hole menu to start the next hole until completing a round.
  • When a round of golf is completed, user has the option to upload the round play (690) to the hosting system for future statistics and game improvement. A sample screen of completed round is shown in FIG. 32.
  • If the round played is the new golf course created by the user, it can be uploaded into the hosting system for others to share with the mobile phone application as well. Upon successful upload a round to the hosting system the sample screen looks like that shown in FIG. 33.
  • Finally, user can press Complete A Round (FIG. 33) to go back to the mobile phone 170 application Main Menu for any other use.
  • The hosting server system 140 is a central hosting system that houses the database 3460 and all the intelligent business logic 3440 to serve mobile phone application 3410, web site 3420, and all internal back-end tools 3430. The database 3460 stores all users, golf club, golf courses, holes, rounds, shots, billing plan, promotion, ads, actions, and others. The intelligent business logic 3440 performs all server tasks like user authentication, service rendered to clients based on subscription plan, sophisticated and heavy computing like shots statistics, golf course search, and many others. Result is sent to the client side via a proprietary client/server protocol via the Internet. In another embodiment, the database 3460 is stored in the mobile phone 170 so that a user does not need to access a network to perform the above-mentioned methods.
  • The website 3420 is another system portal for users to interface with the system. From the website, users can do several functions, such as golf course search; golf course creation; and participate in a golf forum.
  • The golf course search is similar to the mobile phone application feature. The website provides an intuitive, simple, real-time search capability for users to look up any golf course available in the host system. The system provides many search criteria that can be used singly or combined with others to narrow the search. User can search:
      • a. By Name: golf courses that match a given name. Wild card characters are acceptable.
      • b. By Zip Code: golf courses that match a zip code.
      • c. By City: golf courses that match a city name
  • If a golf course is not available from the system, a user can use a web-based tool to create a golf course data it in the hosting system database for mobile phone application to use. The golf club, golf course(s), and hole tables from the FIG. 5—Database and internal application data structures and tables are populated by the web-based tool.
  • Method 1:
      • Use Google Map to find the golf course satellite map by entering the address.
      • Locate every green from the map.
      • Enter the center of the green locations; i.e. longitude and latitude provided by Google Map into the tool entry fields accordingly.
      • Save the data.
  • Method 2:
      • In the case that Hosting system administrator does not know the hole from the satellite map, he/she posts the map with holes' labels to the website community and asks for local golfers to help identify the hole's number with the label.
      • User identify the holes' numbers and reply accordingly with the labels for the hosting system admin can record the greens' GPS locations as above.
  • The golf forum is a public forum for golfers to post any golf-related discussions, blogs, images, experiences, thoughts, etc. One of the most important features of the forum is allow users to rate a golf course for references based on certain criteria. The golf course rating can be used later by the system to mobile phone application.
  • FIG. 35 is a block diagram illustrating a wireless phone 170 (FIG. 1) capable of hosting the functions described above. The phone 170 includes a wireless transceiver 3510 capable to wirelessly communicate with wireless networks via cell sites, such as cell tower 120; a memory device 3560, such as such as a magnetic disk, Random Access Memory (RAM), Flash Memory or other memory device or combination thereof a processor 3550, such as an ARM 7 microprocessor or a Motorola 68000 microprocessor; a GPS receiver 3540; a display 3580; and an input device 3590, all interconnected for communication by a system bus 3570. In addition, wireless transceiver 3510 is communicatively coupled to antenna 3500.
  • The GPS receiver 3540 receives radio signals from GPS satellites orbiting the Earth. Based on the received signals, the receiver 3540 can calculate its position and altitude. The GPS receiver 3540 can then forward that data to processor 3550 for processing. The term GPS refers to any generic global positioning system and not just satellite based. For example, the GPS receiver 3540 can use a Loran-C, GLONASS, Galileo, triangulation between cell phone towers or other location determination system.
  • The transceiver 210 can wirelessly transmit and receive data, including text messages, such as SMS messages or other data formats, and voice, via wireless networks, such as Cellular Digital Packet Data (CDPD) and ARDIS. The transceiver 3510 comprises a transmitter 3520 for transmitting data and a receiver 3530 for receiving data.
  • The processor 3550 executes engines stored in memory 3560 to transmit and receive SMS text messages (or data in other formats) and to run the golf functions discussed above. The display 3580 comprises a LCD display or other device for displaying data. The input 3590 includes a keyboard and/or other input device.
  • FIG. 36 is a block diagram illustrating a memory 3560 of the mobile phone. The memory 3560 includes a hole engine 3610; a distance engine 3620; a club recommendation engine 3630; a club presentation engine 3640; a golf course engine 3650; a storage engine 3660; and a map engine 3670. While the engines 3610-3670 are shown in a software embodiment, they can also be implemented with other technology, such as Application Specific Integrated Circuits.
  • The hole engine 3610 determines a hole location (e.g., pin) The hole engine 3610 may use the function Get_Pin_Location to get the pin location from a database stored in the memory 3560 and/or stored at another site. The distance engine 3620 calculates a difference between the hole and current golfer position using the Get_Distance function. The club recommendation engine 3630 determines a club to use based on the difference. Functions used by the engine 3630 may include the Get_Club_Profile (Distance) function, the Get_Club_Most_Accurate function and the Get_Club_Most_Used function. The club presentation engine 3640 presents the determination of club on a screen.
  • The golf course engine 3650 receives golf course data including hole locations, either from a local database or from a database stored at another site. The storage engine 3660 stores round play data locally and/or at another site. The map engine 3670 shows stored data in a map format. That is, the map engine 3670 displays a map of the golf course (or section thereof) and round(s) played so that a user can improve his/her golf game by reviewing the strokes. In an embodiment, the map engine 3670 displays the map and data on the mobile phone 170. In another embodiment, the map engine 3670 is resident on the server 140, which displays the map either on the mobile phone 170 (when downloaded) or on a user's computer when a website is accessed.
  • The foregoing description of the illustrated embodiments of the present invention is by way of example only, and other variations and modifications of the above-described embodiments and methods are possible in light of the foregoing teaching. Further, components of this invention may be implemented using a programmed general purpose digital computer, using application specific integrated circuits, or using a network of interconnected conventional components and circuits. Connections may be wired, wireless, modem, etc. The embodiments described herein are not intended to be exhaustive or limiting. The present invention is limited only by the following claims.

Claims (21)

1. A method, comprising:
determining a stroke location of a golfer using global positioning system data received by a mobile phone carried by the golfer;
determining a hole location;
calculating a difference between the two determined locations;
determining a club to use based on the difference; and
presenting the determination of club.
2. The method of claim 1, wherein the determining the hole location comprises:
receiving golf course data including hole locations; and
selecting a hole location, by a user's selection or by automatic hole detection algorithm, to the determined stroke location.
3. The method of claim 2, wherein the receiving golf course data comprises:
transmitting a request from a mobile phone to a server; and
receiving the golf course data from the server.
4. The method of claim 1, wherein the determining the stroke location comprises:
determining a location of a mobile phone carried by the golfer.
5. The method of claim 1, further comprising storing round play data.
6. The method of claim 5, wherein the determining the club comprises:
looking up clubs and associated average range for the golfer from stored round play data; and
selecting the club having an average range closest to the calculated difference.
7. The method of claim 5, wherein the determining the club comprises:
looking up clubs and associated distance to hole when used based on stored round play data; and
selecting the club having the associated distance to hole closest to the calculated difference.
8. The method of claim 5, further comprising displaying round play data overlaid on a map.
9. The method of claim 1, wherein the determining the club comprises:
looking up clubs and associated preset distances; and
selecting the club having the associated preset distance closest to the calculated difference.
10. A system, comprising:
means for determining a stroke location of a golfer using global positioning system data received by a mobile phone carried by the golfer;
means for determining a hole location;
means for calculating a difference between the two determined locations;
means for determining a club to use based on the difference; and
means for presenting the determination of club.
11. A computer-readable medium having stored thereon a program that causes a computer to execute a method, the method comprising:
determining a stroke location of a golfer using global positioning system data received by a mobile phone carried by the golfer;
determining a hole location;
calculating a difference between the two determined locations;
determining a club to use based on the difference; and
presenting the determination of club.
12. A mobile phone, comprising:
a global positioning system chipset for determining a stroke location of a golfer;
a hole engine for determining a hole location;
a distance engine, communicatively coupled to the chipset and the hole engine, for calculating a difference between the two determined locations;
a club recommendation engine, communicatively coupled to the distance engine, for determining a club to use based on the difference; and
a club presentation engine, communicatively coupled to the club recommendation engine, for presenting the determination of club.
13. The system of claim 12, further comprising a golf course engine for receiving golf course data including hole locations; and wherein the hole engine selects a hole location, by a user's selection or by an automatic hole detection algorithm, to the determined stroke location.
14. The system of claim 13, wherein the golf course engine transmits a request from a mobile phone to a server; and receives the golf course data from the server.
15. The system of claim 12, wherein the GPS chipset determines the stroke location by determining the location of the mobile phone, which is carried by the golfer.
16. The system of claim 12, further comprising a storage engine for storing round play data.
17. The system of claim 16, wherein the club recommendation engine determines the club by looking up clubs and associated average range for the golfer from stored round play data; and selecting the club having an average range closest to the calculated difference.
18. The system of claim 16, wherein the club recommendation engine determine the club by looking up clubs and associated distance to hole when used based on stored round play data; and selecting the club having the associated distance to hole closest to the calculated difference.
19. The system of claim 16, further comprising a map engine for displaying round play data overlaid on a map.
20. The system of claim 12, wherein the club recommendation engine determines the club by looking up clubs and associated preset distances; and selecting the club having the associated preset distance closest to the calculated difference.
21. A method, comprising:
using a global positioning system chipset in a mobile phone to determine a golf course hole location; and
transmitting the golf course hole location to a database for storage so that other users can access the golf course hole location.
US11/845,769 2006-08-31 2007-08-27 Mobile phone system and method for self-caddy Abandoned US20080058125A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/845,769 US20080058125A1 (en) 2006-08-31 2007-08-27 Mobile phone system and method for self-caddy

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US82427706P 2006-08-31 2006-08-31
US11/845,769 US20080058125A1 (en) 2006-08-31 2007-08-27 Mobile phone system and method for self-caddy

Publications (1)

Publication Number Publication Date
US20080058125A1 true US20080058125A1 (en) 2008-03-06

Family

ID=39136281

Family Applications (1)

Application Number Title Priority Date Filing Date
US11/845,769 Abandoned US20080058125A1 (en) 2006-08-31 2007-08-27 Mobile phone system and method for self-caddy

Country Status (2)

Country Link
US (1) US20080058125A1 (en)
WO (1) WO2008027852A1 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080254916A1 (en) * 2007-04-11 2008-10-16 Samsung Electronics Co., Ltd. Method of providing golf contents in mobile terminal
US20110202376A1 (en) * 2007-10-05 2011-08-18 Bob Rodenberg System For Golf Reservations
US20140052707A1 (en) * 2012-05-08 2014-02-20 Lawrence F. Jindra Concierge Service System and Method
US20150126308A1 (en) * 2013-11-06 2015-05-07 Percentageplay Golf, Llc Combining statistically determined capabilities of a golfer with golf course data to aid shot selection
US20160296796A1 (en) * 2013-11-22 2016-10-13 Thomas Sandel Ball, in particular a golf ball, and an electronic device able to communicate with the ball
TWI574221B (en) * 2015-11-12 2017-03-11 綠夾克運動事業股份有限公司 System and method for golf course automation service
WO2018004957A1 (en) * 2016-06-30 2018-01-04 Nike Innovate C.V. Digital golf assistant
US10151842B2 (en) * 2013-08-30 2018-12-11 GolfzonDeca Inc. Golf GPS device with approximate hole cup location selection
US10369451B2 (en) 2012-07-05 2019-08-06 Golfzondeca, Inc. Golf GPS device with automatic hole recognition and playing hole selection
US10881941B2 (en) * 2016-11-04 2021-01-05 Jong Bok SEO Hybrid golf guide system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020072815A1 (en) * 2000-01-21 2002-06-13 Mcdonough William A. Portable information system and method for golf play enhancement, analysis, and scorekeeping
US20040073325A1 (en) * 2000-12-19 2004-04-15 Reeves G. George Golf round data system with cellular telephone and player help features

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040010420A (en) * 2003-10-17 2004-01-31 주식회사 이지싱크 handheld terminals, system and method for managing golf score
KR20040096437A (en) * 2004-09-07 2004-11-16 (주)바스네트워크 A method for providing golf-information by using positioning information of personal portable terminal and a system thereof
KR100647773B1 (en) * 2004-09-08 2006-11-23 주식회사 엘지텔레콤 Portable Equipment And Mobile Communication System And Service Providing Method Using The Same

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020072815A1 (en) * 2000-01-21 2002-06-13 Mcdonough William A. Portable information system and method for golf play enhancement, analysis, and scorekeeping
US20040073325A1 (en) * 2000-12-19 2004-04-15 Reeves G. George Golf round data system with cellular telephone and player help features

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080254916A1 (en) * 2007-04-11 2008-10-16 Samsung Electronics Co., Ltd. Method of providing golf contents in mobile terminal
US8147335B2 (en) * 2007-04-11 2012-04-03 Samsung Electronics Co., Ltd. Method of providing golf contents in mobile terminal
US20110202376A1 (en) * 2007-10-05 2011-08-18 Bob Rodenberg System For Golf Reservations
US20140052707A1 (en) * 2012-05-08 2014-02-20 Lawrence F. Jindra Concierge Service System and Method
US11590403B2 (en) 2012-07-05 2023-02-28 GolfzonDeca Inc. Golf GPS device with hole recognition and hole selection
US11045708B2 (en) 2012-07-05 2021-06-29 Golfzondeca, Inc. Golf GPS device with hole recognition and hole selection
US10369451B2 (en) 2012-07-05 2019-08-06 Golfzondeca, Inc. Golf GPS device with automatic hole recognition and playing hole selection
US10151842B2 (en) * 2013-08-30 2018-12-11 GolfzonDeca Inc. Golf GPS device with approximate hole cup location selection
US20150126308A1 (en) * 2013-11-06 2015-05-07 Percentageplay Golf, Llc Combining statistically determined capabilities of a golfer with golf course data to aid shot selection
US10207170B2 (en) * 2013-11-06 2019-02-19 Percentageplay Golf, Llc Combining statistically determined capabilities of a golfer with golf course data to aid shot selection
US10213646B2 (en) * 2013-11-22 2019-02-26 Thomas Sandel System for locating a golf ball
US20160296796A1 (en) * 2013-11-22 2016-10-13 Thomas Sandel Ball, in particular a golf ball, and an electronic device able to communicate with the ball
TWI574221B (en) * 2015-11-12 2017-03-11 綠夾克運動事業股份有限公司 System and method for golf course automation service
WO2018004957A1 (en) * 2016-06-30 2018-01-04 Nike Innovate C.V. Digital golf assistant
US10478704B2 (en) 2016-06-30 2019-11-19 Nike, Inc. Digital golf assistant
JP2020168556A (en) * 2016-06-30 2020-10-15 ナイキ イノベイト シーブイ Digital Golf Assistant
JP2021043992A (en) * 2016-06-30 2021-03-18 ナイキ イノベイト シーブイ Digital Golf Assistant
JP7038763B2 (en) 2016-06-30 2022-03-18 ナイキ イノベイト シーブイ Digital Golf Assistant
JP7085606B2 (en) 2016-06-30 2022-06-16 ナイキ イノベイト シーブイ Digital Golf Assistant
US10881941B2 (en) * 2016-11-04 2021-01-05 Jong Bok SEO Hybrid golf guide system

Also Published As

Publication number Publication date
WO2008027852A1 (en) 2008-03-06

Similar Documents

Publication Publication Date Title
US20080058125A1 (en) Mobile phone system and method for self-caddy
US10737155B2 (en) Electronic golf assistant utilizing one or more lay up positions
US7922586B2 (en) Active play interactive game system
US8556752B2 (en) Personal golfing assistant and method and system for graphically displaying golf related information and for collection, processing and distribution of golf related data
US8460111B2 (en) Methods and apparatus for determining distances to selected targets on a golf course using a wireless communication device
US9095761B2 (en) Golf system user interface
US20070099715A1 (en) Location-based golf information systems and methods
US9028344B2 (en) Electronic golf assistant utilizing electronic storing
KR20100051153A (en) System and method of providing the golf rounding information
WO2005050521A1 (en) Handheld terminal, system and method for managing golf score
US20040146185A1 (en) Apparatus, system, and method for creating an electronic description of a geographic site
AU7736501A (en) Apparatus for providing position information
JP2007014487A (en) Golf course data providing system
US20130162467A1 (en) System and method for broadcasting golf events using satellite imagery
US20090280930A1 (en) Method and system for facilitating interaction between players on a golf course
WO2010016616A1 (en) Golf navigation system and portable golf navigation apparatus
KR20070065595A (en) Method for golf score management using mobile phone
KR100647773B1 (en) Portable Equipment And Mobile Communication System And Service Providing Method Using The Same
JP2004054469A (en) Golf play information providing method and golf play information providing system
KR100727060B1 (en) Method and apparatus for golf information service
JP2003230650A (en) Golf play support system
US8442274B2 (en) Electronic golf assistant utilizing a plurality of images
KR20100034809A (en) Method and system for colligate management of golf information
US20120296456A1 (en) Golf handicap application for mobile devices
KR20040009549A (en) Portable apparatus for supporting golf play

Legal Events

Date Code Title Description
AS Assignment

Owner name: YOUCADDY, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:NGUYEN, FRANK T.;REEL/FRAME:019751/0270

Effective date: 20070827

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION