Language selection

Search

Patent 2443452 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent: (11) CA 2443452
(54) English Title: ROLLING CODE SECURITY SYSTEM
(54) French Title: SYSTEME DE SECURITE A CODE DE BRASSAGE
Status: Expired
Bibliographic Data
(51) International Patent Classification (IPC):
  • G08C 19/00 (2006.01)
  • E05F 15/77 (2015.01)
  • H03M 5/16 (2006.01)
  • H04L 9/00 (2006.01)
(72) Inventors :
  • FARRIS, BRADFORD L. (United States of America)
  • FITZGIBBON, JAMES J. (United States of America)
(73) Owners :
  • THE CHAMBERLAIN GROUP, INC. (United States of America)
(71) Applicants :
  • THE CHAMBERLAIN GROUP, INC. (United States of America)
(74) Agent: MACRAE & CO.
(74) Associate agent:
(45) Issued: 2008-07-29
(22) Filed Date: 1996-05-16
(41) Open to Public Inspection: 1996-11-21
Examination requested: 2003-10-15
Availability of licence: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): No

(30) Application Priority Data:
Application No. Country/Territory Date
446,886 United States of America 1995-05-17

Abstracts

English Abstract

A rolling code transmitter is useful in a security system for providing secure encrypted RF transmission comprising an interleaved trinary bit fixed code and rolling code. A receiver demodulates the encrypted RF transmission and recovers the fixed code and rolling code. Upon comparison of the fixed and rolling codes with stored codes and determining that the signal has emanated from an authorized transmitter, a signal is generated to actuate an electric motor to open or close a movable barrier.


French Abstract

Cet extrait concerne un émetteur-récepteur à code de brassage utilisé dans un système de sécurité pour assurer une transmission HF codée en toute sécurité, à l'aide d'un code fixe à bits trinaires entrelacés et d'un code de brassage. Un récepteur démodule la transmission HF codée, et récupère le code fixe et le code de brassage. Lors de la comparaison des codes fixes et de brassage, avec des codes mémorisés, et lors de la détermination de la provenance du signal d'un émetteur-récepteur autorisé, un signal est généré pour actionner un moteur électrique pour ouvrir ou fermer une barrière mobile.

Claims

Note: Claims are shown in the official language in which they were submitted.





CLAIMS:

1. A transmitter for sending an encrypted signal to control an actuator,
comprising:
an oscillator for generating a radio frequency oscillatory signal;
apparatus for enabling the sending of the encrypted signal;
binary code generator responsive to the enabling apparatus for generating a
variable binary code, said
variable code being different for each enabling by the enabling device;
trinary code generator for generating a three-valued or trinary code
responsive to the variable binary
code; and
transmitting apparatus for modulating the radio frequency oscillatory signal
with the trinary code
to produce a modulated trinary coded variable radio frequency signal for
operation or control of the
actuator.


2. A transmitter for sending an encrypted signal to control an actuator
according to claim l, further
comprising apparatus for receiving said variable binary signal and producing a
mirrored binary signal, said
mirrored binary signal being supplied to said trinary code generator for
generating the trinary signal from
the variable binary signal.


3. A transmitter for sending an encrypted signal to control an actuator
according to claim 1, comprising
apparatus for producing a fixed code signal and for combining said fixed code
signal with a rolling code
signal.


4. A transmitter for sending an encrypted signal to control an actuator
according to claim 3, comprising
apparatus for interleaving trinary bits derived from said fixed code signal
with trinary bits derived from said
rolling code signal to produce a trinary interleaved fixed and rolling code
signal.


5. A transmitter for sending an encrypted signal to control an actuator
according to claim 1, comprising
incrementing apparatus for altering said variable code by adding a fixed value
with each enabling apparatus
actuation.


6. A transmitter for sending an encrypted signal to control an actuator
according to claim 5, wherein
said means for incrementing said variable code increments said variable code
by a prime number value.



14




7. A transmitter for sending an encrypted signal to control an actuator
according to claim 1, wherein
said binary code generator for generating a variable binary code includes a
non-volatile memory for storing
a variable binary code.


8. A transmitter for sending an encrypted signal to control an actuator
according to claim 1, wherein
said binary code generator for generating said variable code includes storage
means holding a previous cycle
variable code signal from which the variable code is generated.


9. A remote security system for communicating an encrypted signal to an
actuator, comprising:
binary code generator for generating a sequence of variable binary codes
according to a
predetermined algorithm, successive codes in the sequence being different from
preceding codes in the
sequence;
trinary code generator for converting said generated variable binary code to a
trinary code;
a transmitter for modulating a transmitted radio frequency signal with said
trinary code;
a radio-frequency receiver for demodulating said transmitted modulated radio
frequency signal and
providing a received trinary code;
trinary code convertor for converting said received trinary code to a received
binary code;
a controller responsive to a positive comparison of said received binary code
and a reference variable
binary code; and
update apparatus responsive to said positive comparison for updating said
reference variable binary
code according to said received binary code.


10. A remote security system according to claim 9, wherein said update
apparatus updates said reference
variable binary code by performing said predetermined algorithm on said
reference variable binary code.

11. A remote security system according to claim 9, wherein said positive
comparison results if said
received binary code and said reference variable binary code lie within a
predetermined numerical limit of
one another.


12. A remote security system according to claim 11, wherein said positive
comparison results if the
numerical difference of said received binary code minus said reference
variable binary code is a positive







number less than said predetermined limit.


13. A remote security system according to claim 12, wherein said predetermined
limit is about 1000.

