Dynamic configuration of a multiprocessor system

Information

  • Patent Grant
  • 10387166
  • Patent Number
    10,387,166
  • Date Filed
    Monday, April 18, 2016
    8 years ago
  • Date Issued
    Tuesday, August 20, 2019
    4 years ago
Abstract
A multiprocessor system includes multiple processors configured to run applications, and a dynamic configuration system operating independently on one or more of the multiple processors. The dynamic configuration system is configured to automatically incorporate new processors into the multiprocessor system for communication with one or more of the multiple processors. The dynamic configuration system automatically reconfigures the multiprocessor system in real-time to run at least one application normally run on one or more of the multiple processor to run on one or more of the automatically incorporated new processors.
Description
BACKGROUND

Cars include many different electro-mechanical and electronic applications. Examples include braking systems, electronic security systems, radios, Compact Disc (CD) players, internal and external lighting systems, temperature control systems, locking systems, seat adjustment systems, speed control systems, mirror adjustment systems, directional indicators, etc. Generally the processors that control these different car systems do not talk to each other. For example, the car radio does not communicate with the car heating system or the car braking system. This means that each one of these car systems operate independently and do not talk to the other car systems. For example, separate processors and separate user interfaces are required for the car temperature control system and for the car audio system. Many of these different car processors may be underutilized since they are only used intermittently.


Even when multiple processors in the car do talk to each other, they are usually so tightly coupled together that it is impossible to change any one of these processors without disrupting all of the systems that are linked together. For example, some cars may have a dashboard interface that controls both internal car temperature and a car radio. The car radio cannot be replaced with a different model and still work with the dashboard interface and the car temperature controller.


Integration of new systems into a car is also limited. Car systems are designed and selected well before the car is ever built. A custom wiring harness is then designed to connect only those car systems selected for the car. A car owner cannot incorporate new systems into the existing car. For example, a car may not originally come with a navigation system. An after market navigation system from another manufacturer cannot be integrated into the existing car.


Because after market devices can not be integrated into car control and interface systems, it is often difficult for the driver to try and operate these after market devices. For example, the car driver has to operate the after market navigation system from a completely new interface, such as the keyboard and screen of a laptop computer. The driver then has to operate the laptop computer not from the front dashboard of the car, but from the passenger seat of the car. This makes many after market devices both difficult and dangerous to operate while driving.


The present invention addresses this and other problems associated with the prior art.


SUMMARY OF THE INVENTION

A multiprocessor system used in a car, home, or office environment includes multiple processors that run different real-time applications. A dynamic configuration system runs on the multiple processors and includes a device manager, configuration manager, and data manager. The device manager automatically detects and adds new devices to the multiprocessor system, and the configuration manager automatically reconfigures which processors run the real-time applications. The data manager identifies the type of data generated by the new devices and identifies which devices in the multiprocessor system are able to process the data.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a diagram of a car that has multiple processors that each run a Dynamic Configuration (DC) system.



FIG. 2 is a detailed diagram of the dynamic configuration system shown in FIG. 1.



FIGS. 3 and 4 are diagrams showing an example of how the DC system operates.



FIGS. 5 and 6 are diagrams showing how a device manager in the DC system operates.



FIGS. 7-10 are diagrams showing how a reconfiguration manager in the DC system operates.



FIGS. 11 and 12 are diagrams showing how a data manager in the DC system operates.



FIG. 13 is a diagram showing different multiprocessor systems that can use the DC DC system.





DETAILED DESCRIPTION


FIG. 1 shows a car 12 that includes a car multiprocessor system 8 having multiple processors 14, 16, 18 and 20. An engine monitor processor 14 monitors data from different sensors 22 and 24 in the car engine. The sensors 22 and 24 can be any sensing device such as sensors that monitor water temperature, oil temperature, fuel consumption, car speed, etc. A brake control processor 20 monitors and controls an Automatic Braking System (ABS) 28. A display processor 16 is used to control and monitor a graphical user interface 26. A security processor 18 monitors and controls latches and sensors 30 and 32 that are used in a car security system.


The processors 14, 16, 18 and 20 all include software that run a Dynamic Configuration (DC) system 10 that enables new processors or devices to be automatically added and removed from the car multiprocessor system 8. The DC system 10 also automatically reconfigures the applications running on different processors according to application failures and other system processing requirements.


For example, the processor 20 may currently be running a high priority brake control application. If the processor 20 fails, the DC system 10 can automatically download the braking application to another processor in car 12. The DC system 10 automatically identifies another processor with capacity to run the braking control application currently running in processor 20. The DC system 10 then automatically downloads a copy of the braking control application to the identified processor. If there is no extra reserve processing resources available, the DC system 10 may replace a non-critical application running on another processor. For example, the DC system 10 may cause the display processor 16 to terminate a current non-critical application and then download the brake control application along with any stored critical data.


The DC system 10 also automatically incorporates new processors or applications into the multiprocessor system 8. For example, a laptop computer 38 can communicate with the engine monitor processor 34 through a hardwired link 34 or communicate to the display processor 16 through a wireless link 36. The DC system 10 automatically integrates the laptop computer 38, or any other processor or device, into the multiprocessor system 8. After integrated into the multiprocessor system 8, not only can the laptop computer 38 transfer data with other processors, but the laptop computer may also run car applications normally run by other processors in car 12.


The DC system 10 allows the car driver to manage how different applications are processed in the car 12. As described above, a car operator may have to run an aftermarket navigation system through a GPS transceiver attached to the laptop computer 38. The car driver has to place the laptop computer 38 in the passengers seat and then operate the laptop computer 38 while driving.


The DC system 10 in the display computer 16 can automatically detect the navigation application running on the laptop computer 38. The display computer 16 notifies the car operator through the user interface 26 that the navigation application has been detected. The car operator can then control the navigation application through the user interface 26. Since the user interface 26 is located in the dashboard of car 12, the car operator no longer has to take his eyes off the road while operating the navigation application.


The description below gives only a few examples of the different processors, devices and applications that can be implemented using the DC system 10. Any single or multiprocessor system located either inside or outside of car 12 can communicate and exchange data using the OC system 10. It should also be understood that the DC system 10 can be used in any real-time environment such as between processors in different home or office appliances and different home and office computers.



FIG. 2 is a block diagram showing in more detail the Dynamic Control (DC) system 10 located in a processor 40 that makes up part of the multiprocessor system 8 in car 12 (FIG. 1). The DC system 10 includes a device manager 46 that establishes communications with new devices that are to be incorporated into the multiprocessor system 8. A configuration manager 44 in the processor 40 dynamically moves applications between different processors according to user inputs and other monitored conditions in the multiprocessor system 8. A data manager 42 identifies a type of data input or output by a new processor and identifies other processors or devices in the multiprocessor system that can output data from the new device or input data to the new device.


In one example, sensors 52 feed sensor data to processor 40. The sensor data may include engine-monitoring data such as speed, oil temperature, water temperature, temperature inside the car cab, door open/shut conditions, etc. The sensors 52 are coupled to processor 40 through a link 54, such as a proprietary bus. A Compact Disc (CD) player 50 is coupled to the processor 40 through another link 48, such as a Universal Serial Bus (USB). Graphical User Interface (GUI) 56 displays the data associated with sensors 52 and CD player 50. The GUI 56 displays the outputs from sensors 52 using an icon 60 to identify temperature data and an icon 62 to identify car speed. The processor displays the CD player 50 as icon 62.



FIGS. 3 and 4 show an example of how two new applications are dynamically added to the multiprocessor system 8 in car 12 (FIG. 1). In FIG. 2, the DC system 10 in processor 40 previously detected a CD player 50 and some sensors 56. The CD player 50 was displayed on GUI 56 as icon 58 and the temperature and speed data from sensors 56 were displayed on GUI 56 as icons 60 and 62, respectfully.


