Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SYSTEM AND METHOD FOR AN RC CONTROLLER AND SOFTWARE
Document Type and Number:
WIPO Patent Application WO/2001/035375
Kind Code:
A1
Abstract:
The present invention provides a system and method for a computer (120) to perform a vehicle operation proficiency test (530) and based upon the results, to transfer performance features upgrade data (295) to a vehicle controller (140). The vehicle controller combines the functionality of an RC controller for controlling an RC vehicle (130) when used as an RC controller and controlling a computer virtual vehicle game (420) when used as a joystick (250).

Inventors:
BOYLE BRENDAN
GRANT JEFF
OLEFSKY STEVEN
Application Number:
PCT/US2000/029501
Publication Date:
May 17, 2001
Filing Date:
October 25, 2000
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
IDEO PRODUCT DEV INC (US)
International Classes:
A63H17/39; A63H30/04; A63F13/00; G09B9/048; G09B19/16; (IPC1-7): G09B9/02; G09B19/16
Foreign References:
US4964837A1990-10-23
US5315515A1994-05-24
US5663879A1997-09-02
US5752880A1998-05-19
US5785576A1998-07-28
GB2219873A1989-12-20
JPH0916070A1997-01-17
JPH1115405A1999-01-22
Attorney, Agent or Firm:
Wininger, Aaron (CA, US)
Download PDF:
Claims:
What is claimed is:
1. A computerreadable medium for storing instructions for a computer to perform a vehicle operation proficiency test, comprising: executing a proficiency test session; determining whether a proficiency level necessary to upgrade vehicle performance features has been achieved; and operative when the necessary proficiency is achieved, transferring vehicle performance features upgrade data to a vehicle controller, for controlling movement of a vehicle.
2. The computerreadable medium of claim 1 wherein the vehicle is a car.
3. The computerreadable medium of claim 2 wherein the controller is an RC controller capable of exchanging data with both the computer and the vehicle.
4. The computerreadable medium of claim 3 wherein the controller can be temporarily coupled to the computer via a cable.
5. The computerreadable medium of claim 3 wherein the controller sends and receives data to and from the computer via a wireless connection.
6. The computerreadable medium of claim 5 further comprising the step of determining whether an RC car is turned on or off.
7. The computerreadable medium of claim 6 further comprising the steps of : receiving vehicle identification data from the controller, the vehicle identification data indicating physical surface features of the vehicle; and displaying on a monitor a simulation of the vehicle with the physical surface features.
8. A method for a computer to perform a vehicle operation proficiency test, comprising : executing a proficiency test session; determining whether a proficiency level necessary to upgrade vehicle performance features has been achieved; and operative when the necessary proficiency is achieved, transferring vehicle performance features upgrade data to a vehicle controller, for controlling and movement of a vehicle.
9. The method of claim 8 wherein the vehicle is a car.
10. The method of claim 9 wherein the controller is an RC controller capable of exchanging data with both the computer and the vehicle.
11. The method of claim 10 wherein the controller can be temporarily coupled to the computer via a cable.
12. The method of claim 10 wherein the controller sends and receives data to and from the computer via a wireless connection.
13. The method of claim 12 further comprising the step of determining whether an RC car is turned on or off.
14. The method of claim 13 further comprising the steps of sensing which model of vehicle a user owns and thereby displaying a matching model on a computer video output screen.
15. A controller comprising: an input device for inputting vehicle control data; memory for holding vehicle performance features data received from a computer; a CPU for analyzing and modifying the vehicle control data according to the vehicle performance features data; a transceiver for transmitting modified vehicle control data to a vehicle, transmitting unmodified vehicle control data to the computer, and receiving vehicle performance features data from the computer; wherein the input device, the memory, the CPU and the transceiver are coupled together via a system bus.
16. The controller of claim 15 further comprising a retractable antenna coupled to the transceiver.
17. The controller of claim 16 wherein the memory is flash memory.
18. The controller of claim 17 wherein the vehicle is an RC car.
19. The controller of claim 18 further comprising at least one PC Input/Output interface coupled to the system bus.
20. The controller of claim 19 wherein the input device comprises at least one joystick.
Description:
SYSTEM AND METHOD FOR AN RC CONTROLLER AND SOFTWARE CROSS REFERENCE TO RELATED APPLICATION This application relates to and claims priority from commonly assigned U. S. Provisional Patent Application No. 60/164,519, filed on November 10, 1999 and entitled,"A Car and Driver Toy"by Brendan J. Boyle and Jeff Grant, the disclosure of which is hereby incorporated by reference.

