Wearable device for fishing

10251382 · 2019-04-09

Assignee

Inventors

Cpc classification

International classification

Abstract

Various implementations described herein are directed to a wearable device used to record fishing data. The wearable device may include a housing. The housing may include a sensor or sensors to detect motion. The housing may include a computer system with a processor and memory. The memory may have a plurality of executable instructions. When the executable instructions are executed by the processor, the processor may receive motion data from the sensor or sensors and determine whether a cast has been made.

Claims

1. A wearable device configured to be attached to an object used for fishing activities, the wearable device comprising: a housing having: at least one sensor configured to detect motion of the object, wherein the object is an appendage of a user such that motion of the object during the fishing activities defines one or more determinable patterns that are each associated with a corresponding fishing activity, wherein the wearable device is configured to attach to the appendage of the user, wherein the at least one sensor is within the wearable device and not configured to directly attach to the appendage of the user, and wherein the wearable device and the at least one sensor are each not configured to attach to or interact with a fishing line; and a computer system having a processor and memory having stored thereon a plurality of executable instructions which, when executed by the processor, cause the processor to: receive motion data of the object from the at least one sensor; analyze the motion data of the object to determine if the motion of the object defines at least one of the determinable patterns associated with a corresponding fishing activity, wherein the fishing activity includes at least one of occurrence of a cast, occurrence of a bite, or occurrence of a catch; determine, based on the motion data from the at least one sensor, that the motion of the object defines at least one of the determinable patterns that corresponds to either the occurrence of a bite or occurrence of a catch, wherein the determinable patterns that correspond to either the occurrence of a bite or occurrence of a catch include motion data that is based on motion of the appendage of the user and not direct motion of the fishing line; determine a time associated with receipt of the motion data; record the occurrence of the bite or the catch such that the determined time is associated with the occurrence of the bite or the catch; and wirelessly transmit the record of the associated occurrence of the bite or the catch and time to a remote marine electronics device for further association with additional data, wherein the additional data includes a location that is recorded by the marine electronics device, and whereby the record of the occurrence of the bite or the catch, the time, and the location are stored in an associated manner in memory of the marine electronics device for operation by the marine electronics device that comprises combination with other fishing data by the marine electronics device to provide comprehensive fishing data of a fishing trip and display by a screen of the marine electronics device.

2. The wearable device of claim 1, wherein the memory further comprises executable instructions which, when executed by the processor, cause the processor to: determine an occurrence of a cast in an instance in which the motion of the object defines at least one determinable pattern that corresponds to the occurrence of the cast; record the occurrence of the cast such that the determined time is associated with the occurrence of the cast; and wirelessly transmit the record of the associated cast and time to the remote marine electronics device for further association with the additional data.

3. The wearable device of claim 1, further comprising at least one user input button configured to record weight information.

4. The wearable device of claim 1, further comprising at least one user input button configured to record at least one of a catch, a timestamp corresponding to the catch, a bite, or weight information corresponding to the catch.

5. The wearable device of claim 1, wherein the housing further comprises a display for displaying information pertaining to the fishing activity that has occurred.

6. The wearable device of claim 1, wherein the at least one sensor comprises at least one of at least one accelerometer, at least one gyroscope sensor, or at least one muscle activity sensor.

7. The wearable device of claim 1, wherein the housing is composed of at least one of a plastic or a rubber.

8. The wearable device of claim 1, wherein the memory further comprises executable instructions which, when executed by the processor, cause the processor to determine a type of fishing cast and record the type of fishing cast based on the motion data.

9. The wearable device of claim 1, wherein the memory further comprises executable instructions which, when executed by the processor, cause the processor to synchronize with the marine electronics device.

10. The wearable device of claim 1, wherein the memory further comprises executable instructions which, when executed by the processor, cause the processor to transmit the record to the marine electronics device for display of the occurrence of the bite or the catch on a screen of the marine electronics device.