The processor 40 is located in car 12 (FIG. 1). A passenger may bring a Digital Video Disc (DVD) player 86 into the car 12. The DVD 86 sends out a wireless or wired signal 88 to the processor 40. For example, the DVD 86 may send out signals using a IEEE 802.11 wireless protocol. The processor 40 includes an IEEE 802.11 interface that reads the signals 88 from DVD player 86. If the 802.11 protocol is identified as one of the protocols used by processor 40, the DC system 10 incorporates the DVD player 86 into a processor array 57 that lists different recognized applications.


The DC system 10 then automatically displays the newly detected DVD player 86 on GUI 56 as icon 96. If capable, the car operator by selecting the icon 96 can then display a video stream output from the DVD player 86 over GUI 56. The DVD player 86 can now be controlled from the GUI 56 on the car dashboard. This prevents the car driver from having to divert his eyes from the road while trying to operate the portable DVD player 86 from another location in the car, such as from the passenger seat.


Other processors or devices can also be incorporated into the multiprocessor system 8 in car 12. In another example, the car 12 drives up to a drive-in restaurant 90. The drive-in 90 includes a transmitter 92 that sends out a wireless Blue tooth signal 94. The processor 40 includes a Blue tooth transceiver that allows communication with transmitter 92. The DC system 10 recognizes the signals 94 from transmitter 92 and then incorporates the drive-in 90 into the multiprocessor system 8 (FIG. 1). The DC system 10 then displays the drive-in 90 as icon 98 in GUI 56.


Referring to FIG. 4, when the car operator selects the icon 98, a menu 102 for the driver-in 90 is displayed on the GUI 56. The car operator can then select any of the items displayed on the electronic menu 102. The selections made by the car operator are sent back to the transceiver 92 (FIG. 3). The amount of the order is calculated and sent back to the processor 40 and displayed on menu 102. Other messages, such as a direction for the car operator to move to the next window and pickup the order can also be displayed on the GUI 56. At the same time, the drive-in transceiver 92 (FIG. 3) may send audio signals that are received by the processor 40 and played out over speakers in car 12.



FIG. 5 shows in more detail the operation of the device manager 46 previously shown in FIG. 2. Multiple processors A, B, C and D all include device managers 46. The device managers 46 can each identify other devices in the multiprocessor system that it communicates with. For example, processors A, B, C and D communicate to each other over one or more communication links including a Ethernet link 64, a wireless 802.11 link 68, or a blue tooth link 70.


Processor A includes a memory 65 that stores the other recognized processors B, C and D. The data managers 46 also identify any applications that may be running on the identified processors. For example, memory 65 for processor A identifies an application #2 running on processor B, no applications running on processor C, and an application #4 running on processor D.



FIGS. 5 and 6 show how a new device is added to the multiprocessor system 8. Each of the existing processors A, B, C, and D after power-up are configured to identify a set or subset of the processors in the multiprocessor system 8. A new device 72 is brought into the multiprocessor system 8 either via a hardwired link or a wireless link. For example, the device E may send out signals over any one or more of a 802.11 wireless link 67, Blue tooth wireless link 71 or send out signals over a hardwired Ethernet link 69. Depending on what communication protocol is used to send signals, one or more of the processors A, B, C or D using a similar communication protocol detect the processor E in block 74 (FIG. 6). All of the processors may be connected to the same fiber optic or packet switched network that is then used to communicate the information from processor E to the other processors.


One of the device managers 46 in the multiprocessor system 8 checks the signals from processor E checks to determine if the signals are encrypted in a recognizable protocol in block 76. The device manager in the processor receiving the signals from processor E then checks for any data codes from the new device signals in block 76. The data codes identify data types used in one or more applications by processor E. A device ID for processor E is then determined from the output signals in block 80.


If all these data parameters are verified, the device managers 46 in one or more of the processors A, B, C and D add the new processor E to their processor arrays in block 82. For example, processor A adds processor E to the processor array in memory 65. After being incorporated into the multiprocessor system 8, the processor E or the applications running on the processor E may be displayed on a graphical user interface in block 84.



FIG. 7 describes in further detail the operation of the reconfiguration manager 44 previously described in FIG. 2. In the car multiprocessor system 8 there are four processors A, B, C and D. Of course there may be more than four processors running at the same time in the car but only four are shown in FIG. 7 for illustrative purposes. The processor A currently is operating a navigation application 110 that uses a Global Positioning System (GPS) to identify car location. Processor B currently runs an audio application 112 that controls a car radio and CD player. The processor C runs a car Automatic Braking System (ABS) application 114 and the processor D runs a display application 116 that outputs information to the car operator through a GUI 118.


The processor D displays an icon 120 on GUI 118 that represents the navigation system 110 running in processor A. An icon 124 represents the audio application running in processor B and an icon 122 represents the ABS application 114 running in processor C.


The memory 128 stores copies of the navigation application 110, audio application 112, ABS application 114 and display application 116. The memory 128 can also store data associated with the different applications. For example, navigation data 130 and audio data 132 are also stored in memory 128. The navigation data 130 may consist of the last several minutes of tracking data obtained by the navigation application 110. The audio data 132 may include the latest audio tracks played by the audio application 112.


The memory 128 can be any CD, hard disk, Read Only Memory (ROM), Dynamic Random Access (RAM) memory, etc. or any combination of different memory devices. The memory 128 can include a central memory that all or some of the processors can access and may also include different local memories that are accessed locally by specific processors.



FIG. 8 shows one example of how the configuration manager 44 reconfigures the multiprocessor system when a failure occurs in a critical application, such as a failure of the ABS application 114. The configuration manager 44 for one of the processors in the multiprocessor system 8 detects a critical application failure in block 134.


One or more of the configuration managers 44 include a watchdog function that both monitors its own applications and the applications running on other processors. If an internal application fails, the configuration manager may store critical data for the failed application. The data for each application if stored in the memory 128 can selectively be encrypted so that only the car operator has the authority to download certain types of data.


The configuration manager detecting the failure initiates a reboot operation for that particular application. The application is downloaded again from memory 128 and, if applicable, any stored application data. If the application continues to lockup, the configuration manager may then initiate a reconfiguration sequence that moves the application to another processor.


Failures are identified by the watchdog functions in one example by periodically sending out heartbeat signals to the other processors. If the heartbeat from one of the processors is not detected for one of the processors, the configuration manager 44 for the processor that monitors that heartbeat attempts to communicate with the processor or application. If the application or processor with no heartbeat does not respond, the reconfiguration process is initiated.


In another example, certain processors may monitor different applications. For example, a sensor processor may constantly monitor the car speed when the car operator presses the brake pedal. If the car speed does not slow down when the brake is applied, the sensor processor may check for a failure in either the braking application or the speed sensing application. If a failure is detected, the configuration manager initiates the reconfiguration routine.


When reconfiguration is required, one of the reconfiguration managers 44 first tries to identify a processor that has extra processing capacity to run the failed application in block 136. For example, there may be a backup processor in the multiprocessor system where the ABS application 114 can be downloaded. If extra processing resources are available, the ABS application 114 is downloaded from the memory 128 (FIG. 7) to the backup processor in block 142.


There may also be data associated with the failed application that is stored in memory 128. For example, the brake commands for the ABS application 114 may have been previously identified for logging in memory 128 using a logging label described in U.S. Pat. No. 6,629,033 that issued Sep. 30, 2003 which is herein incorporated by reference. The logged brake commands are downloaded to the backup processor in block 142.


If no backup processing resources can be identified in block 136, the configuration manager 44 identifies one of the processors in the multiprocessor system that is running a non-critical application. For example, the configuration manager 44 may identify the navigation application 110 in processor A as a non-critical application. The configuration manager 44 in block 140 automatically replaces the non-critical navigation application 110 in processor A with the critical ABS application 114 in memory 128. The processor A then starts running the ABS application 114.