BACKGROUND OF THE INVENTION 1. Field of the Invention This invention relates generally to radio controlled ("RC") car toys and computer virtual car games, and more particularly to a system and method for sending control data input to both using a single controller.

2. Description of the Background Art Conventionally, RC cars and computer virtual car games use separate and non-interchangeable input devices. A radio controller for an RC car only works with the RC toy and not with a computer game. Similarly, a joystick or other computer input device only works with the computer virtual car game.

Accordingly, a user cannot interchange the radio controller with the joystick and therefore the user must use two separate input devices.

Another problem with conventional RC car toys is that the user is limited to playing with the car during the daytime in order to see and accurately control the car. Further, in the event of inclement weather, such as rain or snow, the user would not be able to play with the RC car outside.

Furthermore, playing indoors presents problems with limited space for maneuvering and speed, and the possibility of damage to interior furniture and/or to the car itself due to collisions.

Accordingly, during nighttime or inclement weather, the user may play with a computer virtual car game instead of with the RC car. However, because a different controller is used for the computer virtual car game, skills

that are learned with the computer game are not easily transferred to the RC car toy, if at all.

Therefore, an improved radio controller and computer virtual car game are needed.

SUMMARY OF THE INVENTION The present invention comprises a system and method for combining the functionality of an RC controller with the functionality of a joystick. In essence, the RC controller acts as an RC controller when used with an RC car, and acts as a"joystick"input device when used with a computer virtual car game. In the preferred embodiment of the invention, an RC car toy is used. However, any other controllable vehicle, for example, trucks, motorcycles, airplanes, boats, or helicopters, both real and virtual, can be substituted.

The present invention also permits a virtual car of the computer virtual car game and the RC car to both be customized to look as similar as possible.

For example, a user can select and print racing decals and/or the user's name to attach to the RC car using a printer or other appropriate output device so as to match the appearance of the virtual car. Similarly, the user can use the computer virtual car game software to modify the virtual car's appearance to match the appearance of the RC car. Accordingly, the user experiences an interesting play experience since the virtual car onscreen can look identical to the RC car that he or she owns. The computer virtual car software program may also sense which"model"of RC car or vehicle that the user owns, and automatically display the matching model on the computer video output screen during operation of the computer virtual car game.

Therefore, for example, if the user buys a red sports car, the computer virtual car game senses the red RC car and displays a virtual red sports car on the computer screen identical to the red RC car.

In addition, the virtual car game performs testing of the user in which the user practices skill sets in order to improve his or her operation of the RC car. Upon achieving pre-specified proficiency levels, the virtual car game unlocks certain features or removes limits that may be placed initially upon the virtual and/or RC car toy. For example, the RC car may start out with limited speed or capabilities. Through playing the virtual car game, the user may unlock abilities, such as increased maximum speed, of the RC car.

Accordingly, the invention provides an improved RC controller that is capable of sending input commands to both the RC car and virtual car game.

Further, the invention provides virtual car game software that has the ability to sense a vehicle's model and match the appearances of the virtual car with the RC car.

BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1A is a perspective view of the RC controller with its radio frequency ("RF") antenna extended and sending input to an RC car; FIG. 1B is a perspective view of a user retracting the RF antenna of the RC controller; FIG. 1C is a perspective view of a user coupling the RC controller to a computer; FIG. 1D is a perspective view of the RC controller when used with a computer virtual car game; FIG. 2 is a block diagram of the RC controller components; FIG. 3 is a block diagram of a computer suitable for implementing the computer virtual car game; FIG. 4 is a block diagram of memory in the computer system shown in FIG. 3; FIG. 5 is a flowchart of the method steps performed by the Computer Virtual car game; and FIG. 6 is a flowchart of the method steps performed by instructions stored in read-only memory ("ROM") in the RC controller.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT The present invention provides a system and method for an RC controller to send control data input to an RC car and a corresponding computer virtual car game. The present invention also includes a system and method for skill improvement and transfer between the computer virtual car game and the RC car. The following description is presented to enable one of ordinary skill in the art to make and use the invention and is provided in the context of a patent application and its requirements. Various modifications to the preferred embodiment will be readily apparent to those skilled in the art and the generic principles herein may be applied to other embodiments.

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 and features described herein.

