WO2001007984A9 - Adaptateur de bus seriel universel a installation automatique - Google Patents
Adaptateur de bus seriel universel a installation automatiqueInfo
- Publication number
- WO2001007984A9 WO2001007984A9 PCT/US2000/020180 US0020180W WO0107984A9 WO 2001007984 A9 WO2001007984 A9 WO 2001007984A9 US 0020180 W US0020180 W US 0020180W WO 0107984 A9 WO0107984 A9 WO 0107984A9
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- computer
- peπpheral
- driver
- type
- communication
- Prior art date
Links
- 238000009434 installation Methods 0.000 title abstract description 4
- 230000002093 peripheral effect Effects 0.000 claims abstract description 32
- 238000000034 method Methods 0.000 claims abstract description 19
- 230000008878 coupling Effects 0.000 claims abstract description 9
- 238000010168 coupling process Methods 0.000 claims abstract description 9
- 238000005859 coupling reaction Methods 0.000 claims abstract description 9
- 238000004891 communication Methods 0.000 claims description 82
- 238000012546 transfer Methods 0.000 claims description 3
- 238000013459 approach Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 239000004020 conductor Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
Definitions
- This invention relates to an automatic installation of a communication adapter for a computer.
- USB Universal Serial Bus
- USB refers to a particular standard that has been adopted by the electronics industry for establishing a communication between a computer and a number of peripheral devices. A full description of the USB standard can be found in "Universal Serial Bus Specification Revision 1.1" dated September 23, 1998 and available from the USB Implementers Forum, Inc.
- the USB provides 12 megabit per second digital communication over standardized five-conductor cables, which connect devices that are less than 20 feet apart, and also provides limited power connections between devices.
- One of the most important applications for USB communication is the connection ordinary personal computers, such as Microsoft Windows based personal computers, with peripheral equipment including input/output devices such as keyboards, and communication devices such as modems and Ethernet network interface adapters.
- the USB standard not only dictates low-level communication characteristics, but also specifies how a USB-compliant device identifies itself to a host computer to which it is connected.
- a startup protocol is defined in which the host computer receives information about the device.
- the host computer For the host computer to make use of the functionality of the USB device, it generally requires software that is specific to that device, or at least specific to class of devices to which that device belongs and which share a common generic interface. This software is typically referred to as "driver" software. For example, if a pointing mouse connects to the USB port of a host computer, the host computer must understand that the data it inputs through the port must be used to control the movement of a pointer across the computer display. It must therefore relay this data, in the correct form, to the part of a governing program, typically an operating system, which controls these movements.
- a USB device such as a communication adapter 110
- the operating system executing on that computer typically determines whether it has available the appropriate driver software for that device in its storage 156 based on the identification of the device it receives over the USB connection. If it does not, the operating system may request that the user insert a removable storage 160, such as a floppy disk, that has the driver so that it can be installed onto computer 150. This procedure is typically used on the Microsoft Windows 98 operating system.
- Communication adapter 110 then provides communication services using the driver for communicating between computer 150 and other computers on a communication system 120, such as the Internet.
- Drivers for some devices are preloaded on certain operating system.
- a generic keyboard driver which supports keyboards from a variety of manufacturers, may already be loaded. If such a driver is loaded, when a USB keyboard is attached to the host computer, the user may not have to supply a specific driver for the keyboard if it is compatible with the generic driver.
- the invention is a method for coupling a USB device, in particular coupling a USB device which provides an Ethernet interface, to a host computer without necessarily requiring that a driver for that USB device be already available to the computer or requiring that the user provide a disk with the driver.
- the method includes the USB device emulating another type of device, such as keyboard device, for which the host computer does have a suitable driver and passing a driver for the device over the USB interface to the computer while emulating the device. After the driver is loaded onto the computer, the devices makes use of the driver to operate in its native made rather than emulating another device.
- the invention is a method for operating a peripheral device.
- the method includes coupling the peripheral device to a computer and sending a first device identification from the peripheral device to the computer.
- the method then includes emulating a device of a type determined by the first device identification, including transferring a driver from the peripheral device to the computer.
- the peripheral device sends a second device identification from the peripheral device to the computer, such that the sent device identification is for a device supported by the driver transferred to the computer.
- the peripheral device is then operate by interacting with the driver on the computer.
- the invention can include one or more of the following features.
- Sending the first device identification includes sending an identification of a keyboard device.
- Transferring the driver to the computer includes emulating keystrokes for enterring data on the computer.
- Operating the peripheral device to interact with the driver includes providing communication services between the computer and a communication system.
- Providing communication services includes passing Ethernet signals between the peripheral device and the communication system.
- Coupling the peripheral device to the computer includes establishing communication between the peripheral device and the computer according to a Universal Serial Bus (USB) standard.
- USB Universal Serial Bus
- Sending the first device identification includes sending an identification of a storage device. Transferring a file from the storage device to the computer.
- the invention is a peripheral device.
- the device has an interface for coupling the peripheral device to a computer, and a processor.
- the processor is programmed (a) to emulate a first type of device, (b) to transfer a driver for a second type of device through the interface to the computer while emulating the first type of device, and (c) to operate as the second type of device after transferring the driver to the computer.
- the device can include one or more of the following features:
- the interface includes a Universal Serial Bus interface.
- the first type of device is a keyboard device.
- the first type of device is a storage device.
- the second type of device is a communication adapter.
- the second type of device comprises an Ethernet communication adapter.
- the invention has an advantage of neither requiring a specific device driver to be preloaded on the computer to use the USB device nor requiring that the user supply a disk with such a driver.
- a hotel may equip each room with a cable to which guests can connect their laptop computers, and over which the computer can communicate over the Internet.
- a guest connects a USB device between his computer and the cable to provide provides an interface to the Internet.
- the USB device can be a USB Ethernet adapter that operates according to the present invention.
- the guest does not have to manually install software on the computer, a procedure that may be time consuming, prone to errors, or beyond the expertise of the guest.
- FIG. 1 is a block diagram that illustrates a prior approach to configuring a peripheral device
- FIG. 2 is a block diagram that illustrates the present approach to configuring a peripheral device
- FIG. 3 is a flowchart of operation of a peripheral device; and FIG. 4 illustrates multiple computers coupled through communication adapters to a communication system and to the Internet.
- computer 150 has an interface 154 for connecting peripheral devices, such as communication adapter #0210, to the computer.
- interface 154 is a USB interface.
- the present approach can be used with different types of interfaces. Initially when communication adapter 210 is connected to interface 154, computer 150 does not necessarily have suitable drives in its storage 156 to operate communication adapter 210 in its native mode.
- Communication adapter 210 when operating in its native mode, provides a communication interface between computer 150 and a communication system 120.
- Communication adapter 210 is coupled to communication system 120 using an Ethernet standard, and communication system 120 includes a wiring network in a building that provides a communication link between computer 150 and the Internet.
- communication adapter 210 does not necessarily use an Ethernet standard for communicating over communication system 120.
- other types of peripheral devices that are not communication adapters are configured using the present invention.
- Communication adapter 210 includes an interface 216 for communicating with computer 150.
- Interface 216 is a USB interface.
- Communication adapter 210 also includes an interface 218 for communicating with communication system 120.
- Interface 218 is an Ethernet interface.
- Communication adapter 210 also includes a processor 212, such as a micro-controller, and a storage 214, such as a read-only semiconductor memory. Storage #0214 holds software instructions that are executed by processor 212. Generally, the instructions allow communication adapter 210 to operate in two operating modes.
- communication adapter 210 emulates a common peripheral device for which a d ⁇ ver is already loaded in storage 156 on computer 150
- communication adapter 210 provides communication services that allow computer 150 to communicate over communication system 120
- communication adapter 210 emulates a standard USB keyboard for which a d ⁇ ver is preloaded onto the Windows 98 operating system
- the adapter when communication adapter 210 is initially connected to computer 150, the adapter makes use of the DC power that is available on the cable connecting to the computer Processor 212 starts up emulating a known device As part of that emulation, processor 212 sends data to computer 150 according to the USB standard that identifies the adapter as a USB-based keyboard (step 310) The data that it sends is stored in storage 214 either in conjunction with software instructions for controlling this first operating mode, or as a separate data block
- computer 150 After computer 150 receives the data that identifies communication adapter 210 as a keyboard, the computer communicates with communication adapter 210 as if the adapter were actually a keyboard
- processor 212 After sending the initial data, processor 212 waits until enough time has passed for computer 150 to configure itself to communicate with the adapter At that time, communication adaptei 210 essentially has as much power to control computer 150 as an individual has seated at a keyboard Communication adapter 212 uses these capabilities to upload a driver for its native operating mode on computer 150 (step 320)
- Uploading of the d ⁇ ver is performed as follows
- Processor 212 first sends out a character code that would be sent by a keyboard if the "escape” key is pressed and released while the "control” key is held down It then sends out a character code that would be sent if an "r" is pressed
- This sequence of character codes invokes a "run” panel of Windows 98 which is being execute by processor 152 on computer 150 Under Windows 98, this effect does not depend on what application software computer 150 is currently executing
- processor 212 After invoking the run panel, processor 212 sends out character codes that correspond to the keystroke sequence, "c ⁇ windows ⁇ command com” followed by the "enter” key Computer 150 responds by opening up a “dos" window
- processor 212 sends the character codes that correspond to the keystroke sequence "debug” followed by "enter "
- processor 152 on computer 150 begins to execute the standard "debug" program, which is preloaded on storage 156
- "debug” it is generally possible for a computer operator to type in a data file of arbitiary length and content, store this file on the computer disk, and assign it any particular name in the disk directory.
- processor 212 also has the ability to upload a file.
- Processor 212 then uploads a driver file by sending suitable character codes that correspond to inputting the contents of the driver file for processing by the "debug" program.
- controller 212 After placing the driver file on storage 156, controller 212 communicates with interface 154 according to USB standard in such a manner that interface 154 acts as if a new device was connected to it.
- a USB interface provides a connection for multiple peripheral devices, and therefore does not require communication adapter to be physically disconnected and reattached.
- Processor 212 then signals to computer 150 that that a USB-Ethernet adapter has been connect (step 330), and optionally, that indicate that the keyboard it was emulating has been disconnected.
- Processor 212 identifies itself as a type of communication adapter such that the operating system executing on computer 150 finds the driver that was previously uploaded by the communication adapter without requiring intervention by the operator.
- Communication adapter 210 then operates in its native mode providing communication services between computer 150 and communication system 120.
- processor 212 uploads a bootstrap program, and then executes the bootstrap program on computer 150.
- the bootstrap program which executes on computer 150, communicates with communication adapter 210 to retrieve the driver.
- communication adapter additionally emulates a USB-based storage device, such as a CD-ROM, and the bootstrap copies the driver file from the emulated CD-ROM to the computer's storage. This approach may be faster than the first embodiment in which the entire driver is transferred using the "debug" program since it involves less overhead of emulating a keyboard.
- communication adapter 210 emulates other types of devices in order to upload a driver for its native mode.
- communication adapter 210 emulates a CD-ROM drive.
- a feature of the Windows 98 operating system is that a CD-ROM disk can include a program that is automatically invoked by the operating system when the disk is inserted into a CD-ROM drive.
- a file named "autorun.inf provides information to the operating system that identifies a program file that is to be executed when the disk is inserted.
- communication adapter 210 identifies itself as an external USB- based CD-ROM drive, in a manner that is similar to its identifying itself as a external USB-based keyboard in the previously described embodiments. Rather than emulating keystrokes, communication adapter 210 emulates a disk being inserted into the drive, and then emulates processing of requests from computer 150 to read the "autorun.inf file and to read the program that is to be executed. This bootstrap program then transfers the driver to the computer's storage.
- emulated devices may be emulated. If the emulated device has a provision for executing an externally -provided program on computer 150, an approach of the type described above can be used.
- communication adapter 210 includes software in storage 214 that is adapted to different and possibly multiple operating systems. Communication adapter 210 detects which operating system is used by computer 150 during the initial USB standard exchange, and performs suitable emulation and driver uploading procedures for that operating system.
- storage 214 is writeable, and is updated from a server over communication system 120.
- software is transferred over communication system 120 when it is needed and stored temporarily on storage 214.
- a wiring network 410 such as a twisted pair wiring network, which may be shared with ordinary telephone communication, links a hub 420 and each of a number of rooms. Each room includes a jack into which communication adapter 210 can be plugged.
- Hub 420 is coupled to a router 430 that provides a communication link to Internet 440.
- hub 420 and router 430 are located in a telephone wiring closet from which wiring network 410 runs to the hotel rooms.
- communication adapter 210 does not necessarily communicate with hub 420 using an Ethernet standard.
- Alternative signaling techniques may be used for passing data over one of two pairs of wires used for active telephone communication or for passing communication over other transmission paths, such as coaxial cable or using wireless transmissions.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Bus Control (AREA)
Abstract
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU64930/00A AU6493000A (en) | 1999-07-27 | 2000-07-26 | Universal serial bus adapter with automatic installation |
CA002417040A CA2417040A1 (fr) | 1999-07-27 | 2000-07-26 | Adaptateur de bus seriel universel a installation automatique |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14583699P | 1999-07-27 | 1999-07-27 | |
US60/145,736 | 1999-07-27 |
Publications (3)
Publication Number | Publication Date |
---|---|
WO2001007984A2 WO2001007984A2 (fr) | 2001-02-01 |
WO2001007984A9 true WO2001007984A9 (fr) | 2002-05-02 |
WO2001007984A3 WO2001007984A3 (fr) | 2008-02-28 |
Family
ID=22514774
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2000/020180 WO2001007984A2 (fr) | 1999-07-27 | 2000-07-26 | Adaptateur de bus seriel universel a installation automatique |
Country Status (5)
Country | Link |
---|---|
AU (1) | AU6493000A (fr) |
CA (1) | CA2417040A1 (fr) |
IL (2) | IL137504A0 (fr) |
TW (1) | TW542950B (fr) |
WO (1) | WO2001007984A2 (fr) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6243446B1 (en) | 1997-03-11 | 2001-06-05 | Inline Connections Corporation | Distributed splitter for data transmission over twisted wire pairs |
JP4554598B2 (ja) * | 2003-03-27 | 2010-09-29 | サンディスク アイエル リミテッド | すべてのユーザによる完全なアクセスが可能なデータ記憶デバイス |
WO2005085988A2 (fr) * | 2004-02-26 | 2005-09-15 | Koninklijke Philips Electronics N.V. | Lecteur et procede permettant de simuler l'insertion d'un nouveau support d'enregistrement |
FI118312B (fi) * | 2004-04-13 | 2007-09-28 | Nokia Corp | Tietojen jakaminen laitteiden välillä |
GB0508576D0 (en) * | 2005-04-27 | 2005-06-01 | Symbian Software Ltd | Delegating universal serial bus functionality |
US20070155422A1 (en) * | 2005-11-14 | 2007-07-05 | Harald Johansen | Method for controlling mobile data connection through USB Ethernet management of mobile station |
DE102005061662A1 (de) * | 2005-12-22 | 2007-06-28 | Giesecke & Devrient Gmbh | Verfahren zum Installieren einer Hilfseinheit |
GB0712138D0 (en) * | 2007-06-22 | 2007-08-01 | Displaylink Uk Ltd | Establishing a connection between a peripheral device and a computer |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5319751A (en) * | 1991-12-27 | 1994-06-07 | Intel Corporation | Device driver configuration in a computer system |
US5715463A (en) * | 1992-03-31 | 1998-02-03 | International Business Machines Corporation | Installation utility for device drivers and utility programs |
US5664195A (en) * | 1993-04-07 | 1997-09-02 | Sequoia Systems, Inc. | Method and apparatus for dynamic installation of a driver on a computer system |
US5701476A (en) * | 1994-11-29 | 1997-12-23 | Intel Corporation | Method and apparatus for dynamically loading a driver routine in a computer memory |
US5802365A (en) * | 1995-05-05 | 1998-09-01 | Apple Computer, Inc. | Dynamic device matching using driver candidate lists |
US5794032A (en) * | 1996-04-15 | 1998-08-11 | Micron Electronics, Inc. | System for the identification and configuration of computer hardware peripherals |
US5819115A (en) * | 1996-06-28 | 1998-10-06 | Compaq Computer Corporation | Driver bundle including a compressed, self-extracting, executable driver for the host processor and an adapter driver for the processor of a network adapter card |
US6023585A (en) * | 1997-05-02 | 2000-02-08 | Webtv Networks, Inc. | Automatically selecting and downloading device drivers from a server system to a client system that includes one or more devices |
US6009480A (en) * | 1997-09-12 | 1999-12-28 | Telxon Corporation | Integrated device driver wherein the peripheral downloads the device driver via an I/O device after it is determined that the I/O device has the resources to support the peripheral device |
US5951684A (en) * | 1997-12-23 | 1999-09-14 | Samsung Electronics Co., Ltd. | Method of booting a computer system with identifying a CD-ROM disk drive of the system and a method of loading a device driver |
-
2000
- 2000-07-25 IL IL13750400A patent/IL137504A0/xx unknown
- 2000-07-25 IL IL13750300A patent/IL137503A0/xx unknown
- 2000-07-26 CA CA002417040A patent/CA2417040A1/fr not_active Abandoned
- 2000-07-26 WO PCT/US2000/020180 patent/WO2001007984A2/fr active Application Filing
- 2000-07-26 AU AU64930/00A patent/AU6493000A/en not_active Abandoned
- 2000-09-26 TW TW089114957A patent/TW542950B/zh active
Also Published As
Publication number | Publication date |
---|---|
IL137503A0 (en) | 2001-07-24 |
WO2001007984A3 (fr) | 2008-02-28 |
WO2001007984A2 (fr) | 2001-02-01 |
CA2417040A1 (fr) | 2001-02-01 |
TW542950B (en) | 2003-07-21 |
IL137504A0 (en) | 2001-07-24 |
AU6493000A (en) | 2001-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6704824B1 (en) | Universal serial bus adapter with automatic installation | |
US10445258B1 (en) | Method for creation of device drivers and device objects for peripheral devices | |
US6012103A (en) | Bus interface system and method | |
CA2082118C (fr) | Ordinateur et dispositif et methode de reconfiguration connexes | |
US5499378A (en) | Small computer system emulator for non-local SCSI devices | |
JP3138119U (ja) | リモート起動制御装置 | |
US7793279B1 (en) | Dynamic driver substitution | |
US20070005867A1 (en) | Virtual peripheral device interface and protocol for use in peripheral device redirection communication | |
US20060190238A1 (en) | Methods and systems for managing a device | |
US5537558A (en) | Apparatus and method for communicating multiple devices through one PCMCIA interface | |
US20040230710A1 (en) | System and method of automatic installation of computer peripherals | |
US8095623B2 (en) | Device emulation to facilitate data transfer | |
JPH11203230A (ja) | デバイスの制御方法および制御装置 | |
US6785807B1 (en) | Method and system for providing bootcode support in a data processing system that uses a communications port that utilizes a first communications protocol, an external device that utilizes a second communications protocol, and a device driver that is loaded in response to booting to communicate with the external device through the communications port | |
US20040186837A1 (en) | Information handling system including a local real device and a remote virtual device sharing a common channel | |
JP2001256170A (ja) | 周辺装置及びプリンタ | |
US20070174033A1 (en) | Remote control device and method for accessing peripheral device remotely | |
US8112769B2 (en) | System and method for implementing and/or operating network interface devices to achieve network-based communications | |
JP2001265705A (ja) | Usbホストでusb装置依存プログラムを実行するためにusb装置によって提供されるエージェント | |
WO2001007984A9 (fr) | Adaptateur de bus seriel universel a installation automatique | |
CN107111568A (zh) | 用于在启用usb 设备时呈现驱动器安装文件的系统和方法 | |
WO2007054447A1 (fr) | Procede de commande de connexion de donnees mobiles par gestion usb ethernet | |
US7861019B2 (en) | System and method for implementing and/or operating network interface devices to achieve network-based communications | |
EP0436458A2 (fr) | Connecteur programmable | |
US20070245037A1 (en) | Software driver device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
NENP | Non-entry into the national phase |
Ref country code: DE |
|
COP | Corrected version of pamphlet |
Free format text: PAGES 1/4-4/4, DRAWINGS, REPLACED BY NEW PAGES 1/3-3/3; DUE TO LATE TRANSMITTAL BY THE RECEIVING OFFICE |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
122 | Ep: pct application non-entry in european phase | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2417040 Country of ref document: CA |
|
NENP | Non-entry into the national phase |
Ref country code: JP |