Title of the Invention METHOD AND APPARATUS FOR CONTROLLING NETWORKED APPLIANCES WITH A REMOTE ACCESS DEVICE Technical Field
This invention generally relates to systems for controlling devices and more particularly, to a method and apparatus for controlling networked appliances with a remote access device. Description of the Related Art
Recent advances in digital bus technology make possible dynamic network connection/disconnection of a variety of consumer electronics and computing devices. One such bus standard is the Institute of Electrical and Electronics Engineers (IEEE) 1394 digital interface standard. The IEEE- 1394 digital interface is a serial digital interface enabling high-speed (up to 400 Mbps) data communication among multimedia equipment such as video camcorders, electronic still cameras, computers, and digital audio/visual equipment. Features of the IEEE- 1394 interface include realtime connection/disconnection without data loss or interruption; automatic configuration supporting "plug and play"; and freeform network topology allowing mixed branches and daisy-chains. More complete information regarding IEEE- 1394 is available from the IEEE association.
The IEEE- 1394 interface facilitates networking of many electronic devices. For example, a home surveillance system may be configured with multiple digital cameras all communicating with a computer based controller. Such networks are conventionally local to a user's home or business. It would be useful if these devices or networks could be accessed remotely. For example, a user away from home could remotely access a surveillance system and view images of the home through cameras attached to the alarm system. Further, a user could configure the alarm system remotely or set up home appliances to operate before arriving at home.
Accordingly, there is a need to access and control networks and devices coupled to a digital interface from a remote location.
Disclosure of The Invention
In accordance with the present invention, as embodied and broadly described herein, a method for controlling devices coupled to a digital interface is provided.
Initially, a user accesses a remote access device coupled to the digital interface. The remote access device identifies devices coupled to the digital interface. Based on the identified devices, the user selects a device to be controlled. A communication path is established passing through the remote access device to communicate directly with the selected device over the digital interface. This path can be a communication channel established over an IEEE- 1394 serial digital interface or any other digital communication link. Next, the user passes commands through a remote access device to control the selected device. In some cases, the selected device may generate information and send it to the user.
Another aspect of the present invention provides a method for using the remote access device to control devices coupled to a digital interface. Initially, a user accesses the remote access device. The remote access device identifies and collects information on each device coupled to the digital interface. Based upon this information, the user selects a device to control through the remote access device. The remote access device acts as an intermediary for commands passed from the user to the selected device. A communication path is established between the remote access device and the selected device through the digital interface. The user then transmits commands and information to the remote access device. In response, the remote access device transmits the appropriate commands and information to the selected device over the communication path. The selected device receives commands from the remote access device that control the selected device. In some cases, the user may also receive information in return from the remote access device provided by the selected device.
Brief Description of The Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate systems and methods consistent with the invention and, together with the description, serve to explain the advantages, and principles of the invention.
In the drawings:
FIG. 1 is a block diagram of a digital communication system including a remote access device in accordance with one embodiment of the present invention;
FIG. 2 is a block diagram of a remote access device consistent with the present invention; and
FIG. 3 is a flow diagram illustrating methods to control digital devices consistent with the present invention.
Best Mode for Carrying Out the Invention Digital Communication System And Network
FIG. 1 is a block diagram of a digital communication system 100 having digital devices controlled using a remote access device 118. In accordance with the present invention, remote access device 118 couples digital devices 102 to a packet network 105 and a telephone network 112. Remote access device 118 facilitates communication and interaction with digital devices 102 by users coupled to these networks 105 and 112. Remote access device 118 may also be coupled to other networks not explicitly discussed herein and is not limited to access through packet network 105 or telephone network 112.
Packet network 105 is also coupled to a server computer 104 and a client computer 106 having an audio device 108 and a camera device 110. Asynchronous Transfer Mode (ATM) protocol, Internet Protocol (IP), or other packet protocols may be used to implement packet network 105. For example, packet network 105 can include the Internet and computer resources associated with the Internet.
Server computer 104 can be used to process and integrate information received from digital devices 102 into displayable text and images such as web pages compatible with the World Wide Web. The resulting web pages can be processed by client computer 106 having traditional peripheral devices such as a keyboard and a pointing device such as a mouse. Audio device 108 allows client computer 106 to process audio information such as voice or music, while camera device 110 enables client computer 106 to capture nearby images.
For example, server computer 104 may generate web pages embedded with audio, video, and image information received from digital devices 102. Client computer 106 may be used to browse these web pages using a conventional user interface. Based on information in these web pages, client computer 106 may be used to send voice commands or keyboard commands to control digital devices 102.
Images captured by camera device 110 may be used to record an image of the person transmitting commands for authentication, authorization, or future record keeping purposes.
Telephone network 112 preferably couples to a wired audio device 114 and a wireless audio device 116. Typically, a circuit switching protocol is used over telephone network 112. Users can receive audio information from digital devices 102 over telephone network 112 using either wired audio device 114 or wireless audio device 116. Both wired audio device 114 and wireless audio device 116 may include a small display for displaying images or alpha-numeric information received from digital devices 102 as well. In response to the audio and image information, a user can send to digital devices 102 voice commands or commands entered through a keypad associated with wired audio device 114 or wireless audio device 116. For example, wired audio device 114 may be a telephone device that displays a numeric list of selections using information from digital devices 102. A user operating wired audio device 114 may then use a numeric keypad associated with the telephone device to make a selection from the numeric list. These commands can be used to control digital devices 102 in a manner similar to that used by devices discussed above.
Digital devices 102 preferably include a set of devices coupled together using a digital interface. The digital devices in this example include digital bridge 120, computer system 122, digital video camera 124, digital playback device 126, alarm system 128, home appliances 130, coupled together over a physical cable 132. For example, the digital interface can be a digital serial interface designed in accordance with the IEEE-1394 standard referred to as "Firewire." IEEE-1394 is a hardware and software standard capable of transporting data at 100, 200, or 400 Mbps. Despite these high speeds, IEEE-1394 guarantees bandwidth for just-in-time delivery of information. The IEEE-1394 is useful in consumer electronic devices as it will maintain physical connectivity even when a device is powered down. The "hot pluggable" feature of IEEE-1394 is also useful for consumer electronic devices because devices can be added and removed while the interface is active. As devices are added or removed, the IEEE-1394 "plug-and-play" feature automatically
recognizes the topology changes, thus eliminating the need for address switches or other user intervention.
As illustrated in FIG. 1, digital bridge 120 creates a separate IEEE-1394 segment for computer system 122 and the other devices coupled to the interface. Each IEEE-1394 segment may, in one embodiment, have up to 63 devices separated from each other by a distance of 4.5 meters. A user operating audio device 108 can remotely access digital images taken by digital video camera 124 or stored on digital playback device 126. Over the same audio device 108, the user can also check sensors and cameras associated with alarm system 128 to assess the security of a building or home. In general, the user can gather status on a device, modify the configuration of the device, can perform processing on a particular device. The user can also access other home appliances 130 compatible with the IEEE-1394 interface. A control protocol such as Home Audio Video Interoperability Architecture (HANi) can be used to control digital devices 102. HAVi is described in, e.g., "The HAVi Architecture: Specification of the Home/Video Interoperability (HAVi) Architecture", Version 0.8, authored by Sony et al. which is incorporated by reference herein.
FIG. 2 is a block diagram illustrating remote access device 118 in accordance with one implementation of the present invention. Remote access device 118 includes a processor 202, an input-output interface 204, a digital interface 206, a memory 208, and a secondary storage 210, coupled together over an internal bus 212.
Processor 202 can be a general purpose processor such as an Intel Pentium processor or an application specific integrated circuit (ASIC) designed to execute an application designed in accordance with the present invention. Input-output interface 204 can be connected to a number of different peripheral devices such as a keyboard, a mouse or pointing device, an external storage device, or a printer. Digital interface 206 is a digital bus such as the IEEE-1394 digital serial interface used to connect devices together such as digital devices 102 as illustrated in FIG. 1. Devices using the digital interface may be less expensive and faster because they do not need analog to digital converters to process commands and information. Secondary storage 210 includes any device used to store information used by remote access device 118 or any other device coupled to digital interface 206.
Memory 208 includes a run time environment 214, a physical link process 216, a digital link process 218, a digital transaction process 220, a digital interface application programming interface (API) 222, and a remote access process 224. Runtime environment 214 facilitates execution on processor 202 of software processes located in memory 208. Examples of different run-time environments 228 compatible with implementations of the present invention include real-time operating systems (RTOS) for real-time processing, UNIX-based operating systems, or Microsoft Windows.
Physical link process 216 provides connectivity processing between an IEEE- 1394 device and physical cable 132. Besides transmitting and receiving data, physical link process 216 provides arbitration to insure all devices have fair access to the digital serial bus. Some additional tasks include encoding/decoding of data, synchronizing data, maintaining signal levels, and identifying connection states.
Digital link process 218 provides data packet delivery service for two types of packets: asynchronous and isochronous. Asynchronous is the conventional protocol of transmitting and waiting for an acknowledgment of the transmission before continuing while isochronous protocol provides real-time bandwidth for just-in-time delivery of information. For example, videos may be delivered using isochronous packets while electronic mail can be delivered using asynchronous packets.
Digital transaction process 220 preferably supports an asynchronous protocol including write, read, and lock commands. A write command sends data from an originating device to a receiving device and a read returns data to the originating device. When executed, the lock command returns acknowledgment when a read or write request has been transmitted from the originating device to the receiving device and is then processed by the receiving device.
Digital Interface API 222 includes a set of routines and library calls to interface an application, such as remote access process 224, to lower layers of the communication protocol in memory 208. Digital Interface API 222 accounts for many of the routine tasks required to use the digital interface. For example, digital interface API 216 can be used to allocate and deallocate file handles assigned to digital devices 102.
In one implementation the user interacts with remote access process 224 to control digital devices 102. For example, remote access process 224 sends the user a list of devices coupled to digital interface 206. The user can then use remote access process 224 to send basic commands to the devices. Such commands may include, e.g., stop, play, forward, rewind, and record. Alternatively, if more sophisticated commands peculiar to the particular device are desired, the user may choose to access the devices directly via the digital interface and use remote access process 224 to pass commands and information.
FIG. 3 is a flow diagram indicating the stages used to control digital devices 102 in accordance with one embodiment of the present invention. Initially, a user connects to remote access device 118 over a network (stage 302). To make this connection, a user may use a phone device or a computer having a wired or wireless connection to remote access device 118. The network may carry information to remote access device 118 over a packet network based on the Internet Protocol or the ATM protocol. In one implementation, remote access device 118 converts packets on a packet network such as ATM into packets compatible with a digital interface using the IEEE-1394 standard. Alternatively, remote access device 118 may convert data from a circuit switched network such as a plain old telephone system (POTS) into packets corresponding to the IEEE-1394 standard.
Before sending commands to digital devices 102, remote access device 118 may authenticate and authorize a user (stage 303). A user is authenticated by providing a proper user name and password. Once a user is authenticated, an authorization process determines the devices and resources the user may access and control. For example, a child may be authorized to control a stereo but not authorized to control a television receiver.
Next, remote access device 118 identifies devices coupled to the digital interface (stage 304). As discussed above, these devices may include computer system 122, digital video camera 124, digital playback device 126, alarm system 128, and home appliances 130. When initially connected, each device registers identification information with remote access device 118 including model number, features, and capabilities. Then, during operation, remote access device 118 transmits
audio and visual information listing the devices attached to the digital interface. For example, remote access device 118 may send image information to a display device with a numeric listing of the available devices. Alternatively, remote access device 118 may send audio information to a phone or speaker device identifying the available devices coupled to the digital interface.
Remote access device 118 then receives a user's selection and determines which device is to be controlled (stage 306). A user may send remote access device 118 a voice command or an alphanumeric menu selection to identify the device. Once the device is identified or selected, the user sends commands to the device. These commands may pass through remote access device 118 directly to the selected device (stage 308). By passing through remote access device 118, the user may access more complex commands to control the selected device.
In a first mode of operation, this is a two-step process: the first step involves accessing the remote access to see what devices are available and the second step involves accessing a particular device and sending commands. For example, alarm system 128 may have advanced features to control operation of cameras and sensor devices located throughout a home that remote access device 118 may not have the capabilities to control directly. If the user logs onto alarm system 128, commands are processed directly by alarm system 128. In this mode, commands are passed through remote access device 118 and transmitted directly to the selected device (stage 310). The selected device responds to the commands and may generate additional information. If the user requests, the information is returned to the user through remote access device 118 (stage 312). For example, a user may send commands causing digital playback device 126 to send corresponding audio and video information back to the user through digital interface 206 and over the network for remote viewing on a display device and remote listening over a speaker device.
Alternatively, remote access device 118 may be used to control the selected device directly (stage 308). In this second mode, remote access device 118 controls the selected device and the user transmits commands to remote access device 118 for processing (stage 314). Typically, remote access device 118 can transmit commands commonly used to control one or more devices. For example, remote access device
118 includes commands such as stop, play, forward, reverse, fast forward, fast reverse, and volume control. Once the user specifies a command, remote access device 118 transmits the appropriate digital signals to the selected device (stage 316). The selected device processes the command and sends information back to remote access device 118. Once the selected device completes this process, remote access device 118 then forwards the resulting information back to the user for viewing, listening, or analysis (stage 318).
While specific embodiments have been described herein for purposes of illustration, various modifications may be made without departing from the spirit and scope of the invention. For example, implementations of the present invention can also use command languages other than HAVi, and may use the Control A-I or S- Link protocol developed by the Sony Corporation. Further, although aspects of the present invention are described as being stored in memory and other storage media, one skilled in the art will appreciate that these aspects of the present invention can also be stored on or read from other types of computer-readable media, such as secondary storage devices, like hard disks, floppy disks, or CD-ROM; a carrier wave from the Internet, or other forms of RAM. Accordingly, the invention is not limited to the above described embodiments, but instead is defined by the appended claims in light of their full scope of equivalents.