FIG. 1A is a perspective view of the RC controller 140 with its RF antenna 240 extended and sending input to an RC car 130. The user controls the velocity of RC car 130 using input control 250 of RC controller 140, which in turn sends input control data to car 130 via RF antenna 240.

Controller 140 will be discussed in further detail in conjunction with Figure 2. Car 130 receives the input control data and adjusts velocity accordingly.

In alternative embodiments of the invention, car 130 can be any controllable vehicle, such as an airplane, hovercraft, boat, etc.

FIG. 1B is a perspective view of a user retracting the antenna 240 of the RC controller 140. In this view, the user ends the play session with the physical RC car toy 130 and retracts antenna 240. The user may discontinue playing at this point, or the user may decide to switch the play session over to a computer virtual car game on computer 120.

Referring now to FIG. 1C, a perspective view of a user coupling the RC controller 140 to a computer 120 is shown. The user couples the controller 140 to the computer 120 that will be used for the computer virtual car gaming session. The user plugs the controller into I/O interface 320 of computer 120 so that computer 120 can receive control data input from

controller 140. However, in the preferred embodiment of the invention, controller 140 sends control input data via antenna 240, in which case the RF antenna 240 remains extended.

FIG. 1D is a perspective view of the RC controller 140 when used with a computer virtual car game on computer 120. In this view, a user is manipulating input controls 250 on the RC controller 140, which is coupled directly to computer 120 for the computer virtual car gaming session. RC controller, in turn, sends input data to computer 120 via I/O interface 320.

Computer 120 displays a computer virtual car, whose model is identical to RC car 130, on monitor 350.

FIG. 2 is a block diagram of the RC controller 140 components. The RC controller 140 includes system bus 210, power switch 220, PC interface 230, an RF antenna 240, an input control 250, a data toggle switch 255, ROM 260, an RF transceiver 270, a central processing unit ("CPU") 280, and flash memory 290, all interconnected for communication via system bus 210. The power switch 220 is used to turn power on or off for the controller 140. The PC interface 230 provides connectivity between the RC controller 140 and computer 120. The RF antenna 240 sends and/or receives data between the controller 140 and RC car 130 or controller 140 and computer 120. Input control 250 accepts user control data input into controller 140. Input control 250 can be any type of input device such as a joystick, trackball, touchpad, keyboard, mouse, lightpen, microphone, or any device capable of generating positional signals responsive to user manipulation of the device or a combination thereof. The data toggle switch 255 toggles between sending data to RC car 130 and computer 120, depending upon user choice. The data toggle switch 255 setting prevents both RC car 130 and computer 120 from receiving control input instructions at the same time. ROM 260 stores executable instructions for analyzing and modifying user control data input per car features 295 data stored in flash memory 290. ROM 260 also stores the digital code for car model information for matching the virtual car viewed onscreen with the RC car 130. The car model digital code of the RC car 130

is sent to the computer 120 the first time the controller 140 is connected to computer 120.

During RC car 130 operation, the CPU 280 executes the instructions stored in ROM 260, which analyzes and modifies control data input according to the limitations set in car performance features 295. Flash memory 290 stores car performance features 295 data, even when RC controller 140 is turned off. RF transceiver 270 receives CPU 280-modified control data input and sends the modified data to RC car 130. In addition, in the preferred embodiment of the invention, RF transceiver 270, via antenna 240, sends control data input to computer 120. Operation of RC controller 140 will be discussed in further detail in conjunction with FIG. 6.

FIG. 3 is a block diagram of computer 120 and its components suitable for implementing the computer virtual car game. Computer 120 includes optional I/O interface 320, RF transceiver 330, memory 340, monitor 350, CPU 360, and optional printer 370, all interconnected for communication via system bus 310. Optional I/O interface 320 is a port on the computer 120 that sends and receives signals between the computer 120 and the controller 140 in the event that the controller 140 is directly coupled to the computer 120. I/O interface 320 may be a parallel port, serial port, universal serial bus ("USB") port, or any other port capable of transmitting data. However, in the preferred embodiment, RF transceiver 330 transmits and/or receives data between computer 120 and controller 140.