FIGS. 9 and 10 show an example of how the configuration manager 44 allows the user to control reconfiguration for non-critical applications. The applications currently running in the multiprocessor system 8 are displayed in the GUI 118 in block 150. A failure is detected for the navigation application 110 running in processor A in block 152. The configuration manager 44 in processor A, or in one of the other processors B, C, or D detects the navigation failure. Alternatively, a fusion processor 111 is coupled to some or all of the processors A, B, C and D and detects the navigation failure.


In block 154 the configuration manager 44 for one of the processors determines if there is extra capacity in one of the other processors for running the failed navigation application 110. If there is another processor with extra processing capacity, the navigation application is downloaded from memory 128 to that processor with extra capacity along with any necessary navigation data in block 156. This reconfiguration may be done automatically without any interaction with the car operator.


If there is no extra processing capacity for running the navigation application 110, the configuration manager 44 displays the failed processor or application to the user in block 158. For example, the GUI 118 in FIG. 9 starts blinking the navigation icon 120 in possibly a different color than the audio application icon 124. A textual failure message 125 can also be displayed on GUI 118.


The configuration manager in block 160 waits for the car operator to request reconfiguration of the failed navigation application to another processor. If there is no user request, the configuration managers return to monitoring for other failures. If the user requests reconfiguration, the configuration manager 44 in block 164 displays other non-critical applications to the user. For example, the GUI 118 only displays the audio application icon 124 in processor B and not the ABS application icon 122 (FIG. 7). This is because the audio application is a non-critical application and the ABS application 114 is a critical application that cannot be cancelled.


If the car operator selects the audio icon 124 in block 166, the configuration manager in block 168 cancels the audio application 112 in processor B and downloads the navigation application 110 from memory 128 into processor B. A logging manager in processor A may have labeled certain navigation data for logging. That navigation data 130 may include the last few minutes of position data for the car while the navigation application 110 was running in processor A. The logged navigation data 130 is downloaded from memory 128 along with the navigation application 110 into processor B. The navigation icon 120 in GUI 118 then shows the navigation application 110 running on processor B. At the same time the audio application icon 124 is removed from GUI 118.


Referring back to FIG. 2, a processor or application is accepted into the multiprocessor system by one or more of the device managers 46. The configuration managers 44 in the processors reconfigure the multiprocessor system to incorporate the processor or application. The data manager 42 then detects what type of data is transmitted or received by the new device and determines the different processors and input/output devices in the multiprocessor system that can receive or transmit data to the new application or processor.



FIG. 11 shows in further detail how the data manager 42 in FIG. 2 operates. In block 170, the data manager for one of the processors determines the data standard for the data that is either transmitted or received by a new device. For example, the new device may be a MP3 player that outputs streaming audio data. In another example, the new device may be a DVD player that outputs streaming video data in a MPEG format.


One or more of the data managers 42, identifies the device by its data and the data, if applicable, is displayed on the graphical user interface in block 172. The data manager then identifies any devices in the multiprocessor system that can output or transmit data to the new device in block 174. For example, a newly detected audio source may be output from a car speaker. The data manager monitors for any user selections in block 176. For example, the car operator may select the output from a portable CD player to be output from the car speakers. The data manager controlling the CD player and the data manager controlling the car speakers then direct the output from the CD player to the car speakers in block 178.



FIG. 12 gives one example of how the data managers 42 in the multiprocessing system operate. A GUI 180 displays the audio or video (A/V) sources in a car. For example, there are three devices detected in or around the car that are AV sources. A cellular telephone detected in the car is represented by icon 184, a radio is represented by icon 186, and a DVD player is represented by icon 188.


The A/V output devices in the car are shown in the lower portion of GUI 180. For example, icons 192, 194, 196, 200, and 204 show car audio speakers. An in-dash video display is represented by icon 190 and a portable monitor is represented by icon 198.


Currently, a car operator may be listening to the radio 186 over speakers 192, 194, 196, 200 and 204. However, a passenger may move into the backseat of the car carrying an MP3 player. The MP3 player runs the DC system 10 described in FIG. 2 and sends out a signal to any other processors in the multiprocessor system 8 in the car. The device manager 46 and configuration manager 44 in one of the processors verify the data format for the MP3 player and configure the MP3 player into the multiprocessor system.


One of the data managers 42 determines the MP3 player outputs a MP3 audio stream and accordingly generates the icon 182 on the GUI 180. The data manager 42 also identifies a speaker in the MP3 player as a new output source and displays the speaker as icon 202. The car operator sees the MP3 icon 182 now displayed on GUI 180. The car operator can move the MP3 icon 182 over any combination of the speaker icons 192, 194, 196, 200 and 204. The output from the MP3 player is then connected to the selected audio outputs.


Audio data can also be moved in the opposite direction. The speaker icon 202 represents the output of the portable MP3 player that the passenger brought into the backseat of the car. The car operator also has the option of moving one or more of the other audio sources, such as the cellular telephone 184 or the radio 186 icons over the speaker icon 202. If the car operator, for example, moves the radio icon 186 over the MP3 player speaker icon 202 and the MP3 player can output the radio signals, the multiprocessor system redirects the radio broadcast out over the MP3 speaker.


It should be understood that the multiprocessor system described above could be used in applications other than cars. For example, FIG. 13 shows a first GUI 210 that shows different processors and applications that are coupled together using the DC system 10 in an automobile. A GUI 212 shows another multiprocessor system comprising multiple processors in the home. For example, a washing machine is shown by icon 214. The DC system allows the washing machine processor to communicate and be configured with a television processor 216, toaster processor 218, stereo processor 220, and an oven processor 222.


The system described above can use dedicated processor systems, micro controllers, programmable logic devices, or microprocessors that perform some or all of the communication operations. Some of the operations described above may be implemented in software and other operations may be implemented in hardware.


For the sake of convenience, the operations are described as various interconnected functional blocks or distinct software modules. This is not necessary, however, and there may be cases where these functional blocks or modules are equivalently aggregated into a single logic device, program or operation with unclear boundaries. In any event, the functional blocks and software modules or described features can be implemented by themselves, or in combination with other operations in either hardware or software.


Having described and illustrated the principles of the invention in a preferred embodiment thereof, it should be apparent that the invention may be modified in arrangement and detail without departing from such principles. Claim is made to all modifications and variation coming within the spirit and scope of the following claims.

Claims
  • 1. A multiprocessor system, comprising: a plurality of processors configured to run applications; anda dynamic configuration system operating independently on one or more of the plurality of processors, configured to: detect signals from a new processor;verify that the signals are encrypted in a compatible protocol;check data codes in the signals from the new processor;determine a device identifier for the new processor;automatically incorporate the new processor into the multiprocessor system for communication with the one or more of the plurality of processors;detect an application failure in one of the applications running on one or more of the plurality of processors;determine that the new processor has processing capability to execute the one of the applications that failed;transfer the one of the applications that failed to the automatically incorporated new processor; andautomatically reconfigure the multiprocessor system in real-time to run the one of the applications that failed on the automatically incorporated new processor.
  • 2. The system of claim 1, wherein the multiprocessor system is for use in at least one of a vehicle, a home, and a business.
  • 3. The system of claim 1, wherein the plurality of processors is located within at least one of a vehicle, a home, and a business.
  • 4. The system of claim 1, wherein the automatically incorporated new processor is located within or remote to at least one of a vehicle, a home, and a business.
  • 5. The system of claim 1, wherein the automatically incorporated new processor is included within one or more of a smartphone, tablet, laptop, audio device, navigation device, personal computer, and remote server.
  • 6. A multiprocessor method, comprising: configuring a plurality of processors to run applications;using a dynamic configuration system operating independently on one or more of the plurality of processors, configured to: detect signals from a new processor;verify that the signals are encrypted in a compatible protocol;check data codes in the signals from the new processor;determine a device identifier for the new processor;automatically incorporate the new processor into the dynamic configuration system for communication with the one or more of the plurality of processors,detect an application failure in one of the applications running on one or more of the plurality of processors;determine that the new processor has processing capability to execute the one of the applications that failed;transfer the one of the applications that failed to the automatically incorporated new processor; andautomatically reconfigure the dynamic configuration system in real-time to run the one of the applications that failed on the automatically incorporated new processor.
  • 7. The method of claim 6, wherein the dynamic configuration system is for use in at least one of a vehicle, a home, and a business.
  • 8. The method of claim 6, wherein the plurality of processors is located within at least one of a vehicle, a home, and a business.
  • 9. The method of claim 6, wherein the automatically incorporated new processor is located within or remote to at least one of a vehicle, a home, and a business.
  • 10. The method of claim 6, wherein the automatically incorporated new processor is included within one or more of a smartphone, tablet, laptop, audio device, navigation device, personal computer, and remote server.