11. A non-transitory computer-readable medium having stored thereon a plurality of computer-executable instructions which, when executed by a computer, cause the computer to: receive motion data of an object used for fishing activities from one or more motion sensors of a wearable device, attached to the object, wherein the object is either an appendage of a user or a fishing rod such that motion of the object during the fishing activities defines one or more determinable patterns that are each associated with a corresponding fishing activity, wherein the one or more motion sensors are within the wearable device and not configured to directly attach to the appendage of the user or the fishing rod, wherein the wearable device and the one or more motion sensors are each not configured to attach to or interact with a fishing line; analyze the motion data of the object to determine if the motion of the object defines at least one of the determinable patterns associated with a corresponding fishing activity, wherein the fishing activity includes at least one of occurrence of a cast, occurrence of a bite, or occurrence of a catch; determine that the motion of the object defines at least one of the determinable patterns that corresponds to occurrence of a cast; determine, based on the motion data of the object, a type of fishing cast by considering at least a basic fishing cast, a roll fishing cast, and a side fishing cast and choosing the type of fishing cast that corresponds to the motion data of the object, wherein the determination of the type of fishing cast is based on motion data that is based on motion of either the appendage of the user or the fishing rod and not direct motion of the fishing line; determine a time associated with receipt of the motion data; record the occurrence of the cast such that the determined type of fishing cast and determined time are associated with the occurrence of the cast; and wirelessly transmit the record of the associated occurrence of the cast, type of fishing cast, and time to a remote marine electronics device for further association with additional data, wherein the additional data includes a location that is recorded by the marine electronics device, and whereby the record of the occurrence of the cast, the type of cast, the time, and the location are stored in an associated manner in memory of the marine electronics device for operation by the marine electronics device that comprises combination with other fishing data by the marine electronics device to provide comprehensive fishing data of a fishing trip and display by a screen of the marine electronics device.

12. The non-transitory computer-readable medium of claim 11, wherein transmission of the recorded data occurs after determination of each occurrence of the cast.

13. The non-transitory computer-readable medium of claim 11, wherein the plurality of computer-executable instructions, when executed by the computer, further cause the computer to transmit the record to the marine electronics device for display of the occurrence of the cast on a screen of the marine electronics device.

14. The non-transitory computer-readable medium of claim 11, wherein the plurality of computer-executable instructions, when executed by the computer, further cause the computer to display the occurrence of the cast on a display of the wearable device.

15. A non-transitory computer-readable medium having stored thereon a plurality of computer-executable instructions which, when executed by a computer, cause the computer to: receive motion data of an object used for fishing activities from one or more motion sensors located within a wearable device attached to the object, wherein the object is an appendage of a user such that motion of the object during the fishing activities defines one or more determinable patterns that are each associated with a corresponding fishing activity, wherein the wearable device is configured to attach to the appendage of the user, wherein the one or more motion sensors are within the wearable device and not configured to directly attach to the appendage of the user, and wherein the wearable device and the one or more motion sensors are each not configured to attach to or interact with a fishing line; analyze the motion data of the object to determine if the motion of the object defines at least one of the determinable patterns associated with a corresponding fishing activity, wherein the fishing activity includes at least one of occurrence of a cast, occurrence of a bite, or occurrence of a catch; determine, based on the motion data from the one or more motion sensors, that the motion of the object defines at least one of the determinable patterns that corresponds to either the occurrence of a catch or the occurrence of a bite, wherein the determinable patterns that correspond to either the occurrence of a bite or occurrence of a catch include motion data that is based on motion of the appendage of the user and not direct motion of the fishing line; determine a time associated with receipt of the motion data; record the occurrence of the catch or the bite such that the determined time is associated with the occurrence of the bite or the catch; and wirelessly transmit the record of the associated occurrence of the bite or the catch and time to a remote marine electronics device for further association with additional data, wherein the additional data includes a location that is recorded by the marine electronics device, and whereby the record of the occurrence of the bite or the catch, the time, and the location are stored in an associated manner in memory of the marine electronics device for operation by the marine electronics device that comprises combination with other fishing data by the marine electronics device to provide comprehensive fishing data of a fishing trip and display by a screen of the marine electronics device.

16. The non-transitory computer-readable medium of claim 15, wherein transmission of the recorded data occurs after determination of each occurrence of the catch or the bite.

17. The non-transitory computer-readable medium of claim 15, wherein the plurality of computer-executable instructions, when executed by the computer, further cause the computer to transmit the record to the marine electronics device for display of the occurrence of the bite or the catch on a screen of the marine electronics device.

18. The non-transitory computer-readable medium of claim 15, wherein the plurality of computer-executable instructions, when executed by the computer, further cause the computer to display the occurrence of the catch or the bite on a display of the wearable device.

19. A wearable device configured to be attached to an object used for fishing activities, the wearable device comprising: a housing that is configured to attach to the object, wherein the housing includes: at least one sensor configured to detect motion of the object, wherein the object is either an appendage of a user or a fishing rod such that motion of the object during the fishing activities defines one or more determinable patterns that are each associated with a corresponding fishing activity, wherein the at least one sensor is within the wearable device and not configured to directly attach to the appendage of the user or the fishing rod, wherein the wearable device and the at least one sensor are each not configured to attach to or interact with a fishing line; and a computer system having a processor and memory having stored thereon a plurality of executable instructions which, when executed by the processor, cause the processor to: receive motion data of the object from the at least one sensor; analyze the motion data of the object to determine if the motion of the object defines at least one of the determinable patterns associated with a corresponding fishing activity, wherein the fishing activity includes at least one of occurrence of a cast, occurrence of a bite, or occurrence of a catch; determine that the motion of the object defines at least one of the determinable patterns that corresponds to occurrence of a cast; determine, based on the motion data of the object, a type of fishing cast by considering at least a basic fishing cast, a roll fishing cast, and a side fishing cast and choosing the type of fishing cast that corresponds to the motion data of the object, wherein the determination of the type of fishing cast is based on motion data that is based on motion of either the appendage of the user or the fishing rod and not direct motion of the fishing line; determine a time associated with receipt of the motion data; record the occurrence of the cast such that the determined type of fishing cast and determined time are associated with the occurrence of the cast; and wirelessly transmit the record of the associated occurrence of the cast, type of fishing cast, and time to a remote marine electronics device for further association with additional data, wherein the additional data includes a location that is recorded by the marine electronics device, and whereby the record of the occurrence of the cast, the type of cast, the time, and the location are stored in an associated manner in memory of the marine electronics device for operation by the marine electronics device that comprises combination with other fishing data by the marine electronics device to provide comprehensive fishing data of a fishing trip and display by a screen of the marine electronics device.

20. The wearable device of claim 19, wherein the memory further comprises executable instructions which, when executed by the processor, cause the processor to transmit the record to the marine electronics device for display of the occurrence of the cast on a screen of the marine electronics device.

21. The wearable device of claim 19, wherein the memory further comprises executable instructions which, when executed by the processor, cause the processor to display the occurrence of the cast on a display of the wearable device.

22. A system for recording fishing statistics, the system comprising: a wearable device configured to be attached to an object used for fishing activities, the wearable device comprising: at least one sensor configured to detect motion of the object, wherein the object is an appendage of a user such that motion of the object during the fishing activities defines one or more determinable patterns that are each associated with a corresponding fishing activity, wherein the at least one sensor is within the wearable device and not configured to directly attach to the appendage of the user, wherein the wearable device and the at least one sensor are each not configured to attach to or interact with a fishing line; and a computer system having a wearable device processor and memory having stored thereon a plurality of executable instructions which, when executed by the wearable device processor of the wearable device, cause the wearable device processor to: receive motion data of the object from the at least one sensor; analyze the motion data of the object to determine if the motion of the object defines at least one of the determinable patterns associated with a corresponding fishing activity, wherein the fishing activity includes at least one of occurrence of a cast, occurrence of a bite, or occurrence of a catch; determine, based on the motion data from the at least one sensor, that the motion of the object defines at least one of the determinable patterns that corresponds to either the occurrence of a bite or occurrence of a catch, wherein the determinable patterns that correspond to either the occurrence of a bite or occurrence of a catch include motion data that is based on motion of the appendage of the user and not direct motion of the fishing line; determine a time associated with receipt of the motion data; record the occurrence of the bite or the catch such that the determined time is associated with the occurrence of the bite or the catch; and wirelessly transmit the record of the associated occurrence of the bite or the catch and time to a remote marine electronics device; and the marine electronic device comprising a marine electronic device processor and memory having stored thereon a plurality of executable instructions which, when executed by the marine electronic device processor of the marine electronic device, cause the marine electronic device processor to: receive the record of the occurrence of the catch or the bite; record, in response to receiving the record, a location; and store the record of the occurrence of the catch or the bite, the time, and the location in an associated manner in the memory of the marine electronics device for operation by the marine electronics device that comprises combination with other fishing data by the marine electronics device to provide comprehensive fishing data of a fishing trip and display by a screen of the marine electronics device.

23. The system of claim 22, wherein the wearable device comprises a screen, and wherein the plurality of executable instructions of the wearable device are further configured to cause the processor of the wearable device to display the occurrence of the catch or the bite on the screen of the wearable device.

24. The system of claim 22, wherein the marine electronics devices comprises a screen, and wherein the plurality of executable instructions of the marine electronics device are further configured to cause the processor of the marine electronics device to display the occurrence of the catch or the bite on the screen of the marine electronics device.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) Implementations of various techniques will hereafter be described with reference to the accompanying drawings. It should be understood, however, that the accompanying drawings illustrate only the various implementations described herein and are not meant to limit the scope of various techniques described herein.

(2) FIG. 1 illustrates a wearable device in accordance with implementations of various techniques described herein.

(3) FIG. 2 is a block diagram of a wearable device in accordance with implementations of various techniques described herein.

(4) FIG. 3 is a flow diagram describing the operation of a fishing motion detecting software loaded in a wearable device in accordance with implementations of various techniques described herein.

(5) FIG. 4 is an illustration of a wearable device wirelessly transmitting data to a marine electronics device and receiving data from the device in order to begin recording data in accordance with implementations of various techniques described herein.

(6) FIG. 5 illustrates a schematic diagram of a computing system in which the various technologies described herein may be incorporated and practiced.

(7) FIG. 6 illustrates a schematic of a marine electronics device in accordance with implementations of various techniques described herein.

DETAILED DESCRIPTION

(8) The discussion below is directed to certain specific implementations. It is to be understood that the discussion below is only for the purpose of enabling a person with ordinary skill in the art to make and use any subject matter defined now or later by the patent claims found in any issued patent herein.

(9) It is specifically intended that the claimed invention not be limited to the implementations and illustrations contained herein, but include modified forms of those implementations including portions of the implementations and combinations of elements of different implementations as come within the scope of the following claims. It should be appreciated that in the development of any such actual implementation, as in any engineering or design project, numerous implementation-specific decisions must be made to achieve the developers' specific goals, such as compliance with system-related and business related constraints, which may vary from one implementation to another. Moreover, it should be appreciated that such a development effort might be complex and time consuming, but would nevertheless be a routine undertaking of design, fabrication, and manufacture for those of ordinary skill having the benefit of this disclosure. Nothing in this application is considered critical or essential to the claimed invention unless explicitly indicated as being critical or essential.

(10) Reference will now be made in detail to various implementations, examples of which are illustrated in the accompanying drawings and figures. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure. However, it will be apparent to one of ordinary skill in the art that the present disclosure may be practiced without these specific details. In other instances, well-known methods, procedures, components, circuits and networks have not been described in detail so as not to unnecessarily obscure aspects of the embodiments.

(11) It will also be understood that, although the terms first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first object or step could be termed a second object or step, and, similarly, a second object or step could be termed a first object or step, without departing from the scope of the invention. The first object or step, and the second object or step, are both objects or steps, respectively, but they are not to be considered the same object or step.

(12) The terminology used in the description of the present disclosure herein is for the purpose of describing particular implementations only and is not intended to be limiting of the present disclosure. As used in the description of the present disclosure and the appended claims, the singular forms a, an and the are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that the term and/or as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms includes, including, comprises and/or comprising, when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components and/or groups thereof.

(13) As used herein, the term if may be construed to mean when or upon or in response to determining or in response to detecting, depending on the context. Similarly, the phrase if it is determined or if [a stated condition or event] is detected may be construed to mean upon determining or in response to determining or upon detecting [the stated condition or event] or in response to detecting [the stated condition or event], depending on the context. As used herein, the terms up and down; upper and lower; upwardly and downwardly; below and above; and other similar terms indicating relative positions above or below a given point or element may be used in connection with some implementations of various technologies described herein.

(14) Various implementations of a wearable device described herein will now be described in more detail with reference to FIGS. 1-6.

(15) Wearable Device for Fishing

(16) Fishermen often record details of their fishing trips so that the information can be referenced at a later time, and so that the trip can be analyzed. Using a wearable device that captures motion and determines when a cast has been made, fishing data could easily be recorded by a computer system without the need for significant user input. Accordingly, FIG. 1 illustrates a wearable device 100 in accordance with various implementations described herein. The wearable device 100 may be worn around the fisherman's arm or wrist. The wearable device 100 could also be attached to a fishing rod.