Memory 340 stores game software 420 (FIG. 4) and other computer 120 programs and applications from game software 420. Memory 340 will be discussed in further detail in conjunction with FIG. 4. Monitor 350 displays video output for presenting images to the user. Monitor 350 may comprise a cathode ray tube ("CRT"), a liquid crystal display ("LCD"), or any other suitable equivalent. CPU 360 executes game software 420 stored in memory 240. CPU 360 may comprise, for example, an Intelt Pentiumt processor.

Printer 370 prints decals for affixing to RC car 130.

FIG. 4 is a block diagram of memory 340 in the computer system 120 (FIG. 3). The memory 340 comprises an operating system ("OS") 410, game

software 420, an RF driver 430, car performance features 440, and decals 450. The memory 340 may include volatile random access memory (RAM), non-volatile ROM, magnetic or optical disk drives such as hard drives or CD- ROM, or any appropriate combination of the foregoing or equivalents thereto.

OS 410 may be Windows NT t), Windows 98 t), Windows 95 t), Linux, SunOS/Solaris, Apple Mac OS or any other operating system suitable for operating with game software 420. Game software 420 is a computer virtual car game and vehicle operation proficiency testing software and will be described in further detail in conjunction with FIG. 5. RF driver 430 extends the operating system 410 to support the RF transceiver 330 device. The car performance features 440 include RC car 130 performance limitations, such as maximum allowable velocity, for the computer RC car 130. The user can enhance learning and skill set proficiency in the virtual environment on computer 120 and can then employ these enhanced skills later on when playing with physical RC car 130. Decals 450 are the image files that match the RC car 130 and may be printed on printer 370 for application to RC car 130 in order to customize the appearance of RC car 130.

FIG. 5 is a flowchart of the method steps performed by the computer virtual car game software 420. At step 500, the user starts the computer 120 gaming session. At step 510, the game software 420 determines whether the data toggle switch 255 is set to send data to RC car 130 or to computer 120.

If the data toggle switch 255, which prevents both car 130 and computer 120 from receiving control input instructions at the same time, is currently set to send data to RC car 130, the game software 420 terminates the session at step 515.

If the game software 420 determines that data toggle switch 255 is set to send data to computer 120, then at step 520, game software 420 determines whether to run a practice session or a proficiency test session according to the user's choice. If game software 420 determines to run a practice session, then at step 525, game software 420 runs the practice session. At step 545, game software 420 terminates the session.

If, at step 520, game software 420 determines to run a proficiency test session according to the user's input, then, at step 530, game software 420 runs a proficiency test session to test the user's proficiency in operating a virtual car corresponding to RC car 130. The proficiency test session is based on parameters stored in car performance features 440 with the aim of decreasing limitation on RC car 130 operation imposed by the parameters.

After running the proficiency test session of step 530, game software 420 determines at step 540 whether the user has achieved the proper proficiency level to unlock features of car 130, such as maximum velocity, turning ability, etc. If the proper proficiency level has not been attained, then game software 420 terminates at step 545.

However, if at step 540 the user has achieved a desired level of proficiency for unlocking features or removing limits in car 130, then at step 550, the game software 420 unlocks a feature, such as maximum velocity, or removes a limit of car 130, and transfers this unlocking information to controller 140. Controller 140, in turn, updates car performance features 295 stored in flash memory 290. Next, at step 560, game software 420 updates car performance features 440. At step 570, the method ends.

FIG. 6 is a flowchart of the method steps performed by the ROM 260 instructions in the RC controller 140 when a user inputs control data. At step 600, the method starts. At step 610, the ROM 260 of controller 140 receives control input data. At step 620, Rom 260 determines whether the RC car 130 is on. If the RC car 130 is not on, the ROM 260 transmits data at step 625 and the process loops back to step 610. If, at step 620, the ROM 260 determines that the RC car 130 is on, the method proceeds to step 630.

At step 630, the ROM 260 determines whether the data exceeds the parameters that are stored in the car performance features 295 file. If the data does not exceed the parameters, the ROM 260 transmits data at step 625 and the process loops back to step 610. If the data does exceed the parameters stored in the car performance features 295 file, the method proceeds to step 640. At step 640, the ROM 260 modifies control input data

so as not to exceed parameters. After step 640, the ROM 260 transmits data at step 625 and the process resumes again at step 610.

It is noted that other embodiments of the invention will be apparent to those skilled in the art upon review of this disclosure. Therefore, these and other variations upon the preferred embodiments are intended to be covered by the present invention.