14. A remote security system according to claim 12, wherein said positive
comparison results if at least
two said received binary codes transmitted in succession, each of which is
numerically different from said
reference variable binary code by a number outside the range of said
predetermined limit, represent
successive results of said predetermined algorithm.


15. A remote security system according to claim 14, wherein said positive
comparison results if said
successively transmitted codes which represent successive results of said
preselected algorithm, each yield
a difference when subtracted from said reference variable binary code outside
the range of zero to a second
predetermined limit.


16. A remote security system according to claim 15, wherein said second
predetermined limit is about
300.


17. A remote security system according to claim 11, wherein the variable
binary code is a rolling code
and the system further comprises a binary code combiner for combining a binary
fixed code with said binary
rolling code and providing the combination to said trinary code generator.


18. A remote security system according to claim 17, further comprising
apparatus for interleaving trinary
bits derived from said binary fixed code with trinary bits derived from said
binary rolling code to provide
an interleaved trinary fixed-and-rolling code to said transmitter.


19. A remote security system according to claim 18, further comprising
apparatus for receiving said
output of said radio-frequency receiver and separating said interleaved fixed-
and-rolling code and providing
to said trinary code convertor a received trinary fixed code and a received
trinary rolling code.


20. A remote security system according to claim 19, wherein said trinary code
convertor provides a
received binary fixed code in response to said received trinary fixed code and
a received binary rolling code
in response to said received trinary rolling code, and further comprising
addressing apparatus for using said



16




received binary fixed code to address said reference variable binary code in a
memory.


21. A remote security system according to claim 20, further comprising means
for mirroring said binary
rolling code and providing it to said trinary code generator.


22. A remote security system according to claim 21, further comprising
apparatus for mirroring said
received binary rolling code and providing it to said controller and to said
update apparatus.


23. A remote security system according to claim 22, wherein said predetermined
algorithm generates
a variable binary code by adding a numeric constant to it.


24. A remote security system according to claim 23, wherein said predetermined
algorithm generates
a variable binary code by adding the value 3 to it.


25. A remote security system according to claim 15, further comprising second
update apparatus for
updating said reference variable binary code according to one of the set of
said successively transmitted
received binary codes.



17

Description

Note: Descriptions are shown in the official language in which they were submitted.



CA 02443452 2007-09-26

ROLLING CODE SECURITY SYSTEM

This application is a division of copending commonly owned Canadian Patent
Application No.
2,193,846 of May 16, 1996.

BACKGROUND OF THE INVENTION
The invention relates in general to security systems which allow operation
upon the receipt of a
properly coded signal. More particularly, the invention relates to a security
system or to a barrier operator
system, such as a garage door operator, employing a transmitter and a receiver
which communicate via code
streams having at least a portion thereof which changes with multiple
operation of the device.
It is well known in the art to provide garage door operators or other barrier
operators which include
an electric motor connectable through a transmission to a door or other
movable barrier which is to be opened
and closed. Since many of these systems are associated with residences, as
well as with garages, it is
important that opening of the barrier be permitted only by one who is
authorized to obtain entry to the area
which the barrier protects. Some garage door operator systems have in the past
employed mechanical lock
and key arrangements associated with electrical switches mounted on the
outside of the garage. While these
systems enjoy a relatively high level of security, they are very inconvenient
to use for a person because it
necessitates them exiting their vehicle in order to send the command to open
the garage door. This also may
present some danger to people when the exit the relative security of their
vehicle if someone may be waiting
to do injury to them.
It is also well known to provide radio-controlled garage door operators which
include a garage door
operator unit having a radio receiver and a motor connected to be driven from
the radio receiver. The radio
receiver is adapted to receive radio frequency signals or other
electromagnetic signals having particular
signal characteristics which, when received, cause the door to be opened. More
recently, such transmitter
and receiver systems have become relatively more sophisticated in that they
use radio transmitters which
employ coded transmissions of multiple or three-valued digits, also known as
"trinary bits" or other serial
coded transmission techniques. Among these systems are U.S. Patent No.
3,906,348 to Willmott, which
employs a transmitter and receiver system wherein a plurality of mechanical
switches may be used to set a
stored authorization code.
U.S. Patent No. 4,529,980 to Liotine et al. discloses a transmitter and
receiver combination for use
in a device such as a garage door operator wherein the transmitter stores an
authorization code which is to
be transmitted to and received by the receiver via a radio frequency link. In
order to alter or update the
authorization code contained within the transmitter, the receiver is equipped
with a programming signal
transmitter or light emitting diode which can send a digitized optical signal
back to the transmitter where it
1


CA 02443452 2003-10-15

is stored. Other systems also employing encoded transmissions are U.S. Patents
Nos. 4,037,201, 4,535,333,
4,638,433, 4,750,118 and 4,988,992.
While each of these devices has provided good security for the user, it is
apparent that persons
wishing to commit property or person-related crimes have become more
sophisticated as well. It is known
in the security industry today that devices are being made available that can
intercept or steal rolling code.
Transequatorial Technology, Inc. sells integrated circuit code hopping
encoders identified as Keeloq
Model NTQ105, NTQ115, NTQ125D and NTQ129. Some of the Keeloq code hopping
encoders generate
serial codes having fixed portions, i.e., which do not change with repeated
actuation of the encoding portion
of the chip and rolling code portions which alter with each actuation of the
encoding portion of the chip. In
order to avoid, however, having the problem of the encoding portion of the
chip having been inadvertently
enabled and causing the rolling code to be altered on successive enabling
attempts thereby leading to a rolling
code which is transmitted and not recognized by a receiver, the Keeloq code
hopping encoders provide a
window forward system, that is they are operable with systems having code
receivers which recognize as a
valid code not a single rolling code, but a plurality of rolling codes within
a certain code window or window
of values which are the values which would be generated on a relatively srnall
number of switch closures as
compared to the total number of rolling codes available. The problem with such
a system, however, might
arise if a user was away for a period of time or had inadvertently caused
codes to be transmitted excluding
the number of codes normally allowed within the valid forward code window. In
that case, the rolling code
would not be recognized by the receiver and the user could not gain entry
without taking other measures to
defeat the locking system or the garage door operator system which might
involve the intervention of a
trained engineer or technician.
Texas Instruments also has a prior system identified as the Mark Star TIZC
1300 and TRC 1315
remote control transmitter/receiver combination. The system involves the use
of a rolling code encoder
which increments or rolls potentially the entire code, that is it does not
leave a fixed portion. The system also
includes a forward windowing function which allows an authorized user to be
able to cause the receiver to
be enabled within a limited number of key pushes. Like the Keeloq system, if
the forward window is
exceeded, the Texas Instruments system must be placed in a learn mode to cause
the system to relearn the
code. In order to place the system into the learn mode, the person rnust
obtain direct access to the receiver
to cause a programming control system associated with the receiver to be hand
actuated causing the receiver
to enter a learn mode. Once the receiver has learned the new code, the
receiver will then construct a new
valid forward code window within wliich valid rolling codes may be received.
The problem, of course, with
such a system is that if, for instance in a garage door operator, the only
portal of entry to the garage door is
2


CA 02443452 2003-10-15

through the overhead door controlled by the garage door operator, the user
will not be able to obtain entry
to the garage without possibly having to do some damage to the structure. This
problem is sometimes
referred to in the industry as a "vaulted garage."
What is needed is an economical encoding system which provides good security
by using a rolling
code, but which enables a user of the systein to proceed via a gradually
degraded pathway in the event that
the receiver detects a signal condition indicative of what might be a lack of
security.

SUMMARY OF THE INVENTION
The invention relates in general to an electronic system for providing remote
security for entry of
actuation of a particular device. Such a system may include a transmitter and
receiver set, for instance with
a hand-held transmitter and a receiver associated with a vehicle such as an
automobile or the like. The
transmitter, upon signalling the receiver, causing the vehicle to start up or
to perform other functions. The
system may also be useful in a barrier operator system such as a garage door
operator by allowing the garage
door to be opened and closed in a relatively secure fashion while preventing
persons who may be intercepting
the radio frequency signals from being able to, although unauthorized, cause
the vehicle to begin running or
to allow access to the garage.
The system includes a transmitter generally having means for developing a
fixed code and a rolling
or variable code. The rolling or variable code is changed with each actuation
of the transmitter. The fixed
code remains the same for each actuation of the transmitter. In the present
system, the transmitter includes
means for producing a 32-bit frame comprising the fixed portion of the code
and a second 32-bit frame
comprising the variable portion of the code. The 32-bit rolling code is then
mirrored to provide a 32-bit
mirrored rolling code. The 32-bit mirrored rolling code then has its most
significant bit "deleted" by setting
it to zero. The transmitter then converts the 32-bit fixed code and the
mirrored variable code to a
three-valued or trinary bit fixed code and a three-valued or trinary bit
variable code or rolling code.
To provide further security, the fixed code and the rolling codes are shuffled
so that alternating
trinary bits are comprised of a fixed code bit and a rolling code bit to yield
a total of 40 trinary bits. The 40
trinary bits are then packaged in a first 20-trinary bit frame and a second 20-
trinary bit frame which have
proceeding them a single synchronization and/or identification pulse
indicating the start of the frame and
whether it is the first frame or the second frame. Immediately following each
of the frames, the transmitter
is placed into a quieting condition to maintain the average power of the
transmitter over a typical 100
millisecond interval within legal limits promulgated by the United States
Federal Communications
Commission. The first trinary frame and the second trinary frame are used to
modulate a radio frequency
3


CA 02443452 2003-10-15

carrier, in this case via amplitude modulation to produce an amplitude
modulated encrypted signal. In a
preferred embodiment, the radio frequency signal is amplitude modulated. The
amplitude modulated signal
is then launched and may be received by an AM receiver. In the preferred
embodiment, the AM receiver
receives the amplitude modulated signal, demodulates it to produce a pair of
trinary bit encoded frames. The
trinary bits in each of the frames are converted on the fly to 2-bit or half
nibbles indicative of the values of
the trinary bits which are ultimately used to form two 16-bit fixed code words
and two 16-bit variable code
words. The two 16-bit fixed code words are used as a pointer to identify the
location of a previously stored
rolling code value within the receiver. The two 16-bit rolling code words are
concatenated by taking the
16-bit word having the more significant bits, multiplying it by 310 and then
adding it to the second of the
words to produce a 32-bit encrypted rolling code. In order to make certain
that if the transmitter was
inadvertently actuated a number of times, the authorized user can still start
his car or gain entry to his garage.
The 32-bit encrypted code is then compared via a binary subtraction. with the
stored rolling code. If the 32-bit
code is within a window or fixed count, in the present embodiment 1000, the
microprocessor produces an
authorization signal which is then responded to by other portions of the
circuit to cause the garage door to
open or close as commanded. In the event that the code is greater than the
stored rolling code, plus 1000,
indicative of a relatively large number of incrementations, the user is not
locked out of the garage, but is
allowed to provide further signals or indicia to the receiver that he is an
authorized user without any
significant degradation of the security. This is done by the receiver entering
an alternate mode requiring two
or more successive valid codes to be received, rather than just one. If the
two or more successive valid codes
are received, the garage door will open. However, in order to prevent a person
who has previously or
recently recorded a recent valid code from being able to obtain access to the
garage, a trailing window, in
this case starting at a count of 300 less than the present stored count and
including all code values between
the present stored count and 300 less is compared to the received code. If the
received code is within this
backward window, the response of the system simply i s to take no further
action, nor to provide authorization
during that code cycle on the assumption that the code has been purloined.
Thus, the present system provides important advantages over the previous
garage door operator
systems and even previous rolling code systems. The system provides a.
multiple segmented windowed
system which provides a valid code window, a second relatively insecure code
window in which two
successive valid codes must be received and finally a window in which no valid
codes are recognized due
to the likelihood of the receiver having been stolen.
In accordance with the parent application the invention defined therein
provides a transmitter which
comprises: an oscillator for generating a radio frequency oscillatory signal;
a source of a sequence of binary
4


CA 02443452 2003-10-15

codes, successive binary codes in the sequence being different from
predetermined preceding binary codes
in the sequence; a trinary code generator for converting the sequence of
binary codes to a sequence of trinary
codes; and a transmitting apparatus for modulating the radio frequency
oscillatory signal with the trinary
codes to produce a modulated trinary coded radio frequency signa.l.
The invention of the parent application also provides a transmitter for
gaining access to a secure area
controlled by a control actuator receiver, which comprises: an oscillator for
generating a radio frequency
oscillatory signal; a binary code generator for generating a sequence of
binary codes, predetermined ones of
the binary codes being different from others of the binary codes in the
sequence; a trinary code generator
responsive to the binary codes for generating tree-valued or trinary codes;
and a transmitting apparatus for
modulating the radio frequency osci l latory signal with the trinary codes to
transmit a modulated trinary coded
radio frequency signal to the control actuator receiver.
Furthermore, the invention of the parent application provides a method of
controlling a barrier
movement operator storing an expected rolling code and being capable of
operation upon receipt of a
predetermined sequence of transmitted codes from an rf transmitter,
comprising: rf transmitting a first code
including a first code portion having a numerical value at least a first
predetermined amount greater than the
expected rolling code; and rf transmitting a second code including a second
code portion having a second
numerical value which is within a second predetermined amount of the first
code portion of the first code.

The present invention on the other hand provides a transmitter for sending an
encrypted signal to
control an actuator, comprising: an oscillator for generating a radio
frequency oscillatory signal; apparatus
for enabling the sending ofan encrypted signal; a binary code generator
responsive to the enabling apparatus
for generating a variable binary code, the variable code being different for
each enabling by the enabling
device; a trinary code generator for generating a three-valued or trinary code
responsive to the variable binary
code; and transmitting apparatus for modulating the radio frequency
oscillatory signal with the trinary code
to produce a modulated trinary coded variable radio frequency signal for
operation or control of a secure
actuator.
The present invention may also be considered to provide a remote security
system for communicating
an encrypted signal to a control actuator, comprising: a binary code generator
for generating a sequence of
variable binary codes according to a predetermined algorithm, successive codes
in the sequence being
different from preceding codes in the sequence; atrinary code generator for
converting the generated variable
binary code to a trinary code; a transmitter for modulating a transmitted
radio frequency signal with the
trinary code; a radio-frequency receiver for demodulating the transmitted
modulated radio frequency signal
5


CA 02443452 2003-10-15

a received binary code; a controller responsive to a positive comparison of
the received binary code and a
reference variable binary code; and update apparatus responsive to the
positive comparison for updating the
reference variable binary code according to the received binary code.
Other advantages of the invention will become obvious to one of ordinary skill
in the art
upon a perusal of the following specification and claims in light of the
accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS
FIG. I is a perspective view of an apparatus for moving a barrier or garage
embodying the present
invention;
FIG. 2 is a block diagram of a transmitter for use with a garage door operator
of FIG. 1;
FIG. 3 is a block diagram of a receiver positioned within a head unit of the
garage door operator
shown in FIG. 1;
FIG. 4 is a schematic diagram of the transmitter shown in FIG. 2;
FIGS. 5A and B together show a schematic diagram of the receiver shown in FIG.
3;
FIG. 6 is a timing diagram of signals generated by a portion of the
transmitter;
FIGS. 7A, B, C and D are flow diagrams showing the operation of the
transmitter; and
FIGS. 8A, B, C, D, E, F and G are flow charts showing the operation of the
receiver.
DETAILED DESCRIPTION OF THE PItEFE12.RED EMBODIMENT
Referring now to the drawings and especially to FIG. 1, more specifically a
movable barrier door
operator or garage door operator is generally shown therein and includes a
head unit 12 mounted within a
garage 14. More specifically, the head unit 12 is mounted to the ceiling of
the garage 14 and includes a rail
18 extending therefrom with a releasable trolley 20 attached having an arm 22
extending to a multiple
panelled garage door 24 positioned for movement along a pair of door rails 26
and 28. The system includes
a hand-held transmitter unit 30 adapted to send signals to an antenna 32
positioned on the head unit 12 and
coupled to a receiver as will appear hereinafter. An external control pad 34
is positioned on the outside of
the garage having a plurality of buttons thereon and communicate via radio
frequency transmission with the
antenna 32 of the head unit 12.
An optical emitter 42 is connected via a power and signal line 44 to the head
unit. An optical
detector 46 is connected via a wire 48 to the head unit 12.
Referring now to FIG. 2, the transmitter 30 is shown therein in general and
includes a battery 70
connected by a pushbutton switch 72 to a power supply 74 which is coupled via
leads 75 and 76 to a
6


CA 02443452 2003-10-15

microcontroller 78. The microcontroller 78 is connected by a serial bus 79 to
a non-volatile memory 80. An
output bus 81 connects the microcontroller to a radio frequency oscillator 82.
The inicrocontroller 78
produces coded signals when the button 72 is pushed causing the output of the
RF oscillator 82 to be
amplitude modulated to supply a radio frequency signal at an antenna 83
connected thereto. More
specifically, as shown in FIG. 4, details of the transmitter 30 are shown
therein, including a plurality of
switches 72. When switch 72 is closed, power is supplied through a diode 100
to a capacitor 102 to supply
a 7.1 volt voltage at a lead 103 connected thereto. A light emitting diode 104
indicates that the transmitter
button has been pushed and provides a voltage to a lead 105 connected thereto.
A Zener diode 106 provides
voltage regulation and causes the back biased diode 107 to cause the crystal
108 to be energized, thereby
energizing the microcontroller 78, a Zilog 125C0113 8-bit microcontroller in
this embodiment. The signal
is also sent via a resistor 110 through a lead 1 l 1 to a P32 pin of the
microcontroller 78. Likewise, when a
switch l 13 is closed, current is fed through a diode 114 to the lead 103 also
causing the crystal 108 to be
energized, powering up the microcontroller at the same time that pin P33 of
the microcontroller is pulled up.
Similarly, when a switch 118 is closed, power is fed through a diode 119 to
the crystal 108 as well as pull
up voltage being provided through a resistor 120 to the pin P31. It should
also be appreciated that pin P34
of the microcontroller is configured via a connection with the resistor 123 to
be an RS232 input port 124.
The microcontroller is coupled via the serial bus 79 to a chip select port, a
clock port and a I port
to which and from which serial data may be written and read and to which
addresses may be applied. As wi ll
be seen hereinafter in the operation of the microcontroller, the
microcontroller 78 produces output signals
at the lead 81, which are supplied to a resistor 125 which is coupled to a
voltage dividing resistor 126 feeding
signals to the lead 127. A 30-nanohenry inductor 128 is coupled to an NPN
transistor 129 at its base 130.
The transistor 129 has a collector 131 and an emitter 132. The collector 131
is connected to the antenna 83
which, in this case, comprises a printed circuit board, loop antenna having an
inductance of 25-nanohenries,
comprising a portion of the tank circuit with a capacitor 133, a variable
capacitor 134 for tuning, a capacitor
135 and a capacitor 136. A 30-nanohenry inductor 138 is coupled via a
capacitor 139 to ground. The
capacitor has a resistor 140 connected in parallel with it to ground. When the
output from lead 81 is driven
high by the microcontroller, the transistor 129 is switched on causing the
tank circuit to output a signal on
the antenna 83. When the transistor 129 is switched off, the output to the
drive of the tank circuit is
extinguished causing the radio frequency signal at the antenna 83 also to be
extinguished.
Referring now to FIG. 3, the receiver is shown therein and includes a receiver
antenna 200 coupled
to an amplitude modulated receiver 202 driven from a power supply 204
connectable to a source of
alternating current 206. The receiver 202 provides a demodulated output via a
bandpass filter 210 to an
7


CA 02443452 2003-10-15

analog-to-digital converter 212 which provides input to a microcontroller 214
having an internal read-only
memory 216 and an internal random-access memory 218. A serial non-volatile
memory 220 is connected
via a memorT bus 222 to the inicrocontroller 214 to send atld receive
information thereto. The
microcontroller has an output line 226 coupled to a nlotor controller 228
which may include a plurality of
relays or other standard electromechanical features which feeds electrical
current on lines 230 and 232 to
an electric motor 234.
Referring now to FIGS. 5A and 5B the antenna 200 is coupled to a reactive
divider network 250
comprised of a pair of series connected inductances 252 and 254 and capacitors
256 and 258 which supply
an RF signal to a buffer amplifier having an NPN transistor 260, at its
emitter 261. The NPN transistor 260
has a pair of capacitors 262 and 264 connected to it for power supply
isolation. The buffer amplifier
provides a buffered radio frequency output signal on a lead 268. The buffered
RF signal is fed to an input
270 which forms part of a super-regenerative receiver 272 having an output at
a line 274 coupled to the
bandpass filter which provides digital output to the bandpass filter 212. The
bandpass filter 212 includes a
first stage 276 and a second stage 278 to provide a digital level output
signal at a lead 280 which is supplied
via an averaging circuit 282 to an input pin P32 of the microcontroller 214.
The microcontroller 214 may have its mode of operation controlled by a
programming or learning
switch 300 coupled via a line 302 to the P23 pin. A command switch 304 is
coupled via ajumper 306 to a
line 308 and ultimately through a resistor to the input pin P22. A pin P21
sinks current through a resistor
314 connected to a light emitting diode 316, causing the diode to light to
indicate that the receiver is active.
The microcontroller 214 has a 4 MHz crystal 328 connected to it to provide
clock signals and includes an
RS232 output port 332 that is coupled to the pin P31. A switch 340 selects
whether constant pressure or
monostable is to be selected as the output from output terminals P24 and P23
which are coupled to a
transistor 350 which, when switched on, sinks current through a coil 352 of a
relay 354, causing the relay
to close to provide an actuating signal on a pair of leads 356 and 358 to an
electric motor.
It may be appreciated that the power supply 204 may receive power from an
external transformer
or other AC source through ajack 370 which is connected to a pair of RJ
uncoupling capacitors 372 and 374.
The input signal is then set to a full-wave rectifier bridge 376 which
provides an output current at a resistor
378. An 18-volt Zener diode 380 is connected between ground and the resistor
378 and includes high
frequency bypass capacitor 382 connected in parallel with it. An 8.2-volt
Zener diode 384 is connected in
back-biased configuration to the resistor 378 to receive a signal therefrom to
guarantee that at least an
8.2-volt signal is fed to a resistor 390 causing an LED 392 to be illuminated
and also causing power to be
supplied to a 5-volt 78L 5 voltage regulator 396. The voltage regulator 396
supplies regulated voltage to
8


CA 02443452 2003-10-15

an output line 398. Filtering capacitors 400a, 400b, 400c and 400d limit the
fluctuations at the power supply.
Operation of the transmitter unit begins in a step 500 as shown in Fig. 7A,
wherein the user actuates
a transmit button in a step 500. In a step 502 the rolling code counter va]ue
is fetched from the nonvolatile
memory. In a step 504 seventeen is added to the rolling code counter value. In
a step 506 the new rolling
code counter value is then stored in a nonvolatile memory. In a step 508 the
binary representation of the
rolling code counter has its bit order reversed or mirrored in order to begin
encryption. In a step 510 the most
significant bit of the mirrored counter value is set equal to zero.
In a step 512, as shown in Fig. 7B, the mirrored binary counter value is
converted to a base 3 or
trinary number as is shown in Fig. 7D and described hereinafter.
Following the conversion to trinary bits or digits, in a step 514 the fixed
code portion of the overall
transmitted code is fetched from nonvolatile memory and in a step 516 a bit
counter representative of the
ordinal number of the current trinary digit is set equal to zero.
In order to perform a code framing operation to produce the code stream, as
shown in Fig. 6, in a step
518 a one-half millisecond synchronization bit is transmitted by the
transmitter and in a step 520 the bit
counter is incremented. In a step 522 a test is made to determine whether the
bit counter indicates the end
of a second blanking time. If it does, control is transferred back to a step
516.
If it does not, control is then transferred to a step 524 show-n in Fig. 7c
wherein the bit counter is
tested to determine whether it is indicative of the end of the second word. If
the second word has ended, a
second blank period is entered for transmission in a step 526, following which
control is transferred back to
step 520. If it is not, a test is made in a step 528 to determine whether the
bit counter indicates the end of
the first blank time. If it does, a one and one-half millisecond long
synchronization pulse is transmitted in
a step 530 and control is then transferred back to step 520. If the bit
counter does not indicate the end of the
first blank time, a test is made in a step 532 to determine whether the bit
counter indicates the end of the first
word. If it does, a first blanking period is entered into the code in a step
534, following which control is then
transferred back to step 520. If it does not, a test is made in a step 536 to
determine whether the current
trinary bit number is odd or even, representing a fixed code trinary bit or a
rolling code trinary bit
respectively. If it is even the next rolling code trinary bit is transmitted
in a step 538. If it is not, the most
recent rolling code trinary bit that was transmitted, as shown in Fig. 6, is
added to the fixed code trinary bit
in a step 536a, the result is then truncated to a base 3 value in a step 537
yielding an encrypted fixed code
trinarybit. The encrypted fixed code trinary bit is trans'nitted in a step 540
thereby causing the rolling code
trinary bits and the encrypted fixed code trinary bits to be interleaved for
further security. Following either
step 538 or step 540 control is transferred back to the bit counter step 520.

9


CA 02443452 2003-10-15

In order to convert the encrypted or interlinked and mirrored binary rolling
code to trinary a routine
550 is provided in which a value equal to 319 is subtracted from the
interlinked and mirrored code in a step
552. A test is made to determine whether the result of the subtraction is
greater than zero in a step 554. If
it is, control is transferred to a step 556 causing the current base three
digit to be incremented following
which control is transferred back to step 552. If it is not, the current base
three digit is stored in a step 557.
In a step 558 319 is added back in order to make the binary number positive.
In a step 559 the result is
multiplied by 3. In a step 560 a test is made to determine whether al120
trinary bits in the current frame have
been converted to binary. If they have not, control is transferred to a step
561 causing pointing to the next
trinary digit to be converted in the frame. If all 20 trinary digits in the
current frame have been converted,
trinary number is returned in a step 564 and control is transferred back to
the exit point of step 512. The base
three or trinary digits are then output by the radio transmitter as a pulse
width modulated trinary code in the
form shown in Fig. 6.
Referring now to Fig. 8A, a transition of the received radio frequency from
low to high or from high
to low is detected in a step 600. The microcontroller executes steps to
identify the trinary bit stream from
the transmitter. Following the transmission a time difference from the last
transmission is determined in a
step 602 and a radio inactive timer is cleared. In a step 604 a determination
is made whether the time
difference is for the active high time or the inactive low time. If it is for
the inactive low time the inactive
time value is stored in step 606 and the routine is exited in a step 608. If
the time difference is indicated to
be active time, the active time is stored in a step 610 and a test is made to
determine whether the pulse is the
first pulse, in other words, the sync pulse in a step 612.
If the test in step 612 indicating that the pulse is the syric pulse is found
to be true, control is
transferred to a step 634, shown in Fig. 8B which tests whether the inactive
time is between 20 milliseconds
and 55 milliseconds. If it is not, the trinary code is rejected in a step 636
and the bit counter is cleared. The
routine is exited in step 638. If not, control is transferred to a step 650.
Following the bit counter being set to 1, control is transferred to a step 650
testing whether the active
time is greater than 1.0 millisecond. This is done to determi;ne whether the
pulse is a sync pulse
representative of the beginning of FRAME I or FRAME 2. If the active time
exceeds 1.0 millisecond a test
is made in a step 652 testing whether the active time is greater than 2.0
milliseconds. If the active time is
greater than 2.0 milliseconds the received trinary code is rejected and the
bit counter is cleared in a step 654.
If in step 650 the active time is found not to be greater than 1.0
millisecond, control is transferred to a test
656 which tests whether the active time is less than 0.35 milliseconds. If it
is, the code is rejected and the
bit counter is cleared in a step 654. If it is not the FRAME I flag is set is
step 658 indicating that a first


CA 02443452 2003-10-15

frame is being received. In the event that the test from step 652 indicates
that the active time is not greater
than 2.0 milliseconds the FRAME 2 flag is set in a step 660. Following
execution of the bit counter clearing
step in step 654 the interrupt is returned from step 662; likewise the
interrupt is returned from step 664
following step 658 and step 660.
If it is not, the received pulse tested for in step 612 is not a sync pulse,
then a test is made in a step
614 to determine whether the active time is less than 4.5 milliseconds. In the
event that the active time is
found to be less than 4.5 milliseconds control is transferred ti a test step
616 testing whether the inactive time
is less than 4.5 milliseconds. If the active time is 4.5 milliseconds or
greater control is transferred from step
614 to a step 618 causing the radio code to be rejected and all code registers
related to the radio code to be
cleared. In the event that the inactive time is found to be greater than 4.5
milliseconds, control is also
transferred to the step 618 causing the radio code to be rejected and the
radio related registers to be cleared.
If the inactive time is 4.5 milliseconds or less, the bit counter is set to I
indicating that a pulse has been
received in a step 630 shown in Fig. 8C.
Referring now to Fig. 8D, the microcontroller begins to separate the
interleaved trinary fixed code
bits from the trinary rolling code bits. In a step 670 the bit counter or
current number of bits received is
increased following which the inactive time is subtracted from the active time
in a step 672. A test is made
in a step 674 to determine whether the result of the subtraction is less than
0.38 milliseconds; if it is, the bit
value is set equal to zero in a step 676; if it is not, a test is made in a
step 678 to determine whether the results
are greater than 0.38 milliseconds. If they are the bit value is set equal to
2. If the test of step 678 indicates
the results are not greater than 0.38 milliseconds the bit value is set equal
to I in a step 682. Steps 676, 680
and 682 all transfer control to a step 684 which tests whether the bit counter
holds an odd number, lf it does,
the fixed code registers are multiplied by three in a step 686; if it does
not, the rolling code registers are
multiplied by three in a step 688.
In order to decrypt the received fixed code trinary bit, following step 686,
as shown in Fig. 8E, the
last rolling code trinary bit received is subtracted from the current
encrypted fixed code trinary bit in a step
687. The value is then corrected back to a positive base 3 value in a step
689. The resulting bit value is
added to the encrypted fixed code trinary bit in a step 690 to yield a
decrypted fixed code trinary bit.
Following step 688 the rolling code trinary bit value is added to the rolling
code in a step 692.
Following both of those steps a test is made in a step 694 to determine if the
received bit number counter
value is less than, greater than, or equal to 21. If the received bit counter
value is greater than 21 the radio
code is rejected in a step 696 for having too many bits, indicating in
reception, and the routine is exited. If
the bit counter value is less than 21 return from interrupt is made ancl the
next pulse edge in the radio signal
11


CA 02443452 2003-10-15

is waited for in a step 698. In the event the bit counter value is equal to 21
a test is made in a step 700 for
the presence of a first or a second frame. If the FRAME I is being processed
control is transferred to a step
702 causing the bit counter to be cleared and setting up for the second frame
following which the interrupt
is returned from. If the FRAME 2 is being received control is transferred to a
step 704 combining the rolling
code registers from the two frames into a single binary value by
concatenation. In a step 706 the combined
binary value is then mirrored, in other words, the least significant bit
becomes the most significant bit. The
most significant bit becomes the least significant bit, and so on.
A test is made to determine whether program mode has been set in a step 708,
as shown in Fig. 8F.
If program mode was not set a test is made in a step 710 to determine whether
the received fixed code
matches a fixed code stored in nonvolatile memory. If there is no match the
routine is returned from and the
new radio code is waited for in a step 712.
If there is a match control is transferred to a step 714, shown in Fig. 8G,
where a test is made to
determine whether the received counter value is within the forward rolling
code window, 17,000 greaterthan
the stored counter value, representative of 1,000 transmitter actuations. If
it is, control is transferred to a step
716 setting the flag for a command to operate the garage door. Control is then
transferred to a step 718
causing the rolling code counter to be resynchronized by updating the rolling
code counter in nonvolatile
memory to match the received value of the counter and the interrupt is
returned from in a step 720.
In the event the received counter value is outside the 17,000 bit forward
rolling code window or limit
of step 714 a test is made in a step 722 to determine whether the fixed code
that was received matches the
previous fixed code received, as a backup identifier of the particular
transmitter. If it does, a test is made
in a step 724 to determine if the received rolling counter value is behind the
backward rolling code window
because it is less by 5100 than the rolling counter value in nonvolatile
memory. If it is not, control is
transferred to a step 726 which tests whether the received rolling code is
within the resynchronization rolling
code window, 18 bits greater than the previous received rolling code which is
outside the forward rolling
code window. The system, having detected a rolling code outside the forward
window, thus tests for two
receipts of the fixed code consecutively and resynchronizes the receiver by
resynchronizing the stored rolling
code within the receiver. Thus a synchronization window exists when cither the
received rolling code is
within the forward rolling code or it is within the twice consecutive window
tested for in step 726. The door
operator flag signal is set in step 716 and the door is moved in response
thereto by the motor. In step 718
the rolling code in the receiver is resynchronized. If the received rolling
code as tested for in step 726 is not
within 18 of the previously received rolling code step 728 is executed
awaiting a new radio code.

12


CA 02443452 2003-10-15

Referring back to Fig. 8F, if the program mode has been set as tested for in
step 708 a test is made
in a step 736 to determine whether the code matches the last code received. If
it does, control is transferred
to a step 738 testing whether the fixed portion of the code matches the fixed
code already in nonvolatile
memory. If it does, the rolling code is replaced in the nonvolatile memory
with the received rolling code in
the step 740. If it does not, the fixed and rolling portions of the code are
stored in a new memory location
in a step 742 following which in a step 744 the program indicator is switched
off, the program mode is exited
and the interrupt is returned from. In the event that the test in step 736
indicates that the code does not match
the last code received the code is stored in a step 746 for comparison with
the next received code.
While there has been illustrated and described a particular embodiment of the
present invention, it
will be appreciated that numerous changes and modifications will occur to
those skilled in the art, and it is
intended in the appended claims to cover all those changes and modificatioris
which fall within the true spirit
and scope of the present invention.

13

Representative Drawing
A single figure which represents the drawing illustrating the invention.
Administrative Status

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Administrative Status , Maintenance Fee  and Payment History  should be consulted.

Administrative Status

Title Date
Forecasted Issue Date 2008-07-29
(22) Filed 1996-05-16
(41) Open to Public Inspection 1996-11-21
Examination Requested 2003-10-15
(45) Issued 2008-07-29
Expired 2016-05-16

Abandonment History

Abandonment Date Reason Reinstatement Date
2006-05-16 FAILURE TO PAY APPLICATION MAINTENANCE FEE 2006-11-08

Payment History

Fee Type Anniversary Year Due Date Amount Paid Paid Date
Request for Examination $400.00 2003-10-15
Registration of a document - section 124 $50.00 2003-10-15
Application Fee $300.00 2003-10-15
Maintenance Fee - Application - New Act 2 1998-05-19 $100.00 2003-10-15
Maintenance Fee - Application - New Act 3 1999-05-17 $100.00 2003-10-15
Maintenance Fee - Application - New Act 4 2000-05-16 $100.00 2003-10-15
Maintenance Fee - Application - New Act 5 2001-05-16 $150.00 2003-10-15
Maintenance Fee - Application - New Act 6 2002-05-16 $150.00 2003-10-15
Maintenance Fee - Application - New Act 7 2003-05-16 $150.00 2003-10-15
Maintenance Fee - Application - New Act 8 2004-05-17 $200.00 2004-05-10
Maintenance Fee - Application - New Act 9 2005-05-16 $200.00 2005-05-10
Reinstatement: Failure to Pay Application Maintenance Fees $200.00 2006-11-08
Maintenance Fee - Application - New Act 10 2006-05-16 $250.00 2006-11-08
Maintenance Fee - Application - New Act 11 2007-05-16 $250.00 2007-05-02
Final Fee $300.00 2008-03-12
Maintenance Fee - Application - New Act 12 2008-05-16 $250.00 2008-05-05
Maintenance Fee - Patent - New Act 13 2009-05-19 $250.00 2009-04-30
Maintenance Fee - Patent - New Act 14 2010-05-17 $250.00 2010-04-30
Maintenance Fee - Patent - New Act 15 2011-05-16 $450.00 2011-05-02
Maintenance Fee - Patent - New Act 16 2012-05-16 $450.00 2012-04-30
Maintenance Fee - Patent - New Act 17 2013-05-16 $450.00 2013-04-30
Maintenance Fee - Patent - New Act 18 2014-05-16 $450.00 2014-05-12
Maintenance Fee - Patent - New Act 19 2015-05-19 $450.00 2015-05-11
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
THE CHAMBERLAIN GROUP, INC.
Past Owners on Record
FARRIS, BRADFORD L.
FITZGIBBON, JAMES J.
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Description 2003-10-15 13 985
Abstract 2003-10-15 1 16
Claims 2003-10-15 4 192
Drawings 2003-10-15 18 555
Representative Drawing 2003-11-27 1 26
Cover Page 2003-12-01 1 53
Description 2007-09-26 13 970
Claims 2007-09-26 4 172
Cover Page 2008-07-17 1 56
Correspondence 2003-10-29 1 39
Assignment 2003-10-15 2 105
Correspondence 2003-12-09 1 12
Fees 2006-11-08 1 27
Prosecution-Amendment 2007-03-26 3 94
Prosecution-Amendment 2007-09-26 8 376
Correspondence 2008-03-12 1 30