`
`
`
`U.S. Patent
`
`Aug. 23, 2011
`
`Sheet 2 of 4
`
`US 8,004,389 Bl
`
`L START j
`...
`A CODESET USABLE TO COMMUNICATE WITH AN ELECTRONIC
`CONSUMER DEVICE IS IDENTIFIED TO A KEY CODE GENERATOR
`DEVICE (FOR EXAMPLE, BY A USER USING A REMOTE CONTROL
`DEVICE AND AN ON-SCREEN DISPLAY)
`
`+
`
`THE USER PRESSES A KEY ON THE REMOTE CONTROL DEVICE, AND A
`CORRESPONDING KEYSTROKE INDICATOR SIGNAL IS SENT TO THE
`KEY CODE GENERATOR DEVICE, THE KEY CORRESPONDS TO A
`DESIRED FUNCTION OF THE ELECTRONIC CONSUMER DEVICE
`j
`THE KEY CODE GENERATOR DEVICE USES THE IDENTIFIED CODESET
`TO GENERATE A KEY CODE CORRESPONDING TO THE PRESSED KEY
`~
`THE KEY CODE GENERATOR DEVICE MODULATES THE KEY CODE
`ONTO A FIRST CARRIER SIGNAL (FOR EXAMPLE, AN RF SIGNAL),
`THEREBY GENERATING A FIRST KEY CODE SIGNAL
`
`+
`
`THE FIRST KEY CODE SIGNAL IS TRANSMITTED FROM THE KEY CODE
`GENERATOR DEVICE AND TO THE REMOTE CONTROL DEVICE
`~
`THE REMOTE CONTROL DEVICE RECEIVES THE FIRST KEY CODE
`SIGNAL AND RELAYS THE KEY CODE BY TRANSMITTING THE KEY
`CODE IN A SECOND KEY CODE SIGNAL, THE SECOND KEY CODE
`SIGNAL USES A SECOND CARRIER SIGNAL (FOR EXAMPLE, AN IR
`SIGNAL) TO CARRY THE KEY CODE
`
`+
`
`THE SECOND KEY CODE SIGNAL IS RECEIVED ONTO THE ELECTRONIC
`CONSUMER DEVICE
`
`THE KEY CODE CAUSES THE ELECTRONIC CONSUMER DEVICE TO
`PERFORM THE DESIRED FUNCTION
`
`+
`
`+
`
`[ END
`
`j
`
`FIG. 2
`
`r--
`
`100
`
`r--
`
`101
`
`102
`
`r-- 103
`
`104
`
`r-- 105
`
`106
`
`107
`
`Universal Electronics Inc., Exhibit 2005
`Roku, Inc. v. Universal Electronics Inc., IPR2019-01612
`
`
`
`
`
`KEY CODE
`SIGNAL
`19-............
`
`START
`BIT
`
`SYSTEM DATA
`
`KEY DATA
`
`PARITY STOP
`BIT
`BIT
`
`;
`
`0
`
`1
`
`0
`
`1
`
`0
`
`0
`
`0
`
`1
`
`1
`
`1
`
`0
`
`0
`
`\
`
`I I I I I I I
`
`I I
`
`I I
`
`I I
`
`I
`
`I
`
`I
`
`2
`
`3
`
`4
`
`5
`
`6
`
`7
`
`8
`
`9
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`BIT NUMBER
`
`BINARY TRANSMISSION
`FIG. 4
`
`~
`00
`•
`~
`~
`~
`
`~ = ~
`
`~
`~
`N
`(.H
`
`~
`
`N
`
`0 ....
`....
`
`START
`BIT
`{
`
`o
`
`. 111111~1~~ •
`
`o
`
`SYSTEM DATA
`
`1
`
`1
`
`o
`
`~ •
`
`1
`
`~ r~ 11111111111111111111
`
`2
`
`KEY CODE
`SIGNAL
`19
`KEY DATA
`.............
`- -
`ooo
`1
`
`PARITY STOP
`BIT
`BIT
`oof
`
`I
`
`~~ mm~.
`
`5 msec
`
`1
`
`~~~~~~~~~~~~~~~~~~~~
`
`4
`
`1
`
`1111111111111111111111
`3
`
`PULSE WIDTH MODULATION
`FIG. 5
`
`rFJ =(cid:173)
`.....
`
`('D
`('D
`
`.j;o.
`
`0 .....
`
`.j;o.
`
`d
`rJl
`
`00 = = ~ w
`\C = """"'
`
`00
`
`Universal Electronics Inc., Exhibit 2005
`Roku, Inc. v. Universal Electronics Inc., IPR2019-01612
`
`
`
`US 8,004,389 Bl
`
`1
`RELAYING KEY CODE SIGNALS THROUGH
`A REMOTE CONTROL DEVICE
`
`CROSS REFERENCE TO RELATED
`APPLICATION
`
`This application is a continuation of, and claims priority
`under 35,U.S.C. §120 from, nonprovisional U.S. patent
`application Ser. No. 10/737,029 entitled "Relaying Key Code
`Signals Through a Remote Control Device," filed on Dec. 16,
`2003, now U.S. Pat. No. 7,589,642, the subject matter of
`which is incorporated herein by reference.
`
`TECHNICAL FIELD
`
`The present invention relates generally to remote control
`devices and, more specifically, to relaying key code signals
`through a remote control device to operate an electronic con(cid:173)
`sumer device.
`
`BACKGROUND
`
`Most households today possess multiple types of elec(cid:173)
`tronic consumer devices, such as televisions, stereo radios,
`digital video disk players, video cassette recorders, set-top
`cable television boxes and set-top satellite boxes. Manufac(cid:173)
`turers of such electronic devices typically supply a remote
`control device along with each electronic device. It is, there(cid:173)
`fore, common for a consumer who has multiple electronic
`devices to have multiple remote control devices.
`A remote control device typically controls a selected elec(cid:173)
`tronic consumer device by transmitting infrared key code 30
`signals to the selected electronic consumer device. The infra(cid:173)
`red signals contain key codes of a codeset associated with the
`selected electronic consumer device. Each key code corre(cid:173)
`sponds to a function of the selected electronic device, such as
`power on, power off, volume up, volume down, play, stop, 35
`select, channel up, channel down, etc. In order to avoid the
`situation where a remote control device unintentionally oper(cid:173)
`ates an electronic consumer device that is associated with a
`different remote control device, manufacturers sometimes
`use distinct codesets for the communication between various 40
`electronic consumer devices and their associated remote con(cid:173)
`trol devices. The codesets can differ from each other not only
`by the bit patterns assigned to various functions of the asso(cid:173)
`ciated electronic consumer device, but also by the timing
`information that describes how the key codes should be
`modulated onto carrier signals to generate key code signals.
`Consumers may find it inconvenient to operate their elec(cid:173)
`tronic devices using multiple remote control devices. Thus, a
`consumer may wish to operate multiple electronic consumer
`devices using a single remote control device. A single remote
`control device can store many codesets so that the remote 50
`control device can control a corresponding large number of
`different electronic consumer devices. There are, however,
`thousands of codesets in use in electronic consumer devices
`today. Manufacturers of remote control devices, however,
`may wish to limit the memory on their remote control devices 55
`to a size that is insufficient to store the thousands of existing
`codesets.
`A system is sought for enabling a remote control device to
`control a selected one of multiple different electronic con(cid:173)
`sumer devices without requiring the codeset associated with 60
`the selected electronic consumer device to be stored on the
`remote control device.
`
`2
`consumer device to be controlled without storing the associ(cid:173)
`ated codeset on the remote control device. Upon receiving a
`keystroke indicator signal from a remote control device, a key
`code generator device, such as a set-top box, identifies the
`particular codeset usable to communicate with the selected
`electronic consumer device. The keystroke indicator signal
`contains an indication of a key on the remote control device
`that was pressed, which corresponds to a function of the
`selected electronic consumer device. Using the identified
`10 codeset and the indication of the pressed key, the key code
`generator device generates a key code and modulates that key
`code onto a radio frequency carrier signal, thereby generating
`a first key code signal. The remote control device receives the
`15 first key code signal from the key code generator device and
`modulates the key code onto an infrared frequency carrier
`signal, thereby generating a second key code signal. The
`remote control device relays the key code to the selected
`electronic consumer device in the second key code signal.
`20 The key code causes the selected electronic consumer device
`to perform the desired function. The key code is not stored on
`the remote control device in a permanent manner, but rather
`the key code is relayed through the remote control device.
`In another embodiment, a third key code signal (which
`25 may, for example, be a radio frequency signal) is communi(cid:173)
`cated directly from the key code generator device to an elec(cid:173)
`tronic consumer device. A key code contained in the third key
`code signal causes the electronic consumer device to perform
`a desired function.
`In yet another embodiment, the system automatically
`determines which codeset is usable to communicate with a
`selected electronic consumer device. The key code generator
`device sends key codes for one particular function from
`among a series of codesets one-by-one to the selected elec(cid:173)
`tronic consumer device. When the key code from one of the
`codesets causes the electronic consumer device to perform
`the desired function, electromagnetic noise is introduced into
`electrical power wiring through which both the electronic
`consumer device and the key code generator device receive
`power. When the key code generator device detects this noise
`on the electrical power wiring, the key code generator device
`identifies the codeset corresponding to the last transmitted
`key code to be the codeset usable to communicate with the
`selected electronic consumer device.
`Other embodiments and advantages are described in the
`detailed description below. This summary does not purport to
`define the invention. The invention is defined by the claims.
`
`45
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The accompanying drawings, where like numerals indicate
`like components, illustrate embodiments of the invention.
`FIG. 1 is a schematic diagram of a system for relaying key
`code signals through a remote control device.
`FIG. 2 is a flowchart of a method for relaying key code
`signals through a remote control device.
`FIG. 3 is an illustration of a key code transmitted within a
`key code signal.
`FIG. 4 is a waveform diagram of a first example of a key
`code signal transmitted by a remote control device in the
`system of FIG. 1.
`FIG. 5 is a waveform diagram of a second example of a key
`code signal transmitted by a remote control device in the
`65 system of FIG. 1.
`FIG. 6A is an illustration of a modulated digital zero and
`digital one within the key code signal of FIG. 5.
`
`SUMMARY
`
`A system for relaying a key code through a remote control
`device to an electronic consumer device allows the electronic
`
`Universal Electronics Inc., Exhibit 2005
`Roku, Inc. v. Universal Electronics Inc., IPR2019-01612
`
`
`
`US 8,004,389 Bl
`
`3
`FIG. 6B is a more detailed illustration of a mark of a
`modulated digital zero within the key code signal of FIG. 5.
`
`DETAILED DESCRIPTION
`
`Reference will now be made in detail to some embodi(cid:173)
`ments of the invention, examples of which are illustrated in
`the accompanying drawings.
`FIG. 1 is a diagram of a system 10 for relaying a key code
`through a remote control device 11 to an electronic consumer
`device in accordance with the present invention. FIG. 2 is a
`flowchart that illustrates a method of operation of system 10.
`System 10 includes a key code generator device 12, remote
`control device 11, a first electronic consumer device 13 and a
`second electronic consumer device 14. In this example, sec- 15
`ond electronic consumer device 14 is a television set.
`In a first step (step 100), key code generator device 12
`determines the appropriate codeset that controls the type,
`brand and model of the particular electronic consumer device
`that is to be controlled. A user uses remote control device 11 20
`to respond to an on-screen display 15 on the screen of televi(cid:173)
`sion set 14 to step through a sequence of menu screens to
`identify the codeset corresponding to the device that is to be
`controlled. The user does this by identifYing, on on-screen
`display 15, the type, brand and model of the particular elec(cid:173)
`tronic consumer device. In this example, the user is identifY(cid:173)
`ing first electronic consumer device 13, which is a video
`cassette recorder (VCR) manufactured by Sony with model
`number 8000. In FIG. 1, the user is identifying the device type
`by highlighting the choice "VCR" on the on-screen display.
`In another example, subsequent to controlling VCR 13, the
`user may wish to control television set 14, which is a "Gold"
`model manufactured by RCA. In that case, the user begins
`identifying television set 14 by highlighting the choice "TV".
`In the present example, key code generator device 12 is a 35
`set-top box. Key code generator device 12 generates the on(cid:173)
`screen displays and communicates with television set 14 such
`that key code generator device 12 identifies one of a plurality
`of codesets that corresponds to one of the electronic con(cid:173)
`sumer devices identified by the user, such as VCR 13 or
`television set 14. System 10 uses the appropriate codeset to
`enable remote control device 11 to communicate with VCR
`13 and television set 14.
`Next (step 101), the user presses a key on remote control
`device 11. This key is associated with a function that the user
`wants performed by an electronic consumer device. For
`example, the function may be to turn on the power ofVCR 13.
`When the user presses the "VCR power-on" key on remote
`control device 11, remote control device 11 transmits a key(cid:173)
`stroke indicator signal16 from a radio frequency (RF) trans- 50
`mitter 17 on remote control device 11. Alternatively, two or
`more keys on remote control device 11 may be associated
`with a single function, such as turning on the power of VCR
`13. In that case, the user presses a "VCR" key and then a
`"power-on" key to cause remote control device 11 to transmit
`keystroke indicator signal16. Keystroke indicator signal16 is
`transmitted as a signal in a radio frequency band to an RF
`receiver 18 on key code generator device 12.
`There are multiple forms in which an indication of the
`pressed key, as well as the identity of the electronic consumer
`device that is to perform the associated function, can be
`communicated in keystroke indicator signal16 from remote
`control device 11 to key code generator device 12. In one
`embodiment, the indication of the pressed key is a key code
`comprised of a standardized system code and standardized
`key data. In the present example, the standardized system
`code identifies the type of electronic consumer device that is
`
`4
`to be controlled, such as a TV, a VCR, a DVD player, a stereo
`amplifier, a satellite receiver or a cable receiver. The standard(cid:173)
`ized system code and key data are part of a commonly used
`codeset that is stored on remote control device 11. Remote
`control device 11 uses any one of a number of commonly used
`modulation techniques to modulate the system code and key
`data to form keystroke indicator signal 16. For example, a
`microcontroller on remote control device 11 uses timing
`information associated with the commonly used codeset to
`10 generate a pulse width modulated keystroke indicator signal
`16.
`In another embodiment, the indication of the pressed key
`includes a proprietary identification code identifYing the
`pressed key, as well as a proprietary identification code cor(cid:173)
`responding to the type of the electronic consumer device that
`is to be controlled. The proprietary identification codes are
`understood by key code generator device 12, but are not
`standardized codes that are understood by electronic con(cid:173)
`sumer devices. Remote control device 11 uses any one of a
`number of commonly used modulation techniques to modu(cid:173)
`late the proprietary identification codes onto keystroke indi-
`cator signal16.
`Whether remote control device 11 communicates with key
`code generator device 12 through a standardized codeset or
`25 through proprietary identification codes, codes may be
`included that do not correspond to pressed keys or functions
`that are to be performed on electronic consumer devices. For
`example, in response to receiving any signal from remote
`control device 11, key code generator device 12 may return a
`30 code to remote control device 11 causing a light emitting
`diode (LED) display on remote control device 11 to turn on.
`Next (step 102), key code generator device 12 determines
`which key code of the codeset previously identified in step
`100 corresponds to the pressed key.
`FIG. 3 illustrates one example of a key code from a com-
`monly used codeset. The key code is comprised of a standard(cid:173)
`ized system code and standardized key data. Both the system
`code and the key data are digital values. The 12-bit key code
`includes a 4-bit system code [0101] and 8-bit key data
`40 [000111 00]. In the present example, the key code is the key
`code in the identified codeset that corresponds to the "VCR
`power-on" key of remote control device 11.
`Next (step 103), key code generator device 12 modulates
`the key code for the power-on function ofVCR 13 onto a first
`45 carrier signal, thereby generating a first key code signal19. In
`this example, the first carrier signal is an RF signal. An RF
`signal for purposes of this patent document is an electromag(cid:173)
`netic signal having a frequency between thirty hertz and three
`hundred gigahertz.
`FIG. 4 and FIG. 5 illustrate key code signal 19 in two
`specific embodiments. In both embodiments, the key code is
`transmitted as a stream of digital values 010100011100,
`where the system code is transmitted first immediately fol(cid:173)
`lowed by the key data without any place holders between
`55 them. The standardized system code determined in step 102
`need not identifY the brand or model ofVCR 13, but only the
`fact that first electronic consumer device 13 is a VCR. The key
`code is modulated in step 103 using timing information asso(cid:173)
`ciated with the code set for VCR 13. Thus, the particular brand
`60 and model of VCR 13 is able to understand the key code
`modulated using the appropriate timing information.
`In the embodiment ofFIG. 4, key code signal19 is a 15-bit
`binary transmission whose bit pattern appears as a universal
`asynchronous receiver and transmitter (UART) type commu-
`65 nication. The binary transmission begins with a start bit and
`ends with a parity bit and a stop bit. The parity bit is calculated
`based on the 12-bit key code within the binary transmission.
`
`Universal Electronics Inc., Exhibit 2005
`Roku, Inc. v. Universal Electronics Inc., IPR2019-01612
`
`
`
`US 8,004,389 Bl
`
`5
`In this example, the value of the parity bit is a digital zero. An
`intermediary signal is transmitted over the first carrier signal
`at an intermediary frequency (for example, 100kHz) to com(cid:173)
`municate a digital one. The absence of the intermediary signal
`indicates a digital zero. The intermediary signal has a lower
`frequency than the first carrier signal.
`In the embodiment of FIG. 5, the 12-bit key code is modu(cid:173)
`lated onto key code signal19 using pulse width modulation.
`Digital ones and zeros are characterized by pairs of marks and
`spaces. The period between successive leading edges of the
`bursts in a mark is the period of an intermediary signal. The
`intermediary signal has an intermediary frequency. In a space,
`there are no bursts.
`FIG. 6A shows a digital zero and a digital one in key code
`signal 19 of FIG. 5 in more detail. A "mark/space" pair 15
`represents a digital zero and another "mark/space" pair rep(cid:173)
`resents a digital one. The marks and spaces of each pair have
`predetermined lengths. In the embodiment of FIG. 5, the
`mark length of a digital zero is 490 microseconds, and the
`mark length of a digital one is 3940 microseconds. The space
`length of a digital zero is 950 microseconds, and the space
`length of a digital one is 2000 microseconds.
`FIG. 6B shows the bursts of the first carrier signal that
`comprise the intermediary signal in more detail. In the
`embodiment of FIG. 5, the bursts that comprise the interme(cid:173)
`diary signal occur every ten microseconds, resulting in an
`intermediary frequency of 100 kilohertz. The duty cycle of
`the intermediary signal is characterized by an "on time" of
`four microseconds and an "off time" of six microseconds.
`There are forty-nine bursts of the carrier signal within each
`mark length of 490 microseconds.
`Timing information other than that shown in the embodi(cid:173)
`ment of FIG. 5 can also be used. For example, one common
`form of pulse width modulation uses an intermediary signal
`having a frequency of about 38.5 kilohertz. Each period of the 35
`intermediary signal has an "on time" often microseconds and
`an "off time" of sixteen microseconds. If such an intermedi(cid:173)
`ary signal were used to generate a 490 microsecond mark
`length of a digital zero shown in FIG. 6A, there would be 19
`bursts of the intermediary signal in the mark. Similarly, if 40
`such an intermediary signal were used to generate a 3940
`microsecond mark length of a digital one shown in FIG. 6A,
`there would be 151 bursts of the intermediary signal in the
`mark.
`Next (step 104), anRF transmitter20 ofkey code generator 45
`device 12 transmits first key code signal19 in the form of an
`RF transmission to an RF receiver 21 on remote control
`device 11.
`Next (step 105), remote control device 11 receives first key
`code signal19 and relays the key code communicated by first 50
`key code signal19 to VCR 13 in the form of a second key code
`signal 22. Remote control device 11 is a slave to key code
`generator device 12. Remote control device 11 relays the key
`code by receiving first key code signal 19 in RF form and
`translating the communicated key code so that the key code is 55
`modulated onto a second carrier signal resulting in second
`key code signal22. In this example, the second carrier signal
`is an infrared signal with a frequency in the range between
`three hundred gigahertz and three hundred terahertz. Second
`key code signal 22 is transmitted by an IR transmitter 23 on 60
`remote control device 11 to VCR 13. In the embodiment of
`FIG. 5, key code signal19 is converted into key code signal22
`by forming the bursts of the intermediary signal using the
`second carrier signal with an infrared frequency in the place
`of the first carrier signal with a radio frequency. For both key 65
`code signal19 and key Code signal22, digital ones and digital
`zeros are modulated using the same timing for "mark/space"
`
`6
`pairs. The waveform diagram of key code signal22 appears
`the same as the waveform diagram shown in FIG. 5 for key
`code signal 19; only the frequency of the carrier signal that
`forms the bursts is different.
`Next (step 106), second key code signal22 is received onto
`electronic consumer device (VCR) 13 by an IR receiver 24.
`Next (step 107), IRreceiver24 on VCR 13 recovers the key
`code from second key code signal 22. VCR 13 is thereby
`instructed to perform the function desired by the user. In this
`10 example, the function is to power on VCR 13. Other key
`codes, however, correspond to other functions, such as power
`off, channel advance, charmel back, volume up, volume
`down, cursor up, cursor down, cursor right, cursor left, select,
`play, record, stop, forward, rewind and pause.
`In a second example, an electronic consumer device is
`controlled by an RF key code signal transmitted from key
`code generator device 12. Subsequent to controlling VCR 13,
`the user wishes to control second electronic consumer device
`14, which is a "Gold" model RCA television set. In the second
`20 example, the user uses the on-screen display 15 to identify the
`type (TV), brand (RCA) and model (Gold) of second elec(cid:173)
`tronic consumer device 14. Key code generator device 12
`determines the appropriate codeset that controls television set
`14. The user then presses a key on remote control device 11
`25 associated with a function that the user wants performed by
`television set 14. For example, the function is to advance the
`channel of television set 14. When the user presses the chan(cid:173)
`nel advance key on remote control device 11, an indication of
`the pressed key is transmitted in an RF keystroke indicator
`30 signal from remote control device 11 to key code generator
`device 12.
`Key code generator device 12 then determines which key
`code of the identified codeset corresponds to the pressed key.
`Key code generator device 12 modulates the key code for the
`channel advance function onto an RF carrier signal, thereby
`generating a third key code signal 25. Key code generator
`device 12 uses the same modulation technique to generate
`both third key code signal 25 and first key code signal 19.
`Third key code signal25 is modulated using timing informa(cid:173)
`tion associated with the codeset that controls RCA Gold
`television set 14.
`In this second example, television set 14 has an RF receiver
`26 and is capable of receiving RF key code signals. RF trans(cid:173)
`mitter 20 of key code generator device 12 transmits third key
`code signal 25 directly to television set 14. Third key code
`signal25 is received onto television set 14 by RF receiver 26,
`and RF receiver 26 recovers the key code from third key code
`signal 25. Television set 14 is thereby instructed to advance
`the channel.
`Although remote control device 11 in the first example
`stores either a proprietary codeset or a standardized codeset
`and uses that codeset to generate keystroke indicator signal
`16, remote control device 11 stores only that single codeset.
`This codeset is the codeset used by key code generator device
`12 to receive communications from remote control device 11.
`Remote control device 11 can therefore be made inexpen(cid:173)
`sively and may contain a relatively small amount of memory.
`The memory may, for example, be read only memory (ROM)
`on a microcontroller integrated circuit (for example, a ZS
`microcontroller available from Zilog, Inc. of San Jose, Calif.)
`Even though remote control device 11 stores only a single
`codeset, system 10 of FIG. 1 nevertheless allows remote
`control device 11 to control the desired electronic consumer
`device 13, which may use any one of thousands of different
`codesets. Key code generator device 12 may, for example,
`include a hard disk or other mass storage device that stores
`thousands of possible codesets. The user may use remote
`
`Universal Electronics Inc., Exhibit 2005
`Roku, Inc. v. Universal Electronics Inc., IPR2019-01612
`
`
`
`US 8,004,389 Bl
`
`10
`
`7
`control device 11 to select any one of those codesets for
`communication with the particular electronic consumer
`device 13. In comparison to some conventional systems
`where codesets are downloaded into a universal remote con(cid:173)
`trol device from a personal computer or other device that is
`not normally part of an entertainment system, system 10 uses
`preexisting hardware of the entertainment system (such as the
`on-screen display functionality, data storage capability, and
`wireless communication ability of the set-top box) to source
`and identifY codesets.
`Although the specific embodiments of FIGS. 1 and 2 are
`explained above in connection with the codesets being iden(cid:173)
`tified to the key code generator device 12 using an on-screen
`display, the code set usable to communicate with an electronic 15
`consumer device may be identified to key code generator
`device 12 in other ways in other embodiments. In one
`embodiment, for example, the key code generator device
`includes autoscan functionality. Key code generator device
`12 includes an EMI detector 27 that detects electromagnetic 20
`interference (EMI) or noise on power cord 28. Power cord 28
`is a power cord through which key code generator device 12
`receives electrical power from a wall socket 29. Similarly,
`television set 14 receives power from another wall socket 30
`via a power cord 31. VCR 13 receives power from a wall 25
`socket 32 via another power cord 33. In accordance with the
`autoscan functionality, key code generator device 12 identi(cid:173)
`fies the codeset used to communicate with a particular elec(cid:173)
`tronic consumer device by generating and transmitting a
`sequence of key code signals relayed through remote control 30
`device 11 to the electronic consumer device to be controlled
`(in this case VCR 13). Each of these key code signals contains
`a different key code corresponding to the same desired func(cid:173)
`tion on different device types, brands and models.
`In one example, the desired function is the function of 35
`powering on VCR 13. The key code generator device 12 sends
`the power-on key codes for each of a series of codesets one(cid:173)
`by-one to VCR 13. When the key code for one of the codesets
`causes VCR 13 to perform the desired function (in this case,
`to power on), VCR 13 introduces noise or other electromag- 40
`netic interference via cord 33 into wall socket 32. The power
`terminal within wall socket 32 is connected through wiring 34
`to the power terminal in wall socket 29. The noise generated
`by VCR 13 is therefore communicated through wiring 34, the
`power terminal of wall socket 29 and power cord 28 to EMI
`detector 27 on key code generator device 12. When key code
`generator device 12 detects the electromagnetic interference
`on power cord 28, key code generator device 12 automatically
`identifies the codeset used by VCR 13 as the codeset used to
`communicate the last key code signal for the power-on func- 50
`tion.
`Multiple electronic consumer devices may have the same
`key data for a particular function, for example, the power-on
`function. A key code, however, also contains a system code
`(see FIG. 3) that corresponds to a particular type of electronic
`consumer device. For example, the system code used for a
`television set will typically be different than the system code
`used for a video cassette recorder. Thus, different device types
`that use the same key data for the power-on function will not
`respond to a key code containing an incorrect system code. 60
`Each of the power-on key codes transmitted in this example
`by key code generator device 12 contains the system code for
`a video cassette recorder, so television set 14 does not recog(cid:173)
`nize the key codes. Because key code generator device 12 is
`aware of the system code communicated, key code generator 65
`device 12 determines that it was VCR 13 that was powered on
`and not television 14.
`
`8
`In another example, the codeset usable to communicate
`with VCR 13 is identified to key code generator device 12
`using autoscan functionality that does not involve key code
`generator device 12 having a specialized EMI detection cir(cid:173)
`cuit. In that case, the user may be prompted by successive
`screens of on screen display 15 to push the power-on key on
`remote control device 11 multiple times. Each time the
`power-on key is pressed, keystroke indicator signal16 com(cid:173)
`municates this to key code generator device 12. Key code
`generator device 12 in tum generates and transmits a key code
`signal containing a power-on key code using a different
`codeset. Each key code signal is relayed through remote
`control device 11 to the particular electronic consumer device
`to be controlled. One by one the user is prompted to push the
`power-on key, and key code generator device 12 in tum gen(cid:173)
`erates key codes using different codesets until the electronic
`consumer device performs a desired function. In this case,
`first electronic consumer device 13 turns on. The user is
`prompted not to press the power-on key once the user sees the
`desired function being performed by first electronic con(cid:173)
`sumer device 13. In the present example, light emitting diodes
`(LEDs) on the face ofVCR 13 may be illuminated to indicate
`to the user that VCR 13 has powered on. When the user stops
`pressing the power-on key, then the key code generator device
`12 identifies the code set of the last transmitted key code to be
`the codeset used by the electronic consumer device.
`In another example, the user presses keys on remote control
`device 11 to communicate to key code generator device 12 a
`3-digit codeset identification number identifYing the codeset.
`The user may determine this codeset identification number by
`looking up the codeset identification number in a booklet
`supplied along with the electronic consumer device to be
`controlled. Alternatively, a table of manufacturers, model
`numbers and their associated codesets may be used to lookup
`the codeset identification number.
`In an embodiment where key code generator device 12 is a
`set-top box, the set-top box receives a video input signal 35
`from a cable television coaxial cable 36. Video input signal35
`is ultimately delivered to television set 14 through cables 37.
`Coaxial cable 36 is also used to provide networking connec(cid:173)
`tivity between the set-top box and a network 38. Network 38
`may, for example, be or include the Internet. A database of
`codesets 39 is maintained at a remote location. As new elec-
`tronic consumer devices are introduced onto the market, new
`45 codesets may be necessary to communicate with these new
`devices. So that one such new code set can be distributed from
`database of codesets 39 when a new electronic consumer
`device is introduced into the market, this new codeset is
`communicated via network 38 and coaxial cable 36 to key
`code generator device 12. The new codeset is then stored on
`a mass storage hard disk within the set-top box. In this way,
`the pre-existing and inexpensive remote control device 11 can
`be used to control a new electronic consumer device whose
`required codeset did not exist at the t