WO2002035301A1 - Universal remote control - Google Patents

Universal remote control Download PDF

Info

Publication number
WO2002035301A1
WO2002035301A1 PCT/RU2001/000416 RU0100416W WO0235301A1 WO 2002035301 A1 WO2002035301 A1 WO 2002035301A1 RU 0100416 W RU0100416 W RU 0100416W WO 0235301 A1 WO0235301 A1 WO 0235301A1
Authority
WO
WIPO (PCT)
Prior art keywords
remote control
program
reading
information medium
data
Prior art date
Application number
PCT/RU2001/000416
Other languages
French (fr)
Inventor
Dmitry Vyacheslavovich Zhurin
Original Assignee
Dmitry Vyacheslavovich Zhurin
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dmitry Vyacheslavovich Zhurin filed Critical Dmitry Vyacheslavovich Zhurin
Priority to AU2002214427A priority Critical patent/AU2002214427A1/en
Publication of WO2002035301A1 publication Critical patent/WO2002035301A1/en

Links

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C19/00Electric signal transmission systems
    • G08C19/16Electric signal transmission systems in which transmission is by pulses
    • G08C19/28Electric signal transmission systems in which transmission is by pulses using pulse code
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23051Remote control, enter program remote, detachable programmer
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23077Reconfigurable remote programmer, learn control signals for different devices
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23363Barcode
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25251Real time clock