(17) The wearable device 100 may include a housing 120. In one implementation, the housing 120 may be in the shape of a band. The housing 120 may be made of a combination of plastics and rubbers, or of any other synthetic material. The housing 120 may also be waterproof. The housing 120 may include a clasp, or another mechanism to aid in removal of the housing 120 from a user's arm.

(18) FIG. 2 illustrates a block diagram of the wearable device 100 in accordance with various implementations described herein. As shown in FIG. 2, the housing 120 may include a computer 130 and at least one motion sensor 140. The at least one motion sensor 140 may include one or more accelerometers, gyroscopes, muscle activity sensors, any other motion sensor, or any combination of motion sensors. The at least one motion sensor 140 is configured to capture motion data.

(19) The computer 130 is described in more detail in FIG. 5. In one implementation, the computer 130 may be loaded with software to analyze motion data from the at least one motion sensor 140. For instance, the software may analyze motion data to determine when a fishing cast motion has been made. The software may also record that a cast has been made and the time of the cast, e.g., a timestamp. The software is described in more detail in FIG. 3.

(20) The wearable device 100 may include one or more buttons 110. The one or more buttons 110 may be used for user input. In one implementation, the one or more buttons 110 may be used to input the occurrence of a catch. The catch may then be recorded. In another implementation, the one or more buttons 110 may be used to input the weight of a caught fish. The weight may then be recorded. In yet another implementation, a user may press a button 110 to input the occurrence of a catch, and then may press the same or different button 110 to input the weight of the caught fish. The occurrence of the catch and the weight may then be recorded. In still another implementation, the one or more buttons 110 may be used to input the occurrence of a bite.

(21) The wearable device may contain a display 150. The display may be a series of Light Emitting Diodes (LED). The display may be a Liquid Crystal Display (LCD).

(22) The wearable device 100 may include wireless technology, such as Bluetooth, Wi-Fi, cellular technology such as GSM or CDMA, satellite communication, or any other wireless technology. In one implementation, the wearable device 100 may be connected wirelessly to a marine electronics device 600, which is described in more detail in FIG. 6. Although the wearable device 100 is described as being wirelessly connected to a marine electronics device 600, it should be understood that the wearable device 100 may be connected to any computer system, including a portable computer system, a smart phone device, a remote server, a cloud server and the like. It should also be understood that the wearable device 100 may be connected to any other device able to store fishing data, e.g., data logging device.

(23) The marine electronics device 600 or a computer system, including a smart phone, may record additional data, such as location, weather, or other data. The data from the marine electronics device 600 or computer system and the wearable device 100 may then be combined to provide comprehensive data regarding a fishing trip. The combined data may then be transmitted to a remote server or cloud. In one implementation, the combined data may be transmitted to a smart phone device, which then transmits the data to a remote server or cloud. In another implementation, the combined data may be transmitted to the data logging device, which may then transmit the combined data at a later time. In yet another implementation, the data from the wearable device 100 may be transmitted to the remote server or cloud via the smart phone without using the marine electronics device 600. In still another implementation, the data from the wearable device may be transmitted to a data logging device prior to being transmitted to a remote server or cloud via the smart phone.

(24) Fishing Motion Detection

(25) FIG. 3 illustrates a flow diagram of a cast detection method 300 in accordance with implementations of various techniques described herein. In one implementation, method 300 may be performed by the computer 130. It should be understood that while method 300 indicates a particular order of execution of operations, in some implementations, certain portions of the operations might be executed in a different order. Further, in some implementations, additional operations or steps may be added to the method 300. Likewise, some operations or steps may be omitted.

(26) As mentioned above, the computer 130 contained in a wearable device 100 may be loaded with a set of instructions (software) to analyze data received from one or more sensors. The software may receive motion data from the at least one motion sensor 140 in the wearable device. The software may analyze the motion data and determine when a cast has been made. The software may record the occurrence of the cast and time of the cast, e.g., a timestamp in memory, e.g., inside the computer 130. The record may be a database, a log, or any other method of recording the fishing data. The record may be a number representing the amount of casts that have occurred, with the number being incremented after each cast. The amount of casts may be shown on a display 150.

