Methods and systems for controlling a garage door opener accessory

Information

  • Patent Grant
  • 10127806
  • Patent Number
    10,127,806
  • Date Filed
    Friday, April 27, 2018
    6 years ago
  • Date Issued
    Tuesday, November 13, 2018
    6 years ago
Abstract
A modular garage door opener system has an accessory device including a load, and garage door opener including an accessory port for receiving the accessory device. A server receives initial accessory device status and settings data from the garage door opener, stores the data as associated with the accessory port, and sends the data to a peripheral device. The server receives new accessory device status data and sends it to the peripheral device. New settings data is sent by the peripheral device to the server and the server sends it to the garage door opener such that the load of the accessory device is controlled based on the new settings data. Similarly, initial data may be stored and associated with a second accessory port for a second accessory device and a load of the second accessory device is controlled based on new settings data from received from the peripheral device.
Description
FIELD OF THE INVENTION

The present invention relates to garage door openers, and more particularly to garage door openers with accessories.


SUMMARY OF THE INVENTION

The present invention provides, in one aspect, a modular garage door opener system including an accessory device having a first electronic processor, a first memory, and a load that is controllable by the first electronic processor, a garage door opener having a motor configured to drive a garage door to open and close, an accessory port, a second memory, and a second electronic processor. The accessory port is configured to be removably coupled to the accessory device such that the accessory device is in electrical communication with the accessory port. The second electronic processor is coupled to the second memory and is configured to execute instructions stored in the second memory to receive new status data from the accessory device indicating a change in a status of the accessory device to a new status, send the new status data to a remote server to update an accessory data set, receive new settings data from the remote server indicating a requested change in a setting of the accessory device, and send the new settings data to the accessory device to update the setting of the accessory device and, thereby, control the load of the accessory device.


The present invention provides, in another aspect, a communication method for a garage door opener including an accessory port configured to receive an accessory device. The method includes the garage door opener receiving the accessory device in the accessory port. The method also includes the garage door opener receiving, from the accessory device, an initial data set including a unique identifier for the accessory device, an initial status indicating a status of the accessory device, and an initial setting indicating a setting of the accessory device. The method also includes the garage door sending, by an electronic processor of the garage door opener, the initial data set to a remote server for storage as an accessory data set. The method also includes the garage door opener receiving, by the electronic processor, new status data from the accessory device indicating a change in the status of the accessory device to a new status. The method also includes the garage door opener sending, by the electronic processor, the new status data to the remote server to update the accessory data set. The method also includes the garage door receiving, by the electronic processor, new settings data from the remote server indicating a requested change in the setting of the accessory device. The method also includes the garage door opener sending, by the electronic processor, the new settings data to the accessory device to update the setting of the accessory device.


The present invention provides, in another aspect, a communication method for an accessory device configured to be coupled to an accessory port of a garage door opener. The method includes the accessory device receiving power from the accessory port upon being coupled to the accessory port. The method also includes the accessory device sending to the garage door opener, by an electronic processor of the accessory device, an initial data set including a unique identifier for the accessory device, an initial status indicating a status of the accessory device, and an initial setting indicating a setting of the accessory device. The method also includes the accessory device receiving, by the electronic processor, new settings data, from the garage door opener, to update the setting of the accessory device. The method also includes controlling, by the electronic processor, a load of the accessory device in response to the new settings data. The method also includes sending, by the electronic processor, new status data, to the garage door opener, indicating a change in the status of the accessory device to a new status.


The present invention also provides, in another aspect, a communication method for a remote server configured to communicate with a peripheral device and an accessory device coupled to an accessory port of a garage door opener. The method includes the remote server receiving from the garage door opener, by an electronic processor of the remote server, an initial data set including a unique identifier for the accessory device, an initial status indicating a status of the accessory device, and an initial setting indicating a setting of the accessory device. The method also includes the remote server storing, by the electronic processor, the initial data set as an accessory data set associated with the accessory port of the garage door opener. The method also includes the remote server sending, by the electronic processor, the initial data set to the peripheral device. The method also includes the remote server receiving, by the electronic processor, new status data from the garage door opener. The method also includes the remote server sending, by the electronic processor, the new status data to the peripheral device. The method also includes the remote server receiving, by the electronic processor, new settings data from the peripheral device. The method also includes the remote server sending, by the electronic processor, the new settings data to the garage door opener, wherein a load of the accessory device is controlled in response to the new settings data.


In some instances, the method may also include the remote server updating, by the electronic processor, the accessory data set to include the new status data, and updating, by the electronic processor, the accessory data set to include the new settings data.


In some instances, the method may also include the remote server receiving from the garage door opener, by the electronic processor, an second initial data set including a second unique identifier for a second accessory device, a second initial status indicating a second status of the second accessory device, and a second initial setting indicating a second setting of the second accessory device. The method may also include the remote server storing, by the electronic processor, the second initial data set as a second accessory data set associated with a second accessory port of the garage door opener. The method may also include the remote server sending, by the electronic processor, the second initial data set to the peripheral device. The method may also include the remote server receiving, by the electronic processor, second new status data from the garage door opener. The method may also include the remote server sending, by the electronic processor, the second new status data to the peripheral device. The method may also include the remote server receiving, by the electronic processor, second new settings data from the peripheral device. The method may also include the remote server sending, by the electronic processor, the second new settings data to the garage door opener, wherein a second load of the second accessory device is controlled in response to the second new settings data.


In some instances, after the second accessory device is disconnected from the second accessory port and the accessory device is disconnected from the accessory port, and after the second accessory device is connected to the accessory port, receiving, by the electronic processor, the second initial data set from the garage door opener, the method may include the remote server storing, by the electronic processor, the second initial data set as the accessory data set associated with the accessory port of the garage door opener. The method may also include sending, by the electronic processor, the second initial data set to the peripheral device.


The invention also provides, in another aspect, a communication method for a peripheral device configured to communicate with an accessory device coupled to an accessory port of a garage door opener, the method comprising. The method includes the peripheral device receiving from a remote server, by an electronic processor of the peripheral device, an initial data set including a unique identifier for the accessory device, an initial status indicating a status of the accessory device, and an initial setting indicating a setting of the accessory device. The method includes the peripheral device receiving, by the electronic processor, new status data for the accessory device from the remote server indicating a change in the status of the accessory device to a new status. The method includes the peripheral device receiving, by the electronic processor, user input indicating a requested change of the setting of the accessory device. The method includes the peripheral device sending, by the electronic processor, new settings data indicating the requested change to the remote server to control a load of the accessory device.


In some instances, the method may also include the peripheral device displaying, on a display of the peripheral device, the accessory device based on the unique identifier and the status of the accessory device based on the initial status. The method may also include the peripheral device displaying, on the display of the peripheral device, the new status of the accessory device upon receipt of the new status data.


In some instances, the method may also include the peripheral device receiving from the remote server, by the electronic processor, a second initial data set including a second unique identifier for a second accessory device, a second initial status indicating a second status of the second accessory device, and a second initial setting indicating a second setting of the second accessory device. The method may also include the peripheral device receiving, by the electronic processor, second new status data for the second accessory device from the remote server indicating a change in the second status of the second accessory device to a second new status. The method may also include the peripheral device receiving, by the electronic processor, second user input indicating a second requested change of the second setting of the second accessory device. The method may also include the peripheral device sending, by the electronic processor, second new settings data indicating the second requested change to the remote server to control a second load of the second accessory device.


In some instances, the method may also include the peripheral device receiving from the remote server, by the electronic processor, a second initial data set including a second unique identifier for a second accessory device, a second initial status indicating a second status of the second accessory device, and a second initial setting indicating a second setting of the second accessory device. The method may also include the peripheral device displaying, on a display of the peripheral device, the accessory device based on the unique identifier and the status of the accessory device based on the initial status. The method may also include the peripheral device displaying, on the display of the peripheral device, the second accessory device based on the second unique identifier and the second status of the accessory device based on the second initial status.


Other features and aspects of the invention will become apparent by consideration of the following detailed description and accompanying drawings.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a perspective view of a garage door opener system.



FIG. 2 is a first perspective view of a garage door opener.



FIG. 3 is a housing of the garage door opener of FIG. 2.



FIG. 4 is a side view of the housing of FIG. 3.



FIG. 5 is a schematic of the garage door opener.



FIG. 6 is a second schematic of the garage door opener.



FIG. 7 is a schematic of communication boards within the garage door opener.



FIG. 8 is a second perspective view of the garage door opener.



FIG. 9A is a third perspective view of the garage door opener.



FIG. 9B is a fourth perspective view of the garage door opener.



FIG. 10 is a block diagram of a battery pack.



FIG. 11 is a front perspective view of an accessory speaker.



FIG. 12 is a rear perspective view of the accessory speaker.



FIG. 13 is a front perspective view of an accessory fan.



FIG. 14 is a rear perspective view of the accessory fan.



FIG. 15 is a front perspective view of an accessory cord reel.



FIG. 16 is a rear perspective view of the accessory cord reel.



FIG. 17 is a front perspective view of an accessory environmental sensor.



FIG. 18 is a front perspective view of an accessory park-assist laser.



FIG. 19 is a perspective view of the garage door opener system including the accessory park-assist laser of FIG. 18.



FIG. 20 is a perspective view of an accessory folding light.



FIG. 21 is a perspective view of an accessory area light.



FIG. 22 is a perspective view of an accessory inflator.



FIG. 23 is a perspective view of a pair of obstruction sensors.



FIG. 24 is a perspective view of the obstruction sensors of FIG. 23 being used in the garage door opener system.



FIG. 25 is a perspective view of an outdoor keypad for use with the garage door opener system of FIG. 1.



FIG. 26 is a front view of an indoor keypad for use with the garage door opener system of FIG. 1.



FIG. 27 is a perspective view of the garage door opener including a transceiver in communication with a peripheral device.



FIG. 28 is a side view of a removable antenna.



FIG. 29 is a perspective view of a peripheral device application for use with the garage door opener system of FIG. 1.



FIG. 30 illustrates a module communication method data transfer structure.



FIG. 31 is a flow chart illustrating a module communication method.



FIG. 32 is a flow chart illustrating a module communication method according to another embodiment of the invention.



FIG. 33 illustrates a block diagram of a remote server of the data transfer structure of FIG. 30.



FIG. 34 illustrates a block diagram of a peripheral device of the data transfer structure of FIG. 30.



FIG. 35 illustrates a block diagram of an accessory device of the data transfer structure of FIG. 30.



FIG. 36 is a schematic of a garage door opener according to a second embodiment of the invention.





DETAILED DESCRIPTION

Before any embodiments of the invention are explained in detail, it is to be understood that the invention is not limited in its application to the details of construction and the arrangement of components set forth in the following description or illustrated in the following drawings. The invention is capable of other embodiments and of being practiced or of being carried out in various ways. Also, it is to be understood that the phraseology and terminology used herein is for the purpose of description and should not be regarded as limiting.



FIGS. 1-36 illustrate a modular garage door system 50 including a garage door opener 100 operatively coupled to a garage door 104. The garage door opener 100 is configured to receive a variety of accessory devices 200, such as a battery charger 204/battery pack 208, a speaker 212, a fan 216, an extension cord reel 220, an environmental sensor 224, a park-assist laser 228, a folding light 232, a retractable area light 236, and an inflator cord reel 240. The garage door system 50 may be operated by a wall-mounted keypad 244, a passcode keypad 248, and/or a peripheral device 252 (e.g., a smartphone based application, etc.). In the illustrated embodiment, the garage door opener 100 is configured to be coupled directly to an AC power source, and optionally use the battery 208 as back-up power source when AC power is unavailable. In addition, the accessory devices 200 communicate with the peripheral device 252 wirelessly via a communication method 900.


With reference to FIGS. 1-5, the garage door opener 100 includes a housing 108 supporting a motor 112 (e.g., a 2 HP electric motor) that is operatively coupled to a drive mechanism 116. The drive mechanism 116 includes transmission coupling the motor to a drive chain 120 having a shuttle 124 configured to be displaced along a rail assembly 128 upon actuation of the motor 112. The shuttle 124 may be selectively coupled to a trolley 132 that is slidable along the rail assembly 124 and coupled to the door 104 via an arm member.


With continued reference to FIGS. 1-5, the trolley 132 is releaseably coupled to the shuttle 124 such that the garage door system 50 is operable in a powered mode and a manual mode. In the powered mode, the trolley 132 is coupled to the shuttle 124 and the motor 112 is selectively driven in response to actuation by a user. As the motor 112 is driven, the drive chain 120 is driven by the motor 112 along the rail assembly 128 to displace the shuttle 124 (and therefore the trolley 132) thereby opening or closing the garage door 104. In the manual mode, the trolley 132 is decoupled from the shuttle 124 such that a user may manually operate the garage door 104 to open or close without resistance from the motor 112. The trolley 132 may be decoupled, for example, when a user applies a force to a release cord 136 to disengage the trolley 132 from the shuttle 124.


In another embodiment, the drive mechanism 116 includes a transmission coupling the motor 112 to a drive belt that is operatively coupled to the garage door 104 via a rail and carriage assembly. The rail and carriage assembly includes a rail that is coupled to the main housing and a surface above the garage door opener 100 (e.g., a garage ceiling) and supports a trolley coupled to the drive belt. The trolley includes an inner trolley member and an outer trolley member. The inner trolley member is coupled to and driven by the belt, and the outer trolley member is coupled to the garage door (e.g., via a bracket).


The inner trolley member and the outer trolley member are releasably coupled to one another such that the garage door system 50 is operable in a powered mode and a manual mode. In the powered mode, the inner trolley is coupled to the outer trolley and the motor 112 is selectively driven in response to actuation by a user. As the motor 112 is driven, the belt is driven by the motor 112 along the rail to displace the trolley thereby opening or closing the garage door 104. In the manual mode, the outer trolley is decoupled from the inner trolley such that a user may manually operate the garage door 104 to open or close without resistance from the motor 112.



FIGS. 2-4 illustrate the garage door opener 100, which includes the housing 108 supporting the motor 112 (shown in FIG. 5). The housing is encased by an upper cover 140 and a lower cover 144 (FIG. 2). The upper cover 140 is coupled to the rail assembly 128 and the surface above the garage door (e.g., the garage ceiling) by, for example, a support bracket 148. In the illustrated embodiment, the lower cover 144 supports a light 152 (e.g., one or more LED lights), enclosed by a transparent cover or lens 156 (FIG. 8), which provides light to the garage. As illustrated in FIG. 2, in which the cover 156 is removed, the light 152 includes a pair of linear LED strips having a plurality of LEDs disposed at regular intervals along the LED strips. However, in other embodiments, the light 152 may include a single LED strip or more than two LED strips. In addition, the strips may have any shape (e.g., arcuate strips or sections of the strips, obliquely angled portions, etc.), and may include different patterns of LED placement. Furthermore, the LEDs may be configured such that they can emit varying intensities of light or colors of light (e.g., via pulse width modulation).


The light 152 may either be selectively actuated by a user or automatically powered upon actuation of the garage door opener 100. In one example, the light 152 may be configured to remain powered for a predetermined amount of time after actuation of the garage door opener 100, or in response to a signal sent to an accessory device 200 by a peripheral device.


With reference to FIGS. 3 and 4, the housing 108 includes accessory ports 162 that receive and support modular, interchangeable accessory devices 200. In the illustrated embodiment, the housing 108 has eight accessory ports 162 with two ports 162 disposed on each side of the housing 108. However, this configuration is merely exemplary—that is, the housing 108 may include more than eight ports 162 or less than eight ports 162, and each side of the housing 108 may include more or less than two ports 162. Additionally, the housing 108 may include more or less than four sides with each having one or more ports 162, and other surfaces of the housing (e.g., the top and bottom) may include one or more ports 162.


With continued reference to FIGS. 3 and 4, each port 162 includes a communication interface 166 and a coupling interface 170. The communication interface 166 includes an electrical connector 174 disposed within a recess 178. The electrical connector 174 is configured to facilitate electrical communication and data communication between the accessory device 200 and the garage door opener 100. The electrical connector 174 may be any type of powered input/output port. Additionally, in further embodiments the electrical connector 174 may define separate power connectors and data connectors, which may similarly be any type of power connectors and data connectors. In the illustrated embodiment, two slots 182 are formed on either side of the electrical connector 174 and receive a portion of an accessory device 200 to align and mechanically couple the accessory device 200 with housing 108. The coupling interface 170 is defined by a pair of spaced apart, raised surfaces 186 defined on either side of the communication interface 166. Each raised surface 186 includes a chamfered edge and has an aperture 190 defined there through. However, the raised surfaces 186 may be omitted in other embodiments. The apertures 190 are configured to receive portions of the accessory devices 200 to facilitate mechanical coupling of the accessory device 200 to the garage door opener 100.


In the illustrated embodiment, the housing 108 includes an electrical outlet 194 (also referred to as a pass-through outlet) disposed between ports 162 on one or more sides of the housing 108 (FIG. 3). The electrical outlet 194 is a standard U.S. three-prong female AC plug 194 defined within a recess 198. However, the electrical outlet 194 may be any type of AC or DC electrical outlet. Therefore, an electrical device (e.g., a power tool, an air compressor, a light, etc.) including a corresponding connector configured to be coupled to the electrical outlet 194 may receive AC power from the electrical outlet 194.


Furthermore, in the illustrated embodiment, one of the ports 162 is omitted such that a portion of the housing includes a customized port 164 for permanently receiving a specific accessory device 200 (e.g., a battery charging port for fixedly receiving a charger) (FIG. 4). This type of customized port 164 may also be used in place of other ports 162 in other embodiments.


With reference to FIGS. 2 and 5, the garage door opener 100 receives a variety of different accessory devices 200 within the ports 162. In the illustrated examples, two ports 162 and the electrical outlet 194 receive the extension cord reel 220 on one side of the housing 108. On another side of the housing 108, one port 162 receives the environmental sensor 224 and the other port 162 receives the park-assist laser 228. On yet another side, one port 162 receives the fan 216 and the other port 162 is unused and blocked by a cover 256. The final side includes one of the ports 162 and the customized port 164, where the port 162 receives the speaker 212 and the customized port 164 supports the battery charger 204 for receiving a battery pack 208 (e.g., a power tool battery pack). Each accessory device 200 will be described in greater detail below with reference to FIGS. 11-22.


With reference to FIGS. 6 and 7, the garage door opener 100 includes a power inlet 102 configured to receive power from an external power source, such as a standard 120 VAC power outlet. The power from the external power source is received at a terminal block 106, which directs power to the motor 112, the light 152, the accessory devices 200, the electrical outlet 194 (via a circuit breaker), and at least one communication board 160 disposed on or within the garage door opener 100 via, for example, a DC fuse. The electrical outlet 194 is coupled to the AC power source 102 via the terminal block 106 such that the electrical outlet 194 is a ‘pass through’ outlet receiving standard AC power from the AC power source. In this embodiment, the garage door opener 100 includes a garage door opener communication board 168 having a radio-frequency (RF) receiver 172 and a wireless board 176 having a transceiver 180. The garage door opener communication board 168 is in communication with obstruction sensors 700, the remote controller 253 (also referred to as car remote 253), the passcode keypad 248, and the wireless board 176 (e.g., via a multiplexer) and is configured to actuate operation of the motor 112 based on communications received from the foregoing devices. The wireless board 176 is configured to send and receive communications from a network hub 948, a wireless network 952 (e.g., including a remote server 950 (FIG. 30), a peripheral device 252, the wall-mounted keypad 244, and the accessory devices 200. In other embodiments, the garage door opener 100 includes a single communication board 168 communicating with each of the foregoing devices.


The garage door opener communication board 168 and the wireless board 176 may be referred to as a controller of the garage door opener, with the controller including an electronic processor and memory storing instructions. The electronic processor executes the instructions to carry out the functionality of the garage door opener communication board 168 and the wireless board 176 described herein and, more generally, the control functionality of the garage door opener 100 described herein. The controller may reside on the communications board 160 of FIG. 6, or may be separated onto separate physical boards. An example of a similarly configured controller having an electronic processor and memory, albeit for a battery pack, is illustrated in FIG. 10 as controller 1355.



FIGS. 8, 9A, and 9B illustrate the battery charger 204 disposed on the housing. In the illustrated embodiment, the battery charger 204 includes a charging port 260 defined by a recess 138 that is sized and shaped to receive a battery pack 208. The charging port 260 includes electrical contacts configured to mechanically and electrically engage a set of battery pack contacts to transfer electrical charge from the garage door opener 100 to the battery pack 208 and also communicate data signals therebetween. Additionally, the charging port 260 includes a mechanical coupling mechanism 264 to engage and retain the battery pack 208 within the charger 204. The mechanical coupling mechanism 264 includes two slots 142 disposed on opposed sides of the recess 138 that are configured to receive battery pack latch members 146 to secure and maintain engagement of the battery pack 208 and the garage door opener 100 (FIG. 9A). In the illustrated embodiment, the charging port 260 is configured to receive a battery pack 208 that is inserted along an insertion axis A. However, in other embodiments, the battery receiving portion may be configured to receive a battery pack configured as a ‘slide on’ battery pack that is inserted along an axis generally perpendicular to the insertion axis.


In other embodiments, however, the mechanical coupling mechanism 264 may be any other conventional battery pack coupling mechanism, such as those seen in battery chargers and/or power tools. The mechanical coupling mechanism may include alignment rails, pivoting latch members received in corresponding slots, or other features used to receive and retain a battery pack within a charging or power tool port either in place of or in addition to the features described above.


The battery charger 204 further includes a door 268 pivotally coupled to a side of the battery charger 204 via a hinged connection 272 such that the door 268 is movable between a closed position (FIG. 8) and an open position (FIGS. 9A and 9B). The door 268 is configured to cover the battery charger 204 when a battery pack 208 is not connected. Additionally, the door 268 is sized and shaped to enclose a battery pack 208 received within the charger 204. The door 268 is retained in a closed position by a locking mechanism 276 defined by a press fit detent; however, other locking mechanisms may be used.



FIGS. 9A and 9B illustrate battery pack 208 that may be coupled to the charger 204 via the charging port 260. The battery pack 208 includes latches 146 on either side of the pack 208 for engaging the slots 142 of the charging port 260 on the charger 204. The battery pack 208 further includes an insertion portion 154 that is received by the charging port 260 of the charger 204. The insertion portion 154 includes a top support portion having a stem extending vertically from the top support portion. The stem has contacts that receive power from the charger 204 and may communicate data between the charger 204 and the battery pack 208. The battery pack 208 further includes a fuel gauge 1395 that indicates a state of charge of the battery pack. The battery pack 208 may be a power tool battery pack configured to power tools (e.g., drills/drivers, impact drills/drivers, hammer drills/drivers, saws, and routers) having a battery receiving portion similar to the charging port 260. In the illustrated embodiment, when the battery pack 208 is coupled to the charging port 260 and the door 268 is open, the fuel gage 1395 is visible to a user (FIG. 9B).


The battery cells of the battery packs 208 may provide a voltage output of about 18 volts, of another value in a range between 17 to 21 volts, or another value, such as about 12 volts, about 28 volts, about 36 volts, about 48 volts, another value or range between 12 to 48 volts, or another value. The term “about” may indicate a range of plus or minus 20%, 15%, 10%, 5%, or 1% from an associated value. The battery cells 1350 may have various chemistry types, such as lithium ion, a nickel cadmium, etc. In addition, the battery packs 208 may provide different capacities in terms of amp-hours because of differences in one or more of the size, capacity, and number of cells (e.g., 5 cells, 10, cells 15 cells, etc.).


When the battery pack 208 is coupled to the battery charger 204, the battery pack 208 also provides power to the garage door opener 100 when the garage door opener 100 loses power—that is, the battery pack 208 serves as a ‘DC battery back up.’ The garage door opener 100 is configured to detect loss of power and reconfigure the battery charger 204 to receive power from the battery pack 208 when power is lost. In this way, even when the garage door system 50 loses external power, the garage door opener 100 is still able operate the garage door 104.


In one embodiment, the garage door opener 100 monitors a voltage of battery cells of the battery pack 208 (e.g., at continuous intervals, continuously, etc.) when the battery pack 208 is connected to the charger 204 via a charging circuit. The charging circuit may include a processor that is configured to monitor battery pack properties (e.g., type of battery, charge state, temperature, number of charge cycles, etc.) to determine and execute a charging protocol stored in a memory of the charging circuit. The charging protocol may include a constant or variable current application, constant or variable voltage application, a programmed sequence of constant/variable current and constant/variable voltage, and automatic shut-off in response to monitored battery pack properties (e.g., at completed charge, a temperature threshold, etc.). The charging circuit may also be configured to execute a different charging protocol for different types of battery packs. For example, the charging circuit may include a first charging protocol for a first battery pack (e.g., a lithium ion battery pack) and a second charging protocol for a second battery pack (e.g., a nickel cadmium battery pack).


In one embodiment, if the charging circuit detects that the voltage of the battery pack 208 is below a predetermined level, the charger 204 is configured to charge the battery 208. Once the voltage of the battery pack 208 reaches the predetermined level, the charger 204 is configured to cease charging operations (e.g., via the use of a relay). In the case where AC power is lost, and the battery pack 208 is used as a battery back up to power the garage door opener 100, the battery pack 208 is operatively connected to the garage door opener 100 to power the motor 112 (e.g., via a relay activated by the loss of AC power). In other words, and with reference to FIG. 6, in a power outage, the battery pack 208 provides power to the circuitry of the battery charger 204, which forwards the power to reconfigurable backup relays. The backup relays include power switching elements that are automatically switched to accept power from the battery charger 204 when power is not present from the DC fuse and that are automatically switched to accept power from the DC fuse when power (from the terminal block 106) is present. The DC fuse directs power received, whether from the battery pack 208 or the terminal block 106, to the motor 112 and other components of the garage door opener 100.


In an alternate embodiment, certain control circuitry of the charging circuit may be disposed within the battery pack rather than the garage door opener (i.e., the battery pack is a ‘smart’ battery pack). In this embodiment, illustrated in FIG. 10, the battery pack 208 includes battery cells 1350 and a battery controller 1355 having an electronic processor 1360 and a memory 1365. The electronic processor 1360 executes instructions stored in the memory 1365 to control the functionality of charging circuit described herein, such as to control the charge and discharge of the battery cells 1350 (e.g., via switching elements (not shown)). For example, the battery controller 1360 may monitor pack properties and execute the charging functions described above in response to the monitored pack properties. Additionally, the battery controller may either communicate with the charger of the garage door opener (e.g., via a connection of a battery data contact and a charger data contact) to control charging functions (e.g., operate one or more garage door opener relays) or control functions within the battery pack. Controlling functions within the battery pack may include, for example, disconnecting (e.g., via a relay) the battery pack contacts from battery cells of the battery pack in response to any of the monitored battery pack properties described above.


The charger 204 further includes a controller in communication with the wireless board 176 of the garage door opener 100. The controller includes a memory storing an initial data set 850 including a unique identifier 854, a predetermined initial status field 858, and a predetermined initial settings field 862 that is communicated to the garage door opener 100 each time the charger 204 is coupled to the port 162. Thereafter, the controller is configured to send and receive data from, for example, the remote server 950 via the wireless board 176. More specifically, the controller receives updates to the settings field 862 of the data set 850 based on data received from the wireless board 176. The controller also updates the status field 858 of the data set 850 (e.g., based on parameters the controller sensors regarding a coupled battery pack), which is sent to the wireless board 176 for communication to the peripheral device via the remote server 950.


In one embodiment, the status field 858 includes, for example, the charge state of the battery (e.g., full charge or charging, a percentage of charge, etc), among others. The settings field 862 includes an on/off toggle for the charging the battery, among others. In this example, the user may set the values for the settings field 862 (e.g., via the peripheral device 252), which turns the charger on and off, while also monitoring the charge state of the battery.



FIGS. 11 and 12 illustrate the accessory speaker 212 configured to be detachably coupled to the garage door opener 100. In the illustrated embodiment, the speaker 212 is a wireless speaker 212 (e.g., a Bluetooth® speaker) that may be wirelessly coupled to a peripheral device 252. In one embodiment, the speaker 212 receives an audio stream from a peripheral device 252 communicating with the garage door opener 100, and subsequently drives a speaker 212 to output the audio stream using power from the garage door opener 100 via the electrical mounting interface 400. In another embodiment, the wireless speaker 212 receives an audio stream wirelessly directly from a peripheral device 252 via an integral transceiver, and drives a speaker 212 to output the audio stream using power from the garage door opener 100 via the electrical mounting interface 400.


With reference to FIG. 12, the speaker 212 includes a mechanical mounting interface 300 configured to be coupled to the coupling interface 170 of the housing 108, and an electrical mounting interface 400 configured to be coupled to the communication interface 166 of the housing 108. The mechanical mounting interface 300 includes a pair of hooks 304 that are received within the apertures 190 of the coupling interface 170, a pair of projections 308 disposed on opposing sides of the electrical mounting interface 400, and at least one protruding latch member 312 configured to engage a corresponding retention member on the housing 108. The projections 308 are configured to be received within the slots 182 to assist with alignment of the electrical mounting interface 400 and the communication interface 166. When coupled, the speaker 212 receives power from the garage door opener 100 via connection defined by between the electrical mounting interface 400 and the communication interface 166. The speaker 212 also sends and receives data from the garage door opener 100 via connection defined by between the electrical mounting interface 400 and the communication interface 166.


The speaker 212 further includes a controller in communication with the wireless board 176 of the garage door opener 100. The controller includes a memory storing an initial data set 850 including a unique identifier 854, a predetermined initial status field 858, and a predetermined initial settings field 862 that is communicated to the garage door opener 100 each time the speaker 212 is coupled to the port 162. Thereafter, the controller is configured to send and receive data from, for example, the remote server 950 via the wireless board 176. More specifically, the controller receives updates to the settings field 862 of the data set 850 based on data received from the wireless board 176. The controller also updates the status field 858 of the data set 850, which is sent to the wireless board 176 for communication to the peripheral device via the remote server 950.


In one embodiment, the status field 858 includes, for example, on/off state of the speaker, the pairing status (e.g, Bluetooth® pairing status), and speaker volume, among others. The settings field 862 includes an on/off toggle, a pairing toggle (e.g., to turn pairing on/off), and a volume value, among others. In this example, the user may set the values for the settings field 862 (e.g., via the peripheral device 252), which updates the speaker 212 to turn on/off, turn pairing on/off, or alter the volume of the speaker.


With reference to FIGS. 13 and 14, the accessory fan 216 includes a mounting member 280 supporting a rotatable and pivotal yoke 284 having a fan 288 pivotally retained between a pair opposed arms 292 (i.e., the fan is supported by a gimbal mount). As seen in FIG. 12, the mounting member 280 includes a mechanical mounting interface 300 and an electrical mounting interface 400 that are substantially similar to the interfaces described above with reference to FIGS. 11 and 12. The interfaces 300, 400 engage the housing 108 in a substantially similar matter as those described above with reference to FIGS. 11 and 12.


The fan 216 further includes a controller in communication with the wireless board 176 of the garage door opener 100. The controller includes a memory storing an initial data set 850 including a unique identifier 854, a predetermined initial status field 858, and a predetermined initial settings field 862 that is communicated to the garage door opener 100 each time the fan 216 is coupled to the port 162. Thereafter, the controller is configured to send and receive data from, for example, the remote server 950 via the wireless board 176. More specifically, the controller receives updates to the settings field 862 of the data set 850 based on data received from the wireless board 176. The controller also updates the status field 858 of the data set 850, which is sent to the wireless board 176 for communication to the peripheral device via the remote server 950.


In one embodiment, the status field 858 includes, for example, on/off state of the fan and fan speed (high, medium, low, etc), among others. The settings field 862 includes an on/off toggle and a fan speed value, among others. In this example, the user may set the values for the settings field 862 (e.g., via the peripheral device 252), which updates the fan 216 to turn on/off and adjust the speed of the fan.


With reference to FIGS. 15 and 16, the accessory retractable cord reel 220 includes an extension cord 222 having power outlet member 226 having a plurality of power outlets 230 extending from an aperture 234 in a cylindrical main housing 238, with excess extension cord 222 being retained on a cord spooling mechanism (not shown) supported within the housing 238. In one embodiment, the cord spooling mechanism includes a rotatable plate for supporting the cord 222 that is biased by a spring (e.g., a torsion spring). The spring biases the rotatable plate to drive automatic spooling of the cord 222. The cord spooling mechanism also includes a locking member that engages the rotatable plate to fix the rotatable plate into a position allowing the cord extend from the housing at a desired length. The locking member may include a user accessible actuator (e.g., a button, a switch, etc.) or an automatic mechanism. The automatic mechanism may, for example, be engaged when the cord is extended and subsequently released via the application of a first force, and then disengaged when a second force is applied to the cord. However, other spooling mechanisms may be used as well.


With reference to FIG. 16, the main housing 238 includes a mounting plate 242 extending across a rear surface of the main housing 238. The mounting plate 242 includes a mechanical mounting interface 500 defined by four hooks 504, two projections 508, and two latch members 512. The projections 508 are disposed on opposing sides of an electrical mounting interface 600 that includes a male AC plug or plug 604 (e.g., a standard three prong US plug, other standard AC plugs, standard DC plug, etc.). The male AC plug 604 extends from an end of a projecting member 608 that is sized and shaped to be received with the recess 198 of the housing 108. In addition, the AC plug 604 is a pivotable plug to facilitate the attachment between the retractable extension cord reel 220 and the garage door opener 100.



FIG. 17 illustrates the environmental sensor 224. In the illustrated embodiment, the environmental sensor 224 includes an air inlet 246, indicators 250 (e.g., LEDs), and a speaker 254. The air inlet 246 allows ambient air within the garage to enter the environmental sensor 224. Inside the sensor 224, the air is analyzed to determine the presence of carbon monoxide. The environmental sensor 224 provides an alert to a user within the garage. For example, one of the indicators 250 may be activated to indicate the presence of carbon monoxide within the garage and/or the speaker 254 is activated to sound an alarm. Furthermore, in some embodiments, the environmental sensor 224 communicates the presence of carbon monoxide to a peripheral device 252 (e.g., a cell phone, a computing device, one of the keypads, etc.) either directly or via the garage door opener 100.


Although the illustrated environmental sensor 224 is a carbon monoxide detector, other air characteristics may be analyzed in addition to or in place of carbon monoxide. For example, other air characteristics may include humidity, temperature, and the presence of other gases (e.g., smoke, etc.). In other embodiments, the environmental sensor 224 may include a display (e.g., LCD, etc.) for displaying air characteristics to the user.


The environmental sensor 224 further includes a controller in communication with the wireless board 176 of the garage door opener 100. The controller includes a memory storing an initial data set 850 including a unique identifier 854, a predetermined initial status field 858, and a predetermined initial settings field 862 that is communicated to the garage door opener 100 each time the environmental sensor 224 is coupled to the port 162. Thereafter, the controller is configured to send and receive data from, for example, the remote server 950 via the wireless board 176. More specifically, the controller receives updates to the settings field 862 of the data set 850 based on data received from the wireless board 176. The controller also updates the status field 858 of the data set 850, which is sent to the wireless board 176 for communication to the peripheral device via the remote server 950.


In one embodiment, the status field 858 includes, for example, measured temperature values, measure humidity levels, carbon monoxide levels, and carbon monoxide sensor operability, among others. The settings field 862 includes a high/low temperature alarm set point, a high/low humidity alarm set point, and a carbon monoxide level set point, among others. In this example, the user may set the values for the settings field 862 (e.g., via the peripheral device 252), which updates the environmental sensor to alert a user (e.g., via the indicators 250, the speaker 254, an alert on the peripheral device 252, etc.) when the values in the status field 858 exceed the values in the settings field 862. In addition, a user may simply monitor the current values of the status field 858 (e.g., the current temperature, humidity level, or presence of carbon monoxide).


The environmental sensor 224 includes the mechanical mounting interface 300 and the electrical mounting interface 400 on a rear surface (not shown) that are substantially similar to the interfaces described above with reference to FIGS. 11 and 12. The interfaces 300, 400 engage the housing in a substantially similar manner as those described above with reference to FIGS. 11 and 12.



FIGS. 18 and 19 illustrate the park-assist laser 228, which includes one or more adjustable laser units 258 coupled to a main housing 262. In the illustrated embodiment, each laser unit 258 includes a laser 266 and a spherical coupling end 270 that is movably received within a recess 274 on the housing 262. The park-assist laser 228 further includes the mechanical mounting interface 300 and the electrical mounting interface 400 on a rear surface (not shown) that are substantially similar to the interfaces described above with reference to FIGS. 11 and 12. The interfaces 300, 400 engage the housing in a substantially similar manner as those described above with reference to FIGS. 11 and 12.


With reference to FIG. 19, the laser units 258 are adjustable by a user such that the lasers 266 are oriented to direct visible laser light 278 toward a floor of the garage. The laser light 278 provides a user with a visible reference point to assist the user with parking a vehicle. The lasers 266 may be manually enabled by a user when desired for use (e.g., via a peripheral device). In addition, the lasers 266 may be automatically powered when the garage door opener 100 is actuated. In one specific example, the lasers 266 may be actuated for a predetermined period of time after the garage door opener 100 has been actuated.


The park-assist laser 228 further includes a controller in communication with the wireless board 176 of the garage door opener 100. The controller includes a memory storing an initial data set 850 including a unique identifier 854, a predetermined initial status field 858, and a predetermined initial settings field 862 that is communicated to the garage door opener 100 each time the park-assist laser 228 is coupled to the port 162. Thereafter, the controller is configured to send and receive data from, for example, the remote server 950 via the wireless board 176. More specifically, the controller receives updates to the settings field 862 of the data set 850 based on data received from the wireless board 176. The controller also updates the status field 858 of the data set 850, which is sent to the wireless board 176 for communication to the peripheral device via the remote server 950.


In one embodiment, the status field 858 includes, for example, an on/off value for the first laser 266 and an on/off value for the second laser 266. The settings field 862 includes, for example, a toggle for automatic activation of park-assist laser 228 upon actuation of the garage door opener 100, a toggle for automatic activation of park-assist laser 228 upon obstruction sensors 700 being tripped, and a timer value to determine the amount of time the park-assist laser 228 remains active before automatically turning off. A user may monitor the status field 858 of the park-assist laser using, for example, a peripheral device 252 to determine whether each of the first and the second laser 266 is on or off.


With reference to FIG. 20, the folding light 232 includes a pair of lighting sections 282 extending away from a base portion 286. The lighting sections 282 include one or more pivoting connections 290. In the illustrated embodiment, a first lighting section 282a is pivotally coupled to the base portion 286, and the first lighting section 282a is also pivotally coupled a second lighting portion 282b. Furthermore, each pivoting connection 290 permits movement in more than one plane.


Each lighting section support one or more lights 294 (e.g., LED lights or strips) encased by a lens. The lighting sections 282 are selectively actuated independently of one another.


The folding light 232 further includes a mechanical mounting interface 300 and an electrical mounting interface 400 on the base portion 286 that are substantially similar to the interfaces described above with reference to FIGS. 11 and 12. The interfaces 300, 400 engage the housing in a substantially similar manner as those described above with reference to FIGS. 11 and 12.


The folding light 232 further includes a controller in communication with the wireless board 176 of the garage door opener 100. The controller includes a memory storing an initial data set 850 including a unique identifier 854, a predetermined initial status field 858, and a predetermined initial settings field 862 that is communicated to the garage door opener 100 each time the folding light 232 is coupled to the port 162. Thereafter, the controller is configured to send and receive data from, for example, the remote server 950 via the wireless board 176. More specifically, the controller receives updates to the settings field 862 of the data set 850 based on data received from the wireless board 176. The controller also updates the status field 858 of the data set 850, which is sent to the wireless board 176 for communication to the peripheral device via the remote server 950.


In one embodiment, the status field 858 includes, for example, on/off state of each section of the light, among others. The settings field 862 includes an on/off toggle for each section of the light, among others. In this example, the user may set the values for the settings field 858 (e.g., via the peripheral device 252), which turns each light section 282 on/off. The user may also monitor the on/off state of each light section 282.


With reference to FIG. 21, the retractable area light 236 includes an area light 202 disposed on one end of a retractable cord 206. The retractable cord 206 is wrapped around a cord spooling mechanism. The cord spooling mechanism is substantially similar to the cord spooling mechanism described above with reference to FIGS. 15 and 16.


With continued reference to FIG. 21, the retractable area light further 236 includes a mechanical mounting interface 300 and an electrical mounting 400 interface on a rear surface that are substantially similar to the interfaces described above with reference to FIGS. 11 and 12. The interfaces 300, 400 engage the housing in a substantially similar manner as those described above with reference to FIGS. 11 and 12. Alternatively, the retractable area light 236 may include a mounting plate that is substantially similar to the mounting plate 242 described above with reference to FIGS. 15 and 16.


With reference to FIG. 22, the accessory inflator cord reel 240 includes an inflator or air delivery nozzle 210 disposed on one end of a retractable cord 214. The retractable cord 214 is wrapped around a cord spooling mechanism. The cord spooling mechanism is substantially similar to the cord spooling mechanism described above with reference to FIGS. 15 and 16.


With continued reference to FIG. 22, the inflator reel 240 further includes a mechanical mounting interface 300 and an electrical mounting interface 400 on a rear surface that are substantially similar to the interfaces described above with reference to FIGS. 11 and 12. The interfaces 300, 400 engage the housing in a substantially similar manner as those described above with reference to FIGS. 11 and 12.


The inflator reel 240 is configured to be operatively coupled to a compressor (not shown) in order to provide compressed air to peripheral objects (e.g., a car tire, etc.). The compressor may be directly coupled to/supported on the garage door opener 100. Alternatively, the compressor may be placed remotely from the garage door opener 100 but configured to be fluidly coupled to the inflator reel 240 (e.g., via tubes extending from the compressor to the inflator reel 240).


The inflator reel 240 further includes a controller in communication with the wireless board 176 of the garage door opener 100. The controller includes a memory storing an initial data set 850 including a unique identifier 854, a predetermined initial status field 858, and a predetermined initial settings field 862 that is communicated to the garage door opener 100 each time the inflator reel 240 is coupled to the port 162. Thereafter, the controller is configured to send and receive data from, for example, the remote server 950 via the wireless board 176. More specifically, the controller receives updates to the settings field 862 of the data set 850 based on data received from the wireless board 176. The controller also updates the status field 858 of the data set 850, which is sent to the wireless board 176 for communication to the peripheral device via the remote server 950.


In one embodiment, the status field 858 includes, for example, pressure of the compressed gas within the compressor and an on/off state of the compressor, among others. The settings field 862 includes an on/off toggle for the compressor and an inflator pressure limit value, among others. In this example, the user may set the values for the settings field 862 (e.g., via the peripheral device 252) in order to turn the compressor on/off or change the inflator pressure limit value, while also monitoring the pressure of the gas within the compressor.


Each of the accessory devices 200 described in FIGS. 8, 9A, 9B, and 11-22 may be interchangeably coupled to the ports 162 of the housing 108 due to the common mechanical mounting interfaces 300 and electrical mounting interfaces 400. In other words, each accessory device 200 may be coupled to any port 162 on the housing. This modular design allows a user to couple desired accessory devices 200 to the garage door opener 100 in a preferred location, while removing accessory devices 200 that the user does not require. This modular design allows the user to customize the garage door opener 100 to fit their specific needs.



FIGS. 23 and 24 illustrate a pair of obstacle detection sensors 700a, 700b. As seen in FIG. 24, the obstacle detection sensors 700a, 700b are mounted on opposing sides of the garage door 104 in facing relation to one another. The obstacle detection sensors 700a, 700b include a transmitter (e.g., sensor 700a) and a receiver (e.g., sensor 700b), where the transmitter directs a beam of light (e.g., infrared light) toward the receiver. If the beam is interrupted (i.e., an object passes through the beam) during operation of the garage door 104, the obstacle sensor sends a signal to the garage door opener 100 to pause and/or reverse operation. The obstacle sensors 700a, 700b may communicate with the garage door opener 100 via a wired or wireless connection.



FIGS. 25 and 26 illustrate exemplary control devices for the garage door system 50. FIG. 25 illustrates a passcode keypad 248 including buttons. The passcode keypad 248 requires a user to press a specific sequence of buttons in order to actuate the garage door opener 100 to open or close the garage door 104. The passcode keypad 248 may be placed on a surface that is outside of the garage, and operatively communicates with the garage door opener 100 via a wired or wireless connection (e.g., via radio frequency communication).



FIG. 26 illustrates a wall-mounted keypad 244 having a first button 296, a plurality of second buttons 298, a light control button 302, and a lock button 306. The first button 298 operates the door to open or close. In one example, the first button 296 operates the door between two states (e.g., an open position and a closed position). As such, each time the first button 296 is actuated, the door is operated to move from the state it is in (i.e., a current state) to the other state. That is, if the garage door is in the open position and the first button 296 is actuated, the garage door is operated into the closed position, and vice versa. In some embodiments, if the first button 296 is pressed while the door is moving between states, operation of the door is halted and maintained in an intermediate position. A subsequent actuation of the first button 296 causes the door to travel toward the state opposite the state the door was moving toward prior to being halted in the intermediate position.


The plurality of second buttons 298 (e.g., 298A, 298B, etc.) each controls operation of one accessory device 200 received in an accessory port 162 corresponding to each of the second buttons 298—that is, second button 298A controls an accessory device 200 coupled to a first accessory port 162, second button 298B controls an accessory device coupled to a second accessory port 162, etc. In one example, the second buttons 298 are configured to cycle through states of the accessory device 200 (e.g., the settings data 858) to move between different states of the settings data 858 as described above with reference to each accessory device 200. For example, the speaker 212 may be cycled between a first state where the speaker 212 is powered on and a second state where the speaker 212 is powered off with each actuation of one of the second buttons 298. In another example, the fan 216 may be cycled between a first state where the fan 216 is driven at a high speed, a second state where the fan 216 is driven at a medium speed, a third state where the fan 216 is driven at a low speed, and a fourth state where the fan 216 is off upon each actuation of another of the second buttons 298. In yet another example, the parking laser 228 may be cycled between a first state where the parking laser 228 is powered on (e.g., for a predetermined amount of time) and a second state where the parking laser 228 is powered off with each actuation of yet another of the second buttons 298. Finally, in a last example, the inflator 240 may be cycled between a first state where the inflator 240 is powered on and a second state where the inflator 240 is powered off with each actuation of another one of the second buttons 298.


The light control button 302 is configured to operate the light 152 between an on or off condition. In another example, the on condition is set for a predetermined amount of time before the light 152 reverts to the off condition without actuation of the light control button 302. In yet another example, the light 152 may be cycled between a first state where the light 152 is set to a high intensity level, a second state where the light 152 is set to a medium intensity level, a third state where the light 152 is set to a low intensity level, and a fourth state where the light 152 is off upon each actuation of the light control button 302.


The lock button 306 is configured to operate the garage door opener 100 between a locked condition in which one or more of the garage door opener 100, the accessory devices 200, and the light 152 are prevented from being operated to change states, and an unlocked position in which one or more of the garage door opener 100, the accessory devices 200, and the light 152 are permitted to be operated to change states. As seen in FIG. 26, the wall-mounted keypad 244 may be mounted to a wall within the garage, and operatively communicates with the garage door opener 100 via a wired or wireless connection (e.g., via radio frequency communication).


In an alternate embodiment, the wall-mounted keypad may include a display. The display shows the status of the garage door as well as the status of accessory devices 200 coupled to the garage door opener 100. It should be noted that the first button 296, the second buttons 298, the light control button 302, and the lock button 306 may be configured as any acceptable actuator such as a switch, a slider, an actuator on a touch screen, etc. in other embodiments.


With reference to FIGS. 27-29, the wireless board 176 is in communication with a peripheral device 252 via a transceiver 800. The transceiver 800 may include a removable antenna including a connecting member pivotally coupled to a main body (e.g., having a 180 degree pivoting range) (FIG. 28). The connecting member is configured to be coupled to the garage door opener (e.g., via a threaded connection, press fit connection, detent mechanism, etc.) to increase communication range of the wireless board. In one example, the antenna may be offer a signal boost (e.g., approximately a 2 dB boost) to enhance communication range. The transceiver receives data and commands from the peripheral devices 252, whether through direct wireless communications or indirect wireless communications from the peripheral device 252 through the wireless network (e.g., the remote server 950). In one example, one peripheral device 252 is a smartphone 870 including a smartphone application 874 for controlling the garage door system 50 (FIG. 29). The smartphone application 874 includes a partitioned user interface 878, where each component/accessory device 200 of the garage door 100 includes a partition of the interface 878. In this example, each partition includes a display 882 for showing the status of the component associated with the partition, as well as one or more actuators 886 for controlling the operation of each component.


With reference to FIG. 30, the module communication diagram for communication between the accessory devices 200, the garage door opener 100, and the peripheral device 252, includes the communication of a port identifier 848 indicating the port 162 that an accessory device 200 is coupled to, and the data set 850 including at least identifier (ID) data 854, settings data 858, and status data 862 from each of the accessory devices 200, to the peripheral devices 252 via garage door opener's wireless board 176 and, optionally, a remote server 950. In this communication method, the garage door opener 100 acts as an intermediary communication device or pass through device—that is, the wireless board 176 determines the port 162 in which the accessory 200 is received (e.g., associates the accessory 200 with a port identifier 848) and understands data sets 850 that it sends and receives is divided into categories (e.g., unique identifier 854, status 858, settings 862), but does not actually process or ‘understand’ the data contained within the data set 850. Rather, it simply routes the port identifier 848 and data set 850 associated with each connected accessory device 200 to the peripheral device 252 via the remote server. This, for example, allows the garage door opener 100 to receive one of multiple different accessories in a single port 162, and allows each accessory device 200 to be moved from a first port 162 to another port 162. For example, when a first accessory device 200 is coupled to a first port 162, the first accessory device 200 is assigned a first port identifier 848 associated with the first port 162, and when the first accessory device 200 is subsequently coupled to a second port 162, the first accessory device is assigned a second port identifier 848 associated with the second port 162. In another example, when a first accessory device 200 is coupled to a first port 162, the first accessory device 200 is assigned a first port identifier 848 associated with the first port 162, and when a second accessory device 200 is subsequently coupled to the first port 162, the second accessory device is assigned the first port identifier 848 associated with the first port 162.


When the accessory device 200 is plugged into or otherwise coupled to the garage door opener 100, the accessory communicates the initial data set 850 to the garage door opener 100 defining the unique identifier 854, initial status 858, and initial settings 862. The garage door opener 100 receives the initial data set 850 from the accessory 200 and sends the initial data set 850 and port 162 to the remote server 950. The collection of data sets 850 for the various accessories 200 may be collectively referred to as accessory information 875. A peripheral device 252 monitors the remote server 950 and is configured to process this initial data set 850 and the port number to identify the accessory device 200 (e.g., via the unique identifier), the port 162 in which the accessory device 200 is coupled, and the initial status 858 and settings 862 associated with that particular accessory device 200. Thereafter, the peripheral device 252 can update the settings 862 of the accessory device 200 and monitor the status 858, while the accessory device 200 can update the status 858 delivered to the remote server 950 and monitor the settings 862 provided by the peripheral device 252.


With reference to FIG. 31, the module communication method 900 includes a step 904 in which the garage door opener 100 receives the accessory device 200 in the port 162, as described in detail above. In a step 908, the garage door opener 100 receives the initial data set 850 including the unique identifier 854, the initial statuses 858, and the initial settings 862. The initial data set 850 may be received with the port identifier 848 as well. The initial data set 850 is forwarded to the remote sever 950 (without processing) via the wireless board 176 in a step 912. In other words, the wireless board 176 (and therefore garage door opener 100) acts as a serial pass through device to transmit the data set 850 between the accessory device 200 and the remote server 950. The port identifier 848 may also be transmitted with the initial data set to the remote server 950. Once the data set 850 is uploaded to the remote server 950, a peripheral device 252 may download or otherwise access the data set 850 and furthermore update the settings 862. In step 916, the wireless board 176 monitors the accessory device 200 for changes in the status 858 and monitors the remote server 950 for changes in the settings 862 (e.g., via input from the peripheral device 252). In step 920, the garage door opener 100 determines if the new settings 862 have been received from the remote server 950. If new settings 862 are received, the garage door opener 100 passes the new settings 862 to the accessory device 200 to update the settings of the accessory device 200 (step 922). For example, the garage door opener 100 may pass the new settings 862 to the port identified by the port identifier 848, which may be transmitted with the new settings 862 by the remote server 950. As described above, in response to updated settings 862 received by one of the accessories 200, the accessory 200 may change its operation (e.g., a light or component may be enabled or disabled, a level of operation may be changed, etc.). Whether or not new settings data 862 has been received, the garage door opener 100 proceeds to step 924. In step 924, the garage door opener 100 determines if new status data 858 is received from the accessory device 200. If new status data 858 is received, the garage door opener 100 updates the remote server 950 (step 912). If no new status data 858 is received, the garage door opener 100 continues to monitor the accessory device 200 and the remote server 950 (step 916). In other embodiments, steps 920 and 924 may be reversed, or accomplished concurrently.



FIG. 32 illustrates a peripheral device communication method 1000 for a peripheral device (e.g., the peripheral device 252) to obtain status information from one or more of the accessory devices 200 of the garage door opener 100 and to update settings of one or more of the accessory devices 200. In step 1005, the peripheral device 252 receives the initial data set 850 including the unique identifier 854, the initial statuses 858, and the initial settings 862 information. The retrieval of the initial data set 850 may occur upon start-up of a software application (or, “app”) executed on the peripheral device 252 that, for example, includes sending of an initial request to the remote server 950 for the initial data set 850.


In step 1010, at least a portion of the initial data set 850 is displayed on the peripheral device 252. For example, a screen of the peripheral device 252 illustrates the port 162 or 164 associated with the initial data set, the type of the accessory 200 coupled thereto (determined based on the unique identifier 854), the initial status 858, and the initial settings 862. The type of the accessory 200 is determined based on the unique identifier 854, which may serve as an index into a lookup table of unique identifiers matched to accessory types. The lookup table may further be associated with a graphic or icon that is then displayed on the screen in combination with a name (e.g., “fan”) of the accessory 200. In one example, a particular unique identifier 854 indicates a lack of an accessory at an associated port, which may also be displayed on the display of the peripheral device 252 in step 1010.


In step 1015, the peripheral device 252 determines whether user input has been received that indicates a request to change an accessory setting. For example, the peripheral device 252 may include a touch screen display illustrating each coupled accessory 200. The peripheral device 252 may receive a user selection of one of the displayed accessories, which leads to a separate accessory screen particular to the type of accessory selected. The accessory screen illustrates the type of accessory, the settings of the accessory, and the statuses of the accessory (e.g., textually, graphically, or both) as determined based on the obtained data set for that accessory. Each setting may have a toggle (e.g., on/off), slider bar, numerical input, radio buttons, or other user input selectors that may be manipulated by a user to provide a setting update request received by the peripheral device 252.


When, in step 1015, the peripheral device 252 determines that user input has been received (e.g., via one of the user input selectors), the peripheral device 252 proceeds to step 1020, where the peripheral device 252 communicates the new setting to the remote server 950. The remote server 950 overwrites the previous setting stored in the data set for the particular accessory with the new setting. As described with respect to method 900, the garage door opener 100 obtains the updated setting from the remote server 950, and, in turn, provides the updated setting to the particular accessory 200 to which the new setting is directed.


The peripheral device 252 proceeds to step 1025 regardless of whether user input is received. In step 1025, the peripheral device 252 determines whether an update to the data set 850 has occurred, such as a new status 858 or new unique identifier 854. When an update to the data set 850 has occurred, the peripheral device 252 returns to step 1010 to display the new data set 850 as described above. When an update to the data set 850 has not occurred, the peripheral device 252 returns to step 1015 to determine whether user input has been received. Accordingly, the peripheral device 252 may loop between steps 1015 and 1025 until either the data set 850 is updated or user input is received.


In some instances, a new setting 858 provided to one of the accessories 200 will cause a status update on the accessory 200, which is then provided to the remote server 950 and eventually displayed on the peripheral device (e.g., step 1010), providing user feedback of a successful settings update on the accessory.


In some embodiments, the data transmitted to/from the remote server 950 by/to the peripheral device 252 and the garage door opener 100, may result from periodic polling of data by one or more of the remote server 950, the peripheral device 252, and the garage door opener 100. For example, with reference to FIG. 32, the peripheral device 252 may poll the remote server 950 each time the step 1025 is reached in the method 1000. In some embodiments, the data transmitted to/from the remote server 950, to/from the peripheral device 252 and the garage door opener 100, may result from pushing of data by one or more of the remote server 950, the peripheral device 252, the garage door opener 100 either periodically or in response to changes in the data to be transmitted (e.g., a unique identifier, a setting, and/or a status). For example, data (e.g., settings data) may be pushed from the peripheral device 252 to the remote server 950 upon a status change (e.g., steps 1015 and 1020), and data (e.g., status data) may be pushed to the peripheral device 252 from the remote server 950 upon a status change received from the garage door opener 100.


While the method 900 and method 1000 of FIGS. 31 and 32, respectively, are generally described with respect to a single accessory 200, the methods and steps therein may be repeated (serially or concurrently) for each accessory 200 and/or port 162,164 of the garage door opener 100. For example, with reference to the method 1000, when obtaining the initial data set in step 1005, the peripheral device may receive the initial data set for each of the ports 162,164, which then may be displayed in step 1010.


In some embodiments, the peripheral device 252, based on received user input, may be used to control the garage door opener 100 to drive the motor 112 to open and shut the garage door. For example, the peripheral device 252 may transmit an open or close request, via the remote server 950, to the wireless board 176. The wireless board 176, in turn, controls the motor 112 in accordance with the request to open or shut the garage door. Additionally, the garage door opener 100 may use a motor 112 position sensor (e.g., Hall sensors or a resolver) to determine the status of the garage door as being either open, shut, or a position between open and shut. The garage door opener 100, via wireless board 176, may then communicate the state of the garage door to the peripheral device 252 for display to a user.



FIG. 33 illustrates one exemplary block diagram of the remote server 950 in further detail. As illustrated, the remote server 950 includes a communications circuit 1100, a memory 1105, and an electronic processor 1110 coupled by bus 1115. The communication interface 1100 is coupled to the communication links 1130 and 1135 of FIG. 30 and enables the electronic processor 1100 (and, thereby, the remote server 950) to communicate with the garage door opener 100 and the peripheral device 252. The communication links 1130 may include one or more wired or wireless connections, networks, and protocols including, but not limited to, a local area network (LAN), the Internet, Wi-Fi, cellular, LTE, 3G, Bluetooth, Ethernet, USB, and the like. The memory 1105 stores the accessory information 875, as well as operational data and software. The electronic processor 1110 executes software, which may be stored in the memory 1105, to carry out the functionality of the remote server 950 described herein. For example, the electronic processor 1110 reads and writes the accessory information 875 to the memory 1105. Although illustrated as a single server, the remote server 950 may be implemented by one or more servers co-located or located separately from one another and, for instance, coupled by various communication networks.



FIG. 34 illustrates one exemplary block diagram of the peripheral device 252 in further detail. As illustrated, the peripheral device 252 includes a communications circuit 1150, a memory 1155, and an electronic processor 1160, a display 1165, and user input devices 1170 coupled by bus 1175. The communication interface 1150 is coupled to the communication link 1135 of FIG. 30 and enables the electronic processor 1160 (and, thereby, the peripheral device 252) to communicate with the remote server 950 (and, thereby, the garage door opener 100). The electronic processor 1160 executes software, which may be stored in the memory 1155, to carry out the functionality of the peripheral device 252 described herein. For example, the electronic processor 1110 executes the steps of the method 1000 of FIG. 32. The user input devices 1170 include one or more push buttons, toggle switches, speakers, and vibration generators for receiving user input and providing user output. In some embodiments, the display 1165 is a touch screen display and is part of the input/output devices 1170. The display provides visual output, such as shown in FIG. 29, regarding the garage door opener 100 and the accessories 200.



FIG. 35 illustrates one exemplary block diagram of one of the accessory devices 200 in detail. As illustrated, the accessory device 200 includes a controller 1200 having a memory 1205 and an electronic processor 1210, one or more sensors 1215 (e.g., temperature sensors, humidity sensors, and carbon monoxide sensors, etc.) and one or more loads 1220 (e.g., indicators, speakers, a motor, a power relay, a park-assist laser light, a light, and a compressor) coupled by a bus 1225. The controller 1200 is coupled to the garage door opener 100 via the electrical mounting interface 400 to enable data communications between the controller 1200 and the garage door opener 100 and to provide power to the accessory 200. In particular, the power supply 1230 receives conditions and filters power from the garage door opener 100, and provides the power to the other components of the accessory 200. The controller 1200 executes software, which may be stored in memory 1205, to carry out the function of the accessory device described herein. The memory 1205 may also store the data set 850 for the accessory. The particular sensors 1215, loads 1220, and functionality of the controller 1200 varies depends on the type of accessory 200. In one example, the accessory device 200 is the extension cord reel 220. The extension cord reel 220 includes the controller 1200 having the memory and the electronic processor 1210, and one or more loads 1220 (i.e., an AC output with a relay). In this example, the controller 1200 operates the relay of the load 1220 (i.e., the AC output) to selectively allow or prevent the delivery of electricity to power outlets 230—that is, the controller 1200 can turn the power outlets 230 on and off based on communications received from the garage door opener 100 or the peripheral device 252.



FIG. 36 illustrates an alternative embodiment of a block power diagram of the garage door opener 100. The garage door opener 100 includes a terminal block 2202 configured to receive power from an external power source 2204, such as a standard 120 VAC power outlet. The terminal block 2202 directs power, via a transformer 2208, to a garage door opener (GDO) board 2210 for supply to components thereof as well as a motor 2211 (used to drive a drive mechanism 2116 in a similar manner as described above), LEDs 2214 (of the light unit 2152), and garage door sensors 2216. The terminal block 2202 further directs power via the transformer 2208 to a wireless board 2220 and components thereof, as well as a wired keypad 2222 and module ports 2223. The terminal block 2202 also directs power to a battery charger 2224 and to AC ports 2228, which may be referred to as pass-through outlets. The module ports 2223 are configured to receive the various accessory devices 200, such as the speaker, the fan, the extension cord reel, the parking assist laser, the environmental sensor, the flashlight, and a security camera. One or more of the accessory devices 200 are selectively attachable to and removable from the garage door opener 100, and may be monitored and controlled by the garage door opener 100 as previously described above.


The wireless board 2220 includes a wireless microcontroller 2240, among other components. Additionally, similar to the wireless board 176, and with reference to FIG. 6, the wireless board 2220 is configured to communicate with the network hub 948, the wireless network 952 (e.g., including the remote server 950), the peripheral device 252, the wall-mounted keypad 2222, and the accessory devices 200. The GDO board 2210 includes, among other components, a garage door opener (GDO) microcontroller 2244 and a radio frequency (RF) transceiver 2246. The communication diagram of FIG. 7 similarly applies to the diagram of FIG. 36 in that, for example, the GDO board 2210 may substitute for the GDO board 168, and the wireless board 2220 may substitute for the wireless board 176. Accordingly, the GDO board 2210 is in communication with the wireless board 2220 (e.g., via a multiplexer) and is configured to actuate operation of the motor 2221 based on communications received from, for example, the wireless board 2220, the peripheral device 252, the door sensors 700, the car remote 253, and the outdoor keypad 248.


The GDO board 2210 and the wireless board 2220 may also be referred to as a controller of the garage door opener, with the controller including an electronic processor and memory storing instructions. The electronic processor executes the instructions to carry out the functionality of the GDO board 2210 and the wireless board 2220 described herein and, more generally, the control functionality of the garage door opener 100 described herein. An example of a similarly configured controller having an electronic processor and memory, albeit for a battery pack, is illustrated in FIG. 10 as controller 1355.


Various features of the invention are set forth in the following claims.

Claims
  • 1. A method for communication by a remote server with a garage door opener accessory device and a peripheral device, the method comprising: receiving, by an electronic processor of the remote server from a garage door opener, an initial data set including a unique identifier for the accessory device, an initial status indicating a status of the accessory device, and an initial setting indicating a setting of the accessory device, wherein, the garage door opener includes an accessory port configured to receive the accessory device;storing, by the electronic processor, the initial data set as an accessory data set associated with the accessory port of the garage door opener;sending, by the electronic processor, the initial data set to the peripheral device;receiving, by the electronic processor, new status data from the garage door opener;sending, by the electronic processor, the new status data to the peripheral device;receiving, by the electronic processor, new settings data from the peripheral device, wherein the new settings data is based on user input at the peripheral device; andsending, by the electronic processor, the new settings data to the garage door opener, wherein a load of the accessory device is controlled in response to the new settings data.
  • 2. The method of claim 1, further comprising: updating, by the electronic processor, the accessory data set to include the new status data, andupdating, by the electronic processor, the accessory data set to include the new settings data.
  • 3. The method of claim 1, further comprising: receiving from the garage door opener, by the electronic processor, a second initial data set including a second unique identifier for a second accessory device, a second initial status indicating a second status of the second accessory device, and a second initial setting indicating a second setting of the second accessory device;storing, by the electronic processor, the second initial data set as a second accessory data set associated with a second accessory port of the garage door opener;sending, by the electronic processor, the second initial data set to the peripheral device;receiving, by the electronic processor, second new status data from the garage door opener;sending, by the electronic processor, the second new status data to the peripheral device;receiving, by the electronic processor, second new settings data from the peripheral device wherein the second new settings data is based on further user input at the peripheral device; andsending, by the electronic processor, the second new settings data to the garage door opener, wherein a second load of the second accessory device is controlled in response to the second new settings data.
  • 4. The method of claim 1, further comprising: after the second accessory device is disconnected from the second accessory port and the accessory device is disconnected from the accessory port, and after the second accessory device is connected to the accessory port:receiving, by the electronic processor, the second initial data set from the garage door opener;storing, by the electronic processor, the second initial data set as the accessory data set associated with the accessory port of the garage door opener; andsending, by the electronic processor, the second initial data set to the peripheral device.
  • 5. The method of claim 1, wherein: the accessory device is one selected from the group of a speaker, a fan, an extension cord reel, an environmental sensor, a park-assist laser, a light, an inflator, and an inflator cord reel, andthe load of the accessory device is one selected from the group of a speaker circuit, a motor, a power relay, a park-assist laser light, a light, and a compressor.
  • 6. A system for communication by a remote server with a garage door opener accessory device and a peripheral device, the system comprising: a server including an electronic processor and a memory coupled to the electronic processor, the memory storing instructions that when executed by the electronic processor configure the server to: receive, from a garage door opener, an initial data set including a unique identifier for the accessory device, an initial status indicating a status of the accessory device, and an initial setting indicating a setting of the accessory device, wherein, the garage door opener includes an accessory port configured to receive the accessory device;store the initial data set as an accessory data set associated with the accessory port of the garage door opener;send the initial data set to the peripheral device;receive new status data from the garage door opener;send the new status data to the peripheral device;receive new settings data from the peripheral device wherein the new settings data is based on user input at the peripheral device; andsend the new settings data to the garage door opener, wherein a load of the accessory device is controlled in response to the new settings data.
  • 7. The system of claim 6, wherein the server is further configured to: update the accessory data set to include the new status data, andupdate the accessory data set to include the new settings data.
  • 8. The system of claim 6, wherein the server is further configured to: receive from the garage door opener a second initial data set including a second unique identifier for a second accessory device, a second initial status indicating a second status of the second accessory device, and a second initial setting indicating a second setting of the second accessory device;store the second initial data set as a second accessory data set associated with a second accessory port of the garage door opener;send the second initial data set to the peripheral device;receive second new status data from the garage door opener;send the second new status data to the peripheral device;receive second new settings data from the peripheral device wherein the second new settings data is based on further user input at the peripheral device; andsend the second new settings data to the garage door opener, wherein a second load of the second accessory device is controlled in response to the second new settings data.
  • 9. The system of claim 6, wherein the server is further configured to: after the second accessory device is disconnected from the second accessory port and the accessory device is disconnected from the accessory port, and after the second accessory device is connected to the accessory port:receive the second initial data set from the garage door opener;store the second initial data set as the accessory data set associated with the accessory port of the garage door opener; andsend the second initial data set to the peripheral device.
  • 10. The system of claim 6, wherein: the accessory device is one selected from the group of a speaker, a fan, an extension cord reel, an environmental sensor, a park-assist laser, a light, an inflator, and an inflator cord reel, andthe load of the accessory device is one selected from the group of a speaker circuit, a motor, a power relay, a park-assist laser light, a light, and a compressor.
  • 11. A method for communication by a peripheral device with a garage door opener accessory device via a remote server, the method comprising: receiving from the remote server, by an electronic processor of the peripheral device, an initial data set including a unique identifier for the accessory device, an initial status indicating a status of the accessory device, and an initial setting indicating a setting of the accessory device;receiving, by the electronic processor, new status data for the accessory device from the remote server indicating a change in the status of the accessory device to a new status;receiving, by the electronic processor, user input indicating a requested change of the setting of the accessory device; andsending, by the electronic processor, new settings data that is based on the requested change of the setting of the accessory device to the remote server to control a load of the accessory device.
  • 12. The method of claim 11, further comprising: displaying, on a display of the peripheral device, identifying information about the accessory device based on the unique identifier, and the status of the accessory device based on the initial status, anddisplaying, on a display of the peripheral device, the new status of the accessory device upon receipt of the new status data.
  • 13. The method of claim 11, further comprising: receiving from the remote server, by the electronic processor, a second initial data set including a second unique identifier for a second accessory device, a second initial status indicating a second status of the second accessory device, and a second initial setting indicating a second setting of the second accessory device;receiving, by the electronic processor, second new status data for the second accessory device from the remote server indicating a change in the second status of the second accessory device to a second new status;receiving, by the electronic processor, second user input indicating a second requested change of the second setting of the second accessory device; andsending, by the electronic processor, second new settings data that is based on the second requested change of the setting to the remote server to control a second load of the second accessory device.
  • 14. The method of claim 11, further comprising: receiving from the remote server, by the electronic processor, a second initial data set including a second unique identifier for a second accessory device, a second initial status indicating a second status of the second accessory device, and a second initial setting indicating a second setting of the second accessory device;displaying, on a display of the peripheral device, identifying information about the accessory device based on the unique identifier, and the status of the accessory device based on the initial status; anddisplaying, on the display of the peripheral device, the identifying information about the second accessory device based on the second unique identifier and the second status of the accessory device based on the second initial status.
  • 15. The method of claim 11, wherein: the accessory device is one selected from the group of a speaker, a fan, an extension cord reel, an environmental sensor, a park-assist laser, a light, an inflator, and an inflator cord reel, and theload of the accessory device is one selected from the group of a speaker circuit, a motor, a power relay, a park-assist laser light, a light, and a compressor.
  • 16. A system for communication by a peripheral device with a garage door opener accessory device via a remote server, the system comprising: a peripheral device including an electronic processor and a memory coupled to the electronic processor, the memory storing instructions that when executed by the electronic processor configure the peripheral device to: receive, from the remote server, an initial data set including a unique identifier for the accessory device, an initial status indicating a status of the accessory device, and an initial setting indicating a setting of the accessory device;receive new status data for the accessory device from the remote server indicating a change in the status of the accessory device to a new status;receive user input indicating a requested change of the setting of the accessory device; andsend new settings data that is based on the requested change of the setting of the accessory device to the remote server to control a load of the accessory device.
  • 17. The system of claim 16, wherein the peripheral device is further configured to: display on a display of the peripheral device, identifying information about the accessory device based on the unique identifier, and the status of the accessory device based on the initial status; anddisplay on a display of the peripheral device, the new status of the accessory device upon receipt of the new status data.
  • 18. The system of claim 16, wherein the peripheral device is further configured to: receive from the remote server a second initial data set including a second unique identifier for a second accessory device, a second initial status indicating a second status of the second accessory device, and a second initial setting indicating a second setting of the second accessory device;receive second new status data for the second accessory device from the remote server indicating a change in the second status of the second accessory device to a second new status;receive second user input indicating a second requested change of the second setting of the second accessory device; andsend second new settings data that is based on the second requested change of the second setting of the second accessory device to the remote server to control a second load of the second accessory device.
  • 19. The system of claim 16, wherein the peripheral device is further configured to: receive from the remote server a second initial data set including a second unique identifier for a second accessory device, a second initial status indicating a second status of the second accessory device, and a second initial setting indicating a second setting of the second accessory device;display on a display of the peripheral device, identifying information about the accessory device based on the unique identifier, and the status of the accessory device based on the initial status; anddisplay on the display of the peripheral device the identifying information about the second accessory device based on the second unique identifier and the second status of the accessory device based on the second initial status.
  • 20. The system of claim 16, wherein: the accessory device is one selected from the group of a speaker, a fan, an extension cord reel, an environmental sensor, a park-assist laser, a light, an inflator, and an inflator cord reel, andthe load of the accessory device is one selected from the group of a speaker circuit, a motor, a power relay, a park-assist laser light, a light, and a compressor.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 15/462,305, filed on Mar. 17, 2017, now U.S. Pat. No. 9,978,265, which claims priority to U.S. Provisional Patent Application No. 62/321,188, filed on Apr. 11, 2016, the entire contents of which are incorporated herein by reference.

US Referenced Citations (661)
Number Name Date Kind
1557856 Luebbing Oct 1925 A
1682655 Armour Aug 1928 A
2096839 Barlow Oct 1937 A
2184654 Small Dec 1939 A
2585773 Hartman Feb 1952 A
2689726 Purdy Sep 1954 A
3254450 Schneider Jun 1966 A
3719005 Carli Mar 1973 A
3780949 Gavin Dec 1973 A
3996957 Goldish et al. Dec 1976 A
4064404 Willmott et al. Dec 1977 A
4338526 Martin et al. Jul 1982 A
4360801 Duhame Nov 1982 A
4366482 Remes et al. Dec 1982 A
4426639 Jessup Jan 1984 A
4433274 Duhame Feb 1984 A
4464651 Duhame Aug 1984 A
4538661 Henry et al. Sep 1985 A
4614057 Sorber Sep 1986 A
4665378 Heckethorn May 1987 A
4738052 Yoshida Apr 1988 A
4750118 Heitschel Jun 1988 A
4750295 Court et al. Jun 1988 A
4801250 Lammers Jan 1989 A
D300036 Mariol Feb 1989 S
4809633 Santos Mar 1989 A
4821024 Bayha Apr 1989 A
4835410 Bhagwat et al. May 1989 A
4840212 Wei Jun 1989 A
4847542 Clark et al. Jul 1989 A
D303394 Mariol Sep 1989 S
4904880 Yoshida Feb 1990 A
4915594 Lammers Apr 1990 A
4946096 Ballard et al. Aug 1990 A
5086385 Launey et al. Feb 1992 A
RE33898 Santos Apr 1992 E
5109222 Welty Apr 1992 A
5130977 May Jul 1992 A
5140583 May Aug 1992 A
5144153 Scheppmann, II Sep 1992 A
5168911 Gottschalk Dec 1992 A
D334269 Jones et al. Mar 1993 S
5205793 Jones Apr 1993 A
5226256 Fries et al. Jul 1993 A
D340724 Mariol Oct 1993 S
5281782 Conatser Jan 1994 A
5282337 Duhame et al. Feb 1994 A
5349980 Spiegel Sep 1994 A
5369913 Brickner Dec 1994 A
5430720 Larsson Jul 1995 A
5510975 Ziegler et al. Apr 1996 A
5576739 Murphy Nov 1996 A
5589747 Utke Dec 1996 A
5603416 Richardson et al. Feb 1997 A
5609300 Conatser Mar 1997 A
5639219 Conatser Jun 1997 A
5687897 Fa et al. Nov 1997 A
5699967 Conatser et al. Dec 1997 A
5752343 Quintus May 1998 A
5780734 Johnson Jul 1998 A
5781107 Ji Jul 1998 A
5785228 Fa et al. Jul 1998 A
5793300 Suman Aug 1998 A
5829492 Gavronsky et al. Nov 1998 A
5832974 Jou Nov 1998 A
5836639 Kleefeldt et al. Nov 1998 A
D401944 Campbell Dec 1998 S
D402997 Campbell et al. Dec 1998 S
5844328 Furst Dec 1998 A
5867005 Brown Feb 1999 A
5872513 Fitzgibbon Feb 1999 A
5877957 Bennett Mar 1999 A
5883579 Schreiner Mar 1999 A
5947814 Czeck et al. Sep 1999 A
5969637 Doppelt et al. Oct 1999 A
6002346 Bowden et al. Dec 1999 A
6014307 Crimmins Jan 2000 A
6019084 Haynes et al. Feb 2000 A
6020703 Telmet Feb 2000 A
6025785 Farris Feb 2000 A
6027148 Shoemaker Feb 2000 A
6036109 DeYoung Mar 2000 A
6036595 Vole Mar 2000 A
D422603 DeYoung Apr 2000 S
6049598 Peter et al. Apr 2000 A
6051947 Lhotak et al. Apr 2000 A
6061602 Meyer May 2000 A
6067595 Lindenstruth May 2000 A
6068203 DeYoung et al. May 2000 A
D427282 Bower et al. Jun 2000 S
D427283 Bower et al. Jun 2000 S
6070361 Paterno Jun 2000 A
D428470 Bower et al. Jul 2000 S
6084358 Dolson Jul 2000 A
6089626 Shoemaker Jul 2000 A
D429313 Bower et al. Aug 2000 S
D429314 Bower et al. Aug 2000 S
6102667 Johnson Aug 2000 A
6124822 Wu Sep 2000 A
D432138 Scarth et al. Oct 2000 S
6133703 Fitzgibbon et al. Oct 2000 A
D434048 Orschell et al. Nov 2000 S
6154150 Laubach Nov 2000 A
6166634 Dean Dec 2000 A
6181095 Telmet Jan 2001 B1
6183224 Conatser Feb 2001 B1
6184787 Morris Feb 2001 B1
6191706 Kositkun Feb 2001 B1
6192282 Smith et al. Feb 2001 B1
D439819 Bass et al. Apr 2001 S
6218956 Davis Apr 2001 B1
6218962 Fiene Apr 2001 B1
D441561 Stoppenhagen et al. May 2001 S
D441628 Bass et al. May 2001 S
6227815 Chandra et al. May 2001 B1
6229276 Fitzgibbon et al. May 2001 B1
D444365 Bass et al. Jul 2001 S
D446043 Stoppenhagen et al. Aug 2001 S
D446433 Bass et al. Aug 2001 S
6278249 Fitzgibbon Aug 2001 B1
6310548 Stephens, Jr. et al. Oct 2001 B1
6328223 Holt et al. Dec 2001 B1
6346889 Moss Feb 2002 B1
6357338 Montgomery Mar 2002 B2
6375430 Eckert et al. Apr 2002 B1
6386833 Montgomery May 2002 B1
6386969 O'Brien May 2002 B1
6431839 Gruber et al. Aug 2002 B2
6435076 Montgomery Aug 2002 B2
6443715 Mayleben et al. Sep 2002 B1
6447257 Orschell Sep 2002 B2
D464471 Burdsall et al. Oct 2002 S
D464547 Bass et al. Oct 2002 S
6460626 Carrier Oct 2002 B2
6462660 Cannon et al. Oct 2002 B1
6464531 Eckert et al. Oct 2002 B2
6469464 McCall Oct 2002 B1
D465981 Bass et al. Nov 2002 S
6484784 Weik, III et al. Nov 2002 B1
D469672 Bass et al. Feb 2003 S
6522258 Lott Feb 2003 B1
6524181 Wasson Feb 2003 B2
6531966 Krieger Mar 2003 B2
6535110 Arora Mar 2003 B1
6553336 Johnson et al. Apr 2003 B1
6560926 Gillett May 2003 B1
6561063 Mulford et al. May 2003 B1
6561233 Weems et al. May 2003 B2
6563278 Roman May 2003 B2
6563431 Miller, Jr. May 2003 B1
D475721 Harper et al. Jun 2003 S
D476061 Neal Jun 2003 S
6584102 Lu Jun 2003 B1
D477384 Williams et al. Jul 2003 S
6593856 Madau Jul 2003 B1
D478094 Scarth et al. Aug 2003 S
D478095 Reger Aug 2003 S
D478964 Williams et al. Aug 2003 S
6624605 Powder et al. Sep 2003 B1
6626380 Williams et al. Sep 2003 B1
D482699 Graf et al. Nov 2003 S
6649839 Eckert et al. Nov 2003 B2
D484571 Neal Dec 2003 S
6661340 Saylor et al. Dec 2003 B1
6661350 Rohrberg Dec 2003 B1
6669114 Williams et al. Dec 2003 B1
6670725 Fitzgibbon et al. Dec 2003 B2
D485282 Scarth et al. Jan 2004 S
6676382 Leighton et al. Jan 2004 B2
6683431 Fitzgibbon Jan 2004 B2
6701975 Neal Mar 2004 B1
D488082 Durr et al. Apr 2004 S
D489736 Harper et al. May 2004 S
6748061 Ahlstrom et al. Jun 2004 B2
6752433 Frost Jun 2004 B2
D495717 Harper et al. Sep 2004 S
6789581 Cowan et al. Sep 2004 B2
6792321 Sepe, Jr. Sep 2004 B2
D497917 Harper et al. Nov 2004 S
6819071 Graham et al. Nov 2004 B2
D499744 Orschell et al. Dec 2004 S
D500331 Crisler, III et al. Dec 2004 S
D500332 Crisler, III et al. Dec 2004 S
D501146 Durr et al. Jan 2005 S
6853313 Newcomer Feb 2005 B2
6856618 Strathmeyer Feb 2005 B2
6860065 Griffin et al. Mar 2005 B2
D503898 Durr et al. Apr 2005 S
6876633 Strathmeyer Apr 2005 B2
6878889 Horst et al. Apr 2005 B1
D504903 Crisler, III et al. May 2005 S
D505088 Durr et al. May 2005 S
6894613 Stab May 2005 B2
6897406 Crisler, III et al. May 2005 B2
D505872 Durr et al. Jun 2005 S
6911898 Chung Jun 2005 B2
D507279 Harper et al. Jul 2005 S
6917288 Kimmell et al. Jul 2005 B2
6918291 Durr et al. Jul 2005 B2
6920718 Horn et al. Jul 2005 B2
D508930 Crisler, III et al. Aug 2005 S
6946973 Yanda Sep 2005 B1
D512618 Bass et al. Dec 2005 S
6975203 Brookbank Dec 2005 B2
6982652 Laird et al. Jan 2006 B2
6989760 Dierking et al. Jan 2006 B2
D514412 Lawrence et al. Feb 2006 S
6998977 Gregori et al. Feb 2006 B2
7000251 DeYoung Feb 2006 B2
7002312 Wojciak, Jr. Feb 2006 B2
7005994 King Feb 2006 B2
D517934 Durr et al. Mar 2006 S
7015790 Schrott et al. Mar 2006 B1
7016899 Stern et al. Mar 2006 B1
7017887 Verakis Mar 2006 B1
D519693 Ricker et al. Apr 2006 S
7031325 Williams Apr 2006 B1
D520687 Ricker et al. May 2006 S
D521694 Ricker et al. May 2006 S
7040355 Wu May 2006 B2
7042492 Spinelli May 2006 B2
7047087 Hantke et al. May 2006 B2
7049980 Chemelewski May 2006 B1
7057547 Olmsted Jun 2006 B2
7066406 Williams et al. Jun 2006 B2
D524999 Ray Jul 2006 S
D525432 Feldmann et al. Jul 2006 S
7072688 Bodnar Jul 2006 B2
D526781 Feldmann et al. Aug 2006 S
D528297 Feldmann et al. Sep 2006 S
7114178 Dent et al. Sep 2006 B2
7119681 Eskildsen Oct 2006 B2
7126084 DeYoung Oct 2006 B2
7140179 Bass et al. Nov 2006 B2
7140598 Verakis et al. Nov 2006 B2
7145470 Hoermann Dec 2006 B2
7146345 Weik, III et al. Dec 2006 B2
7153418 Mauro, Sr. et al. Dec 2006 B2
7155213 Almeda Dec 2006 B1
D534698 Ray Jan 2007 S
D536007 Bass et al. Jan 2007 S
7161319 Ergun et al. Jan 2007 B2
7161498 Fan Jan 2007 B1
D536348 Bass Feb 2007 S
D536707 Bass et al. Feb 2007 S
D536708 Bass Feb 2007 S
7176656 Feldmann Feb 2007 B2
7183933 Dzurko et al. Feb 2007 B2
7194412 Mays Mar 2007 B2
7197278 Harwood Mar 2007 B2
7207142 Mullet Apr 2007 B2
7207174 Montgomery et al. Apr 2007 B2
7208897 Hotto et al. Apr 2007 B2
D542538 Klein et al. May 2007 S
D543361 Klein et al. May 2007 S
7224275 Fitzgibbon May 2007 B2
7262572 Fitzgibbon Aug 2007 B2
7265508 Karasek et al. Sep 2007 B1
7270142 Acosta Sep 2007 B2
7280097 Chen Oct 2007 B2
D557898 Feldmann et al. Dec 2007 S
7302775 Olmsted Dec 2007 B2
7320345 Matthews et al. Jan 2008 B2
7337016 Hantke et al. Feb 2008 B2
7342368 Roman Mar 2008 B2
7345574 Fitzgibbon Mar 2008 B2
7382063 Mullet et al. Jun 2008 B2
7431346 Frost et al. Oct 2008 B2
D580514 Bass et al. Nov 2008 S
D581483 Bass et al. Nov 2008 S
7464035 Funk et al. Dec 2008 B2
7468676 Styers et al. Dec 2008 B2
7475424 Lingafelt Jan 2009 B2
7498936 Maeng Mar 2009 B2
7505889 Salmonsen Mar 2009 B2
7515063 Brundula Apr 2009 B2
7518326 Shier et al. Apr 2009 B2
7532709 Styers et al. May 2009 B2
7537027 Bass et al. May 2009 B2
7556478 Klein et al. Jul 2009 B2
D601173 Wilmes et al. Sep 2009 S
7586871 Hamilton Sep 2009 B2
7602283 John Oct 2009 B2
D604200 Fassold et al. Nov 2009 S
D605919 Schneider et al. Dec 2009 S
D605920 Schneider et al. Dec 2009 S
7635966 Butler Dec 2009 B2
D611962 Schneider et al. Mar 2010 S
7673075 Masiewicz Mar 2010 B1
7677476 Burdsall et al. Mar 2010 B2
7681032 Peled Mar 2010 B2
7683794 Contreras Mar 2010 B2
7688014 Tang Mar 2010 B2
7710284 Dzurko et al. May 2010 B2
7739647 Athani Jun 2010 B2
D620500 Brandt et al. Jul 2010 S
7755223 Fitzgibbon Jul 2010 B2
D622739 Bass et al. Aug 2010 S
7778207 Light Aug 2010 B2
7778604 Bauman Aug 2010 B2
7786619 Crusius et al. Aug 2010 B2
7787400 Light Aug 2010 B2
7812742 Pankowski Oct 2010 B2
7813114 Stewart et al. Oct 2010 B2
7840186 Franson Nov 2010 B2
7860033 Light Dec 2010 B2
7869582 Styers et al. Jan 2011 B2
7873279 Alameh et al. Jan 2011 B2
7882540 Lingafelt Feb 2011 B2
7884869 Shurboff et al. Feb 2011 B2
7912508 Lee et al. Mar 2011 B2
7913889 Lawrence Mar 2011 B2
D636409 Wilmes et al. Apr 2011 S
D636792 Parks et al. Apr 2011 S
D637211 Parks et al. May 2011 S
7940300 Spinelli May 2011 B2
7974536 Yu et al. Jul 2011 B2
7983451 Super et al. Jul 2011 B2
7996231 Mays Aug 2011 B2
8004555 Oswald et al. Aug 2011 B2
8007110 Dunn et al. Aug 2011 B2
8015997 Bass et al. Sep 2011 B2
8019194 Morrison Sep 2011 B2
8023478 Cam-Wing et al. Sep 2011 B2
8026946 Nassimi Sep 2011 B2
8027277 Light Sep 2011 B2
8030796 Fitzgibbon et al. Oct 2011 B2
8040217 Fitzgibbon Oct 2011 B2
8058841 Chander et al. Nov 2011 B2
8059897 Xu et al. Nov 2011 B2
8061573 Kramer Nov 2011 B2
8063592 Shier et al. Nov 2011 B2
8066205 Bass et al. Nov 2011 B2
8068879 Bodas et al. Nov 2011 B2
8077054 Aarons Dec 2011 B1
8086781 Ananny Dec 2011 B2
8095191 Gorsica et al. Jan 2012 B2
8102844 Nelson Jan 2012 B1
8103118 Foo et al. Jan 2012 B2
8111133 Rodriguez Feb 2012 B2
8132929 Harton et al. Mar 2012 B2
8162486 Borger et al. Apr 2012 B2
8174274 Lawrence et al. May 2012 B2
8175591 Fitzgibbon May 2012 B2
8179473 Harmon et al. May 2012 B2
8180336 Wesby May 2012 B2
8218739 Styers et al. Jul 2012 B2
8223217 Shurboff et al. Jul 2012 B2
8223235 John Jul 2012 B2
8224303 White Jul 2012 B2
8225458 Hoffberg Jul 2012 B1
8231247 Olmsted Jul 2012 B2
8237383 Shier et al. Aug 2012 B2
8237769 Crenshaw et al. Aug 2012 B2
8267666 Gruber et al. Sep 2012 B2
8300079 Tian Oct 2012 B2
8311490 Witkowski Nov 2012 B2
8319751 Challener et al. Nov 2012 B2
8325040 Nassimi Dec 2012 B2
8330570 Martin et al. Dec 2012 B2
8330573 Crucs Dec 2012 B2
8373555 Redden et al. Feb 2013 B1
8373742 Wheatley et al. Feb 2013 B2
8375913 Kwiecinski et al. Feb 2013 B2
8387649 Parks et al. Mar 2013 B2
8410930 Karasek et al. Apr 2013 B2
8419379 Bass et al. Apr 2013 B2
8421591 Karasek Apr 2013 B2
8430184 Bass et al. Apr 2013 B2
8433076 Zurek et al. Apr 2013 B2
D682651 McRoberts et al. May 2013 S
D682652 McRoberts et al. May 2013 S
8446389 Challener et al. May 2013 B2
8466808 Ghatak Jun 2013 B2
8494224 Super et al. Jul 2013 B2
8494861 Robb et al. Jul 2013 B2
8503712 Ahmed et al. Aug 2013 B2
8504574 Dvorak et al. Aug 2013 B2
8542093 Rodriguez Sep 2013 B2
8558885 Fitzgibbon Oct 2013 B2
8564619 Alberth, Jr. et al. Oct 2013 B2
8576179 Walliser et al. Nov 2013 B2
8576372 Ji et al. Nov 2013 B2
8584401 Planck et al. Nov 2013 B2
8587404 Laird Nov 2013 B2
8589968 Alberth et al. Nov 2013 B2
8593471 Huang et al. Nov 2013 B2
8595360 Hill et al. Nov 2013 B2
8620841 Filson Dec 2013 B1
8626593 Goldfinger Jan 2014 B2
8637781 Derengowski et al. Jan 2014 B2
8638951 Zurek et al. Jan 2014 B2
8643467 Chutorash et al. Feb 2014 B2
8653962 Maeng Feb 2014 B2
8682388 Vuppu et al. Mar 2014 B2
8692943 Tsuchihashi et al. Apr 2014 B2
8717443 Kaehler et al. May 2014 B2
8726324 Tirpak et al. May 2014 B2
8730342 Shurboff et al. May 2014 B2
8760406 Herrmann et al. Jun 2014 B2
8761401 Sprunk et al. Jun 2014 B2
8761815 Xu et al. Jun 2014 B2
8762668 Taguchi Jun 2014 B2
8766119 Cotha et al. Jul 2014 B2
8766768 Martin et al. Jul 2014 B2
8767533 Lu Jul 2014 B2
8786435 Barnett Jul 2014 B2
8786759 Wang et al. Jul 2014 B2
8788676 Alameh et al. Jul 2014 B2
8797274 Challener et al. Aug 2014 B2
8798671 Grubb Aug 2014 B2
8810433 Aarons Aug 2014 B1
8810434 Aarons Aug 2014 B2
8817951 Goffin et al. Aug 2014 B2
8818461 Cybart et al. Aug 2014 B2
8841988 Summerford Sep 2014 B2
8842180 Kasmir Sep 2014 B1
8842885 Wang et al. Sep 2014 B2
8844840 Lawrence Sep 2014 B2
8866583 Ordaz Oct 2014 B2
8872915 Scalisi Oct 2014 B1
8878646 Chutorash et al. Nov 2014 B2
8890823 Alameh et al. Nov 2014 B2
8896533 Sonada et al. Nov 2014 B2
8896753 Oozeki et al. Nov 2014 B2
8897033 Slipy et al. Nov 2014 B2
8908880 Zurek et al. Dec 2014 B2
8922356 Lambert Dec 2014 B2
8922696 Shibata et al. Dec 2014 B2
8933877 Alameh Jan 2015 B2
8941745 Tajima Jan 2015 B2
8953082 Shimotono et al. Feb 2015 B2
D724923 McRoberts et al. Mar 2015 S
8994496 Freese et al. Mar 2015 B2
9009158 Tonegawa et al. Apr 2015 B2
9024958 Nicholson et al. May 2015 B2
9077716 Myers Jul 2015 B2
9099021 Yu Aug 2015 B2
9110635 Knox et al. Aug 2015 B2
9122254 Cate et al. Sep 2015 B2
9134887 Cudak et al. Sep 2015 B2
9141099 Cate et al. Sep 2015 B2
9141234 Nakamura et al. Sep 2015 B2
9161000 Zhang et al. Oct 2015 B2
9163845 Carlozzi Oct 2015 B1
9169684 Fan et al. Oct 2015 B2
9185275 Osborne et al. Nov 2015 B2
9189952 Chutorash et al. Nov 2015 B2
9191467 Triess Nov 2015 B2
9196948 Yamamoto et al. Nov 2015 B2
9197760 Karakaya et al. Nov 2015 B2
9213659 Beaumont et al. Dec 2015 B2
9230378 Chutorash Jan 2016 B2
9235830 VanBlon et al. Jan 2016 B1
9261713 Weksler et al. Feb 2016 B1
D750461 McRoberts et al. Mar 2016 S
9273508 Manaras Mar 2016 B2
9277175 Sano Mar 2016 B2
9284771 Doherty Mar 2016 B1
9293925 Heng et al. Mar 2016 B2
9297464 Wang Mar 2016 B1
9304591 Cromer et al. Apr 2016 B2
9310886 McKenna et al. Apr 2016 B2
9328834 Wang May 2016 B2
9333945 Lin May 2016 B2
9351271 Yang et al. May 2016 B2
9355237 Peterson et al. May 2016 B2
9367125 Gao et al. Jun 2016 B2
9376851 Cate et al. Jun 2016 B2
9405360 Ang Aug 2016 B2
9406360 Song Aug 2016 B2
9458657 French et al. Oct 2016 B2
9559545 Liu Jan 2017 B2
9600950 Chutorash Mar 2017 B2
9728020 Freese Aug 2017 B2
9978265 McNabb May 2018 B2
20020014954 Fitzgibbon et al. Feb 2002 A1
20020108671 Campbell et al. Aug 2002 A1
20020137543 Murnaghan Sep 2002 A1
20020140576 Simon Oct 2002 A1
20020180600 Kirkland et al. Dec 2002 A1
20020183008 Menard Dec 2002 A1
20030025470 Fitzgibbon et al. Feb 2003 A1
20030063715 Peplinski Apr 2003 A1
20030063723 Booth et al. Apr 2003 A1
20030160705 Guertz Aug 2003 A1
20030211864 Bodnar Nov 2003 A1
20040080424 Perry et al. Apr 2004 A1
20040097264 Bodnar May 2004 A1
20040099853 Verakis May 2004 A1
20040143766 Fitzgibbon et al. Jul 2004 A1
20040164693 Murray Aug 2004 A1
20040194387 Horn et al. Oct 2004 A1
20040210327 Robb Oct 2004 A1
20040212335 Fitzgibbon Oct 2004 A1
20040212498 Peterson et al. Oct 2004 A1
20040216379 Gioia Nov 2004 A1
20040239482 Fitzgibbon Dec 2004 A1
20040239496 Fitzgibbon Dec 2004 A1
20040257236 Klemish Dec 2004 A1
20050012488 Fitzgibbon Jan 2005 A1
20050012631 Gregori et al. Jan 2005 A1
20050057100 Crusius et al. Mar 2005 A1
20050057340 Fitzgibbon Mar 2005 A1
20050109748 Albrecht et al. May 2005 A1
20050134426 Mullet Jun 2005 A1
20050176400 Mullet Aug 2005 A1
20050184854 Mullet Aug 2005 A1
20050207616 Brad et al. Sep 2005 A1
20050212681 Dzurko Sep 2005 A1
20050252613 Evans Nov 2005 A1
20050253731 Fitzgibbon Nov 2005 A1
20050269984 Piechowiak et al. Dec 2005 A1
20050285553 Gregori Dec 2005 A1
20060061313 Fitzgibbon et al. Mar 2006 A1
20060103503 Rodriguez May 2006 A1
20060108571 Verakis et al. May 2006 A1
20060158339 Brundula Jul 2006 A1
20060171453 Rohlfing et al. Aug 2006 A1
20060179671 Ghatak Aug 2006 A1
20060220785 Ferdman Oct 2006 A1
20060220830 Bennett Oct 2006 A1
20060238337 Minassian Oct 2006 A1
20060255931 Hartsfield et al. Nov 2006 A1
20070033932 Montgomery et al. Feb 2007 A1
20070046232 Mullet Mar 2007 A1
20070080933 Chen Apr 2007 A1
20070080934 Chen Apr 2007 A1
20070189911 Holt Aug 2007 A1
20070229218 Nassimi Oct 2007 A1
20070229220 Nassimi Oct 2007 A1
20070235149 Hillar Oct 2007 A1
20070252545 Callentine Nov 2007 A1
20070253849 Holt Nov 2007 A1
20070269318 Bass Nov 2007 A1
20070273472 Gregori Nov 2007 A1
20080079570 Fineman et al. Apr 2008 A1
20080106370 Perez May 2008 A1
20080194291 Martin Aug 2008 A1
20080280551 Ashworth Nov 2008 A1
20090124189 Barber May 2009 A1
20090229190 Daniel-Wayman et al. Sep 2009 A1
20090230768 Daniel-Wayman et al. Sep 2009 A1
20090231093 Keller, Jr. et al. Sep 2009 A1
20090231121 Daniel-Wayman et al. Sep 2009 A1
20090231427 Fitzgibbon et al. Sep 2009 A1
20090231434 Fitzgibbon et al. Sep 2009 A1
20090313898 Manaras Dec 2009 A1
20100058669 Cole Mar 2010 A1
20100090796 Perez Apr 2010 A1
20100108627 Lupinacci et al. May 2010 A1
20100127882 Sitarski May 2010 A1
20100156182 Mertel et al. Jun 2010 A1
20100159846 Witkowski Jun 2010 A1
20100166404 Lombardi Jul 2010 A1
20100245040 Greves Sep 2010 A1
20100258631 Rueblinger et al. Oct 2010 A1
20100271202 Lin Oct 2010 A1
20100315510 Dunn et al. Dec 2010 A1
20100328219 Lombardi et al. Dec 2010 A1
20110063101 Cristoforo Mar 2011 A1
20110199234 Butler, III et al. Aug 2011 A1
20110273378 Alameh et al. Nov 2011 A1
20110278759 Sohn et al. Nov 2011 A1
20110311052 Myers Dec 2011 A1
20120020638 Morrison Jan 2012 A1
20120036437 Alberth, Jr. et al. Feb 2012 A1
20120059969 Chou Mar 2012 A1
20120133485 Nassimi May 2012 A1
20120133527 Lin May 2012 A1
20120138189 Lunn Jun 2012 A1
20120172027 Partheesh Jul 2012 A1
20120188077 Sawyer Jul 2012 A1
20120139701 Crucs Sep 2012 A1
20120235785 Alberth et al. Sep 2012 A1
20120242840 Nakfour et al. Sep 2012 A1
20120258668 Rokusek et al. Oct 2012 A1
20120260575 Monaco Oct 2012 A1
20120327180 Thorson et al. Dec 2012 A1
20130055641 Chen Mar 2013 A1
20130063259 Kramer et al. Mar 2013 A1
20130081329 French et al. Apr 2013 A1
20130151977 Arteaga-King Jun 2013 A1
20130152129 Alberth et al. Jun 2013 A1
20130160036 Narasimhan et al. Jun 2013 A1
20130179238 Warner Jul 2013 A1
20130190052 Lundell Jul 2013 A1
20130202130 Zurek et al. Aug 2013 A1
20130202132 Zurek et al. Aug 2013 A1
20130222137 Alameh et al. Aug 2013 A1
20130286232 Sheh Oct 2013 A1
20130293670 Ayoub et al. Nov 2013 A1
20130308835 Thorson Nov 2013 A1
20130322568 Pais et al. Dec 2013 A1
20130326595 Myers Dec 2013 A1
20140007505 Manaras Jan 2014 A1
20140009461 Dai et al. Jan 2014 A1
20140022108 Alberth, Jr. et al. Jan 2014 A1
20140033773 Myers Feb 2014 A1
20140078660 Dondzik et al. Mar 2014 A1
20140085492 Petrescu Mar 2014 A1
20140115360 Zhou et al. Apr 2014 A1
20140117757 Tsui et al. May 2014 A1
20140118111 Saladin May 2014 A1
20140118240 Pais May 2014 A1
20140118354 Pais et al. May 2014 A1
20140122729 Hon May 2014 A1
20140125499 Cate May 2014 A1
20140145824 Chutorash May 2014 A1
20140176387 Coles et al. Jun 2014 A1
20140181338 Loh Jun 2014 A1
20140184854 Musatenko Jul 2014 A1
20140198466 Sawadski et al. Jul 2014 A1
20140208128 Gyorfi et al. Jul 2014 A1
20140239781 Allore et al. Aug 2014 A1
20140240464 Lee Aug 2014 A1
20140240469 Lee Aug 2014 A1
20140241614 Lee Aug 2014 A1
20140259927 MaNally Sep 2014 A1
20140266593 Nye et al. Sep 2014 A1
20140267716 Child et al. Sep 2014 A1
20140268459 Robinson et al. Sep 2014 A1
20140282923 Narayan et al. Sep 2014 A1
20140299345 McRoberts et al. Oct 2014 A1
20140320263 Fan Oct 2014 A1
20140325124 Antonakopoulos Oct 2014 A1
20140339329 Lawrence et al. Nov 2014 A1
20140351617 Connell et al. Nov 2014 A1
20140360744 Lawrence Dec 2014 A1
20140372198 Goldfinger Dec 2014 A1
20150015369 Lamb Jan 2015 A1
20150087288 Dharawat et al. Mar 2015 A1
20150148983 Fitzgibbon May 2015 A1
20150179011 Kramer et al. Jun 2015 A1
20150193999 Freese et al. Jul 2015 A1
20150205363 Wu Jul 2015 A1
20150275564 Rosenthal et al. Oct 2015 A1
20150281658 Lee et al. Oct 2015 A1
20150308425 Skotty Oct 2015 A1
20150312531 Samad et al. Oct 2015 A1
20150339031 Zeinstra Nov 2015 A1
20150351145 Burks Dec 2015 A1
20160014330 Deng et al. Jan 2016 A1
20160018798 Jiang et al. Jan 2016 A1
20160027262 Skotty et al. Jan 2016 A1
20160053699 Ozkan Feb 2016 A1
20160071348 Chutorash et al. Mar 2016 A1
20160093180 Fitzgibbon et al. Mar 2016 A1
20160117879 Chutorash et al. Apr 2016 A1
20160148494 Kim May 2016 A1
20160189513 Sloo Jun 2016 A1
20160194912 Fitzgibbon et al. Jul 2016 A1
20160210844 Kim Jul 2016 A1
20160281411 Calagaz, Jr. Sep 2016 A1
20160288647 Baur Oct 2016 A1
20170169636 Piche Jun 2017 A1
20170175433 Kang Jun 2017 A1
20170294113 McNabb Oct 2017 A1
20170295658 Whitmire Oct 2017 A1
20180112454 Preus Apr 2018 A1
20180151006 Huggins May 2018 A1
Foreign Referenced Citations (34)
Number Date Country
2589760 Sep 1999 CA
2590140 Sep 1999 CA
2369939 Oct 2000 CA
2390885 Jan 2003 CA
8409497 Aug 1984 DE
3420677 Dec 1985 DE
8802513 Apr 1988 DE
4028190 Mar 1992 DE
19649054 May 1998 DE
0881349 Dec 1998 EP
0882866 Dec 1998 EP
0995619 Apr 2000 EP
1006310 Jun 2000 EP
1790814 May 2007 EP
1985787 Oct 2008 EP
2608438 Jun 2013 EP
2645638 Oct 2013 EP
2803545 Nov 2014 EP
2238578 Jun 1991 GB
2004062548 Feb 2004 JP
2004162318 Jun 2004 JP
20100091821 Aug 2010 KR
WO9939505 Aug 1999 WO
WO0135577 May 2001 WO
WO01093220 Dec 2001 WO
WO2005104342 Nov 2005 WO
WO2007028323 Mar 2007 WO
WO2007047720 Apr 2007 WO
WO2007082514 Jul 2007 WO
WO2012092706 Jul 2012 WO
WO2012171756 Dec 2012 WO
WO2014146269 Sep 2014 WO
WO2014158508 Oct 2014 WO
WO2015031812 Mar 2015 WO
Non-Patent Literature Citations (37)
Entry
Doorking Inc., “Models 6050 and 6100 Vehicular Swing Gate Operator's Owner Manual,” 2000 (53 pages).
Ryobi, “18 Volt, 1 Hour Charger P110 Operators Manual,” downloaded from <http://manuals.ryobitools.com/documents/2101> Aug. 28, 2015 (10 pages).
Ryobi, “GD200 Garage Door Opener Operator's Manual,” published Feb. 18, 2016 (156 pages).
Youtube, “Ryobi Garage Door Opener,” <https://www.youtube.com/watch?v=RMu0Kac79oE> published Apr. 4, 2016 (1 page).
International Search Report and Written Opinion for Application No. PCT/US2017/022998 dated Jun. 9, 2017 (9 pages).
Stuart, “New Ryobi Garage Door Opener and Modular Accessory System,” <http://toolguyd.com/ryobi-garage-door-opener-modular-system/> 2016, (29 pages).
Image of Ryobi Garage Door Opener Booth at Mar. 17, 2016 Sales Show.
Ryobi, “GD200 Ultra-Quiet Garage Door Opener,” Media Sheet Mar. 25, 2017 (2 pages).
Description of Video Published to YouTube.com of Ryobi ultra-quiet garage door opener on Apr. 4, 2016, and Provided to Third Parties Mar. 25, 2016 <https://www.youtube.com/watch?v=7bExdu51oEw>.
Ryobi Media Images Provided to Third Parties Mar. 25, 2016 (1 page).
Al-Ali et al., “Java-Based Home Automation System,” IEEE Transactions on Consumer Electronics, vol. 50, Issue: 2, May 2004, pp. 498-504.
Borodulkin et al., “3D Virtual, Smart Home User Interface,” International Symposium on Virtual and Intelligent Measurement Systems, May 2002 pp. 1-5.
Cena et al., “A Protocol for Automatic Node Discovery in CANopen Networks,” IEEE Transactions on Industrial Electronics, vol. 50, No. 3, Jun. 2003.
D. Snoonian, “Smart Buildings,” IEEE Spectrum, Aug. 2003, pp. 18-23.
Den Hartog et al., “Convergence of Residential Gateway Technology”, IEEE Communications Magazine, pp. 138-143 vol. 42, Issue: 5, May 2004.
J. C. Lupo, “Smart Sensorweb,” Battlespace Digitization and Network Centric Warfare, Proceedings of the SPIE, vol. 4396, 2001.
Jacobson, “Lowe's Iris to Launch First Ever UL-Compliant Z-Wave Garage Door Controller, <” http://www.cepro.com/article/lowes_iris_to_launch_first_ever_ul_compliant_zwave_garage_door_controller/> Dec. 2013 ( 3 pages).
Kensetsu Bousai, “Remote Manipulation Shutter,” Apr. 1990 pp. 32-34.
Lee et al., “Network Configuration Technique for Home Appliances Based on LnCP,” IEEE Transactions Consumer Electronics, vol. 49, No. 2, pp. 367-374, 2003.
Lee et al., “Network-Based Fire-Detection System via Controller Area Network for Smart Home Automation”, IEEE Consumer Electronics Society, Nov. 2004.
Marples et al., “The Open Services Gateway Initiative: An Introductory Overview”, IEEE Communications Magazine, pp. 110-114, 2001.
Nunes et al., “An Architecture for a Home Automation System,” IEEE International Conference on Electronic Circuits System, pp. 259-262, 1998.
Odajima et al., “Parking Assistance Support System,” Report No. 22, Dec. 2000, pp. 36-42.
R. Harper, “Inside the Smart Home,” Springer-Verlag London Limited, 2003.
S. Chemishikan, “Building Smart Services for Smart Home,” Proceedings of the IEEE 4th International Workshop on Networked Appliances, pp. 215-224, 2002.
Sarijari et al., “Wireless Home Security and Automation System Utilizing ZigBee Based Multi-Hop Communication,” Proceedings of the IEEE 2208 6th National Conference on Telecommunication Technologies and IEEE 2008 2nd Malaysia Conference on Photonics, Aug. 26-27, 2008.
Sommer, Antriebe & Funk, “Drahtlose Kommunikation Und Information” 2007 (24 pages).
Sriskanthan et al., “Bluetooth Based Home Automation System,” Microprocessors and Microsystems, vol. 26, pp. 281-289, 2002.
Tajika et al., “Networked Home Appliance System using Bluetooth Technology Integrating Appliance Control/Monitoring with Internet Service”, IEEE Transactions on Consumer Electronics, pp. 1043-1048, vol. 49, Issue: 4, Nov. 2003.
Valtchev et al., “Service Gateway Architecture for a Smart Home,” IEEE Communications Magazine, Apr. 2002.
Chowdhury et al., “Distributed Processing in the Home using a PC with a Wireless Speech Interface,” IEEE International Conference on Acoustics, Speech, and Signal Processing. Proceedings, 1999, pp. 2363-2366.
Rao et al., “iMobile: A Proxy-Based Platform for Mobile Services,” Wireless Mobile Internet, 2001 (9 pages).
Spinellis et al., “The Information Furnace: User Friendly Home Control,” Proceedings of the 3rd International System Administration and Networking Conference SANE 2002, pp. 145-174.
Wang et al., “The SIMBA User Alert Service Architecture for Dependable Alert Delivery,” IEEE Xplore Conference: Conference: Dependable Systems and Networks, 2001 pp. 1-11.
Wang et al., “Towards Dependable Home Networking: An Experience Report,” Technical Report, Microsoft Research Microsoft Corporation, 2000, (7 pages).
White, “How Computers Work,” Que, 1999 pp. 210-213.
United States Patent Office Action for U.S. Appl. No. 15/976,160 dated Aug. 9, 2018, 6 pages.
Related Publications (1)
Number Date Country
20180247524 A1 Aug 2018 US
Provisional Applications (1)
Number Date Country
62321188 Apr 2016 US
Continuations (1)
Number Date Country
Parent 15462305 Mar 2017 US
Child 15964965 US