Definitions

  • the present invention relates to remote control devices and more particularly to universal remote control units.
  • a bigger part of existing home and office appliances is equipped with remote control devices.
  • these appliances there are such remotely-controlled devices as TV sets, video cassette recorders (VCRs), optical disk players (including CD-audio, DVDs, laser videodisks), tuners, amplifiers,
  • VCRs video cassette recorders
  • optical disk players including CD-audio, DVDs, laser videodisks
  • tuners amplifiers
  • a remote control device is a small hand-held object. The user manipulates the remote control device to distantly send various commands to
  • Infrared wireless remote control units are most widely spread. These units emit infrared light pulses, that are coded commands to be recognized and executed by remotely-controlled devices. Also, there are devices and corresponding to them remote control units using other signal types, like sound or radiowaves, for transmission and reception
  • the prior art provides several approaches to developing a universal remote control device.
  • the first approach is based on pre-recording into the memory of the universal remote control device of remote control command codes for a big amount of televisions, VCRs, and other devices and the choice of a required set of commands to control the certain device.
  • This approach relates to a universal remote control unit disclosed in U.S.Pat. No. 4774511, 1988.
  • the memory of this device comprises command sets for control of a big number of devices produced by different manufacturers.
  • the appropriate commands set is selected by the way of dialing a code of the controlled device with the help of the keys or buttons on the remote control unit.
  • this approach results in selling this type of remote control units with a manual.
  • Such manual comprises the list of different models of TV sets, VCRs, satellite TV set-top-boxes and CD players of many manufacturers.
  • the code is provided for every model there a code is provided. To control the device, this code has to be dialed with the help of buttons on the remote control unit.
  • the similar approach is employed in remote control device disclosed in
  • the memory of this device comprises the recorded commands codes for many controlled devices.
  • the choice of the correct commands set is made by the way of receiving by universal remote control unit of a command from the original remote control unit of the selected controlled device. This method helps to simplify and accelerate the configuration procedure of the universal remote control device.
  • this system suffers from several limitations.
  • Said universal remote control units cannot be programmed to automatically fulfil a sequence of remote control commands at predetermined moments of time.
  • the other approach to implementing the universal remote control unit is based on creating learning devices that receive and remember commands sent in the teaching process from the original remote control device.
  • PCT Application WO 98/33332 discloses a universal remote control unit with infrared identification.
  • the memory of this device comprises several recorded protocols for transmitting commands of remote control.
  • the universal remote control device receives commands from the original remote control unit and determines the transmission protocol in use. Then, using the precise parameter of this protocol prerecorded in its memory, the remote control device determines commands codes herein and stores them. To determine the code for each command, it is necessary to send this command from the original remote control device and receive it by the universal remote control unit.
  • This universal remote control unit also can not be programmed to automatically fulfil a sequence of remote control commands.
  • This approach is used in the remotely upgradable universal remote control device exposed in U.S. Pat. No.5228077.
  • This device can receive from external computer and store in its memory commands code sets for controlling various devices.
  • the connection to an external computer can be direct and with the help of the telephone line modem.
  • the possibilities of programming the unit to control various devices are unlimited.
  • this universal remote control unit can not be programmed for automatic fulfillment of a commands sequence.
  • U.S. Pat. No.5552837, 1996 discloses a remote controller for scanning data and controlling a video system.
  • This device comprises means for reading from cards with machine-readable data codes about TV programs on various TV channels on various subjects and means for programming the viewing of selected programs or their recording on the VCR.
  • this remote control device cannot be programmed to fulfill other command sequences with other remotely-controlled devices, that is it is not a universal device in the above meaning.
  • U.S.Pat. No. 5382776 1995, exposes a combination of an optical-disk and barcode memory medium.
  • the optical disc is provided with a document with a printed barcode comprising a menu, commands and other data that make the search for needed information on the optical disk and fulfilling of the program recorded on the disk easier.
  • This patent provides an univocal correspondence of a barcode to a code on the optical disk.
  • this invention also does not provide the possibility to program the remote control unit to automatically fulfil various programs of remote control of different remotely-controlled devices.
  • U.S.Pat. No. 5905251 shows a hand-held portable WWW access terminal with visual display panel and GUI-based WWW browser program integrated with bar code symbol reader in a hand-supportable housing.
  • This device allows to read a barcoded URL printed on various objects and to distantly control a computer connected to the Internet to provide an access to Internet sites according to the above-mentioned URLs. But this terminal also cannot be used as a universal remote control device, as it is designed only to control computer when the Internet is used.
  • U.S. Patent No.5962839, 1999 demonstrates an apparatus programmable to perform a user defined sequence of actions.
  • This device can remember a sequence of instructions received when the sequence of bar codes is read and then reproduce this sequence of instructions controlling for example the electric engine in a toy car.
  • this device is capable of remembering only one sequence of instructions, and cannot be programmed to automatically fulfil many control programs of controlling various remotely-controlled devices.
  • objects and advantages of the present invention are: (a) to provide a universal remote control device, which can be programmed to automatically fulfil a sequence of remote control operations; (b) to provide a universal remote control device capable of automatic control of various remotely-controlled devices;
  • the universal remote control (URC) device can be programmed for controlling the execution of a predetermined sequence of operations by any of devices, commands codes from which are stored in the URC device memory.
  • the program of fulfilling the above- mentioned sequence of operations is input into the URC device by the way of scanning machine-readable codes and saved.
  • the recording of the program is done in a programming language accepted for these purposes and does not depend on the commands codes of a certain controlled device.
  • the read program is transformed into a sequence of commands codes that are transmitted to the controlled device.
  • Fig.1 shows an overview of a system comprising a universal remote control device, a set of code-bearing objects and a set of remotely-controlled devices;
  • Fig.2 shows a universal remote control unit block diagram according to the preferred embodiment
  • Fig.3 shows a general outlook of the universal remote control device
  • Figs.4A...4D show examples of objects bearing barcodes to be scanned with the present invention universal remote control device
  • Figs.5 A, 5B show a barcoded utility program for the universal remote control device
  • Fig.6 shows a logic division of the universal remote control unit memory into functional areas
  • Fig.7 shows data structure in Button Tables in the memory of the universal remote control device
  • Fig.8 shows data structure in Program Table in the memory of the universal remote control device
  • Fig.9 shows data structure in Event Table in the memory of the universal remote control device
  • Fig.10 shows a flowchart of a program run in the universal remote control device
  • Fig.11 shows a flowchart of a subroutine of scanning of a barcoded program
  • Fig.12 shows a flowchart of a subroutine of choosing and running of a utility program
  • Fig.13 shows a flowchart of a subroutine of checking of an event table and fulfilling of programmed operations.
  • Fig. 1 shows universal remote control (URC) device 200 of the present invention, which remotely controls a set of remotely-controlled devices 300.
  • URC universal remote control
  • a user scans by means of scanner 210 embedded into URC device 200 codes 110 born by code bearing objects 100.
  • the scanned information is transferred into information in a form of a programs which are stored in memory 220 of URC device 200.
  • the stored information is used then to transmit control commands or/and data by means of transmitting device 260 to remotely-controlled devices 300.
  • Command/data transmissions are initiated either by the user activating touch input device 240 or automatically due to the execution of a programs stored in memory 220 of URC device 200.
  • Each of remotely-controlled devices 300 comprises at least one controlling device 310, a number of input devices 320, a number of output devices 330, at least one remote control interface 340, and connection means 350.
  • the following commonly spread remotely-controlled devices correspond to such structure: TV sets, video cassette recorders (VCR), compact-disc audios (CD-audio), radiofrequency tuners, tape recorders, door locks, light switches, children's toys, laser video-disc players, DVD players, air-conditioners, remotely- controlled microwaves, and many other home and office appliances.
  • controlling device 310 is usually represented as a number of control circuits intended to control all the operation of the tape recorder. Often controlling device 310 may comprise a microprocessor or microcontroller and a controlling program.
  • Output devices 330 in a typical tape recorder are: recording heads, motors to drive tape, solenoids (electromagnets) to lock and eject cassettes, light emitting diodes (LEDs) or/and lamps for various modes indication, pointer indicators for signal level indication, controlled amplifiers for signal amplification.
  • Input devices 320 in a typical tape recorders are: tape reading heads, user controlled buttons for immediate mode control, such as Play, Stop, Fast Forward, Rewind, Record, Pause and others; buttons for mode selection, such as type of tape selection, reverse mode, filters control and others; tape velocity sensor and cassette presence sensor, some others.
  • a remote control interface 340 is represented by an infrared code receiver.
  • Connection means 350 are represented by elements dependent on a certain implementation of the tape recorder and can include glue logic, wiring, connectors, printed circuit boards, and other parts.
  • any remote control interface is either an input device or an input-output device.
  • an infrared remote control interface of a VCR is an input device
  • IrDA serial computer port is an input-output device, since it is capable of transmitting data in both directions.
  • the remote control interface 340 is shown separately on a block diagram of remotely-controlled device 300 in Fig. 1 to emphasize its connection with the present invention URC device 200.
  • Fig.2 shows a block diagram of URC device 200 according to the preferred embodiment of the present invention.
  • URC device 200 comprises microcontroller 202.
  • microcontroller mPD78F4216GC by NEC Electronics Inc.
  • Microcontroller 202 comprises central processor 204 and memory 220.
  • Memory 220 consists of Random Access Memory (RAM) 222 and Electrically-Programmable Read Only Memory (EPROM) 226, that for the indicated type of microcontroller have volumes of 8 Kbytes and 128 Kbytes accordingly. If the power is switched off, the information stored in EPROM 226 is saved. It is also possible to use separate integrated circuits of RAM 222 and EPROM 226.
  • RAM Random Access Memory
  • EPROM Electrically-Programmable Read Only Memory
  • URC device 200 contains scanning device 210, transmitting device 230, touch input device 240, display device 250, sound device 255, and real-time clock 260 connected to microcontroller 202 by interface means 270.
  • URC device 200 also contains power supply 280.
  • Scanning device 210 herein can be provided as a laser scanner or CCD scanner allowing to read code 1 10 from object 100 surface under the control of microcontroller 202. The examples of scanners are given in U.S.Pat. No.5126544, 1992, U.S.Pat. No.5914477, 1999, and many other publications.
  • Transmitting device 230 comprises an IR light-emitting diode (LED) and an electronic circuit transforming signals arriving from microcontroller 202 into current impulses via the above-mentioned LED. Transmitting device 230 as in the presently known manufactured remote control devices can be used.
  • Touch input device 240 comprises keys or buttons that can be connected to microcontroller 202 inputs/outputs. The implementation of touch input device 240 is not different from similar devices in the known remote control devices.
  • Display device 250 can be any suitable liquid crystal display (LCD), such as HDM128GS12Y, a product of Hantronix, Inc.
  • Sound device 255 comprises miniature loudspeaker and all the necessary elements. These schemes are well known in the art.
  • Real-time clock 260 can be provided as an integrated circuit DS 1305 by
  • Microcontroller 202 can set and read herefrom the current time and date.
  • Power supply 280 comprises two power elements of AA type. If necessary, power supply 280 herein can comprise a voltage converter, for example MAX856CSA by Maxim Integrated Circuits, Inc.
  • remote control 200 has housing 201 having window 212 in the upper end surface. Light rays come through this window 212 in both directions. Behind window 212 there is scanning device 210, not visible in Fig.3. Beside there is exit window 232 of transmitting device 230. Display device 250 and sound device 255 are embedded into the upper surface of housing 201.
  • Touch input device 240 comprises buttons disposed in housing 201. Among these buttons there is button 241 for turning the power of controlled device 300 on/off, button “Fn” 242 for turning special functions mode on, button “Prog” 243 for turning on programming fulfilling mode, button “Mute” 244 for turning the sound in controlled device 300 off, two sets of functional buttons 245.1 and 245.2, the functions of which are determined along with programming universal URC device 200, buttons set 246 for selecting controlled device 300, buttons set 247 for inputting digits, for example TV channels numbers, buttons 248 for volume tuning and for choosing in lists and menus, buttons set 249 for controlling various recording and reproducing devices.
  • Figs.4A...4D show examples of objects 100 bearing barcodes 110 to be scanned with programmable remote control unit 200 according to the preferred embodiment.
  • Fig.4A shows book 140 containing a variety of bar-coded utility programs related to various home appliances. Such book can be located at points of sales or point of service of the present invention remote control units or/and remotely-controlled devices and can be used to download a number of utility programs and other information into the user's remote control unit.
  • Book 140 consists of pages photocopied, faxed, downloaded from a computer network and printed out. It makes it possible to accumulate the programming information as long as new utility programs and remotely- controlled devices 300 appear on the market.
  • Each page 142 comprises a barcoded utility program.
  • Loose-leave binder 144 is used to fasten pages 142 together.
  • Fig.4B shows periodical 150 where a utility program for URC device 200 is published.
  • periodical there is an explanatory text 152 and the program itself coded in barcode 154 bars.
  • the program is scanned by URC device 200 and then is carried out so that for example a VCR is programmed to record a predetermined TV show and to reproduce the recorded show on a predetermined day and time.
  • Fig.4C shows article of manufacture 160 that is a course of Italian Geography.
  • Article of manufacture 160 comprises box 162 with detachably fastened CD ROM 163 and description 164.
  • Box 162 and disk 163 bear UPC 165.
  • Description 164 comprises a text explaining how to use the course (not shown in Fig.4C), the title and designation 166 and barcoded program 168 for URC device 200.
  • Fig.4D shows packaging 170 from children's toy that is a remotely- controlled device.
  • UPC 172 located on the packaging is to be scanned by URC device 200 so that to tune remote control device 200 to a required command set.
  • Other packaging surfaces comprise barcoded programs 174 and 176 that determine the toy working mode and its control methods with the help of URC device 200.
  • code 110 to be input into URC device 200 to control a device with a standard transmission protocol of remote control commands is recorded in the form of several barcode bars 401...404.
  • the number of bars equal to 4 is shown as an example only and can be more or less depending on the size of the program, represented by code 110.
  • the barcode of "Code 128" type is used, which is capable of encoding all 128 ASCII characters plus all 128 extended ASCII characters and 4 non-data function characters.
  • the additional advantage of "Code 128" is that it allows numeric data to be represented in a compact, double-density mode, two data digits for every barcode symbol.
  • each barcode bar 401...404 In front of each barcode bar 401...404, there is its number 405 printed in a form of a regular digit.
  • Each barcode bar 401...404 begins from starting field 406 comprising according to the rules of "Code 128" a quiet zone, which is spaces preceding the start pattern and a special start pattern marking the beginning of a barcode record.
  • Each barcode bar 401...404 completes by tailing field 407 comprising a check character serving to control the correct reading of barcode record, special stop pattern marking the end of barcode record, and a quiet zone following the stop pattern.
  • First barcode bar 401 comprises field 408, wherein the full number of barcode bars in the program is indicated in the form of a two-digit number (in the given case number 04).
  • barcode bar 401 there is field 410, comprising recorded with Code 128 symbols 11 -digit UPC of this utility program. Then come fields 411 and 412, wherein the name of manufacturer and utility program title are recorded accordingly. As the number of symbols in these areas is not know in advance, an additional symbol is put between them as a separator, for example "%".
  • the utility program is recorded.
  • the program is represented by a sequence of operators of a special programming language.
  • This programming language comprises regular arithmetic and logic operations, transfer and cycle operators, and operators of calling subroutines that are a part of the operating system of URC unit 200 and are recorded in EPROM 226.
  • the utility program is run with the help of interpreter program stored in EPROM 226. This interpreter program transforms operators of the utility program into the operations fulfilled by microcontroller 202.
  • the example of the utility program text in field 485 is provided below.
  • Field 486 text messages reproduced on display device 250 during the utility program run are recorded.
  • Field 486 consists of separate messages divided by separators. Symbol "%" can be used as a separator. Field 486 may occupy several barcode bars, and not one barcode bar 404, as in the example under consideration. As field 486 is the last field, a special sign of the end of field is not required. If text messages for this program are not required, then there is no field 486.
  • Fig.5B shows a text fragment of the utility program in field 485, with the help of which the user can program the set of TV and VCR to record a required telecast automatically.
  • the use of this utility program is based on the assumption that the data about the number of TV-channel, date of the show, time of its beginning and ending is located in some printed publication in the form of four separate barcoded records. Such way of programming is used in some complicated and high-level VCRs. It should be noted that regular inexpensive TV-sets and VCRs do not provide a possibility to program the recording of a certain show, the more so with the help of data printed in the form of a barcode.
  • the use of programmable universal remote control unit 200 allows to widen the possibilities of standard video equipment and give it the features of high class devices.
  • the text of the utility program consists of operators separated by "%".
  • Operator TXN means the reproduction of the text message with number N from field 486 of the program on display device 250.
  • Operator SCA means the input of the sequence of barcoded symbols from scanning device 210 and storing of this sequence of symbols in variable A.
  • Operator WE(Date, Time, Cml, Cm2...CmK) means the recording of one or several commands into the Event Table. The description of the Event Table will be provided further.
  • Date and Time are the values of date and time when the recorded commands must be fulfilled
  • Cml...CmK are mnemonic codes of the commands to be fulfilled.
  • the programming language for URC unit 200 can also comprise other operators not used in this example.
  • the program begins with operator 490 that is the reproduction of the first text message from field 486 onto display device 250.
  • this can be the message "Scan Channel Numb.”
  • Operator 491 is the input of a barcoded channel number from scanning device 210 and its storing in variable A.
  • Operators 492 and 493 are the reproduction of the second text message ("Scan Date") and scanning of the date of the show with storing this date in variable B respectively.
  • operators 494 and 495 are the reproduction of the third text message ("Scan Start Time”) and scanning the time of the beginning of the show recording with storing this time in variable C respectively.
  • operator 496 and 497 are the reproduction of the fourth text message (“Scan Stop Time”) and scanning the time of the ending of the show recording with storing this time in variable D respectively.
  • the sequence of commands includes set by mnemonic codes commands "TV" - switching of URC unit 200 to control a TV-set, "On” - turning of the TV-set on, "Chn” - the command indicating that it is followed by the channel number, to which the TV-set will be switched over.
  • variable A that is the number of the TV-channel, to which the TV-set has to be switched over.
  • the sequence of commands includes set by mnemonic codes commands "VCR” - switching over URC unit 200 to control the VCR, "Ejt” - ejecting the tape from the VCR, "Off - turning of VCR power off, "TV” - switching over URC unit
  • RAM 222 contains scanning buffer 510, global variables area 51 1 and stack 512.
  • Global variables area 511 contains various
  • Stack area 512 is used for placing local data and parameters for procedures and subroutines.
  • EPROM 226 contains the following areas: Operational System 513,
  • EPROM 226 comprises programs for command transmission according to protocols for predetermined set of remotely- controlled devices 300, various constants and other necessary information.
  • Operating System 513 comprises the main control program, drivers for scanning device 210, touch input device 240, display device 250 and sound device 255, subroutines of fulfilling standard functions including commands transmission to the controlled devices 300 in accordance with some standard transmission protocols. Operating System 513 also comprises program-
  • Programs 514 utility programs are recorded. Some of them can be recorded during the production of URC unit 200. The rest utility programs are recorded in the process of using URC unit 200 by scanning barcoded texts of these programs. In Programs 514 texts are recorded in the programming language that was described earlier. During the scanning of any utility program, the content of field 485 is recorded into Programs 514 (Figs.5A, 5B). The record of each utility program starts with a certain address that is stored in Program Table 519, and ends by the symbol of the end of field 485, that is by symbol "#".
  • Area Button Tables 516 consists of several sectors. Each sector comprises a button table for one remotely-controlled device 300. Sectors of Button Tables 516 are filled during the production of URC unit 200. It is also possible to record data into Button Tables 516 during the use of URC 200 by scanning barcoded data and by other means.
  • each line of the table stored in one of the sectors of Button Tables 516, contains information about one command, that may be executed by URC 200.
  • mode numbers are recorded, wherein this command is fulfilled.
  • Zero value in column “Mode” 531 corresponds to the main mode. Values different from zero correspond to additional modes. The switch from the main mode into additional ones is done by activating of certain buttons.
  • button 532 the number of the button is recorded, activating of which results in fulfilling the given command. All buttons in URC device 200 get assigned numbers. Numbers order can be arbitrary.
  • button 241 gets number “01 “, button 242 - number “02”, and so on till number "44” is assigned to the button of transferring to the last record.
  • the numeration is constant for the given embodiment of URC device 200.
  • buttons there are also “virtual” buttons which correspond to combinations of real buttons pressed simultaneously. "Virtual” buttons get numbers starting with “45”. The maximal possible number for the buttons is “99”.
  • the mnemonic code of the command is recorded. Some of commands have mnemonic codes (mnemocodes) that are the same for the same commands in different remotely-controlled devices and do not depend on commands transmission protocol.
  • commands mnemocodes may comprise 2 or 3 symbols, and the first symbol always has to be a letter.
  • Some commands mnemocodes correspond to buttons of touch input device 240 by default.
  • mnemonic codes of "TV”, “VCR”, “TUN”, etc. correspond to buttons of buttons set 246.
  • Mnemocodes "Chl”" Ch9" correspond to the buttons of buttons set 247.
  • buttons of buttons set 248 Mnemocodes "Up” (an arrow looking up), “Dn” (an arrow looking down), “VUp” (to increase loudness), “VDn” (to decrease loudness), “OK” correspond to the buttons of buttons set 248.
  • Mnemonic codes "PAS”, “STP” correspond to the buttons of buttons set 249, and so on. There are no mnemonic codes corresponding to the buttons of buttons sets 245.1 and 245.2 by default.
  • Texts 517 comprises text messages output onto display device 250 during the control of devices, during the fulfilling of the utility programs, and in other cases.
  • Texts 517 consist of sectors each having the record of text messages set for one remotely-controlled device or for one utility program. These sectors are filled during the production of URC device 200. Text messages in every sector are divided by symbol "%". Each sector in Texts 517 ends by the symbol of the sector ending, for example, symbol "#”. It is also possible to record data into Texts 517 during the use of URC device 200 by scanning barcoded data and by other means.
  • Programs 519 comprise a table, every line of which has data about one of utility programs.
  • Program Name 551
  • UPC Universal Product Code
  • UPC Universal Product Code
  • Manufacturer 553, there is the name of the company that released this utility program. This name is taken from field 411 during the scanning.
  • Columns "Address” 554 and “Text message” 555 comprise addresses in EPROM 226, beginning with which the utility program and text messages for it are recorded.
  • Event Table 520 comprises a table, each line of which has data about one command to be fulfilled at the predetermined time.
  • columns “Date” 561 and “Time” 562 the date and time for fulfilling the command are recorded.
  • column “Command” 563 the mnemonic code of the command is recorded. If the fulfilling of a sequence of commands is programmed for a certain time, then these commands are put into the lines going one after another in Event Table 520.
  • programs run by microcontroller 202 in URC device 200 microcontroller 202 starts running the main program after turning on the power in URC device 200 and continues till the power is switched off. The power switch on and off can be done by putting in and taking out batteries accordingly.
  • microcontroller 202 runs subroutine of inquiring touch input device 602.
  • the result of running this subroutine is the number of the activated button. As it was pointed out before, this number can determine not only a separate button, but also a permissible combination of several simultaneously pressed buttons. If no button is pressed or two and more buttons are pressed simultaneously forming a impermissible combination, then the number of the button pressed is set equal to zero.
  • the programs of inquiring the keyboard for remote control devices are well know in the art and there is no need to describe subroutine 602 in detail.
  • the received number of the pressed button is checked. If this number is equal to 0, that is no button is pressed or a permissible combination of buttons is pressed, then microcontroller 202 continues to subroutine of checking Event Table 604. After fulfilling this subroutine the program returns to subroutine 602 of inquiring of touch input device. If the number of the button pressed is not equal to zero, the actions determined by the pressed button begin.
  • Microcontroller 202 checks if any of the following buttons is pressed: the button initiating the scanning of a barcoded program (block 605), or one of buttons 246 for selecting a controlled device (block 607), or one of buttons for activating the command that is being fulfilled (block 609), or the button initiating the choice and fulfilling of one of utility program (block 613). Receiving of the positive answer in one of block 605, 607, 609, 613 results in fulfilling of one of the following subroutines accordingly: subroutine of barcoded program scanning 606, subroutine of selecting a remotely-controlled device 608, subroutine of fulfilling the command 610, and subroutine of selecting and running the utility program 614. All these subroutines will be described below.
  • microcontroller 202 After fulfilling each of the above- mentioned subroutines microcontroller 202 returns to subroutine 602. If the negative answer is received in one of blocks 605, 607, 609, microcontroller 202 continues to blocks 607, 609, 613 accordingly. If the negative answer is received in block 613, then microcontroller 202 continues to fulfilling auxiliary functions 615.
  • Auxiliary functions include in particular deleting of unnecessary records in EPROM 226, including utility programs, records in Event Table 520, etc.
  • auxiliary functions include setting of the current date and time and some other auxiliary operations.
  • the program for fulfilling the auxiliary functions can be written by anyone skilled in the art with the use of well known programming rules and techniques. That is why the detailed description of subroutine 615 is not provided herein.
  • microcontroller 202 in subroutine 622 fulfills the scanning of the first bar of code 110 and storing of the scanned information in Scanning Buffer 510 in RAM 222. At this time, display device 250 can reproduce text messages showing the user the sequence of actions. There is no need to describe the procedure of reading and decoding of barcoded information, as these operations are well known in the art. Further subroutine 623 is run. In this subroutine, microcontroller 202 compares UPC read from area 410 of the barcoded program to all UPCs recorded in Program Table 519.
  • microcontroller 202 stores in variable NBars the number of bars of the barcode in the program being scanned, received from area 408 in the first bar of the barcoded program. After this, other bars of barcoded program are scanned one after one, while microcontroller 202 is checking if all the bars are scanned and outputs to display device 250 messages prompting the user if one more bar should be scanned or the scanning is terminated (blocks 625 and 626). During the scanning it is also checked that the bars are scanned in the correct order. For this purpose, the numbers in areas 406 in the beginning of each bar of the are used (Fig.5). If an error in the scanning order occurs, the user receives a text or sound message about the error. After the scanning of each bar of the barcode it is also checked that the scanning was completed correctly. It is done with the help of control code 407 at the end every bar.
  • subroutine 629 in which data about the program scanned from fields 409, 410, 411, 412 (Fig.5) is stored in Program Table 519; subroutine 630, in which program text from field 485 is stored in Programs 514; and subroutine 631, in which text messages from field 486 are stored in Texts 517.
  • subroutines 630 and 631 are run, in columns “Address” 554 and lo "Text message” 555 of Program Table 519 addresses are stored, starting from which the storing in Programs 514 and in Texts 517 respectively takes place.
  • subroutine 606 terminates in block 637.
  • Subroutine of selecting remotely-controlled device 608 is fulfilled, when one of the buttons in buttons group 246 is pressed. Therein a sector in
  • microcontroller 202 forms a command code in accordance with the pressed button and data in the selected sector of Button Tables 516 and sends the formed code via transmitting device 230 to remotely-controlled device 300 according to the selected commands
  • Fig.12 shows the flowchart of subroutine of selecting and executing the utility program 614. After entering this subroutine in block 721, microcontroller 202 fulfills subroutine 722. In this subroutine, the list of utility programs stored in Program Table 519 is displayed on Display device
  • microcontroller 202 continues to subroutine 723. During the fulfilling of this subroutine, the user with the help of buttons in buttons group 248 selects a utility program in the utility programs list.
  • microcontroller 202 sequentially fulfills operators that make up the utility program. As it was
  • each utility program is recorded in Programs 514 in EPROM 226 in the form of text in the special programming language.
  • the implementation of the utility program is fulfilled by the interpreter program.
  • the text of utility program consists of operators.
  • the interpreter program can fulfill these operators one by one and can move to the operator with the given number, if the operator of transition was encountered in the utility program.
  • the methods and rules of writing interpreter programs are well known in the art.
  • the interpreter program checks if the current operator is the operator of transition or branching. If this is true, then in block 726 the transition determined by this operator is fulfilled, and the program returns to the beginning of the cycle in block 725. In the opposite case, the interpreter program fulfills the following operator in block 727. As lo a rule, the executing of the operator is the calling of the corresponding subroutine stored in Operating System 513 area in EPROM 226.
  • the interpreter program checks, if the operator was fulfilled by the last operator in the utility program. In case of the negative answer to this question, in block 729 the transition to the following operator
  • Fig.13 shows the flowchart of subroutine 604 of checking Event Table 520 and fulfilling the programmed operations. After entering this subroutine in block 731, microcontroller 202 fulfills the search for the first event in
  • Event Table 520 (block 736). To do so, microcontroller 202 looks through columns "Date” 561 and “Time” 562 in Event Table 520 and selects the event that must take place earlier than other events. In block 733, it is checked if the event is found. If no event is found that can be in case when no event is recorded in Event Table 520, subroutine 604 terminates in block
  • microcontroller 202 compares the value of date and time recorded in columns "Date" 561 and "Time” 562 for the found event to the current values of time and date received from real time clock 260. If the programmed time for the found event has not arrived
  • subroutine 604 terminates in block 737. It the time programmed for this event has arrived, in block 735 microcontroller 202 executes the command recorded for the found event in column "Command" 563. To do so, microcontroller 202 looks through the Button Tables 516 for the current selected device, finds in column "Mnemo" 533 (Fig.7) the line with the
  • the present invention provides many advantages over the remote control units known before.
  • URC device can be programmed to automatically fulfil a sequence of remote control operations to control various remotely-controlled devices. These operations can be fulfilled at programmed moments of time.
  • the URC device according to the present invention is easy to use. Any user can easily program the URC device with the help of the barcoded program. An important advantage is that the user can receive the barcoded program from various sources: the manual of the remotely-controlled device, printed publications, the Internet, regular mail, etc.
  • the URC device allows to allot many home appliances with new functions, originally not designed for these devices. Users receive from the above-mentioned sources the barcoded utility programs allowing to fulfill automatically or interactively the sequence of operations, including the programming of fulfilling the sequence of operations at predetermined times in the future.
  • the URC device does not comprise complicated, expensive or non-standard units. Production costs for the present invention universal remote control device are not high. Producers can manufacture these remote control units in big parties as their universality ensures high demand for them.
  • Different types of barcodes can be used to record programs including two-dimensional barcodes.
  • the programming functions of the URC device can be not limited only by reading of the barcode. Receiving of command sets via IR port, computer wired interface, microphone, etc. can be implemented together with barcode programming.
  • various types of display devices CRT, LED matrix, plasma screen etc.
  • sound device and touch input device can be used in the URC unit.
  • the display device can be monochrome or color.
  • the interaction of the user with the URC device can proceed differently with the use of various variants of displaying information on the display device.
  • Real-time clock can be implemented not as a separate integrated circuit, but be a part of the microcontroller or as receiving of radio-frequency signal of exact time.

Abstract

The method of remote control comprises the preparation of an information carrier with a recorded (for example with a barcode) user program for fulfilling a sequence of operations for controlling a remotely controlled device. The program is read by the remote control unit and stored in its memory block. In the process of remote control, the program is read from the memory block and fulfilled. When the program is being run, it is possible to set moments of time for fulfilling certain operations. This is done in a dialogue mode with the help of the keyboard and display of the remote control unit, or by the way of inputting data from an information carrier. The memory block can intake a big quality of user programs from information carriers. The selection of the program to be run is fulfilled with the help of the keyboard from the list displayed on the display of the remote control unit.

Description

UNIVERSAL REMOTE CONTROL
FIELD OF THE INVENTION
5 The present invention relates to remote control devices and more particularly to universal remote control units.
BACKGROUND OF THE INVENTION
l o Description of the Prior Art
A bigger part of existing home and office appliances is equipped with remote control devices. Among these appliances there are such remotely- controlled devices as TV sets, video cassette recorders (VCRs), optical disk players (including CD-audio, DVDs, laser videodisks), tuners, amplifiers,
15 tape recorders, doors and door locks, light switches, children's toys, air- conditioners, remotely-controlled microwaves and washing machines, and many others.
Typically, a remote control device is a small hand-held object. The user manipulates the remote control device to distantly send various commands to
20 the remotely-controlled device. Infrared wireless remote control units are most widely spread. These units emit infrared light pulses, that are coded commands to be recognized and executed by remotely-controlled devices. Also, there are devices and corresponding to them remote control units using other signal types, like sound or radiowaves, for transmission and reception
25 of control commands.
There is an unfilled need for a universal remote control device that can be programmed to automatically fulfil a sequence of control commands for various appliances. Such universal remote control devices can make the control of remotely-controlled devices more convenient, especially when it is
30 required to sent several remote control commands, when several remotely- controlled devices have to be controlled, and also when remote control commands have to be sent at predetermined moments of time without the direct participation of the user. There is a well defined need for the universality of such remote control devices that would provide the possibility
35 to program these devices for fulfilling various sequences of control commands for controlling various remotely-controlled devices depending on the program recorded into them.
The prior art provides several approaches to developing a universal remote control device. The first approach is based on pre-recording into the memory of the universal remote control device of remote control command codes for a big amount of televisions, VCRs, and other devices and the choice of a required set of commands to control the certain device.
This approach relates to a universal remote control unit disclosed in U.S.Pat. No. 4774511, 1988. The memory of this device comprises command sets for control of a big number of devices produced by different manufacturers. The appropriate commands set is selected by the way of dialing a code of the controlled device with the help of the keys or buttons on the remote control unit. In practice, this approach results in selling this type of remote control units with a manual. Such manual comprises the list of different models of TV sets, VCRs, satellite TV set-top-boxes and CD players of many manufacturers. The code is provided for every model there a code is provided. To control the device, this code has to be dialed with the help of buttons on the remote control unit. The similar approach is employed in remote control device disclosed in
PCT application WO 98/00933, 1998. The memory of this device comprises the recorded commands codes for many controlled devices. The choice of the correct commands set is made by the way of receiving by universal remote control unit of a command from the original remote control unit of the selected controlled device. This method helps to simplify and accelerate the configuration procedure of the universal remote control device. However, this system suffers from several limitations.
Said universal remote control units cannot be programmed to automatically fulfil a sequence of remote control commands at predetermined moments of time.
The other approach to implementing the universal remote control unit is based on creating learning devices that receive and remember commands sent in the teaching process from the original remote control device.
PCT Application WO 98/33332, 1998, discloses a universal remote control unit with infrared identification. The memory of this device comprises several recorded protocols for transmitting commands of remote control. In the beginning of the teaching process the universal remote control device receives commands from the original remote control unit and determines the transmission protocol in use. Then, using the precise parameter of this protocol prerecorded in its memory, the remote control device determines commands codes herein and stores them. To determine the code for each command, it is necessary to send this command from the original remote control device and receive it by the universal remote control unit. This universal remote control unit also can not be programmed to automatically fulfil a sequence of remote control commands.
Another approach lies in the possibility of recording into the memory of the universal remote control commands codes of various devices during the life cycle of the remote control unit.
This approach is used in the remotely upgradable universal remote control device exposed in U.S. Pat. No.5228077. This device can receive from external computer and store in its memory commands code sets for controlling various devices. The connection to an external computer can be direct and with the help of the telephone line modem. The possibilities of programming the unit to control various devices are unlimited. However, this universal remote control unit can not be programmed for automatic fulfillment of a commands sequence.
An easy way of to transmit data for programming of home appliances, including the remote control unit, available for all the users is the use of machine-readable codes, for example barcodes printed on paper and other similar materials.
U.S. Pat. No.5552837, 1996, discloses a remote controller for scanning data and controlling a video system. This device comprises means for reading from cards with machine-readable data codes about TV programs on various TV channels on various subjects and means for programming the viewing of selected programs or their recording on the VCR. However, this remote control device cannot be programmed to fulfill other command sequences with other remotely-controlled devices, that is it is not a universal device in the above meaning.
U.S.Pat. No. 5382776, 1995, exposes a combination of an optical-disk and barcode memory medium. According to this invention, the optical disc is provided with a document with a printed barcode comprising a menu, commands and other data that make the search for needed information on the optical disk and fulfilling of the program recorded on the disk easier. As a result, the use of optical discs gets wider functionality. This patent provides an univocal correspondence of a barcode to a code on the optical disk. However, this invention also does not provide the possibility to program the remote control unit to automatically fulfil various programs of remote control of different remotely-controlled devices.
U.S.Pat. No. 5905251, 1999, shows a hand-held portable WWW access terminal with visual display panel and GUI-based WWW browser program integrated with bar code symbol reader in a hand-supportable housing. This device allows to read a barcoded URL printed on various objects and to distantly control a computer connected to the Internet to provide an access to Internet sites according to the above-mentioned URLs. But this terminal also cannot be used as a universal remote control device, as it is designed only to control computer when the Internet is used. U.S. Patent No.5962839, 1999, demonstrates an apparatus programmable to perform a user defined sequence of actions. This device can remember a sequence of instructions received when the sequence of bar codes is read and then reproduce this sequence of instructions controlling for example the electric engine in a toy car. However, this device is capable of remembering only one sequence of instructions, and cannot be programmed to automatically fulfil many control programs of controlling various remotely-controlled devices.
OBJECTS AND SUMMARY OF THE INVENTION
Accordingly, objects and advantages of the present invention are: (a) to provide a universal remote control device, which can be programmed to automatically fulfil a sequence of remote control operations; (b) to provide a universal remote control device capable of automatic control of various remotely-controlled devices;
(c) to provide a universal remote control device capable of simultaneous control of several various remotely-controlled devices sending commands to them in a programmed sequence; (d) to provide a universal remote control device capable of automatic fulfilling of remote control operations at predetermined moments of time;
(e) to provide a universal remote control device having a simple programming procedure that any user can fulfil quickly and without mistakes; (f) to provide a universal remote control device, information to program which would arrive to the user along with devices that are to be controlled, through regular mail, printed manuals and other printed media, via Internet, fax, and many other sources, so that any user could get required information from a source most convenient to him/her; (g) to provide a universal remote control device capable to interact with a variety of home and office appliances in an interactive manner.
According to the present invention, the universal remote control (URC) device can be programmed for controlling the execution of a predetermined sequence of operations by any of devices, commands codes from which are stored in the URC device memory. The program of fulfilling the above- mentioned sequence of operations is input into the URC device by the way of scanning machine-readable codes and saved. The recording of the program is done in a programming language accepted for these purposes and does not depend on the commands codes of a certain controlled device. In the URC device, the read program is transformed into a sequence of commands codes that are transmitted to the controlled device.
Further objects and advantages will become apparent from a consideration of the ensuing description and drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
Fig.1 shows an overview of a system comprising a universal remote control device, a set of code-bearing objects and a set of remotely-controlled devices;
Fig.2 shows a universal remote control unit block diagram according to the preferred embodiment;
Fig.3 shows a general outlook of the universal remote control device;
Figs.4A...4D show examples of objects bearing barcodes to be scanned with the present invention universal remote control device;
Figs.5 A, 5B show a barcoded utility program for the universal remote control device;
Fig.6 shows a logic division of the universal remote control unit memory into functional areas; Fig.7 shows data structure in Button Tables in the memory of the universal remote control device;
Fig.8 shows data structure in Program Table in the memory of the universal remote control device;
Fig.9 shows data structure in Event Table in the memory of the universal remote control device;
Fig.10 shows a flowchart of a program run in the universal remote control device;
Fig.11 shows a flowchart of a subroutine of scanning of a barcoded program; Fig.12 shows a flowchart of a subroutine of choosing and running of a utility program;
Fig.13 shows a flowchart of a subroutine of checking of an event table and fulfilling of programmed operations. DETAILED DESCRIPTION OF THE INVENTION
As a general overview, Fig. 1 shows universal remote control (URC) device 200 of the present invention, which remotely controls a set of remotely-controlled devices 300. A user scans by means of scanner 210 embedded into URC device 200 codes 110 born by code bearing objects 100. The scanned information is transferred into information in a form of a programs which are stored in memory 220 of URC device 200. The stored information is used then to transmit control commands or/and data by means of transmitting device 260 to remotely-controlled devices 300. Command/data transmissions are initiated either by the user activating touch input device 240 or automatically due to the execution of a programs stored in memory 220 of URC device 200.
Each of remotely-controlled devices 300 comprises at least one controlling device 310, a number of input devices 320, a number of output devices 330, at least one remote control interface 340, and connection means 350. The following commonly spread remotely- controlled devices correspond to such structure: TV sets, video cassette recorders (VCR), compact-disc audios (CD-audio), radiofrequency tuners, tape recorders, door locks, light switches, children's toys, laser video-disc players, DVD players, air-conditioners, remotely- controlled microwaves, and many other home and office appliances.
For better understanding of remotely-controlled device 300 structure, we will use a typical remotely-controlled cassette tape recorder as an example. In the tape recorder, controlling device 310 is usually represented as a number of control circuits intended to control all the operation of the tape recorder. Often controlling device 310 may comprise a microprocessor or microcontroller and a controlling program. Output devices 330 in a typical tape recorder are: recording heads, motors to drive tape, solenoids (electromagnets) to lock and eject cassettes, light emitting diodes (LEDs) or/and lamps for various modes indication, pointer indicators for signal level indication, controlled amplifiers for signal amplification. Input devices 320 in a typical tape recorders are: tape reading heads, user controlled buttons for immediate mode control, such as Play, Stop, Fast Forward, Rewind, Record, Pause and others; buttons for mode selection, such as type of tape selection, reverse mode, filters control and others; tape velocity sensor and cassette presence sensor, some others. Usually, in modern tape recorders a remote control interface 340 is represented by an infrared code receiver. Connection means 350 are represented by elements dependent on a certain implementation of the tape recorder and can include glue logic, wiring, connectors, printed circuit boards, and other parts.
It is important to notice that any remote control interface is either an input device or an input-output device. For example, an infrared remote control interface of a VCR is an input device, while IrDA serial computer port is an input-output device, since it is capable of transmitting data in both directions. Nevertheless, the remote control interface 340 is shown separately on a block diagram of remotely-controlled device 300 in Fig. 1 to emphasize its connection with the present invention URC device 200. Fig.2 shows a block diagram of URC device 200 according to the preferred embodiment of the present invention. URC device 200 comprises microcontroller 202. For example, microcontroller mPD78F4216GC, by NEC Electronics Inc., can be used as a microcontroller in the present invention device. Microcontroller 202 comprises central processor 204 and memory 220. Memory 220 consists of Random Access Memory (RAM) 222 and Electrically-Programmable Read Only Memory (EPROM) 226, that for the indicated type of microcontroller have volumes of 8 Kbytes and 128 Kbytes accordingly. If the power is switched off, the information stored in EPROM 226 is saved. It is also possible to use separate integrated circuits of RAM 222 and EPROM 226.
URC device 200 contains scanning device 210, transmitting device 230, touch input device 240, display device 250, sound device 255, and real-time clock 260 connected to microcontroller 202 by interface means 270. URC device 200 also contains power supply 280. Scanning device 210 herein can be provided as a laser scanner or CCD scanner allowing to read code 1 10 from object 100 surface under the control of microcontroller 202. The examples of scanners are given in U.S.Pat. No.5126544, 1992, U.S.Pat. No.5914477, 1999, and many other publications. Transmitting device 230 comprises an IR light-emitting diode (LED) and an electronic circuit transforming signals arriving from microcontroller 202 into current impulses via the above-mentioned LED. Transmitting device 230 as in the presently known manufactured remote control devices can be used. Touch input device 240 comprises keys or buttons that can be connected to microcontroller 202 inputs/outputs. The implementation of touch input device 240 is not different from similar devices in the known remote control devices. Display device 250 can be any suitable liquid crystal display (LCD), such as HDM128GS12Y, a product of Hantronix, Inc. Sound device 255 comprises miniature loudspeaker and all the necessary elements. These schemes are well known in the art. Real-time clock 260 can be provided as an integrated circuit DS 1305 by
Dallas Semiconductor Corp. Microcontroller 202 can set and read herefrom the current time and date.
Power supply 280 comprises two power elements of AA type. If necessary, power supply 280 herein can comprise a voltage converter, for example MAX856CSA by Maxim Integrated Circuits, Inc.
As shown in Fig.3, remote control 200 has housing 201 having window 212 in the upper end surface. Light rays come through this window 212 in both directions. Behind window 212 there is scanning device 210, not visible in Fig.3. Beside there is exit window 232 of transmitting device 230. Display device 250 and sound device 255 are embedded into the upper surface of housing 201.
Touch input device 240 comprises buttons disposed in housing 201. Among these buttons there is button 241 for turning the power of controlled device 300 on/off, button "Fn" 242 for turning special functions mode on, button "Prog" 243 for turning on programming fulfilling mode, button "Mute" 244 for turning the sound in controlled device 300 off, two sets of functional buttons 245.1 and 245.2, the functions of which are determined along with programming universal URC device 200, buttons set 246 for selecting controlled device 300, buttons set 247 for inputting digits, for example TV channels numbers, buttons 248 for volume tuning and for choosing in lists and menus, buttons set 249 for controlling various recording and reproducing devices.
Figs.4A...4D show examples of objects 100 bearing barcodes 110 to be scanned with programmable remote control unit 200 according to the preferred embodiment.
Fig.4A shows book 140 containing a variety of bar-coded utility programs related to various home appliances. Such book can be located at points of sales or point of service of the present invention remote control units or/and remotely-controlled devices and can be used to download a number of utility programs and other information into the user's remote control unit. Book 140 consists of pages photocopied, faxed, downloaded from a computer network and printed out. It makes it possible to accumulate the programming information as long as new utility programs and remotely- controlled devices 300 appear on the market. Each page 142 comprises a barcoded utility program. Loose-leave binder 144 is used to fasten pages 142 together.
Fig.4B shows periodical 150 where a utility program for URC device 200 is published. In the periodical, there is an explanatory text 152 and the program itself coded in barcode 154 bars. The program is scanned by URC device 200 and then is carried out so that for example a VCR is programmed to record a predetermined TV show and to reproduce the recorded show on a predetermined day and time.
Fig.4C shows article of manufacture 160 that is a course of Italian Geography. Article of manufacture 160 comprises box 162 with detachably fastened CD ROM 163 and description 164. Box 162 and disk 163 bear UPC 165. Description 164 comprises a text explaining how to use the course (not shown in Fig.4C), the title and designation 166 and barcoded program 168 for URC device 200. Fig.4D shows packaging 170 from children's toy that is a remotely- controlled device. UPC 172 located on the packaging is to be scanned by URC device 200 so that to tune remote control device 200 to a required command set. Other packaging surfaces comprise barcoded programs 174 and 176 that determine the toy working mode and its control methods with the help of URC device 200.
As shown in Fig. 5 A, code 110 to be input into URC device 200 to control a device with a standard transmission protocol of remote control commands is recorded in the form of several barcode bars 401...404. The number of bars equal to 4 is shown as an example only and can be more or less depending on the size of the program, represented by code 110. In the preferred embodiment of the present invention, the barcode of "Code 128" type is used, which is capable of encoding all 128 ASCII characters plus all 128 extended ASCII characters and 4 non-data function characters. The additional advantage of "Code 128" is that it allows numeric data to be represented in a compact, double-density mode, two data digits for every barcode symbol.
In front of each barcode bar 401...404, there is its number 405 printed in a form of a regular digit. Each barcode bar 401...404 begins from starting field 406 comprising according to the rules of "Code 128" a quiet zone, which is spaces preceding the start pattern and a special start pattern marking the beginning of a barcode record. Each barcode bar 401...404 completes by tailing field 407 comprising a check character serving to control the correct reading of barcode record, special stop pattern marking the end of barcode record, and a quiet zone following the stop pattern. First barcode bar 401 comprises field 408, wherein the full number of barcode bars in the program is indicated in the form of a two-digit number (in the given case number 04).
Then, in field 409 two-digit decimal number is recorded indicating that given code 110 comprises the utility program. In the preferred embodiment of the present invention, this number is 91.
Further, in barcode bar 401 there is field 410, comprising recorded with Code 128 symbols 11 -digit UPC of this utility program. Then come fields 411 and 412, wherein the name of manufacturer and utility program title are recorded accordingly. As the number of symbols in these areas is not know in advance, an additional symbol is put between them as a separator, for example "%".
In field 485 the utility program is recorded. The program is represented by a sequence of operators of a special programming language. This programming language comprises regular arithmetic and logic operations, transfer and cycle operators, and operators of calling subroutines that are a part of the operating system of URC unit 200 and are recorded in EPROM 226. The utility program is run with the help of interpreter program stored in EPROM 226. This interpreter program transforms operators of the utility program into the operations fulfilled by microcontroller 202. The example of the utility program text in field 485 is provided below.
In field 486, text messages reproduced on display device 250 during the utility program run are recorded. Field 486 consists of separate messages divided by separators. Symbol "%" can be used as a separator. Field 486 may occupy several barcode bars, and not one barcode bar 404, as in the example under consideration. As field 486 is the last field, a special sign of the end of field is not required. If text messages for this program are not required, then there is no field 486.
Fig.5B shows a text fragment of the utility program in field 485, with the help of which the user can program the set of TV and VCR to record a required telecast automatically. The use of this utility program is based on the assumption that the data about the number of TV-channel, date of the show, time of its beginning and ending is located in some printed publication in the form of four separate barcoded records. Such way of programming is used in some complicated and high-level VCRs. It should be noted that regular inexpensive TV-sets and VCRs do not provide a possibility to program the recording of a certain show, the more so with the help of data printed in the form of a barcode. The use of programmable universal remote control unit 200 allows to widen the possibilities of standard video equipment and give it the features of high class devices.
The text of the utility program consists of operators separated by "%". Operator TXN means the reproduction of the text message with number N from field 486 of the program on display device 250. Operator SCA means the input of the sequence of barcoded symbols from scanning device 210 and storing of this sequence of symbols in variable A. Operator WE(Date, Time, Cml, Cm2...CmK) means the recording of one or several commands into the Event Table. The description of the Event Table will be provided further. Here Date and Time are the values of date and time when the recorded commands must be fulfilled, Cml...CmK are mnemonic codes of the commands to be fulfilled. The programming language for URC unit 200 can also comprise other operators not used in this example.
The program (Fig.5B) begins with operator 490 that is the reproduction of the first text message from field 486 onto display device 250. For example, this can be the message "Scan Channel Numb.". Operator 491 is the input of a barcoded channel number from scanning device 210 and its storing in variable A. Operators 492 and 493 are the reproduction of the second text message ("Scan Date") and scanning of the date of the show with storing this date in variable B respectively. Similarly, operators 494 and 495 are the reproduction of the third text message ("Scan Start Time") and scanning the time of the beginning of the show recording with storing this time in variable C respectively. Finally, operator 496 and 497 are the reproduction of the fourth text message ("Scan Stop Time") and scanning the time of the ending of the show recording with storing this time in variable D respectively.
Further, there is operator 498 that is the recording into the Event Table of a sequence of commands providing the beginning of TV-show recording. The date of fulfilling the sequence of commands is set by variable B, the time of fulfilling the sequence of commands is set by variable C. The values of variables B and C, as it was said before, are input in URC unit 200 by scanning. The sequence of commands includes set by mnemonic codes commands "TV" - switching of URC unit 200 to control a TV-set, "On" - turning of the TV-set on, "Chn" - the command indicating that it is followed by the channel number, to which the TV-set will be switched over. Then goes record @A indicating that the next argument in operator 498 should be the value of variable A, that is the number of the TV-channel, to which the TV-set has to be switched over. Then follow commands "VCR" - switching of URC unit 200 to control a VCR, "On" - turning of VCR power on, "Rec" - turning on the show recording.
Then goes operator 499 that is the recording into the Event Table of a sequence of commands providing the ending of the TV-show recording. The
5 date of fulfilling the sequence of commands is set by variable B, the time of fulfilling the sequence of commands is set by variable D. The sequence of commands includes set by mnemonic codes commands "VCR" - switching over URC unit 200 to control the VCR, "Ejt" - ejecting the tape from the VCR, "Off - turning of VCR power off, "TV" - switching over URC unit
10 200 to control the TV-set, "Off - turning the TV-set off. The program ends by operator 500 that outputs the message of the successful termination of URC device programming.
To use the described program, after scanning the user has to place URC device 200 so that it could control both the TV-set and the VCR and leave a
15 blank tape in the VCR. The program run on microcontroller 202 and providing the fulfilling of the recorded sequences of commands at predetermined points in time will be described further.
As shown in Fig.6, RAM 222 contains scanning buffer 510, global variables area 51 1 and stack 512. Global variables area 511 contains various
20 global data structures and variables needed for proper operation of the computation process, such as: current time and date, intermediate data for LCD control, keyboard scanning results and other necessary information. Stack area 512 is used for placing local data and parameters for procedures and subroutines.
25 EPROM 226 contains the following areas: Operational System 513,
Programs 514, Button Tables 516, Texts 517, Program Table 519, Event Table 520. Besides, EPROM 226 comprises programs for command transmission according to protocols for predetermined set of remotely- controlled devices 300, various constants and other necessary information.
30 Operating System 513 comprises the main control program, drivers for scanning device 210, touch input device 240, display device 250 and sound device 255, subroutines of fulfilling standard functions including commands transmission to the controlled devices 300 in accordance with some standard transmission protocols. Operating System 513 also comprises program-
35 interpreter that provides the fulfilling of the utility programs recorded in the form of text, as shown in Fig.5B. Operating System 513 is recorded during the production of URC unit 200.
In Programs 514 utility programs are recorded. Some of them can be recorded during the production of URC unit 200. The rest utility programs are recorded in the process of using URC unit 200 by scanning barcoded texts of these programs. In Programs 514 texts are recorded in the programming language that was described earlier. During the scanning of any utility program, the content of field 485 is recorded into Programs 514 (Figs.5A, 5B). The record of each utility program starts with a certain address that is stored in Program Table 519, and ends by the symbol of the end of field 485, that is by symbol "#".
Area Button Tables 516 consists of several sectors. Each sector comprises a button table for one remotely-controlled device 300. Sectors of Button Tables 516 are filled during the production of URC unit 200. It is also possible to record data into Button Tables 516 during the use of URC 200 by scanning barcoded data and by other means.
As shown in Fig.7, each line of the table, stored in one of the sectors of Button Tables 516, contains information about one command, that may be executed by URC 200. In column "Mode" 531, mode numbers are recorded, wherein this command is fulfilled. Zero value in column "Mode" 531 corresponds to the main mode. Values different from zero correspond to additional modes. The switch from the main mode into additional ones is done by activating of certain buttons. In column "Button" 532, the number of the button is recorded, activating of which results in fulfilling the given command. All buttons in URC device 200 get assigned numbers. Numbers order can be arbitrary. For , example, button 241 (Fig.3) gets number "01 ", button 242 - number "02", and so on till number "44" is assigned to the button of transferring to the last record. The numeration is constant for the given embodiment of URC device 200. In the list of buttons there are also "virtual" buttons which correspond to combinations of real buttons pressed simultaneously. "Virtual" buttons get numbers starting with "45". The maximal possible number for the buttons is "99". In column "Mnemo" 533, the mnemonic code of the command is recorded. Some of commands have mnemonic codes (mnemocodes) that are the same for the same commands in different remotely-controlled devices and do not depend on commands transmission protocol. For example, the command of turning the first channel on always has mnemonic code "Chi ", though a digital code of this command sent to the TV-set can be different for different TV-sets models. In the preferred embodiment of the present invention, commands mnemocodes may comprise 2 or 3 symbols, and the first symbol always has to be a letter. Some commands mnemocodes correspond to buttons of touch input device 240 by default. In the preferred embodiment of the present invention, mnemonic codes of "TV", "VCR", "TUN", etc. correspond to buttons of buttons set 246. Mnemocodes "Chl"..."Ch9" correspond to the buttons of buttons set 247. Mnemocodes "Up" (an arrow looking up), "Dn" (an arrow looking down), "VUp" (to increase loudness), "VDn" (to decrease loudness), "OK" correspond to the buttons of buttons set 248. Mnemonic codes "PAS", "STP" correspond to the buttons of buttons set 249, and so on. There are no mnemonic codes corresponding to the buttons of buttons sets 245.1 and 245.2 by default.
In column "Code" 534, the digital command code transmitted to a remotely-controlled device is recorded.
Texts 517 comprises text messages output onto display device 250 during the control of devices, during the fulfilling of the utility programs, and in other cases. Texts 517 consist of sectors each having the record of text messages set for one remotely-controlled device or for one utility program. These sectors are filled during the production of URC device 200. Text messages in every sector are divided by symbol "%". Each sector in Texts 517 ends by the symbol of the sector ending, for example, symbol "#". It is also possible to record data into Texts 517 during the use of URC device 200 by scanning barcoded data and by other means.
As shown in Fig.8, Programs 519 comprise a table, every line of which has data about one of utility programs. In column "Program Name" 551, there is the title of the utility program received from field 412 during the scanning (Fig.5A). In column "UPC" 552, there is Universal Product Code (UPC) of the given utility program received during the scanning from field 410. In column "Manufacturer" 553, there is the name of the company that released this utility program. This name is taken from field 411 during the scanning. Columns "Address" 554 and "Text message" 555 comprise addresses in EPROM 226, beginning with which the utility program and text messages for it are recorded.
As shown in Fig.9, Event Table 520 comprises a table, each line of which has data about one command to be fulfilled at the predetermined time. In columns "Date" 561 and "Time" 562, the date and time for fulfilling the command are recorded. In column "Command" 563, the mnemonic code of the command is recorded. If the fulfilling of a sequence of commands is programmed for a certain time, then these commands are put into the lines going one after another in Event Table 520. Further we will provide the description of programs run by microcontroller 202 in URC device 200. microcontroller 202 starts running the main program after turning on the power in URC device 200 and continues till the power is switched off. The power switch on and off can be done by putting in and taking out batteries accordingly. As shown in Fig.10, when the main program starts in block 601, microcontroller 202 runs subroutine of inquiring touch input device 602. The result of running this subroutine is the number of the activated button. As it was pointed out before, this number can determine not only a separate button, but also a permissible combination of several simultaneously pressed buttons. If no button is pressed or two and more buttons are pressed simultaneously forming a impermissible combination, then the number of the button pressed is set equal to zero. The programs of inquiring the keyboard for remote control devices are well know in the art and there is no need to describe subroutine 602 in detail.
In block 603, the received number of the pressed button is checked. If this number is equal to 0, that is no button is pressed or a permissible combination of buttons is pressed, then microcontroller 202 continues to subroutine of checking Event Table 604. After fulfilling this subroutine the program returns to subroutine 602 of inquiring of touch input device. If the number of the button pressed is not equal to zero, the actions determined by the pressed button begin.
Microcontroller 202 checks if any of the following buttons is pressed: the button initiating the scanning of a barcoded program (block 605), or one of buttons 246 for selecting a controlled device (block 607), or one of buttons for activating the command that is being fulfilled (block 609), or the button initiating the choice and fulfilling of one of utility program (block 613). Receiving of the positive answer in one of block 605, 607, 609, 613 results in fulfilling of one of the following subroutines accordingly: subroutine of barcoded program scanning 606, subroutine of selecting a remotely-controlled device 608, subroutine of fulfilling the command 610, and subroutine of selecting and running the utility program 614. All these subroutines will be described below. After fulfilling each of the above- mentioned subroutines microcontroller 202 returns to subroutine 602. If the negative answer is received in one of blocks 605, 607, 609, microcontroller 202 continues to blocks 607, 609, 613 accordingly. If the negative answer is received in block 613, then microcontroller 202 continues to fulfilling auxiliary functions 615. Auxiliary functions include in particular deleting of unnecessary records in EPROM 226, including utility programs, records in Event Table 520, etc. Also, auxiliary functions include setting of the current date and time and some other auxiliary operations. The program for fulfilling the auxiliary functions can be written by anyone skilled in the art with the use of well known programming rules and techniques. That is why the detailed description of subroutine 615 is not provided herein.
As shown in Fig.l l, after entering in block 621 subroutine of barcoded program scanning 606, microcontroller 202 in subroutine 622 fulfills the scanning of the first bar of code 110 and storing of the scanned information in Scanning Buffer 510 in RAM 222. At this time, display device 250 can reproduce text messages showing the user the sequence of actions. There is no need to describe the procedure of reading and decoding of barcoded information, as these operations are well known in the art. Further subroutine 623 is run. In this subroutine, microcontroller 202 compares UPC read from area 410 of the barcoded program to all UPCs recorded in Program Table 519. If among utility programs stored in EPROM 226 there is a program with the same UPC as in the program being scanned, the user gets the message about it in the form of text on display device 250 and/or in the form of a audible signal via sound device 255. Further, the user can be offered a choice - not to continue the scanning and recording of barcoded utility program or continue scanning and in result renew the barcoded utility program in EPROM 226. These details of subroutine 623 are not shown in Fig.11. In subroutine 623, also a type of code 1 10 is checked. The identificator for the code type was read from field 409. If said identificator is not equal to
91, then input data is not the utility program. In this case, the message about the mistake is created and the subroutine is terminated (not shown in Fig.11).
Then in block 624, microcontroller 202 stores in variable NBars the number of bars of the barcode in the program being scanned, received from area 408 in the first bar of the barcoded program. After this, other bars of barcoded program are scanned one after one, while microcontroller 202 is checking if all the bars are scanned and outputs to display device 250 messages prompting the user if one more bar should be scanned or the scanning is terminated (blocks 625 and 626). During the scanning it is also checked that the bars are scanned in the correct order. For this purpose, the numbers in areas 406 in the beginning of each bar of the are used (Fig.5). If an error in the scanning order occurs, the user receives a text or sound message about the error. After the scanning of each bar of the barcode it is also checked that the scanning was completed correctly. It is done with the help of control code 407 at the end every bar.
After all bars of the barcoded program are scanned and the data received is stored in scanning buffer 510, the following subroutines are
5 fulfilled: subroutine 629, in which data about the program scanned from fields 409, 410, 411, 412 (Fig.5) is stored in Program Table 519; subroutine 630, in which program text from field 485 is stored in Programs 514; and subroutine 631, in which text messages from field 486 are stored in Texts 517. When subroutines 630 and 631 are run, in columns "Address" 554 and lo "Text message" 555 of Program Table 519 addresses are stored, starting from which the storing in Programs 514 and in Texts 517 respectively takes place. Finally, subroutine 606 terminates in block 637.
Subroutine of selecting remotely-controlled device 608 is fulfilled, when one of the buttons in buttons group 246 is pressed. Therein a sector in
15 Button Tables 516 is selected, where the commands system for the selected remotely-controlled device 300 is recorded. At the same time, the corresponding remote control commands transmission protocol is selected out of protocols recorded in EPROM 226.
Subroutine of fulfilling commands 610 does not have any specific
20 features as compared to corresponding subroutines in existing remote control units. When running this subroutine, microcontroller 202 forms a command code in accordance with the pressed button and data in the selected sector of Button Tables 516 and sends the formed code via transmitting device 230 to remotely-controlled device 300 according to the selected commands
25 transmission protocol.
Fig.12 shows the flowchart of subroutine of selecting and executing the utility program 614. After entering this subroutine in block 721, microcontroller 202 fulfills subroutine 722. In this subroutine, the list of utility programs stored in Program Table 519 is displayed on Display device
30 250. Then, microcontroller 202 continues to subroutine 723. During the fulfilling of this subroutine, the user with the help of buttons in buttons group 248 selects a utility program in the utility programs list.
In the cycle consisting of blocks 724...729, microcontroller 202 sequentially fulfills operators that make up the utility program. As it was
35 explained before, each utility program is recorded in Programs 514 in EPROM 226 in the form of text in the special programming language. The implementation of the utility program is fulfilled by the interpreter program. The text of utility program consists of operators. The interpreter program can fulfill these operators one by one and can move to the operator with the given number, if the operator of transition was encountered in the utility program. The methods and rules of writing interpreter programs are well known in the art.
In block 724, the following operator of the utility program is read from
5 Programs 514. In block 725, the interpreter program checks if the current operator is the operator of transition or branching. If this is true, then in block 726 the transition determined by this operator is fulfilled, and the program returns to the beginning of the cycle in block 725. In the opposite case, the interpreter program fulfills the following operator in block 727. As lo a rule, the executing of the operator is the calling of the corresponding subroutine stored in Operating System 513 area in EPROM 226.
Then in block 728, the interpreter program checks, if the operator was fulfilled by the last operator in the utility program. In case of the negative answer to this question, in block 729 the transition to the following operator
15 is fulfilled, and the program returns to the beginning of the cycle in block 724. In case of the positive answer, subroutine 614 terminates in block 730.
Fig.13 shows the flowchart of subroutine 604 of checking Event Table 520 and fulfilling the programmed operations. After entering this subroutine in block 731, microcontroller 202 fulfills the search for the first event in
20 Event Table 520 (block 736). To do so, microcontroller 202 looks through columns "Date" 561 and "Time" 562 in Event Table 520 and selects the event that must take place earlier than other events. In block 733, it is checked if the event is found. If no event is found that can be in case when no event is recorded in Event Table 520, subroutine 604 terminates in block
25 737.
If the event is found, then in block 734 microcontroller 202 compares the value of date and time recorded in columns "Date" 561 and "Time" 562 for the found event to the current values of time and date received from real time clock 260. If the programmed time for the found event has not arrived
30 yet, subroutine 604 terminates in block 737. It the time programmed for this event has arrived, in block 735 microcontroller 202 executes the command recorded for the found event in column "Command" 563. To do so, microcontroller 202 looks through the Button Tables 516 for the current selected device, finds in column "Mnemo" 533 (Fig.7) the line with the
35 command the mnemonic code of which corresponds to the mnemonic code in column "Command" 563 in Event Table 520, reads from column "Code" 534 the digital code of the command found and sends this digital code to remotely- controlled device 300. After fulfilling the command, microcontroller 202 deletes the line in Event Table 520 (block. 736) and returns to the beginning of the cycle in block 732. Thus, the programmed commands are fulfilled as moments of time, for which these commands are set, arrive. As when the utility program is fulfilled, commands are recorded in Event Table 520 in the form of mnemonic codes, the same utility program can be used to control various device models, for example different models of VCRs, TV-sets, etc.
CONCLUSION, RAMIFICATIONS AND SCOPE
As can be seen from the above description, the present invention provides many advantages over the remote control units known before.
URC device according to the present invention can be programmed to automatically fulfil a sequence of remote control operations to control various remotely-controlled devices. These operations can be fulfilled at programmed moments of time.
The URC device according to the present invention is easy to use. Any user can easily program the URC device with the help of the barcoded program. An important advantage is that the user can receive the barcoded program from various sources: the manual of the remotely-controlled device, printed publications, the Internet, regular mail, etc.
The URC device allows to allot many home appliances with new functions, originally not designed for these devices. Users receive from the above-mentioned sources the barcoded utility programs allowing to fulfill automatically or interactively the sequence of operations, including the programming of fulfilling the sequence of operations at predetermined times in the future.
The URC device does not comprise complicated, expensive or non- standard units. Production costs for the present invention universal remote control device are not high. Producers can manufacture these remote control units in big parties as their universality ensures high demand for them.
Although the description above contains many specifities, these should not be construed as limiting the scope of the invention but as merely providing illustrations of the presently preferred embodiment of this invention. Many other variants are possible. Some of these variants are briefly discussed below.
The rules for describing the utility programs of the URC device in the barcoded program were provided as an example only. The use of any appropriate method of barcoded presentation for utility programs is possible, for example with the help of Java byte code.
Different types of barcodes can be used to record programs including two-dimensional barcodes. The programming functions of the URC device can be not limited only by reading of the barcode. Receiving of command sets via IR port, computer wired interface, microphone, etc. can be implemented together with barcode programming.
Though the description above was based on the URC unit transmitting data by means of IR interface, other types of interface for transmitting information from the URC unit to the remotely-controlled device can be used, for example visible light, radio-waves, sound including ultrasound, electronic inductive coupling, etc.
Further, various types of display devices (CRT, LED matrix, plasma screen etc.), sound device and touch input device can be used in the URC unit. The display device can be monochrome or color. The interaction of the user with the URC device can proceed differently with the use of various variants of displaying information on the display device. Real-time clock can be implemented not as a separate integrated circuit, but be a part of the microcontroller or as receiving of radio-frequency signal of exact time. Having described the preferred embodiment of the invention with reference to the accompanying drawings, it is to be understood that the invention is not limited to this precise embodiment, and that various changes and modifications may be effected therein by one skilled in the art without departing from the scope or spirit of the invention as defined in the appended claims.
INDUSTRIAL APPLICABILITY
The advantages of the present invention methods and remote control device can be widely used in designing and manufacturing of universal remote control units for remotely-controlled devices. Namely, the present invention makes it possible:
(a) to manufacture a universal remote control device, which can be programmed to automatically fulfil a sequence of remote control operations;
(b)to manufacture a universal remote control device capable of automatic control of various remotely-controlled devices; (c) to manufacturer a universal remote control device capable of simultaneous control of several various remotely-controlled devices sending commands to them in a programmed sequence; (d)to manufacture a universal remote control device capable of automatic fulfilling of remote control operations at predetermined moments of time;
(e)to manufacture a universal remote control device having a simple programming procedure that any user can fulfil quickly and without mistakes;
(f) to manufacture a universal remote control device, information to program which would arrive to the user along with devices that are to be controlled, through regular mail, printed manuals and other printed media, via Internet, fax, and many other sources, so that any user could get required information from a source most convenient to him/her;
(g)to manufacture a universal remote control device capable to interact with a variety of home and office appliances in an interactive manner.

Claims

CLAIMSWe claim
1. A method of remote control, comprising steps of: (a) providing of remote control device, comprising receptive means for reception of user actions, transmitting means for transmission of remote control commands to a controlled device, reading means for reading of data from an information medium, storage means and processing means connected to said receptive means, said transmitting means, said reading means, and said storage means;
(b) providing of information medium comprising a utility program for said remote control device; (c) reading of said utility program from said information medium by said reading means;
(d) storing said utility program in said storage means; and
(e) executing of said utility program by said processing means in response to user's action on said receptive means; wherein said executing of said utility program comprises forming of at least one remote control command and transmitting of said at least one remote control command to the controlled device by means of said transmitting means.
2. The method of remote control of Claim 1, further comprising a step of selecting of one of the previously stored utility programs from said storage means, whereby the selected utility program is executed by said processing means.
3. The method of remote control of Claim 1, further comprising a step of prerecording data about command system and transmitting protocol of at least one remotely controlled device into said storage means, whereby said forming of at least one remote control command and said transmitting of said at least one remote control command to the controlled device are fulfilled in accordance to said data.
4. The method of remote control of Claim 1, wherein said executing of the utility program comprises steps of: (a) inputting events data about at least one predetermined point of time;
(b) storing said events data in said storage means; wherein said forming of at least one remote control command and said transmitting of at least one remote control command to the controlled device are fulfilled, when the predetermined point of time is reached.
5. The method of remote control of Claim 1, wherein said providing of information medium comprise a step of recording of text messages on said information medium; and further comprises steps of:
(a) reading of said text messages from said information medium by said reading means;
(b) storing said text messages in said storage means; and
(c) reproducing said text messages on display means of said remote control device during said executing of the utility program.
6. A remote control device comprising:
(a) receptive means for reception of user actions;
(b) transmitting means for transmission of remote control commands to a controlled device;
(c) reading means for reading of data from an information medium;
(d) storage means, comprising at least one program storage area for utility programs;
(e) processing means, connected to said receptive means, said transmit- ting means, said reading means, and said storage means and capable:
(a) to receive from said reading means of at least one utility program and write it into said program storage area;
(b) in response to a user action on said receptive means to select at least one utility program in said program storage area and to execute it; and (c) to form at least one remote control command according to the executed utility program and to send said at least one remote control command to said transmitting means.
7.The remote control device of Claim 6, wherein said storage means further comprise commands storage area for data about command systems; and wherein said processing means are further capable of: (a) reading data about at least one command system from said commands storage area; (b) forming said at least one remote control command according to said data about at least one command system.
8. The remote control device of Claim 6, further comprising a real-time clock, connected to said processing means; wherein said storage means additionally comprise an events storage area for data about predetermined points of time; and wherein said processing means are further capable:
(a) to receive events data about at least one predetermined point of time from at least one of said reading means or said receptive means and to write said events data into said events storage area;
(b) to form said at least one remote control command, when the predetermined point of time is reached.
9. The remote control device of Claim 6, further comprising a display connected to said processing means; wherein said storage means further comprise text storage area for messages; and wherein said processing means are further capable: (a) to receive from said reading means at least one message and to write said at least one message into said text storage area;
(b) to read said at least one message from said text storage area and to send said at least one message to said display.
10. The remote control device of Claim 6, wherein said reading means are capable of reading an optical-readable code.
11. The remote control device of Claim 6, wherein said optical-readable code is a barcode.
12. An information medium, comprising:
(a) at least one surface adapted for allocation of machine-readable code symbols thereon;
(b) at least one program field on said at least one surface, comprising at least one group of machine-readable code symbols; wherein said at least one group of machine-readable code symbols represents at least one remote control command.
13. The information medium of Claim 12, comprising at least one separator between said at least one program field and other fields on said at least one surface.
14. The information medium of Claim 12, wherein said machine- readable code symbols are barcode symbols.
15. The information medium of Claim 12, wherein said at least one surface is a part of the surface of a remotely controlled device housing.
16. The information medium of Claim 12, wherein said at least one surface is a part of the surface of a remotely controlled device packing.
17. The information medium of Claim 12, wherein said at least one sur- face is a part of the surface of at least one sheet of a remotely controlled device manual.
18. The information medium of Claim 12, wherein said at least one surface is a part of the surface of at least one sheet of a printed publication.
PCT/RU2001/000416 2000-10-20 2001-10-16 Universal remote control WO2002035301A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2002214427A AU2002214427A1 (en) 2000-10-20 2001-10-16 Universal remote control

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
RU2000126339 2000-10-20
RU2000126339/09A RU2185650C1 (en) 2000-10-20 2000-10-20 Procedure of remote control and device for its realization

Publications (1)

Publication Number Publication Date
WO2002035301A1 true WO2002035301A1 (en) 2002-05-02

Family

ID=20241188

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/RU2001/000416 WO2002035301A1 (en) 2000-10-20 2001-10-16 Universal remote control

Country Status (3)

Country Link
AU (1) AU2002214427A1 (en)
RU (1) RU2185650C1 (en)
WO (1) WO2002035301A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2909793A1 (en) * 2006-12-12 2008-06-13 Emile Chemmama Remote control device for controlling apparatus, has programming clock permitting controlling any apparatus at precise time, and with programming for carrying out different tasks, where launching of tasks is carried out in sequence
US7493085B2 (en) 2005-07-14 2009-02-17 Sony Corporation Remote control transmitter apparatus
EP2161947A1 (en) * 2007-06-13 2010-03-10 YOSHIDA, Kenji Input device of apparatus using dot pattern, receiver of controlled apparatus, terminal, and paper controller
CN104898472A (en) * 2015-03-31 2015-09-09 广东美的制冷设备有限公司 Terminal control method and device
CN113781760A (en) * 2021-08-17 2021-12-10 深圳智控佳科技有限公司 Bluetooth remote control method, device, system and medium based on two-dimension code

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5902678B2 (en) * 2010-06-04 2016-04-13 ホーム コントロール シンガポール プライベート リミテッド Programming of general-purpose remote control device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2101556A (en) * 1981-06-29 1983-01-19 John Alan Howard Frieda Assembly of pre-printed labels
US4540856A (en) * 1982-05-31 1985-09-10 Hitachi, Ltd. Remote control system
US5450079A (en) * 1992-04-13 1995-09-12 International Business Machines Corporation Multimodal remote control device having electrically alterable keypad designations
US5552837A (en) * 1995-03-01 1996-09-03 Gemstar Development Corporation Remote controller for scanning data and controlling a video system
WO1998030941A1 (en) * 1997-01-13 1998-07-16 Merloni Elettrodomestici S.P.A. Control system for a household appliance
US6082776A (en) * 1997-05-07 2000-07-04 Feinberg; Lawrence E. Storing personal medical information

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2101556A (en) * 1981-06-29 1983-01-19 John Alan Howard Frieda Assembly of pre-printed labels
US4540856A (en) * 1982-05-31 1985-09-10 Hitachi, Ltd. Remote control system
US5450079A (en) * 1992-04-13 1995-09-12 International Business Machines Corporation Multimodal remote control device having electrically alterable keypad designations
US5552837A (en) * 1995-03-01 1996-09-03 Gemstar Development Corporation Remote controller for scanning data and controlling a video system
WO1998030941A1 (en) * 1997-01-13 1998-07-16 Merloni Elettrodomestici S.P.A. Control system for a household appliance
US6082776A (en) * 1997-05-07 2000-07-04 Feinberg; Lawrence E. Storing personal medical information

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7493085B2 (en) 2005-07-14 2009-02-17 Sony Corporation Remote control transmitter apparatus
FR2909793A1 (en) * 2006-12-12 2008-06-13 Emile Chemmama Remote control device for controlling apparatus, has programming clock permitting controlling any apparatus at precise time, and with programming for carrying out different tasks, where launching of tasks is carried out in sequence
EP2161947A1 (en) * 2007-06-13 2010-03-10 YOSHIDA, Kenji Input device of apparatus using dot pattern, receiver of controlled apparatus, terminal, and paper controller
EP2161947A4 (en) * 2007-06-13 2012-12-19 Kenji Yoshida Input device of apparatus using dot pattern, receiver of controlled apparatus, terminal, and paper controller
EP2824646A3 (en) * 2007-06-13 2015-04-29 YOSHIDA, Kenji Input device of apparatus using dot pattern, receiver of controlled apparatus, terminal and paper controller
CN104898472A (en) * 2015-03-31 2015-09-09 广东美的制冷设备有限公司 Terminal control method and device
CN104898472B (en) * 2015-03-31 2018-03-13 广东美的制冷设备有限公司 terminal control method and device
CN113781760A (en) * 2021-08-17 2021-12-10 深圳智控佳科技有限公司 Bluetooth remote control method, device, system and medium based on two-dimension code

Also Published As

Publication number Publication date
AU2002214427A1 (en) 2002-05-06
RU2185650C1 (en) 2002-07-20

Similar Documents

Publication Publication Date Title
CN1334937B (en) Method for remotely controlling electronic devices
US5475835A (en) Audio-visual inventory and play-back control system
US6008735A (en) Method and system for programming a remote control unit
US7298311B2 (en) Controller apparatus for controlling an electronic apparatus
CN100354964C (en) Digital video apparatus user interfoue
EP1677882B1 (en) Interactive control of video machines and games therefor
JPH0785597B2 (en) Remote control device
US5819039A (en) System for and method of interactive dialog between a user and a telematic server
JPS624731B2 (en)
US20050151886A1 (en) Remote controller
EP0262954B2 (en) Remote control transmission apparatus
JPH04500142A (en) television receiver
KR20000068704A (en) Automatic configuration mechanism for universal remote
JPH0241238B2 (en)
US20040125075A1 (en) DVD remote control with interchangeable, title-specific interactive panels
WO2002033496A1 (en) Universal remote control
WO2002035301A1 (en) Universal remote control
CN100416619C (en) Method for controlling several apparatuses with the aid of a link attached device and said link attached device for carrying out said method
CN1063005C (en) Apparatus and method for automatically performing channel chance of television receiver using video cassette recorder
CN1075838A (en) Be coupled to the automatic detection of cassette tape video recorder cable converter unit
GB2419448A (en) Programmable remote controller using playback of audiovisual content
JP2002215298A (en) Remotely controlled electronic device, remote control method and remote control program
JP2959718B2 (en) Remote control device with bar code reader
KR20060034577A (en) Digital code printed material and digital code recognition device
EP0860764B1 (en) System for controlling information available on video and/or audio equipment by graphical display

Legal Events

Date Code Title Description
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP