1. Technical Field
The present invention relates to a system for remote control of at least an appliance, the system comprising a remote control and an extender coupled thereto. The present invention also relates to a method for remote control of at least an appliance in a system comprising a remote control and an extender coupled thereto.
2. Description of Related Art
A network infra red (IR) extender is a device specially designed to extend the coverage of a regular remote control, still using standard IR receivers for the appliances. The extender is able to reach the receiver of the appliance, for example because it is located in line of sight of the receiver, while the Remote Control (RC) is not able to reach the receiver. Remote control extender systems are particularly useful for control of hidden (e.g. built-in) devices in the same room or for control of appliances in another room. Also the combination of multiple extenders permits the control of multiple appliances at the same time without the need to move the RC around in different directions. The remote control is coupled to the extenders via a (home) network.
An existing network extender system of Philips uses a connection-based IP protocol, the Transmission Control Protocol (TCP), to communicate the commands between the RC and the extender. The remote control of this system is available under the product name TSi6400 and the extender of this system is available under the product name NXT6400. A connection-based protocol such as TCP is designed to reliably deliver the data to a peer device using acknowledgements, retransmissions and congestion control to reduce the transmission errors over congested networks. As a consequence, a connection-based protocol does not provide timely data delivery. Indeed, the protocol depends on network behavior and, if necessary, it will retransmit the same data multiple times to ensure guaranteed delivery in detriment of time constrains. In that context a RC cannot guarantee the time at which a command is delivered to an extender.
While the connection-based protocol works mostly well on a wired home network, it suffers significantly from perturbation of a wireless home network.
The requirement for time control of command execution is critical in the context of repeat commands. Repeat commands have a variable time duration. A repeat command 10 according to the state of the art is described with reference to
As an example, the user action Volume UP is executed by a repeat command. The start code requests a volume up. The volume is raised further by a predetermined dB value as long as the continuation code is received by the appliance. The receiver knows to stop incrementing volume when the continuation code is not received anymore.
The RC repeat command duration is determined by the time interval between depressing (t1) and releasing a key/button (t2). The duration of a repeat command is critical and must be respected, as it is the receiver of the appliance that interprets the duration in its context. For example, using a repeat command a receiver will be able to differentiate a stop ( ) action from an eject request on DVD player. A short repeat command duration meaning ‘stop’, while a longer repeat command duration request the DVD player to stop and open the disc tray.
The errors of repeat command duration, in particular for repeat commands executed over an IP network by a TCP connection are critical. Sometimes, the duration may be even 3 seconds longer than expected. This means that the IR extender will transmit volume UP for 3 additional seconds after the user has released the key of the remote control.
It is an object of the invention to control the duration of commands with a variable time duration in a remote control system with an extender.
This and other objects of the invention are achieved by a system according to independent claim 1, a remote control according to independent claim 12, an extender according to independent claim 13, a method according to independent claim 14, computer programs according to claims 23 and 24, a computer readable medium according to claim 25 and a carrier medium according to claim 26. Favorable embodiments are defined by the dependent claims 2-11 and 15-22.
According to the invention, remote control of at least an appliance is provided in a system comprising a remote control and an extender coupled thereto. The remote control transmits messages to the extender during the period, that a command is to be transmitted from the extender to an appliance. The extender receives the messages and transmits the command as long as it receives the messages from the remote control. It finishes the transmission of the command, if an expected message has not been received at a predetermined time. In this way, the duration of the command is limited if one of the messages is not received by the extender or if it is delayed, for example in case of perturbations on a network that is used for the transmission of the messages from the remote control to the extender.
Preferably, the remote control periodically transmits the messages and the extender finishes the transmission of the command, if no message is received within a predetermined time interval after the reception of an earlier message. In this way, the protocol for limiting the command duration is simple.
In a further preferred embodiment the extender resets a timer when receiving the messages, starts the timer and finishes the transmission of the command, if the timer reaches a predetermined time-out value without a further message being received. In this way, the extender implies the protocol according to the invention in an efficient way.
Preferably, the remote control transmits to a stop message to the extender. The extender finishes the command upon receiving the stop message. This allows finishing the command unequivocally.
Furthermore, the remote control may transmit a start message to the extender. The extender starts the transmission of the command upon receiving the start message.
In a further preferred embodiment the remote control includes an end code into the start message. The extender finishes the command by transmitting the end code. So, even if subsequent network messages are lost the extender is still able to transmit the end code, because it already receives this code with the start (first) message.
In a further preferred embodiment, the remote control includes a continuation code into the start message and the extender transmits the command using the continuation code. The extender already receives the continuation code with the start (first) message. Hereby, the risk is avoided that the continuation code does not arrive on time. Preferably, the remote control transmits at least some of the messages according to a duplication mechanism. In this way, the risk that these messages are lost is reduced.
The remote control may be a single device coupled to a network.
Alternatively, the remote control comprises a handheld device and a receiver device coupled to a network. The handheld device transmits a command to the receiver device and the receiver device, which generates the messages to be transmitted to the extender based on the command received from the handheld device.
Preferably, the invention is implemented by computer programs loaded to the remote control and the extender.
These and other aspects of the invention will be apparent from and elucidated with reference to the embodiments described hereinafter.
The invention will be better understood and its numerous objects and advantages will become more apparent to those skilled in the art by reference to the following drawing, in conjunction with the accompanying specification, in which:
Throughout the figures like reference numerals refer to like elements.
The remote control transmits three types of messages for executing the repeat command: a start message 100, an alive message 110 and a stop message 120. Using the UDP protocol each start message is transmitted a certain number of times using a duplication mechanism (5 times in
Upon receiving the start message the extender starts the transmission of the repeat command. The start message is followed by periodic alive messages. The alive messages are each transmitted a number of times in the same way as the start message. The alive messages are periodically sent during the live time of the repeat command. The IR extender continues transmitting the repeat command as long as it receives the alive messages. Upon receiving the stop message, the extender finishes the transmission of the repeat command. In case that the used repeat command comprises an end code, the extender finishes the repeat command by sending the end code. In the case that the used repeat command does not comprise an end code, the extender simply stops the transmission of the repeat command. In order to reduce the load on the network the alive messages are spread over time, using a certain idle time Δt2. The IR extender expects some message after the idle time. The IR extender will automatically finish the repeat command after a time-out period without receiving any message. This time-out is derived from the idle time and the time required for sending a message. Each valid alive message arrival resets the extender time-out. Duplicate messages are ignored by the extender.
In this way a recover from failure mechanism is provided for situations in which the stop message never reaches the extender.
Selection of settings the protocol must compromise between network efficiency (i.e. not overloading the network) and introduced delays (delays happen when some of the first duplicated packets are lost).
Some values for the protocol settings are given here by way of example:
Delay Δt1 between the duplicate messages=10 ms. This ensures a clean separation of packet on the network without large delay.
Duplication count of the messages=5. This results in a good balance between maximum delay for sending a single message [(5−1)*10 ms] and transmission robustness.
Duration of the transmission of a single message (all the duplicate packets)=[(5−1)*10 ms]=40 ms
Idle time Δt2=40 ms
IR extender timeout=200 ms, equivalent to 2 continuation periods (alive message transmission time+idle time Δt2) supplemented by one alive message transmission time. This allows the loss of one complete alive message (all the duplication packets).
The 200 ms IR extender timeout guarantees that repeat command duration will never exceed the desired time by more than 200 ms, which is acceptable for most applications. Of course, other values may be used with the same protocol.
An IR extender ignores all packets for which a packet with the same message ID has already been received.
It is to be noted that the alive messages must not necessarily follow the same duplication transmission mechanism. The purpose of the alive messages is to maintain the communication with the IR extender without specific content and without very accurate timing.
In
The right flowchart 400 shows the steps performed by the extender. In step 410 it waits for a network message from the remote control. In step 420 it checks if a start message has been received. If this is not the case it loops back to step 410. If a start message has been received, the extender starts the transmission of the repeat command in step 430. Subsequently, in step 440 it resets a timer. Subsequently, in step 450 it waits for a message from the remote control or until the timer reaches a time-out. If a time-out has been reached (step 460), it finishes the transmission of the repeat command (step 470). If no time-out has been reached but a message from the remote control is received (step 460) it checks in step 480 if this message is an alive message. If this is the case, it loops back to step 440 and resets the timer. The transmission of the repeat command is continued in this case. If the received message was not an alive message but a stop message, which is the only other possibility, the extender stops the transmission of the repeat command (step 470).
So, as a result of the use of this time-out mechanism, the duration of the effective repeat command may be smaller than the duration of the expected repeat command in case of network interferences. Generally, this is not critical. Consider the following exemplary situation. A user has requested to eject the DVD by holding the stop/eject button for a long period. However, the repeat command is automatically stopped by the extender before the required repeat command duration for eject action, because it does not receive messages from the remote control for a certain time-out. In this case the DVD is stopped but it is not ejected. In this case the user has to repeat the operation to get the tray opened.
The invention may also be used with repeat commands that do not comprise the optional end code. In this case the start message only comprises a description of the start code and the continuation code. The extender finishes the transmission of the repeat command without transmitting any further codes, when it receives the stop message or in case of time-out.
Furthermore, the invention is also applicable for repeat commands in which the start code and the continuation code are the same.
The network module 22 is adapted for generating the start message 100, alive messages 110 and stop messages 120, as described herein above. This functionality is preferably implemented by a processor loaded with a suitable computer program. The computer program may be embodied on a computer readable medium or may be downloaded from a server using a suitable carrier medium.
The extender 40 comprises amongst others:
The net service module 42 is adapted for reading and interpreting the received messages and generating the repeat command as described herein above. This functionality is preferably implemented by a processor loaded with a suitable computer program. The computer program may be embodied on a computer readable medium or may be downloaded from a server using a suitable carrier medium.
Alternatively, the network module 22 waits until the repeat command has been received completely, before it starts the generating any messages meant for the extender. In this way, the network module 22 has information related to all the parameters of the repeat command. It then generates a single message with a completely description of the repeat command. The description comprises the start code, the continuation code and the end code as well as the delays between these codes. The network module transmits the message to one of the extenders 40. The extender 40 generates the repeat command based on this description.
As will be recognized by those skilled in the art, the innovative concepts described in the present application can be modified and varied over a wide range of applications. In the embodiments described with reference to the drawings infra red transmission is used between the extenders and the appliances but of course the invention can also be implemented in network extenders that use other transmission media like (low power) RF or ultra sound. Furthermore, the invention has been described with reference to a repeat command but of course it can also be used for other commands having a variable time duration. In the described embodiments the used network protocol is a User Datagram Protocol (UDP) but of course the invention may also be used with other network protocols. Accordingly, the scope of patented subject matter should not be limited to any of the specific exemplary teachings discussed, but is instead defined by the following claims. Any reference signs in the claims shall not be construed as limiting the scope.
Number | Date | Country | Kind |
---|---|---|---|
05112797 | Dec 2005 | EP | regional |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/IB2006/054771 | 12/12/2006 | WO | 00 | 6/19/2008 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2007/072299 | 6/28/2007 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
4850040 | Teich et al. | Jul 1989 | A |
5483231 | Sasabe | Jan 1996 | A |
5657005 | Seebeck et al. | Aug 1997 | A |
6130625 | Harvey | Oct 2000 | A |
6188325 | Vogel | Feb 2001 | B1 |
6724339 | Conway et al. | Apr 2004 | B2 |
7034899 | Symoen et al. | Apr 2006 | B2 |
7852230 | Billo | Dec 2010 | B2 |
20010026215 | Nakaho et al. | Oct 2001 | A1 |
20020027504 | Davis et al. | Mar 2002 | A1 |
20030011467 | Suomela | Jan 2003 | A1 |
20030133414 | Borghs | Jul 2003 | A1 |
20030161411 | McCorkle et al. | Aug 2003 | A1 |
20030197625 | Szuba | Oct 2003 | A1 |
20040078116 | Hashimoto et al. | Apr 2004 | A1 |
20040108940 | Witkow et al. | Jun 2004 | A1 |
20040155809 | Eyer | Aug 2004 | A1 |
20060136610 | Lee et al. | Jun 2006 | A1 |
Number | Date | Country |
---|---|---|
0514078 | Nov 1992 | EP |
H10136475 | May 1998 | JP |
2005341173 | Dec 2005 | JP |
Number | Date | Country | |
---|---|---|---|
20080316046 A1 | Dec 2008 | US |