(27) At block 310, the computer 130 may be synchronized to a marine electronics device or a portable computer device, such as a smart phone. This step is optional. In one implementation, the computer 130 may be wirelessly synchronized to the marine electronics device 600. FIG. 4 illustrates the wearable device 100 being synchronized to the marine electronics device.

(28) At block 320, the software may enter a standby mode in which data may be received from the at least one motion sensor 140 and analyzed. At this step, the software may continuously monitor for a cast. Once a cast is detected, the cast and the timestamp corresponding to the detected cast may be recorded (block 330). In one implementation, the software may determine the type of cast used using motion sensor data (block 330). The software may determine whether the cast made is a basic cast, roll cast, side cast, or any other type of cast. The software may then record the type of cast made (block 330). Then, the software returns to the standby mode (block 310).

(29) While in standby mode (block 310), the software may detect a catch or a bite. The software may detect a catch or a bite based on the motion sensor data. Once a bite or a catch is detected, the occurrence of a bite or a catch and their corresponding timestamp may be recorded (block 340/350). The record may be a database, a log, or any other method of recording the fishing data. The record may be a number representing the amount of bites or catch that have occurred, with the number being incremented after each bite or catch. The amount of bites or catch may be shown on a display 150. Then, the software returns to the standby mode (block 320).

(30) In one implementation, the bites and catches may be detected using one or more buttons 110. To indicate a bite, a user may press a first button 110. To indicate a catch, a user may press a second, different button 110. Alternately, a user may press a button 110 and then quickly release the button 110 to indicate the occurrence of a bite. The user may also press the same button 110 and hold the button 110 down for a longer time to indicate a catch.

(31) Once a catch is detected, the software may receive further user input corresponding to the weight of the caught fish (block 360). If the software receives further user input, the software may then record the weight of the caught fish (block 360). The record may be a database, a log, or any other method of recording the fishing data. The inputted weight may be shown on a display 150. Then, the software returns to the standby mode (block 320).

(32) In one implementation, the weight is entered using one or more buttons 110. A weight may be entered by pushing the one or more buttons 110 a number of times to correspond to the weight of the caught fish. For example, to enter a three pound fish, a button 110 may be pressed three times.

(33) When the trip is over, the software may transmit the recorded data wirelessly to the connected device, e.g., the marine electronics device 600 (block 370). In one implementation, the software may transmit the record data after each new entry, or at any other interval. For example, the transmission may be made after each cast. The transmission may be to a remote server or to any computer system, including a smart phone or a marine electronics device.

(34) Marine Electronics Device

(35) FIG. 6 illustrates a schematic diagram of a marine electronics device 600 in accordance with various implementations described herein. The marine electronics device 600 includes a screen 605. In certain implementations, the screen 605 may be sensitive to touching by a finger. In other implementations, the screen 605 may be sensitive to the body heat from the finger, a stylus, or responsive to a mouse. The display device 600 may display marine electronic data 615. The marine electronic data types 615 may include chart data, radar data, sonar data, steering data, dashboard data, navigation data, fishing statistics, and the like. The marine electronics device 600 may also include a plurality of buttons 620, which may be either physical buttons or virtual buttons, or a combination thereof. The contents of the marine display device 600 are described in more detail with reference to FIG. 5.

(36) Computing System

(37) Implementations of various technologies described herein may be operational with numerous general purpose or special purpose computing system environments or configurations. Examples of well known computing systems, environments, and/or configurations that may be suitable for use with the various technologies described herein include, but are not limited to, personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, smart phones, and the like.

(38) The various technologies described herein may be implemented in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that performs particular tasks or implement particular abstract data types. Further, each program module may be implemented in its own way, and all need not be implemented the same way. While program modules may all execute on a single computing system, it should be appreciated that, in some implementations, program modules may be implemented on separate computing systems or devices adapted to communicate with one another. A program module may also be some combination of hardware and software where particular tasks performed by the program module may be done either through hardware, software, or both.

(39) The various technologies described herein may also be implemented in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network, e.g., by hardwired links, wireless links, or combinations thereof. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.

(40) FIG. 5 illustrates a computer system 500 into which implementations of various technologies and techniques described herein may be implemented. Computing system 700 may be a conventional desktop, a handheld device, a wearable device, a controller, a personal digital assistant, a server computer, an electronic device/instrument, a laptop, a tablet, or part of a navigation system, marine electronics, or sonar system. It should be noted, however, that other computer system configurations may be used.

