A method and system of intrachassis computer component command and control. The existing power rail is used as network connectivity. Further, the CEBus standard (or a CEBus standard modified for the particular power bus) is used to provide platform management functionality. This management functionality is similar to that provided by the proposed IPMI specification. However, the management functionality is implemented intrachassis, that is, it is applied to the internal components of the machine. Particularly advantageous functions, such as rollcall enumeration and command authentication and verification, are included in a preferred embodiment. Further, because these innovative techniques utilize the existing power rail, no additional external cables are required.
|
1. A computer system, comprising:
a plurality of system devices, including at least one microprocessor which can perform data transfer over a data bus; and a power supply connected to provide power to an internal dc power rail common to said system devices; wherein multiple ones of said system devices communicate with each other over said power rail, independently of said data bus. 5. A computer system, comprising:
a input device, a microprocessor which is operatively connected to detect inputs from said input device, random-access memory which is connected to be read/write accessible by said microprocessor, and an output device operatively converted to receive outputs from said microprocessor; a power supply connected to provide power to an internal dc power rail common to said system devices; and a cooling device connected to cool the interior of said system; wherein said system devices communicate with each other over said power rail; and wherein at least two of said system devices each send respective device identification codes whenever a roll call request is made by another system device over said power rail. 14. A system of hardware management in a computer system comprising:
computer system components connected to a dc power rail, including a microprocessor which is operatively connected to detect inputs from said input device, random-access memory which is connected to be read/write accessible by said microprocessor, and an output device operatively connected to receive outputs from said microprocessor, non-volatile random-access storage which is connected to be read/write to accessible by said microprocessor and at least one cooling device; and a power supply connected to said power rail to provide power to said computer system components; wherein said computer system components communicate with each other and with said power supply over said power rail.
11. A computer system, comprising:
a user input device, a microprocessor which is operatively connected to detect inputs from said input device, random access memory which is connected to be read/write accessible by said microprocessor, and an output device operatively connected to receive outputs from said microprocessor; a plurality of system devices including a power supply connected to provide power to an internal power rail common to said system devices; and a cooling device connected to cool the interior of said system; wherein said system devices communicate with each other over said power rail; and wherein said system devices respond to and execute any specific command received over said power rail only once regardless of whether that specific command is repeated.
2. The system of
3. The system of
4. The system of
6. The system of
8. The system of
9. The system of
10. The system of
13. The system of
15. The system according to
16. The system according to
17. The system according to
18. The system of
|
The present invention relates to secondary bus communications between components in a computer chassis.
1. Background: Home Automation Standards
Home automation systems have long used special techniques for local communication over power mains. This was originally necessitated by the absence of any other type of bus over which "smart" devices could "talk" to each other. However, communication over power mains also introduces very specific problems, including those of line noise received from motors and other devices attached to the power mains, the need to ensure that the data itself does not interfere with other devices connected to the mains, and limited bandwidth. For similar reasons, low-bandwidth power-mains communications have also been used for limited data communications between smart devices and local electric utility control systems.
One example of an industry standard for building or home automation data communication systems has been the X10 or X-10 communications protocol for remote control of electrical devices which communicate across standard wiring or power lines of a building such as a home. (In general, methods of ensuring the accuracy of transmitted and received data are known as communications protocols.) The X10 communications protocol allows various home electronic devices, such as lighting controllers or switches, status indicators, security systems, telephone interfaces, computer interfaces, and various home appliances, to readily be linked together for simple control applications. The X10 communications protocol generally has a narrow bandwidth, i.e., 120 KiloHertz ("KHz"), for communicating data at a relatively slow speed, i.e., 60 bits/second.
Another industry standard for home automation has been the Consumer Electronic Bus ("CEBus") standard, which describes a local communications and control network designed specifically for the home. Like X10, the CEBus standard provides a standardized communication facility for exchange of control information and data among various devices and services in the home, such as lighting controllers or switches, status indicators, security systems, telephone interfaces, computer interfaces, stereo systems, and home appliances. The CEBus standard was developed by the Consumer Electronics Group of the Electronic Industries Association ("EIA") and an inter-industry committee of representatives from both EIA and non-member companies. The CEBus standard generally has a wide bandwidth, e.g. 100-400 KHz, for communicating data at a relatively fast speed, i.e., 10 Kilobits/second and is significantly faster and more reliable than the X10 communications protocol. The CEBus standard also allows full networking of consumer application devices. The CEBus standard encompasses both the physical media (wires, fiber, etc.) and the protocol (software) used to create an intelligent home or office.
The newest standard for home automation is the EIA-600 standard, which is intended to handle existing and anticipated control communication requirements at minimum practical costs consistent with a broad spectrum of residential applications. It is intended for such functions as remote control, status indication, remote instrumentation, energy management, security systems, entertainment device coordination, etc. These situations require economical connection to a shared local communication network carrying relatively short digital messages.
2. Background: Platform Management
Presently, there are different types of data transmission systems which allow computer network components to be automatically controlled and monitored at a distance. These known systems are generally connected by a dedicated network, and consist of individual control and monitoring modules at each node, which are in turn managed by a central system.
The Intelligent Platform Management Interface (or "IPMI") specification was announced by Intel, Dell, Hewlett-Packard Company, and NEC to provide a standard interface to hardware used for monitoring a server's physical characteristics, such as temperature, voltage, fans, power supplies and chassis.
The IPMI specification defines a common interface and message-based protocol for accessing platform management hardware. IPMI is comprised of three specifications: Intelligent Platform Management Interface, Intelligent Platform Management Bus (IPMB) and Intelligent Chassis Management Bus (ICMB). The IPMI specification defines the interface to platform management hardware, the IPMB specification defines the internal Intelligent Platform Management Bus, and the ICMB specification defines the external Intelligent Chassis Management Bus, an external bus for connecting additional IPMI-enabled systems.
IPMI provides access to platform management information. IPMI-enabled servers monitor and store platform management information in a common format which can be easily accessed by server management software, add-in devices or even directly from other servers.
A management bus, IPMB, allows add-in devices such as Emergency Management Cards to access platform management information, even if the processor is down. The IPMB can also be extended externally to the chassis (ICMB) to enable "system-to-system" monitoring. This allows a server to manage another ICMB-connected server even if it has no system management software or the processor is down.
Functions such as failure alerting, power control and access to failure logs are supported for systems connected to the ICMB, so multiple servers or peripheral chassis (storage and power supplies) can connect to the ICMB as an alternative to using Emergency Management Cards.
IPMI allows differentiated hardware solutions to be implemented quickly and easily. The IPMI interface isolates server management software from hardware, enabling hardware changes to be made without impacting the software. Although IPMI is not tied to a specific operating system or management application, it is complementary to higher level management software interfaces such as the Simple Network Management Protocol (SNMP), Desktop Management Interface (DMI), Common Information Model (CIM), and Windows Management Interface (WMI), which facilitate the development of cross platform solutions.
IPMI allows system managers to determine the health of their server hardware, whether the server is running normally or is in a nonoperational state. Servers based on IPMI use "intelligent" or autonomous hardware that remains operational even when the processor is down so that platform management information is always accessible. The IPMI interfaces enable platform management hardware to be accessed not only by management software but also accessed by third party emergency management add-in cards and even other IPMI-enabled servers. System-to-system monitoring or management via a connected server is becoming increasingly important as system managers deploy complex system topologies such as clusters and rack-mounted configurations. In addition, the scalable nature of IPMI enables the architecture to be deployed across a server product line, from entry to high-end servers, and gives system managers a consistent base of platform management functionality upon which to effectively manage their servers. One specific disadvantage of this approach is that additional physical connections and device support is required to interconnect these components.
A Command and Control Infrastructure for a Computer System
The present application discloses a method and system of intrachassis computer component command and control wherein the existing power rail is used as a "network" connection for internal system components. Particularly advantageous functions, such as rollcall enumeration and command authentication and verification, are included in a preferred embodiment. Further, because these innovative techniques utilize the existing power rail, no additional external cables are required.
According to a preferred embodiment, the CEBus standard (or a CEBus standard modified for the requirements of the particular power rail) is used to provide platform management functionality. This management functionality is similar to that provided by the proposed IPMI specification.
The disclosed inventions will be described with reference to the accompanying drawings, which show some embodiments of the invention and which are incorporated in the specification hereof by reference, wherein:
The numerous innovative teachings of the present application will be described with particular reference to the presently preferred embodiment. However, it should be understood that this class of embodiments provides only a few examples of the many advantageous uses of the innovative teachings herein. In general, statements made in the specification of the present application do not necessarily delimit any of the various claimed inventions. Moreover, some statements may apply to some inventive features but not to others.
This application shares some text and figures with the following commonly owned applications, filed concurrently with the present application, and hereby incorporated by reference: application Ser. No. 09/290,313, filed on Mar. 29, 1999, application Ser. No. 09/280,314, filed on Mar. 29, 1999, and application Ser. No. 09/293,587, filed on Apr. 16, 1999.
Definitions
Following are short definitions of the usual meanings of some of the technical terms which are used in the present application. (However, those of ordinary skill will recognize whether the context requires a different meaning.) Additional definitions can be found in the standard technical dictionaries and journals.
X-10 is the oldest and most widely-used home automation protocol. It uses the power lines as a transmission medium. LonWorks Echelon Corporation developed this standard for both home and industrial use, and the standard may be obtained from that company. LonWorks uses a variety of transmission media including IR, RF, coaxial cable, and twisted pair.
IEEE 1394 is a communications standard which supports real-time audio and video transmission with data rates up to 400 Megabits/sec. IEEE 1394 uses a cable consisting of three twisted pairs to connect devices in a network. The IEEE 1394 standard, which is hereby incorporated by reference, is published by, and available from, the IEEE.
CEBus is a newer standard in home automation. Like LonWorks, CEBus uses a variety of transmission media including IR, RF, coaxial cable, and twisted pair. The CEBus standard, which is hereby incorporated by reference, is published by, and available from, the Electronic Industries Association.
USB (or the Universal Serial Bus) was originally intended for use as a home automation protocol. However, it was actually developed as a protocol for computer peripherals by several manufacturers of personal computer products. The USB specification is available, as of the filing date of this application, from the USB Implementer's Forum at http://www.usb.org, and is hereby incorporated by reference.
Power rail refers to any one of the connections which provide power to each of the internal system components of a computer system. The power rail generally receives power from the system power supply, which itself is powered by a battery or an external power source.
Power mains refers to the power mains systems in common use in all industrialized countries. In the United States, for example, this would refer to the common indoor power outlets which supply current at 60 Hz and (for most circuits) about 120V; in the U.K. this would refer to the common indoor power outlets which supply current at 50 Hz and 240V.
Intrachassis refers to components of a computer system connected to a common power rail and, typically, located within a common system unit. In the context of this application, "intrachassis" includes system devices that may be physically located outside the system unit bus, but which are still powered by the common power rail, e.g., an external hard drive.
Overview of Sample Embodiment
According to a preferred embodiment, a computer system is provided in which various "smart" devices within the system are capable of communicating with each other over the system power rail.
The power supply 120 preferably includes an AC convertor 122, which permits power to be drawn from an AC power line, and provides power to a DC connector 132 on the motherboard. Further, the power supply preferably includes a cooling device 124 and a temperature sensor 126.
According to a preferred embodiment, the power supply incorporates a microcontroller 128, which is connected to the system power rail, and is capable of communicating with other devices over the power rail. Other devices will also incorporate a similar microcontroller, not shown, for communicating with the power supply and other components over the power rail. According to a preferred embodiment, this communication is done according to the CEBus standard, described above. Because the particular requirements of the system component may differ, the CEBus standard may be modified, e.g., by voltage scaling, to allow the disclosed communications to occur without interfering with system function.
The exemplary functions below will be described with particular reference to the microcontroller 128 of the power supply, but it will be understood by those skilled in the art that the similar controllers in other system devices will function and communicate similarly. Moreover, when reference is made to any specific component communicating with another over the power rail, it will be understood that this is accomplished by use of the respective microcontrollers of those components.
In this embodiment, various system devices, including the temperature sensor 138, the exhaust fan 119, and the hard disk drive 136, are connected to send and receive signals over the power rail. In this manner, the controller 128 in the lower supply can communicate with these system devices. Further, the system peripheral controller can be connected to communicate over the power rail.
Particular communications supported by the controller 128 include the ability to request basic status information from each device, and to command the devices to power on or off as needed. For example, the controller 128 may receive information from temperature sensor 138 indicating a high temperature, and may command exhaust fan 139 to turn on in response. An exemplary command/data format is described below
Further, each system device has an associated identifier address which uniquely identifies that devise within the system. The identifier functions to specifically identify both the type of device and the specific address of that device within devices of that type. This identifier is used to specifically identify the sender and recipient of any data or command sent over the system power rail.
This identifier is particularly advantageous when used to determine which device types are authorized to perform certain functions or to send certain commands. For example, while it may be useful for a temperature sensor, upon detection of an overheating condition, to order the power supply to shut the system down or to place the system in a low-power mode to reduce heat, there is almost no reason for a hard disk drive to request a system shut-down. By identifying the class of device from which a command is sent, the receiver can determine whether or not to respond.
Another particularly useful function of a preferred embodiment is the ability to perform a "roll call" enumeration of the devices present on the system bus. This function is performed by the controller 128 sending out a command requesting that all devices identify themselves. In response, each device responds with an acknowledge signal which includes its identifier. This process allows the controller 128 to keep an inventory of active devices, and therefore which devices it is able to control. Once a roll call has been taken, the controller is able to identify malfunctioning devices by noting which devices fail to respond to this query. If a device fails to respond, it has either failed or lost its connection to the power rail. In either case, it is unavailable for system use.
Also according to a preferred embodiment, each command sent by the controller 128 to a specific de vice causes that device to send an acknowledgment (ACK) over the power rail. If the controller does not receive the ACK, it will periodically resend the command until an ACK is received, and each repeated command will include additional information identifying the number of times this command has been resent.
The device to which the commands are addressed will, as stated and in this embodiment, send an ACK when the command is received, then execute the command. Of course, due to noise on the power rail or other possible problems, there is the chance that this ACK will not be received by the controller 128. If this occurs, controller 128 will resend the command, along with the repetition number of the repeated command. When the device receives it, it will note, by reading the repetition number, that this is a repeated command. If it has already executed the command which is being repeated, then it does not re-execute the command, but does resend an ACK to the controller to indicate that the command was received.
A preferred embodiment provides, system in which devices are plugged into a system's power rail. The power rail can then become a local communications channel, e.g. using a power network technology such as or similar to industry standards CEBus, X-10, and others. When plugged into the power rail, the devices are given identities which are then used to validate authorization for commands. The command authorization and authentication could be validated based on the device's class ID.
A preferred embodiment provides a method and apparatus for a command and control system to enumerate and authenticate local devices based on their ability to answer commands as provided through the local power rail.
A device which is to be managed would have some additional logic, within the ability of one of ordinary skill in the art, and be plugged into the computer's power rail. This device could then be authenticated based on its locality and a device ID class, to the computer's internal power rail.
In addition, a device could provide return status information to a requester, e.g. a temperature sensor might return the temperature or a fan might return its current speed. This information may then be used to modify the system operation, e.g. if the temperature has dropped sufficiently, the fan might then be told to slow down.
First, the broadcast is initialized and sending begins (step 320). Then, as long as the sending device continues to receive ACKs from devices that have received the broadcast (step 325), the sending device keeps waiting, and saves the list of responding devices as it receives the acknowledgments (step 330). As it receives each ACK, it resets a delay timer, and waits for the next one (step 335). If the timer expires without receiving another ACK, it assumes that it is done and leaves the initial broadcast loop.
Next, it resends the same broadcast (step 340) and sets an OK bit to a default 1 (step 345). It then waits for device responses, as above (step 350, looping at step 365). As it receives responses, as long as the responses are the same as those received earlier and saved in step 330 (step 355), it keeps looping. If it gets anything different, the OK bit is cleared (step 360) After all information is received, the process continues.
The status of the OK bit is then checked (step 370). If it is set, the DONE bit is set as well (step 375) if not, the DONE bit is cleared. The process then loops back (step 380) to step 315. If the DONE bit is set, the routine is finished (step 385) and is ready for the next broadcast (looping back to step 305). If the DONE bit is clear, the entire broadcast sequence is retried (looping back to step 315).
Typical functions of a preferred embodiment include enumeration, which could be specified for individual units or device classes, globally, or exclusively. An "assign" function would allow devices to be assigned specific class and unit IDS. An Enter/Exit/Assign authentication code function to change the authentication mode allows the device to be switched between authenticated and unauthenticated command, or to have the authentication key assigned or changed. A "Get Status/Value" function allows the device to be polled for its current status, e.g. the current speed of the fan or the current temperature of the system. Finally, a "Set Status/Value/Parameter" function allows the status of the device to be changed, e.g. changing the speed of fan or powering down a hard drive.
According to one disclosed embodiment, there is provided a computer system, comprising: a plurality of system devices, including at least one microprocessor which can perform data transfer over at least one data bus; and a power supply connected to provide power to an internal power rail common to said system devices; wherein multiple ones of said system devices communicate with each other over said power rail, independently of said bus.
According to another disclosed embodiment, there is provided a computer system, comprising: a input device, a microprocessor which is operatively connected to detect inputs from said input device, random-access memory which is connected to be read/write accessible by said microprocessor, and an output device operatively connected to receive outputs from said microprocessor; a plurality of system devices including a power supply connected to provide power to an internal power rail common to said system devices; an a cooling device connected to cool the interior of said system; wherein said system devices communicate with each other over said power rail; and wherein at least two of said system devices each have respective device identification codes and respond to a roll call request, made by any other system device, with that respective device identification code.
According to another disclosed embodiment, there is provided a computer system, comprising: a user input device, a microprocessor which is operatively connected to detect inputs from said input device, random-access memory which is connected to be read/write accessible by said microprocessor, and an output device operatively connected to receive outputs from said microprocessor; a plurality of system devices including a power supply connected to provide power to an internal power rail common to said system devices; and a cooling device connected to cool the interior of said system; wherein said system devices communicate with each other over said power rail; and wherein said system devices respond to and execute any specific command received over said power rail only once regardless of whether that specific command is repeated.
According to another disclosed embodiment, there is provided a system of hardware management in a computer system, comprising: computer system components connected to a power rail, including a microprocessor which is operatively connected to detect inputs from said input device, random-access memory which is connected to be read/write accessible by said microprocessor, and an output device operatively connected to receive outputs from said microprocessor, non-volatile random-access storage which is connected to be read/write accessible by said microprocessor and at least one cooling device; and a power supply connected to said power rail to provide power to said computer system components; wherein said computer system components communicate with each other and with said power supply over sad power rail.
According to another disclosed embodiment, there is provided a method of hardware management, comprising: powering a plurality of computer components via a common power rail; broadcasting a command over said power rail by at least one of said plurality of computer components; and executing said command by at least on of said plurality of computer components
Modifications and Variations
As will be recognized by those skilled in the art, the innovative concepts described in the present application can be modified and varied over a tremendous range of applications, and accordingly the scope of patented subject matter is not limited by any of the specific exemplary teachings given.
While the disclosed architecture is particularly advantageous for peer-to-peer communications between non-CPU components, it is also applicable to communications which are not peer-to-peer, and/or to components which may include CPU as well as non-CPU components.
In the sample computer system embodiment the user input devices can alternatively include a trackball, a joystick, a 3D position sensor, voice recognition inputs, or other inputs. Similarly, the output devices can optionally include speakers, a display (or merely a display driver), a modem, or other outputs. Any of these devices, if connected to the system power rail, may benefit from the disclosed techniques.
Further, while the preferred embodiments are drawn to systems which draw their power from the system power rail, it is alternatively possible to adapt these techniques to devices which are merely connected to, but not powered by, the system power rail. For example, an external media device such as a CD-ROM drive may be powered directly by a power mains connection, but may also be connected to the system power rail (possibly with DC isolation) to obtain the benefits of the disclosed system management techniques.
Additional general background, which helps to show the knowledge of those skilled in the art regarding the system context, and of variations and options for implementations, may be found in the following publications, all of which are hereby incorporated by reference. In particular, many details may be found in the books from MindShare, Inc., including Protected Mode Software Architecture, CardBus System Architecture, EISA System Architecture, ISA System Architecture, 80486 System Architecture, Pentium Processor System Architecture, PCMCIA System Architecture, Plug and Play System Architecture, PCI System Architecture, USB System Architecture, and Pentium Pro Processor System Architecture, all of which are hereby incorporated by reference, and in the Pentium Processor Family Developer's Manual 1997, the Multiprocessor Specification (1997), the Intel Architecture Optimizations Manual, the Intel Architecture Software Developer's Manual, the Peripheral Components 1996 databook, the Pentium Pro Processor BIOS Writer's Guide (version 2.0, 1996), and the Pentium Pro Family Developer's Manuals from Intel, all of which arc hereby incorporated by reference.
Olarig, Sompong P., Angelo, Michael F., Jansen, Kenneth A., Sides, Chi Kim
Patent | Priority | Assignee | Title |
10061366, | Nov 17 2015 | Microsoft Technology Licensing, LLC | Schedule-based energy storage device selection |
10158148, | Feb 18 2015 | Microsoft Technology Licensing, LLC | Dynamically changing internal state of a battery |
10176177, | Dec 17 1999 | Sony Corporation | Information processing apparatus and associated method of content exchange |
10228747, | Feb 09 2015 | Microsoft Technology Licensing, LLC | Battery parameter-based power management for suppressing power spikes |
10263421, | Feb 26 2015 | Microsoft Technology Licensing, LLC | Load allocation for multi-battery devices |
6609204, | Mar 29 1999 | HEWLETT-PACKARD DEVELOPMENT COMPANY, L P | Method and apparatus for locking/unlocking via platform management bus |
6665731, | May 16 2000 | Intel Corporation | Method for remotely accessing component management information |
6892275, | Feb 05 2002 | Quantum Corporation | Storage system utilizing an active subset of drives during data storage and retrieval operations |
7068150, | Feb 25 2003 | International Business Machines Corporation | UPS signaling state |
7225350, | Dec 31 2002 | Sony Corporation of America | Active state link power management |
7228432, | Sep 11 2003 | Meta Platforms, Inc | Method and apparatus for providing security for a computer system |
7240201, | Aug 01 2003 | HEWLETT-PACKARD DEVELOPMENT COMPANY, L P | Method and apparatus to provide secure communication between systems |
7382880, | Jan 26 2004 | Hewlett Packard Enterprise Development LP | Method and apparatus for initializing multiple security modules |
7584375, | Dec 31 2002 | Sony Corporation of America | Active state link power management |
7930503, | Jan 26 2004 | Hewlett Packard Enterprise Development LP | Method and apparatus for operating multiple security modules |
8380905, | May 21 2010 | National Semiconductor Corporation | Isolated communication bus and related protocol |
8898485, | Jul 15 2009 | Microsoft Technology Licensing, LLC | Power transfer between devices |
8909929, | May 31 2012 | Atmel Corporation | Stored public key validity registers for cryptographic devices and systems |
9241022, | Dec 17 1999 | Sony Corporation | Information processing apparatus and associated method of content exchange |
9696782, | Feb 09 2015 | Microsoft Technology Licensing, LLC | Battery parameter-based power management for suppressing power spikes |
9748765, | Feb 26 2015 | Microsoft Technology Licensing, LLC | Load allocation for multi-battery devices |
9793570, | Dec 04 2015 | Microsoft Technology Licensing, LLC | Shared electrode battery |
9939862, | Nov 13 2015 | Microsoft Technology Licensing, LLC | Latency-based energy storage device selection |
Patent | Priority | Assignee | Title |
4792731, | Mar 16 1987 | Genlyte Thomas Group LLC | Multi-room controlled for individual light controls |
5059871, | Jul 09 1990 | Lightolier Incorporated | Programmable lighting control system linked by a local area network |
5144666, | Oct 02 1989 | SGS-THOMSON MICROELECTRONICS S A | Decoder to decode an encrypted sound |
5268666, | Dec 23 1991 | AT&T Bell Laboratories | Appliance control system providing out-of-context usage |
5352957, | Dec 21 1989 | Zumtobel Aktiengessellschaft | Appliance control system with programmable receivers |
5382951, | Jun 21 1991 | SCHLUMBERGER RESOURCE MANAGEMENT SERVICES, INC | Initialization method and a system for transmitting messages between a control terminal and controlled terminals |
5400330, | May 15 1992 | SGS-Thomson Microelectronics S.A. | System for the transmission of data in an installation, notably a domestic installation |
5406248, | Jun 24 1992 | SSG-Thomson Microelectronics S.A. | Method and apparatus for managing information transmissions on an electrical distribution circuit |
5410292, | Jun 24 1991 | SGS-Thomson Microelectronics S.A. | Method and system for communicating information within a dwelling or a property |
5453738, | Sep 27 1990 | Siemens Aktiengesellschaft | Remote-control system for large rooms with free grouping |
5805926, | May 31 1994 | SGS-THOMSON MICROELECTRONICS, S A | System for controller maintains table showing actuators and sensors and accordingly assigning addresses and adds to table if actuators and sensors were added during same time |
6005476, | Jul 24 1998 | HINES & ASSOCIATES, INC | Electronic identification, control, and security system for consumer electronics and the like |
EP361993, | |||
EP466152, | |||
EP574636, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Mar 11 1999 | ANGELO, MICHAEL | Compaq Computer Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 009873 | /0014 | |
Mar 11 1999 | OLARIG, SOMPONG P | Compaq Computer Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 009873 | /0014 | |
Mar 11 1999 | SIDES, CHI K | Compaq Computer Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 009873 | /0014 | |
Mar 11 1999 | JASEN, KEN | Compaq Computer Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 009873 | /0014 | |
Mar 29 1999 | Compaq Information Technologies Group, L.P. | (assignment on the face of the patent) | / | |||
Jun 20 2001 | Compaq Computer Corporation | COMPAQ INFORMATION TECHNOLOGIES GROUP, L P | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 012394 | /0069 | |
Oct 01 2002 | Compaq Information Technologies Group, LP | HEWLETT-PACKARD DEVELOPMENT COMPANY, L P | CHANGE OF NAME SEE DOCUMENT FOR DETAILS | 015000 | /0305 |
Date | Maintenance Fee Events |
Dec 04 2002 | ASPN: Payor Number Assigned. |
Apr 10 2006 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Apr 08 2010 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
May 16 2014 | REM: Maintenance Fee Reminder Mailed. |
Oct 08 2014 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Oct 08 2005 | 4 years fee payment window open |
Apr 08 2006 | 6 months grace period start (w surcharge) |
Oct 08 2006 | patent expiry (for year 4) |
Oct 08 2008 | 2 years to revive unintentionally abandoned end. (for year 4) |
Oct 08 2009 | 8 years fee payment window open |
Apr 08 2010 | 6 months grace period start (w surcharge) |
Oct 08 2010 | patent expiry (for year 8) |
Oct 08 2012 | 2 years to revive unintentionally abandoned end. (for year 8) |
Oct 08 2013 | 12 years fee payment window open |
Apr 08 2014 | 6 months grace period start (w surcharge) |
Oct 08 2014 | patent expiry (for year 12) |
Oct 08 2016 | 2 years to revive unintentionally abandoned end. (for year 12) |