Parent Case Info

This application is a continuation of U.S. patent application Ser. No. 13/430,368, filed Mar. 26, 2012, which is a continuation of U.S. patent application Ser. No. 12/880,773, filed Sep. 13, 2010, now U.S. Pat. No. 8,165,057, issued Apr. 24, 2012, which is a continuation of U.S. patent application Ser. No. 12/789,313, filed May 27, 2010, now U.S. Pat. No. 8,331,279, issued Dec. 11, 2012, which is a continuation of U.S. patent application Ser. No. 11/462,958, filed Aug. 7, 2006, now U.S. Pat. No. 7,778,739, issued Aug. 17, 2010, which is a continuation of U.S. patent application Ser. No. 09/841,915, filed Apr. 24, 2001, now U.S. Pat. No. 7,146,260, issued Dec. 5, 2006, the disclosures of which are all incorporated herein by reference in their entirety.

US Referenced Citations (408)
Number Name Date Kind
2995318 Cocharo Aug 1961 A
3812468 Wollum et al. May 1974 A
4303978 Shaw Dec 1981 A
4528563 Takeuchi Jul 1985 A
4558460 Tanaka Dec 1985 A
4591976 Webber May 1986 A
4735274 Good et al. Apr 1988 A
4829434 Karmel May 1989 A
4835537 Manion May 1989 A
4907159 Mauge Mar 1990 A
4931930 Shyu et al. Jun 1990 A
4959800 Woolley et al. Sep 1990 A
5008678 Herman Apr 1991 A
5027432 Skala Jun 1991 A
5031330 Stuart Jul 1991 A
5045937 Myrick Sep 1991 A
5111401 Everett, Jr. May 1992 A
5115245 Wen May 1992 A
5243640 Hadley et al. Sep 1993 A
5245909 Corrigan Sep 1993 A
5287199 Zoccolillo Feb 1994 A
5303297 Hillis Apr 1994 A
5339086 DeLuca Aug 1994 A
5341301 Shirai Aug 1994 A
5438361 Coleman Aug 1995 A
5440726 Fuchs et al. Aug 1995 A
5471214 Faibish Nov 1995 A
5485892 Fujita Jan 1996 A
5500794 Fujita et al. Mar 1996 A
5506963 Ducateau Apr 1996 A
5532706 Reinhardt Jul 1996 A
5537539 Narihiro Jul 1996 A
5552773 Kuhnert Sep 1996 A
5555503 Kyrtsos et al. Sep 1996 A
5570219 Mori et al. Nov 1996 A
5572201 Graham Nov 1996 A
5579219 Mori et al. Nov 1996 A
5581462 Rogers Dec 1996 A
5585798 Yoshioka Dec 1996 A
5617085 Tsutsumi Apr 1997 A
5646612 Byon Jul 1997 A
5661811 Huemann et al. Aug 1997 A
5742141 Czekaj Apr 1998 A
5749060 Graf May 1998 A
5751211 Nishimura May 1998 A
5754123 Nashif et al. May 1998 A
5761320 Farinelli Jun 1998 A
5786998 Neeson Jul 1998 A
5787246 Lichtman Jul 1998 A
5793366 Mano et al. Aug 1998 A
5794164 Beckert et al. Aug 1998 A
5859878 Phillips et al. Jan 1999 A
5872508 Taoka Feb 1999 A
5898392 Bambini Apr 1999 A
5907293 Tognazzini May 1999 A
5909559 So Jun 1999 A
5915214 Reece Jun 1999 A
5943427 Massie Aug 1999 A
5948040 DeLorme et al. Sep 1999 A
5951620 Ahrens et al. Sep 1999 A
5956016 Kuenzner et al. Sep 1999 A
5956025 Goulden et al. Sep 1999 A
5956250 Gudat et al. Sep 1999 A
5957985 Wong Sep 1999 A
5959536 Chambers Sep 1999 A
5963092 VanZalinge Oct 1999 A
5964822 Alland Oct 1999 A
5966658 Kennedy, III Oct 1999 A
5969598 Kimura Oct 1999 A
5974554 Oh Oct 1999 A
5977906 Ameen Nov 1999 A
5983092 Whinnett Nov 1999 A
5983161 Lemelson Nov 1999 A
6009330 Kennedy, III Dec 1999 A
6009403 Sato Dec 1999 A
6028537 Suman Feb 2000 A
6028548 Farmer Feb 2000 A
6032089 Buckley Feb 2000 A
6032202 Lea et al. Feb 2000 A
6037860 Zander et al. Mar 2000 A
6038625 Ogino et al. Mar 2000 A
6052632 Iihoshi Apr 2000 A
6054950 Fontana Apr 2000 A
6060989 Gehlot May 2000 A
6061002 Weber et al. May 2000 A
6061709 Bronte May 2000 A
6075467 Ninagawa Jun 2000 A
6097285 Curtin Aug 2000 A
6097314 Desens et al. Aug 2000 A
6105119 Kerr et al. Aug 2000 A
6128608 Barnhill Oct 2000 A
6144336 Preston Nov 2000 A
6148261 Obradovich Nov 2000 A
6150961 Alewine Nov 2000 A
6154123 Kleinberg Nov 2000 A
6161071 Shuman Dec 2000 A
6163711 Juntunen Dec 2000 A
6166627 Reeley Dec 2000 A
6167253 Farris Dec 2000 A
6169894 McCormick Jan 2001 B1
6175728 Mitama Jan 2001 B1
6175782 Obradovich Jan 2001 B1
6179489 So et al. Jan 2001 B1
6181922 Iwai Jan 2001 B1
6181994 Colson Jan 2001 B1
6182006 Meek Jan 2001 B1
6185491 Gray Feb 2001 B1
6195760 Chung et al. Feb 2001 B1
6198996 Berstis Mar 2001 B1
6199136 Shteyn Mar 2001 B1
6202027 Alland Mar 2001 B1
6203366 Muller Mar 2001 B1
6204804 Andersson Mar 2001 B1
6226389 Lemelson, III May 2001 B1
6233468 Chen May 2001 B1
6236652 Preston May 2001 B1
6240365 Bunn May 2001 B1
6243450 Jansen Jun 2001 B1
6243645 Moteki et al. Jun 2001 B1
6243772 Ghori et al. Jun 2001 B1
6247079 Papa et al. Jun 2001 B1
6252544 Hoffberg Jun 2001 B1
6247144 Marcia-Garza Aug 2001 B1
6275231 Obradovich Aug 2001 B1
6282714 Ghori et al. Aug 2001 B1
D448366 Youngers Sep 2001 S
6292109 Murano Sep 2001 B1
6292136 Egnell Sep 2001 B1
6292747 Amro Sep 2001 B1
6294987 Matsuda Sep 2001 B1
6295541 Bodnar et al. Sep 2001 B1
6297732 Hsu Oct 2001 B2
6298302 Walgers Oct 2001 B2
6298370 Tang et al. Oct 2001 B1
6314326 Fuchu Nov 2001 B1
6321344 Fenchel Nov 2001 B1
6326903 Gross Dec 2001 B1
6327536 Tsuji Dec 2001 B1
6362730 Razavi et al. Mar 2002 B2
6362748 Huang Mar 2002 B1
6370449 Razavi et al. Apr 2002 B1
6374286 Gee Apr 2002 B1
6377860 Gray Apr 2002 B1
6382897 Mattio May 2002 B2
6389340 Rayner May 2002 B1
6401029 Kubota Jun 2002 B1
6405132 Breed Jun 2002 B1
6408174 Steijer Jun 2002 B1
6417782 Darnall Jul 2002 B1
6421429 Merritt Jul 2002 B1
6429789 Kiridena Aug 2002 B1
6429812 Hoffberg Aug 2002 B1
6430164 Jones Aug 2002 B1
6433679 Schmid Aug 2002 B1
6434447 Shteyn Aug 2002 B1
6442485 Evans Aug 2002 B2
6445308 Koike Sep 2002 B1
6445983 Dickson et al. Sep 2002 B1
6449541 Goldberg et al. Sep 2002 B1
6452484 Drori Sep 2002 B1
6463373 Suganuma Oct 2002 B2
6484080 Breed Nov 2002 B2
6487717 Brunemann et al. Nov 2002 B1
6489884 Lamberson et al. Dec 2002 B1
6493338 Preston Dec 2002 B1
6496107 Himmelstein Dec 2002 B1
6496117 Gutta Dec 2002 B2
6496689 Keller Dec 2002 B1
6498939 Thomas Dec 2002 B1
6505100 Stuempfle Jan 2003 B1
6515595 Obradovich Feb 2003 B1
6522875 Dowling Feb 2003 B1
6523696 Saito et al. Feb 2003 B1
6526335 Treyz et al. Feb 2003 B1
6542812 Obradovich et al. Apr 2003 B1
6542814 Polidi et al. Apr 2003 B2
6580973 Leivian et al. Apr 2003 B2
6559773 Berry May 2003 B1
6567069 Bontrager et al. May 2003 B1
6571136 Staiger May 2003 B1
6574734 Colson et al. Jun 2003 B1
6584403 Bunn Jun 2003 B2
D479228 Sakaguchi et al. Sep 2003 S
6614349 Proctor et al. Sep 2003 B1
6615137 Lutter Sep 2003 B2
6616071 Kitamura Sep 2003 B2
6622083 Knockeart Sep 2003 B1
6629033 Preston Sep 2003 B2
6641087 Nelson Nov 2003 B1
6647270 Himmelstein Nov 2003 B1
6647328 Walker Nov 2003 B2
6670912 Honda Dec 2003 B2
6675081 Shuman Jan 2004 B2
6678892 Lavelle et al. Jan 2004 B1
6681121 Preston Jan 2004 B1
6690681 Preston Feb 2004 B1
6707421 Drury et al. Mar 2004 B1
6708100 Russell Mar 2004 B2
6714139 Saito Mar 2004 B2
6718187 Takagi et al. Apr 2004 B1
6725031 Watler Apr 2004 B2
6734799 Munch May 2004 B2
6738697 Breed May 2004 B2
6748278 Maymudes et al. Jun 2004 B1
6754183 Razavi et al. Jun 2004 B1
6756998 Bilger Jun 2004 B1
6765495 Dunning et al. Jul 2004 B1
6771208 Lutter Aug 2004 B2
6771629 Preston Aug 2004 B1
6778073 Lutter Aug 2004 B2
6778924 Hanse Aug 2004 B2
6782315 Lu Aug 2004 B2
6785551 Richard Aug 2004 B1
6792351 Lutter Sep 2004 B2
6799092 Lu Sep 2004 B2
6801994 Becket et al. Oct 2004 B2
6806977 Freeny et al. Oct 2004 B1
6816458 Kroon Nov 2004 B1
6876642 Adams Apr 2005 B1
6892230 Gu et al. May 2005 B1
6895238 Newell May 2005 B2
6895240 Laursen May 2005 B2
6901057 Rune May 2005 B2
6906619 Williams Jun 2005 B2
6917801 Witte et al. Jul 2005 B2
6920129 Preston Jul 2005 B2
6925368 Funkhouser et al. Aug 2005 B2
6937732 Ohmura Aug 2005 B2
6952155 Himmelstein Oct 2005 B2
6968513 Rinebold et al. Nov 2005 B1
6972669 Saito Dec 2005 B2
6973030 Pecen Dec 2005 B2
6980092 Turnbull Dec 2005 B2
6993511 Himmelstein Jan 2006 B2
7000469 Foxlin Feb 2006 B2
7006950 Greiffenhagen Feb 2006 B1
7024363 Comerford Apr 2006 B1
7039858 Humpleman et al. May 2006 B2
7079993 Stephenson Jul 2006 B2
7085710 Beckert et al. Aug 2006 B1
7089206 Martin Aug 2006 B2
7092723 Himmelstein Aug 2006 B2
7103646 Suzuki Sep 2006 B1
7103834 Humpleman et al. Sep 2006 B1
7120129 Ayyagari Oct 2006 B2
7123926 Himmelstein Oct 2006 B2
7146260 Preston Dec 2006 B2
7151768 Preston Dec 2006 B2
7158842 Ohmura Jan 2007 B2
7158956 Himmelstein Jan 2007 B1
7164662 Preston Jan 2007 B2
7171189 Bianconi Jan 2007 B2
7178049 Lutter Feb 2007 B2
7187947 White Mar 2007 B1
7206305 Preston Apr 2007 B2
7207042 Smith Apr 2007 B2
7215965 Fournier et al. May 2007 B2
7216347 Harrison et al. May 2007 B1
7221669 Preston May 2007 B2
7239949 Lu Jul 2007 B2
7249266 Margalit Jul 2007 B2
7257426 Witkowski Aug 2007 B1
7263332 Nelson Aug 2007 B1
7269188 Smith Sep 2007 B2
7272637 Himmelstein Sep 2007 B1
7274988 Mukaiyama Sep 2007 B2
7277693 Chen Oct 2007 B2
7283567 Preston Oct 2007 B2
7283904 Benjamin Oct 2007 B2
7286522 Preston Oct 2007 B2
7289906 van der Merwe et al. Oct 2007 B2
7317696 Preston Jan 2008 B2
7337650 Preston Mar 2008 B1
7343160 Morton Mar 2008 B2
7375728 Donath May 2008 B2
7379707 DiFonzo May 2008 B2
7411982 Smith Aug 2008 B2
7418476 Salesky Aug 2008 B2
7426437 Breed Sep 2008 B2
7450955 Himmelstein Nov 2008 B2
7480501 Petite Jan 2009 B2
7483964 Jackson et al. Jan 2009 B1
7484008 Gelvin Jan 2009 B1
7493645 Tranchina Feb 2009 B1
7506020 Ellis Mar 2009 B2
7508810 Moinzadeh Mar 2009 B2
7509134 Fournier et al. Mar 2009 B2
7536277 Pattipatti et al. May 2009 B2
7579942 Kalik Aug 2009 B2
7587102 Maris Sep 2009 B2
7587370 Himmelstein Sep 2009 B2
7594000 Himmelstein Sep 2009 B2
7596391 Himmelstein Sep 2009 B2
7599715 Himmelstein Oct 2009 B2
7610331 Genske Oct 2009 B1
7614055 Buskens et al. Nov 2009 B2
7664315 Woodfill Feb 2010 B2
7681448 Preston Mar 2010 B1
7689321 Karlsson Mar 2010 B2
7733853 Moinzadeh et al. Jun 2010 B2
7747281 Preston Jun 2010 B2
7778739 Preston et al. Aug 2010 B2
7848763 Fournier et al. Dec 2010 B2
7891004 Gelvin et al. Feb 2011 B1
7924934 Birmingham Apr 2011 B2
7928898 Franken Apr 2011 B2
7966111 Moinzadeh et al. Jun 2011 B2
7970500 Parra Carque Jun 2011 B2
7979095 Birmingham Jul 2011 B2
7983310 Hirano et al. Jul 2011 B2
8014942 Moinzadeh et al. Sep 2011 B2
8036201 Moinzadeh et al. Oct 2011 B2
8036600 Garrett et al. Oct 2011 B2
8045729 Preston et al. Oct 2011 B2
8063347 Urbano et al. Nov 2011 B1
8068792 Preston Nov 2011 B2
8108092 Philips et al. Jan 2012 B2
8165057 Preston et al. Apr 2012 B2
8204927 Duong et al. Jun 2012 B1
8244408 Lee et al. Aug 2012 B2
8255697 Mathiassen Aug 2012 B2
8260515 Huang et al. Sep 2012 B2
8331279 Preston et al. Dec 2012 B2
8346186 Preston et al. Jan 2013 B1
8358321 Weidner Jan 2013 B1
8654236 Shizaki Feb 2014 B2
8751712 Preston et al. Jun 2014 B2
8761821 Tibbitts Jun 2014 B2
8762610 Preston Jun 2014 B2
8860818 Sachs et al. Oct 2014 B1
8933986 Schall Jan 2015 B2
8958315 Preston et al. Feb 2015 B2
8963736 Millar Feb 2015 B2
9092853 Sachs et al. Jul 2015 B2
9135705 Chao et al. Sep 2015 B2
20010008992 Saito et al. Jul 2001 A1
20010009855 L'Anson Jul 2001 A1
20010018639 Bunn Aug 2001 A1
20010022927 Lemelson et al. Sep 2001 A1
20010041556 Laursen et al. Nov 2001 A1
20010048749 Ohmura et al. Dec 2001 A1
20010051853 Evans et al. Dec 2001 A1
20020012329 Atkinson Jan 2002 A1
20020017567 Connolly et al. Feb 2002 A1
20020022927 Lemelson et al. Feb 2002 A1
20020070852 Trauner Jun 2002 A1
20020083143 Cheng Jun 2002 A1
20020085043 Ribak Jul 2002 A1
20020087886 Ellis Jul 2002 A1
20020095501 Chiloyan et al. Jul 2002 A1
20020098878 Mooney et al. Jul 2002 A1
20020105423 Rast Aug 2002 A1
20020119766 Bianconi et al. Aug 2002 A1
20020123325 Cooper Sep 2002 A1
20020144010 Younis Oct 2002 A1
20020144079 Willis et al. Oct 2002 A1
20020177429 Watler et al. Nov 2002 A1
20020198925 Smith et al. Dec 2002 A1
20030004633 Russell et al. Jan 2003 A1
20030009270 Breed Jan 2003 A1
20030011509 Honda Jan 2003 A1
20030016883 Baron Jan 2003 A1
20030060188 Gidron Mar 2003 A1
20030065432 Shuman et al. Apr 2003 A1
20030078754 Hamza Apr 2003 A1
20030110113 Martin Jun 2003 A1
20030158614 Friel Aug 2003 A1
20030201365 Nelson Oct 2003 A1
20030201929 Lutter et al. Oct 2003 A1
20030204382 Julier et al. Oct 2003 A1
20030212996 Wolzien Nov 2003 A1
20040149036 Foxlin et al. Aug 2004 A1
20040162064 Himmelstein Aug 2004 A1
20040164228 Fogg Aug 2004 A1
20050009506 Smolentzov Jan 2005 A1
20050070221 Upton Mar 2005 A1
20050080543 Lu et al. Apr 2005 A1
20050130656 Chen Jun 2005 A1
20050153654 Anderson Jul 2005 A1
20050232469 Schofield et al. Oct 2005 A1
20050251328 Merwe et al. Nov 2005 A1
20050260984 Karabinis Nov 2005 A1
20050275505 Himmelstein Dec 2005 A1
20050278712 Buskens et al. Dec 2005 A1
20060132357 Pozgay et al. Jun 2006 A1
20060206576 Obradovich et al. Sep 2006 A1
20060293829 Cornwell et al. Dec 2006 A1
20070115868 Chen May 2007 A1
20070115897 Chen May 2007 A1
20070260372 Langer et al. Nov 2007 A1
20070260373 Langer et al. Nov 2007 A1
20080092140 Doninger et al. Apr 2008 A1
20080169998 Jacobsen et al. Jul 2008 A1
20080306708 Germain et al. Dec 2008 A1
20090051797 Yao Feb 2009 A1
20090090592 Mordukhovich et al. Apr 2009 A1
20090240481 Durrant-Whyte et al. Sep 2009 A1
20090268923 Li Oct 2009 A1
20090268947 Schaufler Oct 2009 A1
20090284378 Ferren et al. Nov 2009 A1
20090319063 Pan Dec 2009 A1
20100017543 Preston et al. Jan 2010 A1
20100332357 Preston et al. Dec 2010 A1
20110212700 Petite Sep 2011 A1
20120083971 Preston et al. Apr 2012 A1
20120154633 Rodriguez Jun 2012 A1
20120183153 Preston et al. Jul 2012 A1
20120237085 Meier Sep 2012 A1
Foreign Referenced Citations (37)
Number Date Country
3125151 Jan 1983 DE
3125161 Jan 1983 DE
4237987 May 1994 DE
19647283 May 1997 DE
19922608 Nov 2000 DE
19931161 Jan 2001 DE
0355490 Feb 1990 EP
0 441 576 Aug 1991 EP
0441576 Aug 1991 EP
0473866 Mar 1992 EP
0 841 648 May 1998 EP
841648 May 1998 EP
0841648 May 1998 EP
1 355 128 Oct 2003 EP
1355128 Oct 2003 EP
2097563 Nov 1982 GB
10-076115 Oct 1999 JP
2000207691 Jul 2000 JP
1995-0017619 Jul 1995 KR
1999-021740 Mar 1999 KR
9624229 Aug 1996 WO
WO9624229 Aug 1996 WO
9908436 Feb 1999 WO
WO9908436 Feb 1999 WO
9957662 Nov 1999 WO
WO9957662 Nov 1999 WO
9965183 Dec 1999 WO
WO9965183 Dec 1999 WO
WO 0029948 May 2000 WO
0040038 Jun 2000 WO
WO 0079390 Jun 2000 WO
WO0040038 Jul 2000 WO
0130061 Apr 2001 WO
WO0130061 Apr 2001 WO
0158110 Aug 2001 WO
WO0158110 Aug 2001 WO
WO03033092 Apr 2003 WO
Non-Patent Literature Citations (104)
Entry
MyGig User Guide, version 2.2, Published by Gracenote, 2006; pp. 1-169.
Stirling, A: “Mobile Multimedia platforms” Vehicular Technology Conference Fall 2000. IEEE VTS Fall VTC2000. 52nd Vehicular Technology Conference (Cat. No. 00CH37152).
Nusser R. et al.: “Bluetooth-based wireless connectivity in an automotive environment” Vehicular Technology Conference Fall 2000. IEEE VTS Fall VTC2000 52nd Vehicular Techonlogy Conference (Cat. No. 00CH37152).
USBlyzer, “Brief Overview of USB History”.
Arun Ayyagari, Bluetooth ESDP for UPnP, Published Jan. 31, 2001.
Longbin, Xiaoquain, Yizu Kang, Bar-Shalom: Unbiased converted measurements for tracking; IEEE Transactions on Aerospace and Electronic Systems vol. 34(4), Jul. 1998, pp. 1023-1027.
Miller, Drummond: Comparison of methodologies for mitigating coordinate transformation basis in target tracking; Proceedings SPIE Conference on Signal and Data Processing of Small Targets 2000, vol. 4048, Jul. 2002, pp. 414-426.
Duan, Han, Rong Li: Comments on “Unbiased (debiased) converted measurements for tracking” IEEE Transactions on Aerospace and Electronic Systems, vol. 40(4), Oct. 2004, pp. 1374-1377.
Listing of Related Cases, Schwabe Williamson Wyatt and Eagle Harbor Holdings, Nov. 21, 2016.
A. Das, R. Fierro, V. Kumar, J. Ostrowski, J. Spletzer, and C. Taylor, “A Framework for Vision Based Formation Control”, IEEE Transactions on Robotics and Automation, vol. 18, Nov. 5, 2001, pp. 1-13.
Ada 95 Transition Support—Lessons Learned, Sections 3, 4, and 5, CACI, Inc.—Federal, Nov. 15, 1996, 14 pages.
AMIC. Architecture specification release 1, 2001; 35 pages.
Bluetooth Doc; Advance Audio Distribution Profile Specification; Adopted version 1.0; dated May 22, 2003; 75 pages.
Bluetooth Doc; Audio/Video Remote Control Profile; Version 1.0 Adopted; dated May 22, 2003; 52 pages.
Bluetooth Hands-free Profile 1.5 Nov. 25, 2005.
Bluetooth Specification version 1.1; Feb. 22, 2001; 452 pages.
Boeing News Release, “Boeing Demonstrates JSF Avionics Multi-Sensor Fusion”, Seattle, WA, May 9, 2000, pp. 1-2.
Boeing Statement, “Chairman and CEO Phil Condit on the JSF Decision”, Washington, D.C., Oct. 26, 2001, pp. 1-2.
Counterair: The Cutting Edge, Ch. 2 “The Evolutionary Trajectory the Fighter Pilot—Here to Stay?” AF2025 v3c8-2, Dec. 1996, pp. 1-7.
Counterair: The Cutting Edge, Ch. 4 “The Virtual Trajectory Air Superiority without an “Air” Force?” AF2025 v3c8-4, Dec. 1996, pp. 1-12.
Embedded Bluetooth Migrates to Lisbon and Seattle; 11 pages; Jan. 23, 2008.
Green Hills Software, Inc., “The AdaMULTI 2000 Integrated Development Environment,” Copyright 2002, printed Jul. 9, 2002; 7 pages.
H. Chung, L. Ojeda, and J. Borenstein, “Sensor Fusion for Mobile Robot Dead-reckoning with a Precision-calibrated Fiber Optic Gyroscope”, 2001 IEEE International Conference on Robotics and Automation, Seoul, Korea, May 21-26, 2001, pp. 1-6.
Hitachi Automated Highway System (AHS), Automotive Products, Hitachi, Ltd., Copyright 1994-2002, 8 pages.
IEEE Standard for Information Technology—POSIX Based Supercomputing Application Environment Profile; Jun. 14, 1995, 72 pages.
ISIS Project: Sensor Fusion, Linkoping University Division of Automatic Control and Communication Systems in cooperation with SAAB (Dynamics and Aircraft), 2001, 18 pages.
J. Takezaki, N. Ueki, T. Minowa, H. Kondoh, “Support System for Safe Driving—A Step Toward ITS Autonomous Driving—”, Hitachi Review, vol. 49, Nov. 3, 2000, pp. 1-8.
Joint Strike Fighter Terrain Database, ets-news.com “Simulator Solutions” 2002, 3 pages.
Luttge, Karsten; “E-Charging API: Outsource Charging to a Payment Service Provider”; IEEE; 2001 (pp. 216-222).
M. Chantler, G. Russel, and R. Dunbar, “Probabilistic Sensor Fusion for Reliable Workspace Sensing”, Fourth IARP workship on Underwater Robotics, Genoa, Nov. 1992, pp. 1-14.
MSRC Redacted Proposal, 3.0 Architecture Development, Aug. 29, 2002; pp. 1-43.
Powerpoint Presentation by Robert Allen—Boeing Phantom Works entitled “Real-Time Embedded Avionics System Security and COTS Operating Systems”, Open Group Real-Time Forum, Jul. 18, 2001, 16 pages.
Product description of Raytheon Electronic Systems (ES), Copyright 2002, pp. 1-2.
Product description of Raytheon RT Secure, “Development Environment”, Copyright 2001, pp. 1-2.
Product description of Raytheon RT Secure, “Embedded Hard Real-Time Secure Operating System”, Copyright 2000, pp. 1-2.
Product description of Raytheon RT Secure, Copyright 2001, pp. 1-2.
S.G. Goodridge, “Multimedia Sensor Fusion for Intelligent Camera Control and Human-Computer Interaction”, Dissertation submitted to the Graduate Faculty of North Carolina State University in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Electrical Engineering, Raleigh, NC, 1997, pp. 1-5.
Specification of the Bluetooth System v1.0.B; Dec. 1, 1999.
Specification of the Bluetooth System v1.1; Feb. 22, 2001.
TNO FEL Annual Review 1998: Quality works, Observation Systems Division; “The Whole is More Than the Sum of its Parts”; 16 pages.
Vehicle Dynamics Lab, University of California, Berkeley, funded by BMW, current members: D. Caveney and B. Feldman, “Adaptive Cruise Control”, at least as early as 2002, printed Jul. 2, 2002; 17 pages.
Stirling A: “Mobile Multimedia platforms” Vehicular Technology Conferene Fall 2000. IEEE VTS Fall VTC2000. 52nd Vehicular Technology Conference (Cat. No. 00CH37152).
Nusser R. et al.: “Bluetooth-based wireless connectivity in an automotive environment” Vehicular Technoloty Conference Fall 2000. IEEE VTS Fall VTC2000 52nd Vehicular Techonlogy Conference (Cat. No. 00CH37152).
Martins e f v et al. “design of an OS9 operating system extension for a message-passing multiprocesor” Microprocessors and Microsystems, IPC Business Press LT. London, BG, vol. 21, No. 9, Apr. 1, 1998, pp. 533-543.
Gutierrez Garcia JJ et al. “Minimizing the effects of jitter in distributed hard real-time systems” Journal of Systems Architecture, Elsevier Science Publishers BV., Amsterdam, NL, vol. 41, No. 6/7. Dec. 15, 1996, pp. 431-447.
International Search Report for PCT/US02/020402; dated Apr. 3, 2003.
International Search Report for PCT/US02/020403; dated Jan. 27, 2003.
International Search Report for PCT/US02/016364; dated Feb. 14, 2003.
International Search Report for PCT/US02/016371; dated Aug. 18, 2003.
Stolowitz Ford Cowger Listing of Related Cases May 28, 2010.
Robert Bosch GmbH, “CAN Specification, Version 2.0,” Sep. 1991.
Wang, Z. et al. “A Message Priority Assignment Algorithm for CAN-based Networks,” in CSC '92 Proceedings of the 1992 ACM Annual Conference on Communications, Mar. 1992.
Fay-Wolfe, et al., “Real-Time CORBA,” IEEE Transactions on Parallel and Distributed Systems, vol. 11, Issue 10 (Oct. 2000).
Rene Nusser and Rodolfo Mann Pelz, “Bluetooth-based Wireless Connectivity in an Automotive Environment,” IEEE pp. 1935-1942, Vehicular Technology Conference, 2000.
Husein et al., “A Priority Based Service Algorithm for Use in Time-Critical and Integrated Services Networks,” Proceedings of IEEE Singapore International Conference, vol. 1, pp. 93-97, 1993.
Release 1 Specification Set from the Automotive Multimedia Interface Collaboration (AMI-C), Jan. 2001.
Open Services Gateway Initiative (OSGi) Service Gateway Specification Release 1.0, May 2000.
Ellis, S. M. , “Dynamic Software Reconfiguration for Fault-Tolerant Real-Time Avionic Systems,” Microprocessor and Microsystems, Proceedings of the 1996 Avionics Conference and Exhibition, vol. 21, issue 1, pp. 29-39, Jul. 1997.
Peter Walzer, and Hans-Wilhelm Grove, “Integrated Research Volkswagen (IRVW) Futura,” Passenger Car Meeting and Exposition, Dearborn, Michigan, Sep. 17-20, 1990.
Specification vol. 1, Specification of the Bluetooth System, Version 1.1, Feb. 22, 2001.
Bluetooth ESDP for UPnP, prepared by Arun Ayyagan, Jan. 31, 2001.
Nace, W. & Koopman, P., “A Product Family Based Approach to Graceful Degradation,” Proceedings of DIPES 2000, International IFIP WG 10.3/WG 10.4/ WG 10.5 Workshop on, Distributed and Parallel Embedded Systems, Paderborn University, Germany, Oct. 18-19, 2000.
Meredith Beveridge, “M.S. Project Report, Jini on the Control Area Network (CAN): A Case Study in Portability Failure”, Department of Electrical and Computer Engineering, Carnegie Mellon University, Phil Koopman—advisor, Mar. 2001.
Universal Serial Bus Specification, Revision 1.1, Compaq, Intel, Microsoft and NEC, Sep. 23, 1998.
Universal Serial Bus Specification , Revision 2.0, Compaq, Hewlett-Packard, Intel, Lucent, Microsoft, NEC and Philips, Apr. 27, 2000.
Tindell, Ken, et al, “A CAN Communications Concept with Guaranteed Message Latencies”, Oct. 1998.
Robinson, Ralph L., “An Open Versus Closed Architecture for Multimedia Systems,” Proceedings of the 2000 International Congress on Transportation Electronics, pp. 445-450, Oct. 2000.
Y. Chubachi and H. Okagaki , “The Development of Traffic Information System Using AutoPC,” Proceedings of the 2000 International Congress on Transportation Electronics, pp. 81-88, Oct. 2000.
M. Tchorowski and J. Mate, “Avionics and Automotive bandwagon flying together on the infotronics Highway,” Proceedings of the 1998 International Congress on Transportation Electronics, pp. 351-354, Oct. 1998.
Fout, Tom, “Universal Plug and Play in Windows XP,” Jul. 1, 2001.
Yen, H.W., et al., “Information Security and Integrity in Network Vehicle,” Proceedings of the 1998 International Congress on Transportation Electronics, pp. 319-323, Oct. 1998.
Minagawa, Shoichi, et al, “Open Architectural Car Multimedia Platform,” Proceedings of the 1998 International Congress on Transportation Electronics, pp. 198-194 Oct. 1998.
Kanemitsu, Dean et al. “Productivitys Next Dimension—The Mobile Office Computing Platform,” Proceedings of the 2000 International Congress on Transportation Electronics, pp. 159-165, Oct. 2000.
Bhaskaran, Parvathy, “Reinventing the Car Radio for the Internet—the iRadio™,” Proceedings of the 2000, International Congress on Transportation Electronics, pp. 147-153, Oct. 2000.
Buckley, Stephen, et al., “The Car as a Peripheral—Adapting a Portable Computer to a Vehicle Intranet,” Proceedings of the 1998 International Congress on Transportation Electronics, pp. 211-217, Oct. 1998.
Arnold, Ken, et al., “The Jini Specification,” Publisher Addison-Wesley, 1999.
Powers, Chuck, et al., Today's Electronics in Todays Vehicles, Proceedings of the 1998 International Congress on Transportation Electronics, pp. 195-200, Oct. 1998.
Vaught, Mark A., “Phone-Activated Auto-Muting Circuit,” Jan. 1990.
Clarion Co. Ltd., “Clarion AutoPC 310C Owner's Manual,” 1998.
Clarion, “2002 Clarion Product Catalog Car Audio, Multimedia, Marine, and Security Retail Products,” 2002.
Clarion Co., Ltd., “Joyride Quick Reference Guide,” 2000-2001.
Joyride, Windows CE System Software User's Manual , 1999-2001.
Lind, R., et al., “The Network Vehicle—A Glimpse into the Future of Mobile Multi-Media,” IEEE AES Systems Magazine, Sep. 1999.
First Amended Complaint and Answer from Eagle Harbor Holdings, LLC, and Mediustech, LLC, v. Ford Motor Company, Washington Western District Court, Case No. 3:11-CV-05503-BHS, Case filed: Jun. 30, 2011.
Exhibits and Modules from Eagle Harbor Holdings, LLC, and Mediustech, LLC, v. Ford Motor Company, Washington Western District Court, Case No. 3:11-CV-05503-BHS, Case filed: Jun. 30, 2011.
MyGig User Guide, Mar. 11, 2008.
Peter Waltzer, and Hans-Wilhelm Grove, “Integrated Research Volkswagen (IRVW) Futura,” Passenger Car Meeting and Exposition, Dearborn, Michigan, Sep. 17-20, 1990.
Stolowitz Ford Cowger LLP Listing of Related Cases Sep. 17, 2012.
USPTO, Office Action for U.S. Appl. No. 09/841,915 dated Nov. 17, 2005.
USPTO, Office Action for U.S. Appl. No. 11/462,958 dated Oct. 3, 2007.
USPTO, Office Action for U.S. Appl. No. 11/462,958 dated Mar. 16, 2009.
USPTO, Office Action for U.S. Appl. No. 12/789,313 dated Feb. 10, 2011.
USPTO, Office Action for U.S. Appl. No. 12/789,313 dated Jun. 24, 2011.
USPTO, Office Action for U.S. Appl. No. 13/430,368 dated May 20, 2013.
USPTO, Office Action for U.S. Appl. No. 13/430,368 dated Jan. 21, 2014.
USPTO, Office Action for U.S. Appl. No. 13/430,368 dated Jul. 24, 2014.
USPTO, Office Action for U.S. Appl. No. 13/430,368 dated Mar. 27, 2015.
USPTO, Office Action for U.S. Appl. No. 13/430,368 dated Sep. 9, 2015.
A. Das, R. Fierro, V. Kumar, J. Ostrowski, J. Spletzer, and C. Taylor, “A Framework for Vision Based Formation Control”, IEEE Transactions on Robotics and Automation, vol. XX, No. Y, 2001, pp. 1-13.
Bluetooth Specification version 1.1: Feb. 22, 2001.
Green Hills Software, Inc., “The AdaMULTI 2000 Integrated Development Environment,” Copyright 2002, 7 pages.
H. Chung, L. Ojeda, and J. Borenstein, “Sensor Fusion for Mobile Robot Dead-reckoning with a Precision-calibrated Fiber Optic Gyroscope”, 2001 IEEE International Conference on Robotics and Automation, Seoul, Korea, May 21-26, pp. 1-6.
J. Takezaki, N. Ueki, T. Minowa, H. Kondoh, “Support System for Safe Driving—A Step Toward ITS Autonomous Driving—”, Hitachi Review, vol. 49, No. 3, 2000, pp. 1-8.
TNO FEL Annual Review 1998: Quality works, 16 pages.
Related Publications (1)
Number Date Country
20160232015 A1 Aug 2016 US
Continuations (5)
Number Date Country
Parent 13430368 Mar 2012 US
Child 15131769 US
Parent 12880773 Sep 2010 US
Child 13430368 US
Parent 12789313 May 2010 US
Child 12880773 US
Parent 11462958 Aug 2006 US
Child 12789313 US
Parent 09841915 Apr 2001 US
Child 11462958 US