(41) The computing system 500 may include a central processing unit (CPU) 521, a system memory 522 and a system bus 523 that couples various system components including the system memory 522 to the CPU 521. Although only one CPU is illustrated in FIG. 5, it should be understood that in some implementations the computing system 500 may include more than one CPU. The system bus 523 may be any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. By way of example, and not limitation, such architectures include Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus also known as Mezzanine bus. The system memory 522 may include a read only memory (ROM) 524 and a random access memory (RAM) 525. A basic input/output system (BIOS) 526, containing the basic routines that help transfer information between elements within the computing system 500, such as during start-up, may be stored in the ROM 524. The computing system may be implemented using a printed circuit board containing various components including processing units, data storage memory, and connectors.

(42) The computing system 500 may further include a hard disk drive 527 for reading from and writing to a hard disk, a magnetic disk drive 528 for reading from and writing to a removable magnetic disk 529, and an optical disk drive 530 for reading from and writing to a removable optical disk 531, such as a CD ROM or other optical media. The hard disk drive 527, the magnetic disk drive 528, and the optical disk drive 530 may be connected to the system bus 523 by a hard disk drive interface 532, a magnetic disk drive interface 533, and an optical drive interface 534, respectively. The drives and their associated computer-readable media may provide nonvolatile storage of computer-readable instructions, data structures, program modules and other data for the computing system 500.

(43) Although the computing system 500 is described herein as having a hard disk, a removable magnetic disk 529 and a removable optical disk 531, it should be appreciated by those skilled in the art that the computing system 500 may also include other types of computer-readable media that may be accessed by a computer. For example, such computer-readable media may include computer storage media and communication media. Computer storage media may include volatile and non-volatile, and removable and non-removable media implemented in any method or technology for storage of information, such as computer-readable instructions, data structures, program modules or other data. Computer storage media may further include RAM, ROM, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other solid state memory technology, CD-ROM, digital versatile disks (DVD), or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computing system 500. Communication media may embody computer readable instructions, data structures, program modules or other data in a modulated data signal, such as a carrier wave or other transport mechanism and may include any information delivery media. By way of example, and not limitation, communication media may include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Combinations of any of the above may also be included within the scope of computer readable media.

(44) A number of program modules may be stored on the hard disk 527, magnetic disk 529, optical disk 531, ROM 524 or RAM 525, including an operating system 535, one or more application programs 536, program data 538, and a database system 555. The operating system 535 may be any suitable operating system that may control the operation of a networked personal or server computer, such as Windows XP, Mac OS X, Unix-variants (e.g., Linux and BSD), and the like.

(45) A user may enter commands and information into the computing system 500 through input devices such as a keyboard 540 and pointing device 542. Other input devices may include a microphone, joystick, game pad, satellite dish, scanner, user input button, or the like. These and other input devices may be connected to the CPU 521 through a serial port interface 546 coupled to system bus 523, but may be connected by other interfaces, such as a parallel port, game port or a universal serial bus (USB). A monitor 547 or other type of display device may also be connected to system bus 523 via an interface, such as a video adapter 548. In addition to the monitor 547, the computing system 500 may further include other peripheral output devices such as speakers and printers.

(46) Further, the computing system 500 may operate in a networked environment using logical connections to one or more remote computers 549. The logical connections may be any connection that is commonplace in offices, enterprise-wide computer networks, intranets, and the Internet, such as local area network (LAN) 551 and a wide area network (WAN) 552. The remote computers 549 may each include application programs 536 similar to that as described above. The computing system 500 may use a Bluetooth radio to wirelessly communicate with another device.

(47) When using a LAN networking environment, the computing system 500 may be connected to the local network 551 through a network interface or adapter 553. When used in a WAN networking environment, the computing system 500 may include a modem 554, wireless router or other means for establishing communication over a wide area network 552, such as the Internet. The modem 554, which may be internal or external, may be connected to the system bus 523 via the serial port interface 546. In a networked environment, program modules depicted relative to the computing system 500, or portions thereof, may be stored in a remote memory storage device 550. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers may be used.

(48) While the foregoing is directed to implementations of various techniques described herein, other and further implementations may be devised without departing from the basic scope thereof, which may be determined by the claims that follow. Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

(49) Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.