Mobile premises automation platform

Information

  • Patent Grant
  • 11258625
  • Patent Number
    11,258,625
  • Date Filed
    Thursday, November 17, 2016
    7 years ago
  • Date Issued
    Tuesday, February 22, 2022
    2 years ago
Abstract
A system including a drone or unmanned vehicle configured to perform surveillance of a premises. The drone surveillance includes autonomous navigation and/or remote or optional piloting around the premises. The drone includes a controller coupled to a plurality of sensors configured to collect drone data and security data at the premises, wherein the controller is configured to generate control data for the drone and the premises using the drone data and the security data. A remote device coupled to the drone includes a user interface configured to present the drone data, the security data, and/or the control data.
Description
BACKGROUND

There exists a need for systems, devices, and methods that extend the reach and capabilities of premises security and automation systems without requiring large numbers of additional sensors and devices to be added to the systems, and without requiring extensive modifications to the system.


INCORPORATION BY REFERENCE

Each patent, patent application, and/or publication mentioned in this specification is herein incorporated by reference in its entirety to the same extent as if each individual patent, patent application, and/or publication was specifically and individually indicated to be incorporated by reference.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a reference to FIGS. 1A-1D, collectively.



FIG. 1A is a block diagram of a premises automation and security system that includes the premises automation drone (PAD) along with connected devices and security devices and corresponding system components, under an embodiment.



FIG. 1B is a block diagram of a premises automation and security system that includes the premises automation drone (PAD) and corresponding docking station along with connected devices and security devices and corresponding system components, under an embodiment.



FIG. 1C is a block diagram of a premises automation drone (PAD), under an embodiment.



FIG. 1D is a schematic diagram of the electronic components of the PAD, under an embodiment.



FIG. 2 is a block diagram of a connected device system showing components of the connected device gateway at the premises and the session server in the cloud-based server environment, under an embodiment.



FIG. 3 is a block diagram of an example connected device system including a bridge server, under an embodiment.



FIG. 4 is a block diagram of a system comprising a bridge server in communication with devices and an application server and gateway server, under an embodiment.



FIG. 5 is an example connected device flow diagram, under an embodiment.



FIG. 6 is another example connected device flow diagram, under an embodiment.



FIG. 7 is yet another example connected device flow diagram, under an embodiment.



FIG. 8 is a block diagram of a system including the Cloud Hub, under an embodiment.



FIG. 9 is a block diagram of a system including a Cloud Hub and Virtual Gateway showing the premises, service provider, and mobile environments, under an embodiment.



FIG. 10 is a flow diagram for device installation and bootstrapping, under an embodiment.



FIG. 11 is a block diagram of the LWGW class structure, under an embodiment.



FIG. 12 is a block diagram of the integrated security system, under an embodiment.



FIG. 13 is a block diagram of components of the integrated security system, under an embodiment.



FIG. 14 is a block diagram of the gateway including gateway software or applications, under an embodiment.



FIG. 15 is a block diagram of components of the gateway, under an embodiment.





DETAILED DESCRIPTION

The present invention relates generally to systems and methods for extending the capabilities of a premises automation and security system. More particularly, it relates to systems and methods for providing a mobile premises device or platform configured to autonomously traverse or patrol the premises and capture data (e.g., audio, video, etc.) in response to events and in accordance with rules corresponding to the premises.


A system including a drone or unmanned vehicle configured to perform surveillance of a premises. The drone surveillance includes autonomous navigation and/or remote or optional piloting around the premises. The drone includes a controller coupled to a plurality of sensors configured to collect drone data and security data at the premises, wherein the controller is configured to generate control data for the drone and the premises using the drone data and the security data. A remote device coupled to the drone includes a user interface configured to present the drone data, the security data, and/or the control data.


Although this detailed description contains many specifics for the purposes of illustration, anyone of ordinary skill in the art will appreciate that many variations and alterations to the following details are within the scope of the invention. Thus, the following illustrative embodiments of the invention are set forth without any loss of generality to, and without imposing limitations upon, the claimed invention. Note that whenever the same reference numeral is repeated with respect to different figures, it refers to the corresponding structure in each such figure.


Generally, embodiments include a premises surveillance system comprising a drone. In this example, the premises (e.g., a commercial, industrial, building, facility, interior areas, exterior areas, etc.) includes internal and/or external areas subject to surveillance. The buildings can be of any configuration, including open spaces such as a warehouse, to compartmentalized facilities such as rooms or offices. The surveillance system includes one or more drones and one or more drone stations. As used herein, a “drone” includes unmanned vehicles, unmanned autonomous vehicles, autonomous vehicles, remotely controlled vehicles, autonomous/remotely controlled vehicles, radio-controlled vehicles, and optionally-controlled vehicles, but may not be so limited. The drone may be programmed in advance using weigh points and simultaneously be controlled with a radio control transmitter so that real time manipulation and control of the drone may occur based on particular operation of the drone that is desired.


The system of an embodiment also includes drone stations configured to be bases and/or charging stations for one or more of drones. The system also includes a gateway and/or a server that is in communication with the drones via one or more data or communication networks (e.g., broadband, cellular, WiFi, etc.) as described in detail herein. The gateway/server receives signals from the drones, and the signals include sensor or surveillance data as well as drone data. The gateway of an embodiment includes the drone base station but is not so limited.


The data or communication network of an embodiment includes any combination of wired and/or wireless channels capable of carrying data traffic, and may span multiple carriers, and a wide geography. In one embodiment, the data network includes a broadband network such as the Internet. In another embodiment, the data network may include one or more wireless links, and may include a wireless data network (e.g., WiFi, cellular network, etc.). The network of an embodiment includes additional components (e.g., access points, routers, switches, DSL modems, etc.) interconnecting the server with the data network, but is not so limited.


The drones can carry one or more sensors/detectors comprising numerous different types of sensor/detectors. One example sensor type includes a video camera that captures camera or video data and provides the captured data (e.g., recorded, live, etc.) to the gateway/server. Examples of other types of sensors include microphones to receive or detect audio data. Other sensors can include but are not limited to sensors to capture motion, vibration, pressure, and heat, to name a few, in an appropriate combination to detect a true condition at a facility. The sensors may communicate wirelessly to the gateway/server or communicate through an on-board computer on the drone. In general, sensors capture data (e.g., audio, video, environmental, data of drone systems/subsystems, etc.) and send signals to the gateway/server. Based on the information received from the onboard sensors, the gateway/server determines whether to trigger and/or send alarm messages to the remote server or device.


An example drone of an embodiment includes at least one processor coupled to at least one memory device. The drone also includes one or more sensors and one or more interfaces to receive sensor data from the sensors. The drone also includes propulsion control electronics and one or more electric motors to control one or more drive devices (e.g., propellers, wheels, tracks, rudders, etc.). The drone system electronics are responsive to signals received by the processor from the gateway/server.


When inside of a facility, the drone is guided through corridors or other areas to reach the location of interest under operator control and/or autonomously by following a programmed route and applying guidance processing to allow the drone to follow the pattern, i.e., without an operator at security monitoring station guiding all of the drone movements.


The drone is launched, and as the drone flies the programmed pattern the onboard sensors collect sensor data. The gateway/server and/or a central monitoring station receives signals from various sensors (e.g., camera, microphone, etc.) on the drones. The server applies analytics to the sensor data by comparing for instance, current images captured by the drone at a particular location to stored images previously taken at the same location to detect features in the current images that are different than expected based on the stored images.


In the case where an unacceptable level of feature differences is detected that could be an indication of detected movement of a person or thing, within the field of view of the images, the analytics outputs an indication. In the case where the gateway/server performs the processing, the gateway/server notifies the monitoring station or where the monitor station is performing the processing, monitoring station alerts the operator. The processing upon detection of an unacceptable level of feature differences, modifies the drone navigation pattern. If intrusion is detected by the drone and/or other sensors within a facility, such as a window being opened or a glass break detector or contact switch being asserted on an intrusion detection system, the drone can be immediately guided (e.g., autonomously, by the operator, etc.) to that location providing similar surveillance until the incident is evaluated and handled.


When the drone is in autonomous mode, the modified pattern can be accomplished by the gateway/server producing a new route taking into consideration results of analytics processing, and reprogramming the drone with the new route. Alternatively, the gateway/server can transfer control of the drone to an operator. When the drone is initially under operator control, the analytics produce messages sent to a display (not shown) within view of the operator to assist the operator in guiding the drone and thus apply a new route. The new route can be varied including causing the drone to hold station or position about that location providing continuous video surveillance or data collection back to the monitoring station or to follow a path determined by the analytics processing.


Guidance within or outside of a building can be accomplished by several techniques. For example, when outside of a building, guidance can be accomplished by global position system (GPS) tracking. Alternative techniques include an operator at the monitoring facility manually controlling the drone to a specific location or having the drone hover at the location. Within a building guidance can be accomplished by feature recognition to follow a preprogrammed map of the interior of the building. Another type of navigation is a map based type navigation that includes a database that stores images of landmarks, descriptions of items and navigation instructions. A third type of navigation is by radio frequency (RF) beacons being deployed within the facility, sending out RF signals that a guidance system on board the drone captures and uses to apply a triangulation algorithm to figure out current location. When traversing internal areas of the premises, embodiments use one or more guidance techniques (e.g., RF-based, sonar, optical, beacon, etc.), but are not so limited.


The drone of an embodiment includes collision or crash avoidance systems that are used during tours to detect and record any physical objects that disrupt the ability of the drone to follow a tour route plan. These crash avoidance systems determine proximity to nearby objects and are used with drone navigation to navigate around the object and return to a preprogrammed path or route but are not so limited.


A drone route uses a route plan that includes a navigation map structure that is generated and includes waypoints and paths between a starting waypoint and an ending waypoint. When establishing a route plan, programmable waypoints are placed (e.g., at location points, objects, locations, etc.) along a path determined by the plan that a drone will navigate to in sequential order while using crash avoidance capability to move along safely and intact. The waypoints of an embodiment are stored in onboard memory but are not so limited. In an alternative embodiment, waypoints are stored on the gateway/server and delivered to the drone during operation. The waypoints include small devices that are programmable and include RF transmitter devices (e.g., RFID, beacon, etc.) or low power RF transmitters that continually broadcast its identity and/or placement and which are placed at locations where the asset being protected is located and at all permitted points of entry to the protected area.


The route plan is a predetermine route that is provided to and/or programmed into the drone and defined by the use of the waypoints as described herein. The drone recognizes the existence of the waypoints and determines or calculates the shortest path to and between waypoints. Using crash avoidance while traveling to a waypoint, the route plan is established, recorded, and presented to an operator/user via a graphical user interface. The operator defines a route schedule through the user interface. When conducting the tour, the drone uses crash avoidance to determine and report any deviations from the already determined route plan. The drone captures images of the deviation and reports them as troubles during the premises disarmed period or alarm during the premises armed period.


The drone navigates using the waypoints and processing captured signals from the various waypoints to recognize its current position (e.g. stairs, exits, doors, corridors, etc.) within a facility. The drone stores the route plan that takes into consideration the relevant building or environment. Having this information, the drone correlates captured signals to features in the route plan. By correlating the captured signals to the features in the route plan, the drone can determine its current waypoint, is provided information on that waypoint, and can navigate to a subsequent waypoint based on the route plan. The drone may incorporate the functionality of a compass, GPS, and/or other navigation element or system to assist in navigation. In some implementations, the processing, rather than be performed by the drone, is performed by the gateway and/or the server.


The drone of an embodiment includes a triggered alarm response for responding to abnormal or alarm situations detected in/around the premises. On detecting or receiving any alarm or trouble that is initiated by an interconnected security system or as a result of drone sensors, the drone uses the route plan and crash avoidance to navigate to the waypoint closest to the reported point of protection that triggered the alarm or trouble to capture and transmit video images, sound, and/or environmental data. This data is stored and/or relayed to the command center and/or monitoring center.


The system includes a docking or charging station configured to receive or house the drone and recharge the drone power source as needed. During a surveillance route or tour, the drone will continually make the rounds of this tour or can be programmed to conduct another tour. When the drone is not touring, the drone returns to the drone charging station for recharging of its batteries, or otherwise refueling. Alternatively, the drone receives a signal to return to base. The signal can originate from the operator or the gateway/server, a remote client device, and/or the drone itself, as the drone could be monitoring its fuel supply or level of remaining battery charge.


Drones employed herein are selected according to the type and nature of the premises and/or surveillance. For example, when the drones are employed to hover, a helicopter-type aircraft drone might be preferable. In addition, when deployed outdoors of the premises, the drones in general can be relatively large in comparison to those employed inside the premises. Moreover, a drone employed within a premises that has wide open spaces can be in general larger than one employed in a premises that has many rooms and corridors. In addition, when used exclusively outside the drone can be powered electrically (e.g., fuel cell and/or batteries) or with a hydrocarbon (e.g., gas or gasoline engine), whereas inside the drone should be powered electrically (e.g., fuel cell and/or batteries).


More specifically, FIG. 1A is a block diagram of a premises automation and security system that includes a premises automation drone (PAD) along with connected devices and security devices and corresponding system components, under an embodiment. This connected device system includes the PAD as well as devices (e.g., smart devices, connected devices, security devices, etc.) in communication with a server environment. The system includes a connected device gateway at the premises coupled or connected to one or more smart devices at the premises via wired and/or wireless channels or protocols. A security panel (optional) of a premises security system is coupled to the server environment via a broadband IP communicator and remote network and/or a coupling or connection using a cellular communicator and a cellular or other wireless radio channel. The PAD of this embodiment is configured to communicate (e.g., exchange data, etc.) with components of the server environment via one or more of the broadband communicator, the cellular communicator, and the connected device gateway, as described in detail herein. The PAD of an alternative embodiment is configured to communicate directly with components of the server environment via one or more on-board communication components (e.g., cellular transceiver, etc.), but is not so limited.



FIG. 1B is a block diagram of a premises automation and security system that includes the premises automation drone (PAD) and corresponding docking station along with connected devices and security devices and corresponding system components, under an embodiment. This connected device system includes the PAD as well as devices (e.g., smart devices, connected devices, security devices, etc.) in communication with a server environment. The system includes a connected device gateway at the premises coupled or connected to one or more smart devices at the premises via wired and/or wireless channels or protocols. A security panel of a premises security system is coupled to the server environment via a broadband IP communicator and remote network and/or a coupling or connection using a cellular communicator and a cellular or other wireless radio channel. The PAD of this embodiment is configured to communicate (e.g., exchange data, etc.) with components of the server environment via the docking station or base station, but is not so limited. Similarly, the PAD of this embodiment is configured to communicate with components of the server environment via one or more of the docking station, broadband communicator, the cellular communication, and the connected device gateway, as described in detail herein.


With reference to FIG. 1 (collectively FIGS. 1A-1D) and the Related Applications, the PAD of an alternative embodiment (not shown) is configured as the connected device gateway 170 and includes all components of the connected device gateway 170 so that it is the intermediary between premises smart devices (e.g., smart device 172, 173, etc.) and components of the server environment (e.g., management server 110, connected device server 120, etc.).


With reference to FIG. 1 (collectively FIGS. 1A-1D) and the Related Applications, the PAD of another alternative embodiment (not shown) is configured as the security panel 150 and includes all components of the security panel 150 (e.g., cellular communicator 155, broadband IP communicator 156, etc.) so that it is the intermediary between security devices (e.g., security devices 151, etc.) and components of the server environment.


With reference to FIG. 1 (collectively FIGS. 1A-1D) and the Related Applications, the PAD of yet another alternative embodiment (not shown) is configured as the security panel 150 and the connected device gateway 170 and includes all components of the security panel 150 and the connected device gateway 170 so that it is the intermediary between security devices and premises smart devices and components of the server environment.



FIG. 1C is a block diagram of a premises automation drone (PAD), under an embodiment. The term “drone” as used herein includes any vehicle without an on-board human operator. The PAD, which is a mobile premises automation platform or component, provides data for location awareness in and around the host premises. The PAD is configured to be deployable on/in environments including one or more of land, surface, table top, and water, using methods of propulsion that include one or more of rolling, sliding, crawling, walking, flying, swimming, and floating. The PAD of an embodiment includes, but is not limited to, an unmanned aerial vehicles (UAV), a fixed-wing UAVs, rotorcraft, rovers, rolling robots, walking robots, crawling robots, surface vehicles, submersibles, boats, and hovercraft, for example. The PAD may utilize any mode of propulsion as appropriate to the deployment environment, and includes a commercially available drone platform that has been modified to carry specific electronic components as described in detail herein. The PAD described herein is a component of a PAD system that includes cloud-based or server-based components (“server environment”), premises equipment (e.g., gateway, security system, network devices, CPE, etc.), and (optionally) a docking station or base station configured to receive and/or couple to components of the PAD.


The PAD of an embodiment generally includes a frame, electronics components (e.g., communication components, navigation components, sensors, sensor suite, etc.), propulsion, and power source. The PAD can include an electronics case for housing the PAD components, and the electronics case includes a weatherized enclosure. Electronics components within the electronics case may be secured to the electronics case. The frame provides mounting points for attaching components inside and outside of the electronics case.


The PAD as described in detail herein is configured to be autonomous, which includes autonomous or remotely controlled operation as a component of a premises system like a premises automation or security system described in detail herein. When configured as a component of a premises automation or security system (referred to herein as the “automation system”), PAD operation is at least partially under control of automations and schedules in the automation system. The automations and schedules comprise rules executing or running one or more of locally in electronic components of the PAD, in premises equipment, and remotely in components of the server environment, as described in detail herein. In certain embodiments in which the PAD includes the rules engine hosting the rules, the PAD is configured to include the automation system and rules engine so that the PAD is configured as the gateway or virtual hub as described in detail herein. In various alternative embodiments, the rules are distributed among some combination of one or more of the PAD, the premises equipment, and the server environment.


The PAD is configured for autonomous operations in which it is triggered or activated by a system event or schedule, and for remote controlled operations. Operations of the PAD are controlled via a rules engine that is hosted at least one of in the electronic components of the PAD, hosted in premises equipment (e.g., CPE, etc.), hosted in the server environment, and distributed among components of the PAD, the premises equipment (e.g., CPE, etc.), and the server environment, as described in detail herein. The rules engine includes rules for controlling PAD activity (e.g., ‘if <type> sensor goes to <state>, and <system state>, then, go<location> and perform <operation>’, ‘if <time>, then, go<location> and perform <operation>’, etc.). Triggering events include for example, but are not limited to, at least one of a pre-specified time, an event detected by premises sensors and/or network devices (e.g., sensor event, door opens, motion, glass breaks, broadband connection fails, etc.), an event detected at on-board PAD sensors and/or network devices (e.g., sensor event, light, motion, sound, heat, etc.), external system data or alerts (e.g., weather alerts, off-premises alert at an adjacent premises, etc.), and the like. In this manner, the rules are configured to associate sensors or triggers with specific locations of the premises, thereby enabling the PAD to deploy to any of these locations in response to a trigger being received.


As an example of the PAD operating under system automations, a premises sensor detects motion, and the PAD is deployed to a location of the sensor to determine the source of motion using the on-board sensor suite. In another example, motion is detected in a family room of the premises while the premises security system is in an “armed away” state, and this motion triggers the PAD to deploy to the family room and pan the room with on-board camera(s) to capture video of the area. In yet another example, the PAD acts as a virtual “watch dog” and automatically deploys to areas of the premises at which activity is detected in order to capture data of the activity. More particularly, a presence is detected (e.g., motion detector, video detector, door chime, etc.) at an exterior door, and this presence triggers the PAD to deploy to the exterior side of the door and stream a live video feed of the area adjacent the door to client devices (e.g., remote client devices, smart phones, local touchscreens, etc.).


In an example under which the PAD has scheduled operation, the PAD is deployed to one or more regions inside/outside of the premises according to a schedule (e.g., at 3 PM every day the PAD is deployed to the back yard and captures video of regions of the back yard; at 10 AM every day the PAD is deployed on a patrol of interior regions of the premises and captures sensor data of the areas of the premises; at 1 PM every day the PAD is deployed to capture images or video in a vicinity of all doors and windows to verify security of the premises; during evening hours the PAD is deployed according to a regular schedule to “patrol” areas outside the premises; etc.). Furthermore, a user can remotely command or control the PAD from a remote client device in order to check on particular activities or areas of the premises (e.g., user takes control of PAD after children return from school to check on activities of children at the premises, etc.).


Generally, PAD deployments involve the PAD being deployed in response to an event detected at the premises and/or in accordance with a scheduled deployment. When deployed, the PAD departs a current location (e.g., from a docking station, from a current deployment, etc.) and traverses a route in/around the premises. The PAD route includes any route to or through an environment accessible by the PAD, and may be one or more of a free-style route dynamically determined by the PAD, a regular route periodically traversed by the PAD in order to gather sensor data in regions of the premises, a specific route designated for a particular purpose, and a route directed from a remote client device. For example, if unexpected activity is detected by a premises sensor, the PAD is dispatched to the vicinity of the detected activity via a programmed route or via autonomous navigation by the PAD.


The PAD uses route information to control deployment operations in/around/through the premises. The route information of an embodiment is received from one or more of on-board components, remote components (e.g., server environment, CPE, etc.), and a remote client device. In various embodiments, the route information may be stored in on-board PAD memory. The route information may be created autonomously or provided by an individual operating the PAD. The route information includes location data of at least one of a destination and a route, and the location information comprises one or more of coordinates, PAD altitude, PAD orientation, PAD velocity, a proximity sensor using active or passive sensors, a beacon technology (e.g. BLE or WiFi beacons), and the like. The PAD navigation system or component uses the route information during the deployment to navigate the PAD along a route and/or to a destination. The PAD on-board components continuously determine the position of the PAD based on route information, premises characteristics detected by on-board sensors, and signals received from external devices or systems.


As an example the PAD determines and/or supplements data of its location based on WiFi signals and/or beacon or senor signals or data at the premises. The PAD is configured to compare the signal strength of one or more WiFi and/or beacon or sensor signals. The signal strength may be indicative of the distance between the PAD and the corresponding WiFi/sensor device. If numerous WIFI and/or sensor devices with known locations are present, the PAD may be able to accurately triangulate its location based only on these external signals. The PAD may also use the external system location data along with other positioning system information to triangulate its position, creating a dataset of location environment that synthesizes data from these various sensors to establish a method of relative navigation.


Data of the external devices or systems in the premises may be used to correct any errors detected in the navigation source information as the PAD traverses the route. For example, this locally-derived location information may be used to determine an offset of the actual location determined from the navigation information provided. The offset when available is then applied by the PAD navigation component(s) to future location information used in PAD navigation.


Data collected by the PAD during deployments in and adjacent to the premises includes at least one of data from all on-board sensors and data from premises sensors and network devices. The PAD is configured to manage collected data, and data management includes storing all or portions of the data locally in on-board memory, live streaming all or portions of the data to at least one of CPE and server environment components, and post-event and/or post-deployment streaming or downloading of all or portions of the data to at least one of CPE and server environment components.



FIG. 1D is a schematic diagram of the electronic components of the PAD, under an embodiment. The PAD includes but is not limited to a power source (e.g., battery, etc.), processor, memory, navigation components (e.g., GPS receiver, etc.), communication components, sensor suite, and sensor identification (SID) module, for example. In other embodiments, SID module may be replaced or used in conjunction with other detection and sensing devices, which may include laser scanners, electrical/optical equipment with recognition software, infrared scanners, radar, sonar, an audio/visual device with recognition software, quick response codes, bar code scanners, and/or chemical sensors, for example. The PAD may also include an avoidance or anti-collision system.


The power source is configured to store energy for powering the PAD. In various embodiments, the source is a battery (e.g., lithium-ion battery) but is not so limited. The battery power source may be augmented or replaced by a fuel cell, solar unit, laser powering system, and/or other remote charging methodology. In some embodiments, the battery may be charged using inductive charging methods. Any power source providing sufficient power for the PAD may be used, and it should be appreciated that a power source with a high energy to weight ratio may improve operating time of the PAD.


The PAD processor includes one or more processors and/or coprocessors coupled or connected to electronic components of the PAD and configured to control operation of various systems and computer applications on the PAD. The processor is configured to process data of the PAD and exchange data among on-board and remote PAD components. The processor may receive data from one or more components and format the data for use by at least one other component. The processor comprises a processor architecture that includes at least one of a stand-alone processor, a co-processor, and a shared processor integral with another electronic component, such as, for example, a navigation module or other electronic components.


The PAD on-board memory is configured to store data received or collected by the PAD as well as computer programs or instructions for execution by the processor and/or any component or system of the PAD. In various embodiments, the memory may store deployment or navigation information for an operating environment. The deployment information may include premises maps (e.g., preloaded maps, maps dynamically generated by the PAD, etc.), predetermined routes, restricted areas, and maps or routes corresponding to previous PAD deployments. For example, a PAD operating within a home may use a predetermined route to traverse the entire home efficiently. As another example, in a PAD operating within a back yard of a home, the memory may store a mapping of restricted areas where obstacles make it difficult for the PAD to navigate. As yet another example, a PAD may encounter an object as it traverses an area, and automatically add that object to its mapping algorithm. Alternatively, the PAD may request user input before adding an object to its mapping algorithm, and may request such input by transmitting object information (e.g., location. photo, video, audio, other sensor inputs, etc.) to a local or remote user requesting assistance in classifying the object. In various embodiments, the memory may store any information received by the PAD sensor suite.


The communication component includes one or more of transmitters and receivers appropriate to communication protocols used in operation of the PAD. The communication component can include at least one of cellular, satellite, WiFi, broadband, Internet Protocol (IP), data, voice, proprietary, and other radio-frequency protocols. The communication component can also include mesh and/or repeater protocols.


As an example, the communication component includes a wireless client configured as an IEEE 802.11 wireless client. Any wireless protocol may be used. In various embodiments, IEEE 802.11a, b, g, n, or ac protocols may be used or any other wireless communication protocol. The wireless client may be capable of high-speed handoffs so that wireless client may be in communication with multiple wireless access points during mobile operations of the PAD. Wireless client may use security protocols such as WEP, WPA, WPA2, and 802.11X to secure wireless communications. Filters may be used to limit wireless traffic to prevent interference.


The PAD navigation components include any device or receiver for receiving location signals and determining a location or other information necessary to movements by the PAD. The navigation components can include devices that include at least one of gyroscopes, optics-based devices, (e.g., laser range finder, laser dopler velocimeter, infrared rangers, etc.), filters, map recognition applications, and the like. For example, navigation module may include a GPS receiver for receiving GPS location signals and determining a location. Location data may also be calculated using WiFi triangulation, sensor signal triangulation, NFC positioning, RFID tag positioning, hardwired/physically placed network equipment, and pre-positioned quick response code tags and other sensing media. In various embodiments, navigation module may be integrated with a compass module and a PAD navigation system or coprocessor. Alternatively, processor and memory may perform navigation based on data received from navigation module. The navigation module may receive navigation data from a remote client device, map or navigation data stored in memory, and/or navigation data provided via the wireless client. In various alternative embodiments, navigation module may provide information via a remote client device to a user who remotely controls the PAD via wireless client.


The PAD includes a sensor suite comprising one or more sensors and detectors to gather data in/around the premises during operations by the PAD. The sensor suite includes but is not limited to at least one of motion sensors, acoustic sensors, audio sensors, imaging sensors, video sensors, cameras, infrared sensors, ultraviolet sensors, proximity sensors, environmental sensors, temperature sensors, fire sensors, smoke sensors, carbon monoxide sensors, and moisture sensors.


The premises can include an automation or premises security system comprising a gateway, as described in detail herein. In this premises configuration, the PAD of an embodiment includes the gateway (e.g., gateway, connected device gateway, cloud hub, etc.) in addition to the other components described herein. Furthermore, the PAD of another alternative embodiment is configured as the security panel of the security system and includes all components of the security panel so that it is the intermediary between security devices of the security system and components of the server environment. Additionally, the PAD of another alternative embodiment is configured as the security panel and the premises gateway and includes all components of the security panel and the premises gateway so that it is the intermediary between security devices and premises smart devices and components of the server environment.


The PAD of an embodiment is configured to autonomously navigate the premises using learned, received, and/or programmed route information of premises layout, where the navigation uses one or more of the navigation techniques described herein. The premises layout includes a mapping of the premises, wherein the mapping of an embodiment includes location and sensor data of home automation or security sensors. The PAD is also configured to traverse the premises under remote control via a remote client device.


The PAD of an embodiment includes components configured to target or control PAD deployments to premises areas based on detected events and activity in/around the premises. In so doing, the PAD of an embodiment generates maps of regions of the premises by mapping characteristics of regions of the premises to sensors and network devices in the premises. The maps or premises layout are used, in some embodiments with supplemental navigation and/or sensor information, to guide the PAD to a target adjacent to a sensor or device location, thereby providing PAD targeting based on activity in/around the premises.


A training or calibration route may be established to determine or learn characteristics of the premises and/or sensor presence and location. This route is one or more of delivered to the PAD by a remote operator/user communicating remotely with the PAD, an autonomous route determined by onboard or remote software, and a pre-determined route programmed into the device using either the on-board computing power of the PAD or by a computer communicating with the device via the wireless client. As the PAD traverses the premises, the on-board sensor suite collects data of the premises. The data gathered by the sensor suite is used by one or more of the PAD on-board electronics, components of the server environment, and premises CPE to generate one or more maps of the premises.


The PAD of an embodiment is configured to “learn” layout and characteristics of the premises. In an embodiment, an installer or user trains the PAD. In this mode, the PAD is moved through the premises and “learns” the route used for this training along with characteristics of the route. The characteristics include but are not limited to location, size, shape, doors, windows, openings, lights, stairs, furniture, household objects, obstacles, sensors, trees, limbs, etc. Following training, the PAD is configured to use the learned data to autonomously traverse one or more routes through the premises.


The PAD of an alternative embodiment includes sensors that configure the PAD to dynamically self-learn the premise and calibrate. In this embodiment, the PAD is not required to “learn” the premises under control of a human operator. Instead, the PAD sensor suite (e.g., proximity sensors, etc.) enables the PAD to autonomously navigate in/around the premises in order to self-learn and map the layout and characteristics of the premises. The PAD generates a mapping of the premises during this self-learning phase, and continuously updates and maintains the mapping data using data of subsequent patrol deployments. In essence, data of the premises (e.g., routes, characteristics, etc.) is collected during every operation of the PAD and that data is used to update and maintain the premises “virtual” floor plan used to support the security system and the PAD. Consequently, the PAD is dynamically adaptable to changes in the premises as they occur (e.g., moving furniture, room addition, remodeling, etc.).


The mapping of the premises by the PAD of an embodiment includes the PAD learning or gathering information of premises sensors. Furthermore, the premises map generated is supplemented to include the premises sensor information. Generally, the PAD is configured to determine or assist determination of location based on sensor technologies. For example, the PAD of an embodiment determines location relative to premises sensors using a triangulation technique based on signals and signal characteristics of the premises sensors. As an example, the PAD of an embodiment includes or uses near-field communication (NFC) technology for location awareness. For example, the PAD sensor suite is configured to locate and identify premises sensors using NFC to communicate and/or exchange data with the premises sensors.


In this configuration, the PAD of an embodiment includes or uses sensor identification technology that includes at least one of near-field communication (NFC) technology and radio frequency identification (RFID) technology for location awareness. The sensor suite on-board the PAD is configured to use these technologies to locate and identify premises sensors and to communicate and/or exchange data with the premises sensors.


As an example, a SID module of the PAD is configured to detect or process signals of sensor devices located at the premises. The SID module is configured to read various types of sensor signals. The speed of the PAD as it traverses the premises may be controlled to ensure that SID module is capable of accurately reading sensor signals while in motion. In some embodiments, the SID module may include radar technology capable of sensing direction and distance from given sensor signal(s) to determine the positions of detected tags. The speed of the PAD may be based on the number or density of sensor signals, strength of sensor signals, direction of sensor signals, and distance to sensors.


A spatial identifier may be utilized to determine sensor and/or PAD location. These spatial identifiers may include RFID tags placed at previously determined physical locations to create a grid of known physical data points. Alternative types of input devices (e.g. quick response codes, laser scanner, bar codes, electrical/optical sensors with recognition capabilities) may also provide spatial information in a similar manner. Spatial information may be attached to permanently affixed RFID tags. As such, a network or location grid may be developed to permit the derivation of precise location of the point read.


The SID module is coupled or connected to the PAD on-board wireless client. As SID module reads sensor signals, SID module may send sensor identification information to wireless client for transmission as described in detail herein. In various embodiments, SID module may be configured to read particular data fields from sensor signals and format the read data into packets. If radar technology or other location-detecting sensor is implemented, sensor distance and direction may be used to calculate precise location.


An embodiment includes methods of determining the position and presence of sensors in the premises using data collected by the PAD. As the PAD travels the path, data provided either by navigation module, SID module, wireless data provided by wireless client, by spatial identifiers, or combinations thereof, are used to determine the position and presence of detected sensors in two-dimensional (2D) and three-dimensional (3D) space. Using the training path, spatial data and presence data will be collected, and sensor signal data may be collected. As sensors are detected, the physical location and data of the sensor detected may be stored. As the PAD passes out of range of the first sensors detected and detects the next set of sensors, this data and location information may be stored. As the PAD navigates its route, signals from new sensors may be collected and signals from previously collected sensors will be lost. Software hosted on the PAD and/or elsewhere in the PAD system determines the precise location of the sensors detected. When the sensor is no longer detected, a physical position may be determined. This position may then be identified in the software, stored, and then transferred to corresponding systems as appropriate to the system configuration.


The PAD of an embodiment also captures any location or positioning information (e.g., GPS data, etc.) from the navigation system during the route traversal. The positioning information may be associated with the sensor data collected by the PAD. The positioning information and/or sensor data are processed and used by components of the PAD system to maintain accurate data of the premises and the state of the premises.


Following mapping of the premises, the PAD is configured to autonomously traverse the premises using the premises floor plan and data gathered during PAD training or mapping operations. Alternatively, the PAD is configured to receive programmed routes based on the premises floor plan as described herein.


The PAD components in an embodiment are configured to execute a method of self-calibration that ensures the PAD can successfully perform the elements described herein. This calibration may include configuration and quality checks on the PAD platform, the sensor suite or arrays attached to the platform, the communication systems on the platform, communication linkages, safety systems, power systems, propulsion systems, computing systems, and data transfer. The PAD may be directed to travel to a known calibration point, e.g. a “configuration station”, to test its capabilities against a series of known and pre-determined data points. This enables the PAD to calibrate its system against this known information. Status information may be transferred to a maintenance system either on-board the PAD or transferred wirelessly to controlling servers. The PAD may continue its mission if certain system failures permit, else it may be configured to return to a point of origin (e.g., base station) for configuration or repair either manually, programmatically, or autonomously as necessary. If during travel on-board safety systems detect a significant systems error, the PAD may be either instructed to return to point of origin or immediately cease travel in the safest means possible.


The PAD of an embodiment incorporates ‘anti-hacking’ protection. Anti-hacking protection may include encrypted communications and secure authentication with beacons, sensors, etc. to ensure that false beacons or sensors cannot mislead the PAD. Other anti-hacking protection includes redundant sensor technology and logic to handle attempts to jam, corrupt, or otherwise interfere with sensor/beacon signals. In this embodiment the PAD incorporates logic that detects jamming (e.g., spread-spectrum power in the necessary sensor/beacon frequencies) and treats this event as an attempt to disable the system. In various embodiments, the PAD, security panel, gateway, and/or server logic incorporates algorithms to notify remote servers or monitoring stations in the event of such hacking or jamming.


The PAD electronic components of an embodiment include an output device that is a device configured to provide local communication from the PAD. In an example embodiment, output device may be an audio system. Other examples of an output device include a projector and dispenser. The output device may receive data via the PAD processor and/or wireless client and process the received data to interact with people near the PAD. For example, the PAD may receive or generate premises status messages for occupants within or outside a premises, where the status messages are based on premises sensor data. The messages may include status information, security warnings, and safety warnings, to name a few.


The output device of an embodiment includes one or more actuators configured to manipulate, or cause to be manipulated, physical objects. Example manipulation actions of the PAD include lifting, carrying, moving, opening, closing, pushing, pulling, sweeping, and dispensing, but are not so limited. The manipulation of physical objects includes the PAD automatically manipulating the object, and the PAD manipulating the object in response to remote control signals received from a remote client device.


The PAD system of an embodiment includes a docking or base station as described herein with reference to FIG. 1. The docking station, which is optional in some configurations, includes a processor running applications and coupled to a memory. The processor is coupled to an electronics suite configured to interface with the PAD, and a power source configured to recharge or power the PAD power source. The power source of an embodiment includes but is not limited to one or more of an alternating current (AC) source, a direct current (DC) source, and a solar powered source, to name a few. The docking station of an embodiment is optionally coupled or connected to the remote network. The docking station of an embodiment is configured as the gateway or virtual hub, and in this configuration transfers data between PAD on-board components and server-based or cloud-based components of the PAD system as described in detail herein.


The PAD system includes server components of the cloud environment or server environment configured to communicate with the PAD, as described herein and with reference to FIG. 1. The PAD system includes network components configured to support PAD operations in a premises and premises automation system. The PAD system includes the PAD operating in/around a premises environment, and coupled to a server or processing system operating in the cloud environment. The premises environment includes interior regions or areas of a premises such as a home or office, and exterior or outdoor regions adjacent a premises, such as a yard or adjacent property or structure.


The PAD system includes a network access point (e.g., wireless, wired, wireless/wired, etc.) to access a remote network and devices remote to the premises. The remote network is coupled or connected to the cloud domain comprising one or more of a remote server or cloud-based computing infrastructure (e.g., automation server, security server, database server, application server, etc.). The cloud environment includes one or more components and/or applications for interaction with the PAD. For example, a component of the cloud environment may receive some subset or all data from components in the premises environment and update components in the cloud environment using the received data. As another example, the cloud environment may receive customer or subscriber information and in response provide instructions or commands to one or more components in the premises environment.


The PAD system includes components of and/or couplings to one or more of an automation or security system, sensors or components of the automation or security system (e.g., security sensors, detectors, RFID tags, IP devices, etc.), and network devices of a local premises network. The PAD is configured to communicate with one or more of the docking station, cloud servers, premises sensors, and premises network devices, to name a few.


As described in detail herein, the network access point includes one or more of a gateway, PAD docking station, premises security system, premises automation system, connected device gateway, and the like. When the PAD system includes a “gateway”, the “gateway” includes a standalone gateway or touchscreen as described herein with reference to the integrated automation or security system, a gateway configured as a component of the PAD, and a gateway configured as a component of the docking station. The components and functionality of the gateway are described in detail herein.


The network access point of an embodiment includes a wireless access point in communication with a wireless client located on-board the PAD. The wireless access point includes, for example, IEEE 802.11 wireless protocols, but is not so limited. A wireless protocol may be selected based on the size of the network environment, required data rate, and power needs of the PAD. The wireless access point of an embodiment is a component of one or more other components of the network environment (e.g., gateway, premises automation system, premises security system, etc.). At least a subset of data received via the on-board wireless access point is one or more of processed using the PAD on-board electronics, transferred to the gateway, and transferred to the cloud environment, but is not so limited.


The PAD system includes a remote client device that provides a user or remote operator access to the network. In various embodiments, an operator may interact with the PAD as well as any components of the network environment. For example, remote client device may be used to control the PAD. As further examples, an operator may use remote client device to access and/or monitor any component of the network environment. The remote client device includes at least one of personal computers, smart telephones, tablet computers, mobile devices, and other processing devices.


The PAD of an embodiment is configured to receive control signals from the remote client devices. The control signals of an embodiment control one or more of the PAD, sensors on the PAD, and systems on the PAD, but are not so limited. For example, the premises floor plan is accessed via the remote client device, and selection of an area on the floor plan causes the PAD to automatically be deployed to that area to capture images.


The ‘Internet of Things’ (TOT) and ‘Connected Home’ are terms used to describe the growth of devices within a premise that include some form of local intelligence, connectivity to other devices, or connectivity to ‘cloud-based services’ located remotely from the premises. Some examples of devices included within the existing art include connected or ‘smart’ thermostats, cameras, door locks, lighting control solutions, security sensors and controllers, HVAC controllers, kitchen appliances, etc.


In the conventional art these devices typically include an IP protocol connection to a server remote to the premise (‘in the cloud’). This server often provides remote access and control of the device through mobile apps running on phones or tablets. In some cases the connected devices communicate through this ‘cloud’ server to other devices through their own servers ‘in the cloud’. By way of example, a thermostat in a home can connect to a corresponding cloud server and relay state information to the cloud service of a connected light switch at the same premises. In this way a state change in one device can trigger actions in other devices using the ‘cloud relay’ mechanism. Further, high bandwidth media applications (e.g., video, voice, etc.) use complex and proprietary approaches or protocols to provide remote access including such processes as router port-forwarding and/or heavy-weight server proxies and protocols.


In contrast, the field of home and small business security is served by technology suppliers providing comprehensive ‘closed’ security systems in which individual components (e.g., sensors, security panels, keypads, etc.) operate exclusively within the confines of a single-vendor or proprietary solution. For example, a wireless motion sensor provided by vendor A cannot be used with a security panel provided by vendor B. Each vendor typically has developed sophisticated proprietary wireless technologies to enable the installation and management of wireless sensors, with little or no ability for the wireless devices to operate separate from the vendor's homogeneous system. Furthermore, these ‘closed’ systems are extremely proprietary in their approach to interfacing with either local or wide area standards-based network technologies (e.g., IP networks, etc.). Wireless security technology from providers such as GE Security, Honeywell, and DSC/Tyco are well known in the art, and are examples of this proprietary approach to security systems for home and business.


There is inherent difficulty under this ‘closed system’ approach in interfacing between the plethora of ‘Connected Home’ devices and the proprietary home security systems. Home security system vendors use proprietary LAN protocols and proprietary cloud services to manage and interact with security devices in the home. There is no way for a ‘cloud connected device’ to easily integrate with a security system from any of the proprietary system vendors. Further, it is difficult if not impossible to integrate media into such a proprietary system.


Integration involving a closed system is also difficult due to the complexity and cost of the physical interface between the proprietary security system and the more open ‘Connected Home’ devices. Because the systems are proprietary, typically additional hardware must be retrofitted to these security systems to enable them to communicate locally with non-proprietary devices. This hardware often requires additional wiring or the incorporation of new wireless technologies (e.g., Wifi, Zigbee, etc.) that must be retrofitted to the extant proprietary security system.


Installation and operational complexities also arise due to functional limitations associated with hardwiring a new component into existing security systems. Further, and no less difficult, is interfacing of a new component(s) with the existing system using RF/wireless technology, because installation, security, and the requirement of new radios in the security system impart additional complexity.


With reference to FIG. 1 (collectively FIGS. 1A, 1B, 1C), the connected device system is configured to include devices (e.g., smart devices, connected devices, security devices, PAD, etc.) at a premises in communication with a server environment, under an embodiment. The system includes a connected device gateway at the premises coupled or connected to one or more smart devices at the premises via wired and/or wireless channels or protocols. The system also includes one or more independent connected devices that are independent of any gateway. The independent connected devices of an embodiment are coupled or connected to a premises local area network (LAN) but are not so limited. A security panel of a premises security system is coupled to the server environment via a coupling or connection to a wide area network (WAN); the coupling to the WAN comprises a coupling or connection to a broadband IP communicator that is coupled to the LAN and/or a coupling or connection using a cellular communicator and a cellular or other wireless radio channel.


The server environment of the connected device system includes one or more of a bridge server, connected device server, and security server, as described in detail herein. Each smart device coupled to the connected device gateway at the premises has a corresponding connected device server but the embodiment is not so limited. Thus, connected device configurations of an embodiment include configurations in which a connected device server is dedicated to each smart device, a connected device server is dedicated to a type of smart device (e.g., first connected device server for sensor devices, second connected device server for automation devices, etc.), a connected device server is dedicated to a type of protocol used by the smart devices (e.g., first connected device server for Z-Wave devices, second connected device server for Zigbee devices, etc.), and/or a connected device server is dedicated to a plurality of smart devices. The connected device server of an embodiment is configured as one or more of a router that routes or directs communications to/from one or more corresponding connected or smart devices, a service provider (e.g., server in the middle) that stores at least a portion of data of smart or connected devices, and a gateway that couples remote devices (e.g., smart phones, tablet computers, personal computers, etc.) to the connected or smart devices.


Applications hosted or running on client devices (e.g., remote devices, iOS devices, Android devices, web browsers, etc.) are configured to communicate with the connected devices, smart devices, connected device gateway, PAD, and/or security system (panel) at the premises through their respective servers. Further, the PAD can stream media (e.g., video, audio, etc.) to the remote devices, receive media from remote devices, and output media if desired (e.g., enable audio output from a remote person to generate sounds or video at the premise, etc.). In this manner, the system of an embodiment is configured to provide control of and access to data of a variety of smart and connected devices at the premises using the client device application synchronized to the smart or connected devices via the cloud-based server environment.


The system of an embodiment generally includes one or more of a cellular radio or broadband ‘IP communicator’ module that is included as a component of or coupled to the proprietary security system. These communicators have typically served to communicate critical life-safety and intrusion signals to a remote central monitoring station, or to provide remote control of the security system from personal computers, mobile devices, and/or other remote client devices to name a few. The communicators of an embodiment (e.g., whether cellular or broadband-based) are each configured to provide a linkage between the security system and the ‘Connected Home’ devices through a cloud server-to-server interface.



FIG. 2 is a block diagram of a connected device system showing components of the connected device gateway at the premises and the session server in the cloud-based server environment, under an embodiment. The connected device gateway, which is also referred to herein as “Cloud Hub” in some embodiments, comprises a processor that includes or is coupled to one or more logical components that include a server connection manager, a device manager, a rules engine and a communication protocol manager (e.g., wired, wireless, etc.). The communication protocol manager is coupled to the transceivers or radios of the connected device gateway that are configured to communicate with the various connected devices at the premises. The server connection manager is configured to communicate with servers coupled to the WAN, while the device manager is configured to manage communications with devices at the premises.


The system of an embodiment also includes a security panel of a security system coupled to a wide area network (WAN) via a coupling or connection to a broadband IP and/or a cellular communicator (not shown), as described with reference to FIG. 1. Applications hosted or running on client devices (e.g., remote devices, iOS devices, Android devices, web browsers, etc.) are configured to communicate with the connected devices, smart devices, connected device gateway, and/or security system (panel) at the premises through their respective servers.


The server or cloud environment of an embodiment comprises one or more logical components that include a rules service, web service, client devices service, history service, and security service, to name a few. The rules service (e.g., IFTT, etc.) is configured to generate rules for the rules engine, where the new rules complement and/or replace rules hosted or running in the rules engine. The web service is configured to manage web portal communications. The client devices service is configured to manage communications of client device applications. The history service is configured to manage history data associated with components of the system (e.g., client devices, connected devices, gateways, sessions, etc.). The security service is configured to manage communications and/or data of a security panel (system) at the premises that is a component of the cloud system described in detail herein.


The connected device gateway communicates with a session server (cloud router) that comprises gateway sessions, also referred to in embodiments as “Lightweight Gateway (LWGW) instances.” The session server with the gateway sessions is configured to manage communications with gateways, client devices, etc. The session server is configured as a communication relay or router (e.g. cloud router) that relays communications between devices; alternatively, the session server is configured to provide a device initiating a communication session with an address (e.g., IP address, etc.) of the target device so that the initiating device and the target device communicate directly without going through the session server. As such, the session server is configured to manage couplings or connections between the communicator module or device and the cloud server.


The server environment of an embodiment also includes a bridge server configured to provide an open communications interface between the smart devices and/or the connected devices and the security system. Any device can be a plugin or a subscriber to the bridge server, but the embodiment is not so limited.



FIG. 3 is a block diagram of an example connected device system including a bridge server, under an embodiment. FIG. 4 is a block diagram of a system comprising a bridge server in communication with devices and an application server and gateway server, under an embodiment. With reference to these figures, the bridge server includes an event bus (e.g., bidirectional event bus) coupled to a set of device-specific plugins (e.g., location adapter, Nest adapter, etc.) that each corresponds to a particular device or type of device. Each plugin comprises code written to an API that corresponds to that device. Each plugin puts events for its corresponding device onto the event bus (e.g., Nest thermostat, change temperature, etc.) and receives data via the event bus. The plugins of an embodiment include but are not limited to an API plugin, a UI plugin, and a card UI.


The bridge server includes a subscriber interface coupled to the event bus, and the subscriber interface comprises one or more user agents or agents. The agent(s) of the subscriber interface pulls events or event data from the event bus and transfers them to another component or application as described herein. The subscriber interface also puts events onto the event bus for transfer to the device-specific plugins.


The subscriber interface is coupled to an application (“app”) server (e.g., Location server, Nest servers, etc.) via a bridge interface. The app server includes one or more components that comprise one or more of an app engine, a rules engine, a device data model, and a database. The app engine serves events to a corresponding app and/or receives data from the corresponding app. The rules engine includes rules that are executed in response to event data. The device data model, also referred to as a virtual device, is a device data definition or logical model. The database stores records that include event data and corresponding data or information. The components of the app server communicate with a gateway server that manages components (e.g., firmware, devices, rules engine, communication interface(s), etc.) of a gateway at the premises.


As an example, a user has a Nest thermostat in her home, and when the temperature changes at the thermostat then the thermostat puts an event on the event bus indicating the temperature change. The event includes a unique identifier of the thermostat, and a user agent of the bridge server is listening for the identifier. The user agent, when it identifies an event having an identifier for which it is listening, pulls the event with the particular identifier from the event bus. Data of the event when pulled from the event bus can, for example, be stored in a database, and also checked for correlation to any rule running under the rules engine and, if a correlation is identified, then the data causes the rule to execute.


The rules engine is configured to enable end users or system providers to establish linkages between information or data of device state changes (‘triggers’) and the control of other devices (‘actions’). The rules engine is configured, for example, to control the state of a smart (connected) device (e.g. a thermostat or door lock) in response to a state change of a corresponding connected system (e.g., the security system). As another example, the rules engine controls the state of the security system (e.g., disarm security system (‘action’)) in response to a state change in a connected device (e.g., unlocking of a door (‘trigger’)). The rules engine also controls the state of a LAN device (e.g., a Z-Wave thermostat) by determining a state change of the security system and relaying the desired Connected Device state to the intermediate Cloud Hub for processing.


The rules engine of an embodiment runs or executes at least one of remotely on a cloud-based server (e.g., Rules Service, etc.), locally on consumer premises equipment (CPE) or a premises device (e.g., the Cloud Hub, etc.), and in some distributed combination of devices of the system. The rules engine is configured to store and run at least a portion of the rules locally at the premises in the Cloud Hub or other local CPE. The rules engine of an alternative embodiment is configured to store the rules in a remote server that is located remote to the premises in the server or cloud environment. The rules engine of another alternative embodiment is configured to distribute storage and execution of the rules between local CPE and remote server(s) for redundancy or to provide more timely operation.


The premises devices and systems operate according to rules running on a rules engine at the premises (CPE) and/or in the cloud. Generally, a system configuration includes rules executed on a server in the cloud to support interactions between two or more premises devices (e.g., an event of a first device triggers an action on a second device via one or more rules, etc.). Furthermore, a system configuration includes rules running locally at the premises (e.g., CPE) to support interactions with other devices at the premises via direct interactions when information is not required from a third party or remote server or system in order to effect the interaction.


Additionally, rules running locally at the premises (e.g., CPE) and at a cloud-based server control interaction under an embodiment. For example, a door opens at the premises causing a sensor signal to be sent to the security panel, and the security panel in turn provides notification of the sensor event to a gateway. Rule(s) running at the gateway cause the gateway to issue a request to a cloud-based server for an action by a particular connected device (e.g., camera device at the premises, camera device at a different premises, etc.). Rule(s) running at the server generate a command or control signal to perform the action and send the command to the particular connected device. The particular connected device includes, for example, another device at the premises (e.g. camera in the premises, etc.) and/or a device at a difference premises (e.g., initiate an alarm at a first house if a door is opened at a second house). Optionally, an acknowledgement is generated or issued by the connected device upon completion of the requested action.


The system described herein provides a cloud interface to connected premises (e.g., home, office, etc.) devices and systems. For example, a system includes one or more on-premise devices coupled to a premises security system, and a smart device (e.g., Nest thermostat, etc.) is integrated at the premises through the cloud to the premises system that includes the premises devices and security system.


As a more particular example, the premises includes a security panel and security devices communicating with the cloud (“server environment”) via a broadband IP module, cellular communicator, and/or a gateway. The premises includes a second device (e.g., Z-Wave controller, etc.) that provides or creates a local device network (e.g., Z-Wave, Zigbee, WiFi, WPS, etc.) coupled or connected to the premises LAN. The premises of this example includes a third device (e.g., one or more Dropcams, etc.) comprising a WiFi client communicating with the cloud. Under the configurations described herein, two or more premises devices are coupled at the premises via a connected device gateway and/or at the cloud via a server interface, but are not so limited. Each of the premises devices (e.g., smart devices, connected devices, security devices, etc.), regardless of device type or protocol, is integrated into the system through pushbutton enrollment.


The system of an alternative embodiment includes a gateway device located at the premises. The gateway device is configured to provide a plurality of network interfaces that include, but are not limited to, one or more LAN interfaces for communicating with devices within the premise (e.g., Z-Wave, Wifi, Zigbee, etc.), and a WAN interface for communicating with the Session Server. In this ‘Cloud Hub’ embodiment the gateway is not required to provide a local area coupling or connection between the Connected Home devices and the security system because this connection is provided by/through the cloud interface.


The embodiments of the connected premises systems described herein include numerous operational flows, but are not so limited. FIG. 5 is an example connected device flow diagram, under an embodiment. This example includes three connected devices (e.g., thermostat, camera, smart lock), each of which corresponds to a third party server and control application for accessing and controlling the respective device. In addition to the three connected devices in the premises, the system of this example includes a cloud-based connected device server and bridge server, and an integrated or combined device application hosted on a remote client device. The integrated device application is configured to provide integrated access to the three connected devices but is not so limited. The bridge server is configured to aggregate (e.g., using APIs) interfaces to the three third party servers of the device providers and enables communication between the bridge server and these third party servers. The bridge server is configured to communicate directly with one or more of the connected devices and to communicate with the connected devices through the connected device server.


The combined device application provided in an embodiment is an application hosted on a client device (e.g., downloaded to the client device, installed on the client device, etc.) that includes the capabilities of the individual control applications of the respective connected devices. In an embodiment, the combined application is configured to communicate 501 directly with the corresponding connected device(s) (e.g., using information from the bridge server and/or connected device server). In an alternative embodiment, the combined application is configured to communicate 502 with the corresponding device(s) through the bridge server, which communicates with the third party server corresponding to the respective device(s). In another alternative embodiment, the combined application is configured to communicate 503 with the corresponding connected device(s) through the bridge server and the connected device server.



FIG. 6 is another example connected device flow diagram, under an embodiment. This example includes three connected devices (e.g., thermostat, camera, smart lock), each of which corresponds to a third party server and control application for accessing and controlling the respective device. The three connected devices are coupled to a connected device gateway in the premises as described in detail herein. In addition to the three connected devices in the premises, the system of this example includes a cloud-based bridge server. The bridge server is configured to aggregate (e.g., using APIs) interfaces to the three third party servers of the device providers and enables communication between the bridge server and these third party servers. The bridge server is configured to communicate with the connected devices through the connected device server.


The system of this example includes an integrated or combined device application hosted on a remote client device to provide integrated access to the three connected devices. In an embodiment, the combined application communicates 601/602/603 with the corresponding device(s) through the bridge server, which communicates 601/602/603 directly with the connected device gateway at the premises. Additionally, the connected device gateway is configured to synchronize between connected devices at the local premises and connected devices at a remote premises.



FIG. 7 is yet another example connected device flow diagram, under an embodiment. This example includes three connected devices (e.g., thermostat, camera, smart lock), each of which corresponds to a third party server and control application for accessing and controlling the respective device. The three connected devices are coupled to a connected device gateway in the premises as described in detail herein. In addition to the three connected devices in the premises, the system of this example includes a cloud-based bridge server. The bridge server is configured to aggregate (e.g., using APIs) interfaces to the three third party servers of the device providers and enables communication between the bridge server and these third party servers. The bridge server is configured to communicate with the connected devices through the connected device server.


The system of this example also includes three security devices (e.g., door sensor, window sensor, motion detector) coupled to a security panel at the premises. The local security panel communicates with a cloud-based security server. The bridge server of an embodiment communicates with the security panel via the security server. Alternatively, the bridge server communicates directly with the security panel as it does with the connected device gateway, and integrates the interfaces of the connected device providers and the security system provider, but is not so limited.


The system of this example includes an integrated or combined device application hosted on a remote client device and configured to provide integrated access to the three connected devices and the security panel. In an embodiment, the combined application communicates 701/702/703 with the connected device(s) via the bridge server and the connected device gateway at the premises, and communicates 710 with the security devices via the bridge server, the security server, and the security panel. Alternatively, the combined application communicates 720 with the security devices via the bridge server and the security panel.


The connected device gateway is configured to synchronize between connected devices at the local premises and connected devices at a remote premises. Similarly, the security panel is configured to synchronize between security devices at the local premises and security devices at a remote premises.


A process flow of an embodiment for interaction between the integrated app and a connected device comprises but is not limited to the following: an event is commanded at the app for a connected device (e.g., temperature increase commanded three increments); the event is posted to the device data model at the app server; the device data model posts data representing the event on the bridge interface of the bridge server; the bridge interface posts data representing the event onto the event bus; the connected device (e.g., thermostat) plugin, which is listening for events that correspond to the device, pulls the event data from event bus and passes the event (command) data to the corresponding connected device; the event (command) data causes a corresponding change at the connected device (e.g., temperature raised three degrees on thermostat).


A process flow of an embodiment for interactions among connected devices resulting from a state change at a connected device comprises but is not limited to the following: an event is detected at a connected device (e.g., temperature rises 5 degrees to 72 degrees); the device puts data of the event on the event bus of the bridge server via the corresponding device plugin; an agent or listener subscribed to the connected device pulls data of the event from event bus and transfers the data to the app server; app engine of app server posts the event to the corresponding app, and posts the event data in the database; app engine posts the event data to the rules engine because the rules engine, which includes a rule that corresponds to the event (e.g., if temperature rises above 70 degrees, turn on lamp in den); rules engine executes the rule and sends a message to the gateway server to carry out the action (e.g., turn on lamp in den) or, alternatively, the rules engine passes the event data to the gateway server, which executes the rule for the connected device (lamp).


A process flow of an embodiment for interactions among connected devices resulting from a state change at a security sensor comprises but is not limited to the following: an event is detected at a sensor; sensor event data received from the sensor and processed at the security panel; the processed sensor event data is transmitted to the security server where it is stored; the security server posts information representing the sensor event data via an API; the security server communicates the sensor event to the bridge server via a security system plugin; an agent or listener subscribed to the security system pulls data of the event from the event bus and transfers the data to the app server via the bridge interface; app engine of app server posts the event to the corresponding app, and posts the event data in the database; app engine posts the event data to the rules engine, which includes a rule that corresponds to the event (e.g., if door sensor state change, record video at door camera); rules engine executes the rule and sends a message to the gateway server to carry out the action (e.g., activate door camera) or, alternatively, the rules engine passes the event data to the gateway server, which executes the rule for the connected device (camera).


Embodiments include pushbutton enrollment of devices (e.g., smart devices, connected devices, security devices, etc.) into the premises environment using one or more technologies. In an embodiment, the device is triggered to initiate an enrollment routine or process that enrolls the smart device into the premises environment via one or more of the premises components described herein (e.g. connected devices, smart devices, gateways, security devices, etc.). Device enrollment causes the enrolling device to update the system as to the state of currently installed devices via the coupling to the sever environment. When a device is added to the system, the system automatically recognizes the device in the system and populates the device throughout the system. Similarly, when a device is removed from the system, the system removes the device throughout the system.


More particularly, a process flow of an embodiment for enrolling and accessing connected or smart devices comprises but is not limited to the following: bridge server identifies supported device(s); bridge server locates supported device(s) on local network or prompts user for added device(s); bridge server authenticates or validates device(s); validated device(s) is added to the integrated or combined app for control and/or rules; generic device-specific interface is presented to user (e.g., generic thermostat interface), and/or customized device-specific interface is presented to user, and/or launch third party UI for device.


A process flow of an alternative embodiment for enrolling and accessing connected or smart devices comprises but is not limited to the following: bridge server identifies supported device(s); identified device(s) added to the system; added device(s) connects to connected device server and corresponding connected device app; integrated app is downloaded, downloaded app identifies devices to be bridged (keys, login credentials) and authenticates or validates device(s); validated device(s) is added to the app for control and/or rules; generic device-specific interface is presented to user (e.g., generic thermostat interface), and/or customized device-specific interface is presented to user, and/or launch third party UI for device.


The embodiments described in detail herein provide the Cloud Hub as a low-cost solution for home automation, which can be added to an existing site (e.g., Tier-1 site). The Cloud Hub device of the embodiments, as a component of the consumer premises equipment (CPE), couples or connects to a broadband connection at the host premises and is configured as a gateway for devices (e.g., cameras, sensors, Z-Wave, Zigbee, etc.) located or installed at the premises. More particularly, the Cloud Hub is a multi-purpose device access point configured to enable full home automation. The Cloud Hub is configured to enable premises devices (e.g., cameras, sensors, Z-Wave, Zigbee, etc.) for sites that do not currently support these devices, and/or provide a “sandbox” for Direct Cameras, but is not so limited.


The Cloud Hub of an embodiment is configured to communicate with a Lightweight Gateway (LWGW) that includes a corresponding server-side abstraction with which it interacts or communicates. In an embodiment this device class interacts with the server and the actual Cloud Hub device in much the same way that a RISSecurityPanel (e.g., server-side module that receives state change events from a security panel and is able to communicate directory with the panel in order to control (arm/disarm) or configure (add/remove security sensors the panel) class interacts, as described in detail herein. As such, an embodiment re-factors the common code out of the RISSecurityPanel into a class capable of use by both the RISSecurityPanel and the Cloud Hub device. A new device definition is provided for this type of device, along with various changes to the StandardGateway class to control and manage the additional communication channel with the new device.


The Session Server of an embodiment is configured to use a gateway registry service to route incoming UDP packets from the CPE to the proper LWGW instance via a one to one mapping of CPE-unique IDs to site IDs. With the addition of the Cloud Hub, a second CPE-unique ID is used which is mapped to the same LWGW instance as the primary SMA client's CPE-unique ID. To accomplish this the Device Registry service is leveraged, and this registry maintains a mapping of CPE ID and device type to site ID. The session server is configured to use this Device Registry to properly route income packets but is not so limited.



FIG. 8 is a block diagram of a system including the Cloud Hub, under an embodiment. The system configuration includes a Cloud Hub coupled to a wide area network (WAN) at the premises. The iControl servers include a session server and one or more LWGW instances, and a registry and credential gateway, as described in detail herein. The device installation and bootstrap mechanism is configured to one or more of associate the Cloud Hub device with an existing site, and securely deliver SMA communication configuration, including master key, SMA server address, and network ports, but is not so limited.



FIG. 9 is a block diagram of a system including a Cloud Hub and Virtual Gateway showing the premises, service provider, and mobile environments, under an embodiment. The system of an embodiment includes the gateway (Cloud Hub) in the premises (e.g., home, office, etc.), and the gateway is coupled to a LWGW in the operator (server/cloud) domain. The gateway includes one or more of a camera adapter to integrate premises cameras, an IP adapter to integrate premises IP devices, and a ZigBee protocol and hardware driver to integrate premises ZigBee devices. Components of the gateway of an embodiment are coupled to a radio frequency (RF) bridge as appropriate to a configuration of devices in the premises, and the RF bridge integrates additional premises devices (e.g., Z-Wave devices, proprietary devices, etc.) into the system.


The LWGW and cloud-based infrastructure of an embodiment uses an existing service provider infrastructure, security, performance, and APIs, along with system components that are separated into modules executed on distributed in-premises systems. The LWGW and cloud-based infrastructure includes a pluggable architecture that enables new device protocols and RF technologies to be added without the need to overhaul the core infrastructure. Use of a relatively small memory footprint on the CPE enables the infrastructure to execute on many devices, and this refactoring of local versus cloud services provides a virtual device (e.g., Internet of Things (TOT), etc.) gateway service that pushes as much as possible to the cloud while maintaining local performance and offline capabilities.


The LWGW included in an embodiment is configured as the server-side abstraction for the Cloud Hub. The LWGW is subordinate to the gateway object, and interacts with the server and the Cloud Hub device in much the same way that a RISSecurityPanel class does. As such, an embodiment re-factors the common code out of RISSecurityPanel into a class that both RISSecurityPanel and the Cloud Hub device can use. A new device definition is created for this type of device, and various changes to the StandardGateway class to control and manage the additional communication channel with the new device.


The Session Server configuration uses a gateway registry service to route incoming UDP packets from the CPE to the proper LWGW instance via a one-to-one mapping of CPE-unique IDs to site IDs. With the addition of the Cloud Hub, a second CPE-unique ID is mapped to the same LWGW instance as the primary SMA client's CPE-unique ID. This is accomplished by leveraging the Device Registry, which maintains a mapping of CPE ID and device type to site ID. Further, the session server is modified to use this Device Registry to properly route income packets.


Regarding client application software or applications, the clients include UX additions to present the new Cloud Hub device. When the Cloud Hub is present, UX flow will potentially be different. For example, on a Cloud Hub system, Z-Wave devices are not added until the Cloud Hub is added. Also, deleting the Cloud Hub includes deleting the associated Z-Wave devices, and this uses special UX messaging. The activation app and the installer app will also need new flows for installing and managing these devices.


The Cloud Hub Firmware of an example embodiment includes but is not limited to the following components: SMA Client: an always-on (i.e., always-TCP-connected) SMA client, supporting AES-256 encryption; ezwLib: port of the Icontrol embedded Z-Wave stack; Bootstrap Client for secure bootstrap of the master key, and then secure provisioning of the SMA Server connection information and initialization information; LED Driver to drive CPE LED that displays Server connectivity and Z-Wave status (CPE-dependent); Firmware Update Logic for fault-tolerant updates of the full CPE image (CPE-dependent); detailed/tunable error logging; Reset To Factory Default Logic for factory-default Z-Wave (erase node cache and security keys), WiFi (disable sandbox, reset SSID/PSK; CPE-dependent), and de-provision (erase SMA Server info).


In an example configuration, Server-CPE communication is over the SMAv1 protocol, except for bootstrapping and provisioning which uses the OpenHome “Off-Premise Bootstrap Procedure.” On the CPE, the OS and network layer (Wi-Fi sandbox, WPS, routing, etc.) are provided and managed by the CPE OEM (e.g., Sercomm). Wi-Fi provisioning and traffic is handled by the CPE OEM (e.g., Sercomm) without Cloud Hub intervention/signaling, except with respect to enabling/disabling and resetting to defaults.


The Cloud Hub device installation and bootstrap mechanism performs one or more of the following: associate the device with an existing site; securely deliver the SMA communication configuration, including master key, SMA server address, and network ports. An embodiment includes an off-premise bootstrapping procedure, also used for bootstrapping tunneling cameras, that includes a three-step process.



FIG. 10 is a flow diagram for device installation and bootstrapping, under an embodiment. The process for device installation and bootstrapping includes a first step that couples or connects the Cloud Hub to the Registry Gateway (e.g., via the pre-configured Registry Gateway URL) and retrieves its assigned siteID and the Credential Gateway URL. A second step includes the Cloud Hub retrieving its master key from the Credential Gateway using its siteID and Activation Key. The process comprises a third step in which the Cloud Hub retrieves Session Gateway Information from the Credential Gateway. At the end of the Bootstrap phase, the Cloud Hub has obtained its master key and its Session Gateway address from the iControl Gateway.


More particularly, the Cloud Hub retrieves its SiteID and Credential Gateway URL during the first step of the process.















Purpose
Retrieve Credential Gateway URL and siteID using Cloud Hub Serial



Number as input


Message
HTTPS GET /<Registry Gateway URL>/<Serial Number> HTTP/1.1


Format


Authentication
None


Mandatory
Host


Request


Headers


200 OK
<registryEntry serial=“<Serial Number>” href=“/<Registry Gateway


response
URL>/<Serial Number>”>



<functions>...</functions >



<siteId><siteID></siteId>



<gatewayUrl><Credential Gateway URL></gatewayUrl>



</registryEntry>


Error
Standard HTTP response codes (e.g., 404)


responses


Example
https://adminsirius3.icontrol.com/rest/icontrol/registry/serial/00603504026c


Request


Example 200
<registryEntry serial=“00:60:35:04:02:6c”


OK Response
href=“/rest/icontrol/registry/serial/00603504026c”>



<functions count=“1”>



<function name=“delete”



action=“/rest/icontrol/registry/serial/00603504026c”



method=“DELETE”/>



</functions>



<siteId>00603504026c</siteId>



<gatewayUrl>http://gsess-sirius3.icontrol.com/gw</gatewayUrl>



</registryEntry>












Variable Name
Format
Description/Notes





Registry Gateway URL
URL
Pre-configured in Cloud Hub




firmware


Serial Number
12 byte hex string
Pre-configured in Cloud Hub




firmware


siteID
12-20 digit alpha numeric



string


gatewayUrl otherwise known as
URL prefix
Prefix to use for Pending


CredentialGatewayURL
protocol:host[:port]/path
Master Key and Connect Info




requests.









The Cloud Hub retrieves its Pending Master Key when the Master Key is not already established from a previous successful Retreieve Credital procedure, during the second step of the process.















Purpose
Retrieve device-specific Master Key using its siteID, serial number and



Activation Key as inputs


Message
HTTPS POST/<


Format
CredentialGatewayURL>/GatewayService/<siteID>/PendingDeviceKey



HTTP/1.1


Authentication
None


Mandatory
Host, Content-Length, Content-Type (application/x-www-form-


Request
urlencoded )


Headers


POST body
serial=<Serial Number>&activationkey=<ActivationKey>


200 OK
<pendingPaidKey method=“server” expires=“<pending master key


response with
expiration epoch millisecs>” ts=“<current epoch millisecs>”


pending
key=“<master key>” partner=“icontrol”/>


master key


200 OK
Gateway responds with a method=”retry” if the Cloud Hub is not yet


response with
activated within the system. Response includes timeout for retry.


retry
<PendingPaidKey method=“retry” expires=“<retry epoch millisecs>”



ts=“<current epoch millisecs>” partner=“icontrol”/>


Other HTTP
Standard HTTP error response codes for example 5xx indicate a


responses
temporary server issue and Cloud Hub devices should perform an



automatic retry in randomized 10 minute backoff.


Example
serial=555500000010&activationkey=AABB12345678


POST body


Example 200
<pendingPaidKey method=“server” expires=“1308892493528”


OK with
ts=“1308849293540” key=“398341159498190458” partner=“icontrol”/>


pending key


Response


Example 200
<pendingPaidKey method=“retry” expires=“1308849242148”


OK response
ts=“1308849122148” partner=“icontrol”/>


with retry












Variable Name
Format
Description/Notes





CredentialGatewayURL
Hostname[:port]
Retrieved via Step 1 - Retrieve Gateway




URL and SiteID


siteID
12 byte hexadecimal
Retrieved via Step 1 - Retrieve Gateway



string
URL and SiteID


ActivationKey
10+ digit alpha
Pre-configured in Cloud Hub, generated



numeric string
by manufacturer and printed on device


‘method’ (in 200 OK
String
“server” or “retry”


body)


‘key’ (in 200 OK body)
Alphanumeric string
Pending key returned by Gateway in 200




OK body


‘ts’ (in 200 OK body)
Numeric string
Gateway's timestamp in UTC time


‘expires’ (in 200 OK
Numeric string
UTC time when the current pending key


body)

expires


Pending Key
Alphanumeric string
Initial key retrieved from Gateway that is




not yet confirmed with the Gateway.


SharedSecret or master
Alphanumeric string
Pending key becomes <SharedSecret>


key

after successful connection to Gateway




(see below)









While Cloud Hub activation is underway, the Gateway responds to a Cloud Hub's request for Credential with 200 OK including the PendingPaidKey XML body (with method=“server”) with a pending key field. The pending key field becomes active once the Cloud Hub couples or connects to the Gateway over the SMA channel and is authenticated by using the pending key to encrypt the initial SMA exchange. Once authenticated (via a successful SMA session with the Gateway), the key is no longer pending and instead becomes active, or otherwise known as the Cloud Hub's <SharedSecret> or master key. The active master key (“<SharedSecret>”) will not automatically expire; however, the Gateway may update a Cloud Hub's<SharedSecret>.


Once a pending key becomes active, subsequent requests for the PendingDeviceKey receive method=“retry” responses unless a new activation process is initiated (this can be done by administrators and installers via the iControl admin and portal applications).


If the Cloud Hub does not connect to the server over the SMA channel and get authenticated using the key by the “expires” time specified in the PendingPaidKey XML body, then the pending key will expire and no longer be valid. While Cloud Hub activation is underway, each request for the PendingPaidKey receives a different key in the response, causing the previous pending key to be replaced with the new one.


The Cloud Hub retrieves Session Gateway Info, which includes SMA Gateway address, during the third step of the process for device installation and bootstrapping.















Purpose
Retrieve SMA Gateway hostname and port from Credential Gateway


Message
HTTPS GET /<gatewayUrl>/GatewayService/<siteID>/connectInfo


Format
HTTP/1.1


Authentication
None


Mandatory
Host


Request


Headers


200 OK
<connectInfo>


response
  <session host=<Session Gateway host> port=[port] /><ris



eventPort1=‘[port]’ eventPort2=‘[port]’ controlPort1=‘[port]’



controlPort2=‘[port]”/>



  <xmpp host=<XMPP Gateway host> port=[port] /> (ignored)



</connectInfo>


Error responses
Standard HTTP response codes (e.g., 404)



<connectInfo>


Example 200
<session host=‘gsess-aristotleqap.icontrol.com’ port=‘443’/><ris


OK Response
eventPort1=‘11083’ eventPort2=‘11083’ controlPort1=‘11084’



controlPort2=‘11084’/>



<xmpp host=‘gsess-aristotleqap.icontrol.com’ port=‘5222’/><media



url=‘https://media-



aristotleqap.icontrol.com/gw/GatewayService’/></connectInfo>












Variable Name
Format
Description/Notes





gatewayUrl
https://hostname[:port]/path
Retrieved Via Step 1 - Retrieve




Gateway URL and SiteID


siteID
12-20 char alpha numeric
Retrieved Via Step 1 - Retrieve



string
Gateway URL and SiteID


XMPP Gateway
Hostname and port
These variables should be ignored by


host:port
IPAddress and port
the Cloud Hub.


Session Gateway
Hostname
Host and command port to use for


host

SMA communication with the




Gateway.


session:port
port
This port variable should be ignored




by the Cloud Hub.


ris:eventPort1/2
port
ports on Session Gateway host to




which SMA async events should be




sent


ris:controlPort1/2
port
ports on Session Gateway host for




establishing the SMA control channel









During the course of operation, the CPE executes the first and third steps of the installation process described above during each start-up/restart; the second step of the installation is executed when there is no previously stored master key. Hence, security credentials can be re-bootstrapped by invalidating the existing master key.


The installation process of an embodiment is as follows:

    • 1) The user starts the “Add Control Hub” wizard.
    • 2) The user is prompted to enter the Control Hub's Activation Key, printed on the device.
    • 3) REST request generated: POST
      • /rest/[partner]/nw/[siteId]/devices?technology=CSMAP&type=Icontrol_OneL ink_CH1000_controlhub&name=[name]&activationKey=[akey]
      • a) Gateway derives the 12-hex-digit CPE serial number from the Activation Key
      • b) Gateway validates the activation key. HTTP 403 is returned if activation key is incorrect
      • c) Gateway calls the addDevice method on the gapp server to add LWG_SerComm_ControlHub_1000 with given serial to site.
        • i) server detects the device type and populates registry
        • ii) HTTP 409 is returned if the device cannot be added
        • iii) HTTP 503 is returned if the device cannot be referenced after it was just recently created.
      • d) Gateway puts the device into pending key state.
      • e) Upon success, HTTP 201 is returned with the “Location” header pointing to relative URI of/rest/[partner]/nw/[netId]/instances/[indexId]
    • 4) On device connection, the gateway updates device-auth/pending-expiry to −1 and device-auth/session-key with password and device/connection-status to connected.
    • 5) Polls for the data point “connection-status” to change to “connected” in the data returned by a GET to the URL returned in step 3e; if does not connect after 60 seconds, displays a timeout message (device has not connected —continue waiting or start over).
    • 6) Upon detecting successful connection, IA displays a successful detection message to the user.


The LWGW of an embodiment is configured to maintain a single CPE coupling or connection. This coupling or connection is encapsulated and managed by the RISSecurityPanel class, but is not so limited.


When configuring the system to include the Cloud Hub, an embodiment factors out the SMA communication and generic state-machine functionality from the RISSecurityPanel to create a new class RISCpeDriver, and a new subclass StandardDevice. The new subclass of StandardDevice, RISRouter, represents the Cloud Hub abstraction in the LWGW. A new class RISMCDevManager is also created. The StandardGateway and RISSecurityPanel classes are configured to perform monitor and control (M/C or MC) (e.g., Z-Wave) device operations via this class's public interface. The LWGW representation of CPE connection state is expanded to allow M/C operations to occur, even if the panel connection is down. FIG. 11 is a block diagram of the LWGW class structure, under an embodiment.


The following methods from RISSecurityPanel (some are over-rides from StandardSecurityPanel) are not panel-specific, but rather represent the functionality of any device which implements basic functionality of an SMA client. Therefore, an embodiment includes use of these methods for the RISRouter class:


getSequenceNumber( ); setSequenceNumber( ); getMasterKey( ); getMasterKeyBytes( ); getSessionKey( ); getDeviceHardwareId; getSessionKeyBytes; setSessionKey; getPendingSessionKey; getPendingSessionKeyBytes; setPendingSessionKey; getSmsPinEncoded; getSmsPin; getSmsPinBytes; setSmsPin; getCommandKeyBytes; getWakeupSK; getConfigSK; getConfigSC; getSK; decryptAESCBC256; decryptAESCBC256IV; getType; encrypt; decrypt; getEncryptionContext; messageWasMissed; setConnected; handleUplinkData; refreshAesKey; setAesKey; isMCPointVariable; sendPendingData; doApplicationTick; getSessionId; startPremisesConnectionTest; getSMSTs; configMessage; wakeupMessage; startDiscovery; cancelDiscovery; getDiscoveryState; getSmaFraming; sendPremesisKeepalive; sendNoop; getIfConfig; setlfConfig; getLogFile; getSystemLogFile; setFirmwareUpgrade; getCpeVersion; getCpeFirmwareVersion; setFwUpgradeProgress; getFwUpgradeProgress; getFwUpgradeProgressString; getControllerld; getNextCommandTime; setNextCommandTime; sendDownRequest; setSyncNoAndCheckForMissedEvents; handleAsyncMessage; handleSessionResponseMessage; sendPremesisConfiguration; getSmsHeaders; sendTestSms; sendWakeupSms; setConnected; commandChannelReady; getConnectivityTestTimeout; getCpeStarter; getCommTest; setSilenceAllTroubles; setClearAllTroubles.


The following methods from RISSecurityPanel are related to M/C devices, and this functionality is handled by the RISRouter (Cloud Hub) class, when present. Hence an interface for them comes out of RISSecurityPanel to be implemented by the RISRouter class. The StandardGateway is configured to decide which class method to call based on the presence of a Cloud Hub: handleMCDiscoveryModeStatusReport; handleMCDeviceStatusReport; reportMCPointUpdate; hasMatchingDeviceNames; getDiscoveredMCDeviceName; doZWave; getMCDevices; getMCDevRoute; getMCDevRoutes; getMCPointValue; getMCPointValues; getMCPointConfigs; getMCPointConfig; setAllMCPointConfigs; setDeviceMCPointConfigs; setMCPointConfig; setMCPointValue; setMCPointValue; failMCCommand; getMCDeviceVersionString; renameDevice; removeDevice.


Commands (e.g., SMAv1) to be routed through the RISRouter class, when present, include but are not limited to the following: GET_MC_DEVICE_CONFIG; GET_MC_POINT_CONFIG; SET_MC_POINT_REPORT_CONFIG; GET_MC_POINT_STATUS; SET_MC_POINT_STATUS; GET_MC_DEVICE_USER_CODES; SET_MC_DEVICE_USER_CODES; REMOVE_MC_DEVICE_USER_CODES; LOCAL_PORT_PASSTHROUGH; REMOVE_MC_DEVICE; SET_MC_DEVICE_NAME; GET_MC_DEVICE_ROUTES.


System commands to be routed through the RISRouter class, when present, include but are not limited to the following: MC_MESH_RELEARN; GET_DISCOVERY_STATUS; SET_DISCOVERY_STATUS; GET_LOCAL_PORT_CONFIG; SET_LOCAL_PORT_CONFIG; GET_MESH_RELEARN_STATUS; RESET_MC_MODULE.


System commands to be conditionally routed to either RISRouter or RISSecurityPanel, include but are not limited to the following: UPGRADE_FIRMWARE; GET_LOG_FILE; GET_LOCAL_TIME; SET_LOCAL_TIME; GET_TIME_ZONE; SET_TIME_ZONE; GET_FIRMWARE_VERSION.


The Cloud Hub of an embodiment is a broadband-connected device, and it is configured to attempt to maintain an always-on TCP/IP connection with the server. Therefore, there is no need for a shoulder-tap mechanism. Likewise, no “wake-up” message is required because the Cloud Hub is effectively always awake. With conventional Tier-1 systems, the server tears down the TCP connection after several minutes of inactivity; for Cloud Hub, the TCP connection should stay up for as long as possible, with periodic server-originated SMA heartbeat messages (SMA Request Type 0), so that the CPE can supervise the connection as being truly active.


Incoming UDP messages from the CPE are routed to the LWGW instance associated with a given site ID. The session server uses the Gateway Registry, which is a one-to-one mapping of CPE-unique IDs to site IDs for this purpose. With the addition of the Cloud Hub, an embodiment includes a second CPE-unique ID that is mapped to the same site ID (LWGW instance) as the primary SMA client's CPE-unique ID. This is accomplished by leveraging a Device Registry service that maintains a mapping of CPE ID and device type to site ID. The session server is modified to use the following procedure upon receipt of a UDP packet:

    • 1. Look up the received packet CPE-unique ID in the Gateway Registry. If a corresponding site ID is found, route the packet to the associated LWGW instance. This is a standard, non-Cloud Hub packet from the CPE's primary SMA Client.
    • 2. If a corresponding site ID is not found in step 1, the session server will look up the received CPE-unique ID with a general Cloud Hub device type ID. If a correspond site ID is found, route the packet to the associated LWGW instance. If not site ID is found, the packet is discarded.


The Cloud Hub, UDP and TCP messages received from the CPE at the session server are sent to the correct LWGW via two REST endpoints, thereby allowing the receiving LWGW instance to run on a session server other than the one at which the message was received.


When a UDP SMA message arrives at a session server, if the LWGW corresponding to the CPE-unique ID message is not already running on the given session server, then the session server initiates a new LWGW instance there, and if the corresponding LWGW is currently running on another session server, it will be gracefully shut down. In this way, the LWGW can move from one session server to another.


Regarding the session server/LWGW routing mechanism of an embodiment, the Cloud Hub network traffic includes a mechanism in which incoming UDP messages to a first session server cause the first session server to determine if the LWGW is running on the first session server. If so, using a LocalRestClient, UDP messages are passed through to the LWGW via a rest endpoint that calls through to the handleAsyncMessage method of the RIS device; if not, LWGW routing cache is checked to determine which session server is hosting the LWGW. If a routing entry is found, then use AMQPRestClient to pass the UDP message through to the specific session server hosting the LWGW via the same rest endpoint that calls through to the handleAsyncMessage method of the RIS device. If no routing entry is found, or the session server returns 404 (e.g., stale routing entry), then the session server sends out a broadcast request using the AMQPRestClient to ask all session servers “who has this LWGW”. If a session server responds to the broadcast request, then the async event is sent to that session server following the method described herein. If no session server responds to the broadcast request, then the LWGW is started on this first session server.


In an embodiment, the Cloud Hub network traffic includes a mechanism in which incoming TCP messages to a first session server cause the first session server to determine if LWGW is running on the first session server. If LWGW is not running on the first session server, LWGW routing cache is checked to determine which session server is hosting the LWGW and the TCP message is passed through accordingly, but using a different rest endpoint than UDP message handling. In the rest endpoint call, the name of the session server with the TCP connection is sent along with the request. When the LWGW receives TCP messages through the rest endpoint, it tracks the name of the session server with the TCP connection.


When the LWGW sends a command over the TCP coupling or connection in an embodiment, it sends a command via the AMQPRestClient to the session server hosting the TCP connection. It has this name saved from when it received the first TCP message for the given connection. If the TCP session server hostname is not known, or responds with a message indicating the TCP connection no longer present, then the LWGW sends out a broadcast request using the AMQPRestClient to ask all session servers “who has this TCP connection”. If any session server responds to the broadcast request, then the LWGW sends the command to that session server following the method described above. If no session server responds to the broadcast request, then the LWGW queues the command for a pre-specified time period.


The system of an embodiment including the Cloud Hub and Virtual Gateway as described in detail herein includes one or more components of the “integrated security system” described in detail in the Related Applications, which are incorporated by reference herein. An example of the “integrated security system” is available as one or more of the numerous systems or platforms available from iControl Networks, Inc., Redwood City, Calif. The system of an embodiment described herein incorporates one or more components of the “integrated security system”. The system of an embodiment described herein is coupled to one or more components of the “integrated security system”. The system of an embodiment described herein integrates with one or more components of the “integrated security system”.


More particularly, the methods and processes of the integrated security system, and hence the full functionality, can be implemented in the system described herein including the Cloud Hub and Virtual Gateway. Therefore, embodiments of the systems described herein integrate broadband and mobile access and control with conventional security systems and premise devices to provide a tri-mode security network (broadband, cellular/GSM, POTS access) that enables users to remotely stay connected to their premises. The integrated security system, while delivering remote premise monitoring and control functionality to conventional monitored premise protection, complements existing premise protection equipment. The integrated security system integrates into the premise network and couples wirelessly with the conventional security panel, enabling broadband access to premise security systems. Automation devices (cameras, lamp modules, thermostats, etc.) can be added, enabling users to remotely see live video and/or pictures and control home devices via their personal web portal or webpage, mobile phone, and/or other remote client device. Users can also receive notifications via email or text message when happenings occur, or do not occur, in their home.


In accordance with the embodiments described herein, a wireless system (e.g., radio frequency (RF)) is provided that enables a security provider or consumer to extend the capabilities of an existing RF-capable security system or a non-RF-capable security system that has been upgraded to support RF capabilities. The system includes an RF-capable Gateway device (physically located within RF range of the RF-capable security system) and associated software operating on the Gateway device. The system also includes a web server, application server, and remote database providing a persistent store for information related to the system.


The security systems of an embodiment, referred to herein as the iControl security system or integrated security system, extend the value of traditional home security by adding broadband access and the advantages of remote home monitoring and home control through the formation of a security network including components of the integrated security system integrated with a conventional premise security system and a premise local area network (LAN). With the integrated security system, conventional home security sensors, cameras, touchscreen keypads, lighting controls, and/or Internet Protocol (IP) devices in the home (or business) become connected devices that are accessible anywhere in the world from a web browser, mobile phone or through content-enabled touchscreens. The integrated security system experience allows security operators to both extend the value proposition of their monitored security systems and reach new consumers that include broadband users interested in staying connected to their family, home and property when they are away from home.


The integrated security system of an embodiment includes security servers (also referred to herein as iConnect servers or security network servers) and an iHub gateway (also referred to herein as the gateway, the iHub, or the iHub client) that couples or integrates into a home network (e.g., LAN) and communicates directly with the home security panel, in both wired and wireless installations. The security system of an embodiment automatically discovers the security system components (e.g., sensors, etc.) belonging to the security system and connected to a control panel of the security system and provides consumers with full two-way access via web and mobile portals. The gateway supports various wireless protocols and can interconnect with a wide range of control panels offered by security system providers. Service providers and users can then extend the system's capabilities with the additional IP cameras, lighting modules or security devices such as interactive touchscreen keypads. The integrated security system adds an enhanced value to these security systems by enabling consumers to stay connected through email and SMS alerts, photo push, event-based video capture and rule-based monitoring and notifications. This solution extends the reach of home security to households with broadband access.


The integrated security system builds upon the foundation afforded by traditional security systems by layering broadband and mobile access, IP cameras, interactive touchscreens, and an open approach to home automation on top of traditional security system configurations. The integrated security system is easily installed and managed by the security operator, and simplifies the traditional security installation process, as described below.


The integrated security system provides an open systems solution to the home security market. As such, the foundation of the integrated security system customer premises equipment (CPE) approach has been to abstract devices, and allows applications to manipulate and manage multiple devices from any vendor. The integrated security system DeviceConnect technology that enables this capability supports protocols, devices, and panels from GE Security and Honeywell, as well as consumer devices using Z-Wave, IP cameras (e.g., Ethernet, wifi, and Homeplug), and IP touchscreens. The DeviceConnect is a device abstraction layer that enables any device or protocol layer to interoperate with integrated security system components. This architecture enables the addition of new devices supporting any of these interfaces, as well as add entirely new protocols.


The benefit of DeviceConnect is that it provides supplier flexibility. The same consistent touchscreen, web, and mobile user experience operate unchanged on whatever security equipment selected by a security system provider, with the system provider's choice of IP cameras, backend data center and central station software.


The integrated security system provides a complete system that integrates or layers on top of a conventional host security system available from a security system provider. The security system provider therefore can select different components or configurations to offer (e.g., CDMA, GPRS, no cellular, etc.) as well as have iControl modify the integrated security system configuration for the system provider's specific needs (e.g., change the functionality of the web or mobile portal, add a GE or Honeywell-compatible TouchScreen, etc.).


The integrated security system integrates with the security system provider infrastructure for central station reporting directly via Broadband and GPRS alarm transmissions. Traditional dial-up reporting is supported via the standard panel connectivity. Additionally, the integrated security system provides interfaces for advanced functionality to the CMS, including enhanced alarm events, system installation optimizations, system test verification, video verification, 2-way voice over IP and GSM.


The integrated security system is an IP centric system that includes broadband connectivity so that the gateway augments the existing security system with broadband and GPRS connectivity. If broadband is down or unavailable GPRS may be used, for example. The integrated security system supports GPRS connectivity using an optional wireless package that includes a GPRS modem in the gateway. The integrated security system treats the GPRS connection as a higher cost though flexible option for data transfers. In an embodiment the GPRS connection is only used to route alarm events (e.g., for cost), however the gateway can be configured (e.g., through the iConnect server interface) to act as a primary channel and pass any or all events over GPRS. Consequently, the integrated security system does not interfere with the current plain old telephone service (POTS) security panel interface. Alarm events can still be routed through POTS; however the gateway also allows such events to be routed through a broadband or GPRS connection as well. The integrated security system provides a web application interface to the CSR tool suite as well as XML web services interfaces for programmatic integration between the security system provider's existing call center products. The integrated security system includes, for example, APIs that allow the security system provider to integrate components of the integrated security system into a custom call center interface. The APIs include XML web service APIs for integration of existing security system provider call center applications with the integrated security system service. All functionality available in the CSR Web application is provided with these API sets. The Java and XML-based APIs of the integrated security system support provisioning, billing, system administration, CSR, central station, portal user interfaces, and content management functions, to name a few. The integrated security system can provide a customized interface to the security system provider's billing system, or alternatively can provide security system developers with APIs and support in the integration effort.


The integrated security system provides or includes business component interfaces for provisioning, administration, and customer care to name a few. Standard templates and examples are provided with a defined customer professional services engagement to help integrate OSS/BSS systems of a Service Provider with the integrated security system.


The integrated security system components support and allow for the integration of customer account creation and deletion with a security system. The iConnect APIs provides access to the provisioning and account management system in iConnect and provide full support for account creation, provisioning, and deletion. Depending on the requirements of the security system provider, the iConnect APIs can be used to completely customize any aspect of the integrated security system backend operational system.


The integrated security system includes a gateway that supports the following standards-based interfaces, to name a few: Ethernet IP communications via Ethernet ports on the gateway, and standard XML/TCP/IP protocols and ports are employed over secured SSL sessions; USB 2.0 via ports on the gateway; 802.11b/g/n IP communications; GSM/GPRS RF WAN communications; CDMA 1×RTT RF WAN communications (optional, can also support EVDO and 3G technologies).


The gateway supports the following proprietary interfaces, to name a few: interfaces including Dialog RF network (319.5 MHz) and RS485 Superbus 2000 wired interface; RF mesh network (908 MHz); and interfaces including RF network (345 MHz) and RS485/RS232bus wired interfaces.


Regarding security for the IP communications (e.g., authentication, authorization, encryption, anti-spoofing, etc), the integrated security system uses SSL to encrypt all IP traffic, using server and client-certificates for authentication, as well as authentication in the data sent over the SSL-encrypted channel. For encryption, integrated security system issues public/private key pairs at the time/place of manufacture, and certificates are not stored in any online storage in an embodiment.


The integrated security system does not need any special rules at the customer premise and/or at the security system provider central station because the integrated security system makes outgoing connections using TCP over the standard HTTP and HTTPS ports. Provided outbound TCP connections are allowed then no special requirements on the firewalls are necessary.



FIG. 12 is a block diagram of the integrated security system 1200, under an embodiment. The integrated security system 1200 of an embodiment includes the gateway 1202 and the security servers 1202 coupled to the conventional home security system 1210. At a customer's home or business, the gateway 1202 connects and manages the diverse variety of home security and self-monitoring devices. The gateway 1202 communicates with the iConnect Servers 1204 located in the service provider's data center 1206 (or hosted in integrated security system data center), with the communication taking place via a communication network 1208 or other network (e.g., cellular network, internet, etc.). These servers 1204 manage the system integrations necessary to deliver the integrated system service described herein. The combination of the gateway 1202 and the iConnect servers 1204 enable a wide variety of remote client devices 1220 (e.g., PCs, mobile phones and PDAs) allowing users to remotely stay in touch with their home, business and family. In addition, the technology allows home security and self-monitoring information, as well as relevant third party content such as traffic and weather, to be presented in intuitive ways within the home, such as on advanced touchscreen keypads.


The integrated security system service (also referred to as iControl service) can be managed by a service provider via browser-based Maintenance and Service Management applications that are provided with the iConnect Servers. Or, if desired, the service can be more tightly integrated with existing OSS/BSS and service delivery systems via the iConnect web services-based XML APIs.


The integrated security system service can also coordinate the sending of alarms to the home security Central Monitoring Station (CMS) 1299. Alarms are passed to the CMS 1299 using standard protocols such as Contact ID or SIA and can be generated from the home security panel location as well as by iConnect server 1204 conditions (such as lack of communications with the integrated security system). In addition, the link between the security servers 1204 and CMS 1299 provides tighter integration between home security and self-monitoring devices and the gateway 1202. Such integration enables advanced security capabilities such as the ability for CMS personnel to view photos taken at the time a burglary alarm was triggered. For maximum security, the gateway 1202 and iConnect servers 1204 support the use of a mobile network (both GPRS and CDMA options are available) as a backup to the primary broadband connection.


The integrated security system service is delivered by hosted servers running software components that communicate with a variety of client types while interacting with other systems. FIG. 13 is a block diagram of components of the integrated security system 1200, under an embodiment. Following is a more detailed description of the components.


The iConnect servers 1204 support a diverse collection of clients 1220 ranging from mobile devices, to PCs, to in-home security devices, to a service provider's internal systems. Most clients 1220 are used by end-users, but there are also a number of clients 1220 that are used to operate the service.


Clients 1220 used by end-users of the integrated security system 1200 include, but are not limited to, the following:


Clients based on gateway client applications 1302 (e.g., a processor-based device running the gateway technology that manages home security and automation devices).


A web browser 1304 accessing a Web Portal application, performing end-user configuration and customization of the integrated security system service as well as monitoring of in-home device status, viewing photos and video, etc. Device and user management can also be performed by this portal application.


A mobile device 1306 (e.g., PDA, mobile phone, etc.) accessing the integrated security system Mobile Portal. This type of client 1306 is used by end-users to view system status and perform operations on devices (e.g., turning on a lamp, arming a security panel, etc.) rather than for system configuration tasks such as adding a new device or user.


PC or browser-based “widget” containers 1308 that present integrated security system service content, as well as other third-party content, in simple, targeted ways (e.g. a widget that resides on a PC desktop and shows live video from a single in-home camera). “Widget” as used herein means applications or programs in the system.


Touchscreen home security keypads 1308 and advanced in-home devices that present a variety of content widgets via an intuitive touchscreen user interface.


Notification recipients 1310 (e.g., cell phones that receive SMS-based notifications when certain events occur (or don't occur), email clients that receive an email message with similar information, etc.).


Custom-built clients (not shown) that access the iConnect web services XML API to interact with users' home security and self-monitoring information in new and unique ways. Such clients could include new types of mobile devices, or complex applications where integrated security system content is integrated into a broader set of application features.


In addition to the end-user clients, the iConnect servers 1204 support PC browser-based Service Management clients that manage the ongoing operation of the overall service. These clients run applications that handle tasks such as provisioning, service monitoring, customer support and reporting.


There are numerous types of server components of the iConnect servers 1204 of an embodiment including, but not limited to, the following: Business Components which manage information about all of the home security and self-monitoring devices; End-User Application Components which display that information for users and access the Business Components via published XML APIs; and Service Management Application Components which enable operators to administer the service (these components also access the Business Components via the XML APIs, and also via published SNMP MIBs).


The server components provide access to, and management of, the objects associated with an integrated security system installation. The top-level object is the “network.” It is a location where a gateway 1202 is located, and is also commonly referred to as a site or premises; the premises can include any type of structure (e.g., home, office, warehouse, etc.) at which a gateway 1202 is located. Users can only access the networks to which they have been granted permission. Within a network, every object monitored by the gateway 1202 is called a device. Devices include the sensors, cameras, home security panels and automation devices, as well as the controller or processor-based device running the gateway applications.


Various types of interactions are possible between the objects in a system. Automations define actions that occur as a result of a change in state of a device. For example, take a picture with the front entry camera when the front door sensor changes to “open”. Notifications are messages sent to users to indicate that something has occurred, such as the front door going to “open” state, or has not occurred (referred to as an iWatch notification). Schedules define changes in device states that are to take place at predefined days and times. For example, set the security panel to “Armed” mode every weeknight at 11:00 pm.


The iConnect Business Components are responsible for orchestrating all of the low-level service management activities for the integrated security system service. They define all of the users and devices associated with a network (site), analyze how the devices interact, and trigger associated actions (such as sending notifications to users). All changes in device states are monitored and logged. The Business Components also manage all interactions with external systems as required, including sending alarms and other related self-monitoring data to the home security Central Monitoring System (CMS) 1299. The Business Components are implemented as portable Java J2EE Servlets, but are not so limited.


The following iConnect Business Components manage the main elements of the integrated security system service, but the embodiment is not so limited:

    • A Registry Manager 1320 defines and manages users and networks. This component is responsible for the creation, modification and termination of users and networks. It is also where a user's access to networks is defined.
    • A Network Manager 1322 defines and manages security and self-monitoring devices that are deployed on a network (site). This component handles the creation, modification, deletion and configuration of the devices, as well as the creation of automations, schedules and notification rules associated with those devices.
    • A Data Manager 1324 manages access to current and logged state data for an existing network and its devices. This component specifically does not provide any access to network management capabilities, such as adding new devices to a network, which are handled exclusively by the Network Manager 1322.
    • To achieve optimal performance for all types of queries, data for current device states is stored separately from historical state data (a.k.a. “logs”) in the database. A Log Data Manager 1326 performs ongoing transfers of current device state data to the historical data log tables.


Additional iConnect Business Components handle direct communications with certain clients and other systems, for example:

    • An iHub Manager 1328 directly manages all communications with gateway clients, including receiving information about device state changes, changing the configuration of devices, and pushing new versions of the gateway client to the hardware it is running on.
    • A Notification Manager 1330 is responsible for sending all notifications to clients via SMS (mobile phone messages), email (via a relay server like an SMTP email server), etc.
    • An Alarm and CMS Manager 1332 sends critical server-generated alarm events to the home security Central Monitoring Station (CMS) and manages all other communications of integrated security system service data to and from the CMS.
    • The Element Management System (EMS) 1334 is an iControl Business Component that manages all activities associated with service installation, scaling and monitoring, and filters and packages service operations data for use by service management applications. The SNMP MIBs published by the EMS can also be incorporated into any third party monitoring system if desired.


The iConnect Business Components store information about the objects that they manage in the iControl Service Database 1340 and in the iControl Content Store 1342. The iControl Content Store is used to store media objects like video, photos and widget content, while the Service Database stores information about users, networks, and devices. Database interaction is performed via a JDBC interface. For security purposes, the Business Components manage all data storage and retrieval.


The iControl Business Components provide web services-based APIs that application components use to access the Business Components' capabilities. Functions of application components include presenting integrated security system service data to end-users, performing administrative duties, and integrating with external systems and back-office applications.


The primary published APIs for the iConnect Business Components include, but are not limited to, the following:

    • A Registry Manager API 1352 provides access to the Registry Manager Business Component's functionality, allowing management of networks and users.
    • A Network Manager API 1354 provides access to the Network Manager Business Component's functionality, allowing management of devices on a network.
    • A Data Manager API 1356 provides access to the Data Manager Business Component's functionality, such as setting and retrieving (current and historical) data about device states.
    • A Provisioning API 1358 provides a simple way to create new networks and configure initial default properties.


Each API of an embodiment includes two modes of access: Java API or XML API. The XML APIs are published as web services so that they can be easily accessed by applications or servers over a network. The Java APIs are a programmer-friendly wrapper for the XML APIs. Application components and integrations written in Java should generally use the Java APIs rather than the XML APIs directly.


The iConnect Business Components also have an XML-based interface 1360 for quickly adding support for new devices to the integrated security system. This interface 1360, referred to as DeviceConnect 1360, is a flexible, standards-based mechanism for defining the properties of new devices and how they can be managed. Although the format is flexible enough to allow the addition of any type of future device, pre-defined XML profiles are currently available for adding common types of devices such as sensors (SensorConnect), home security panels (PanelConnect) and IP cameras (CameraConnect).


The iConnect End-User Application Components deliver the user interfaces that run on the different types of clients supported by the integrated security system service. The components are written in portable Java J2EE technology (e.g., as Java Servlets, as JavaServer Pages (JSPs), etc.) and they all interact with the iControl Business Components via the published APIs.


The following End-User Application Components generate CSS-based HTML/JavaScript that is displayed on the target client. These applications can be dynamically branded with partner-specific logos and URL links (such as Customer Support, etc.). The End-User Application Components of an embodiment include, but are not limited to, the following:

    • An iControl Activation Application 1370 that delivers the first application that a user sees when they set up the integrated security system service. This wizard-based web browser application securely associates a new user with a purchased gateway and the other devices included with it as a kit (if any). It primarily uses functionality published by the Provisioning API.
    • An iControl Web Portal Application 1372 runs on PC browsers and delivers the web-based interface to the integrated security system service. This application allows users to manage their networks (e.g. add devices and create automations) as well as to view/change device states, and manage pictures and videos. Because of the wide scope of capabilities of this application, it uses three different Business Component APIs that include the Registry Manager API, Network Manager API, and Data Manager API, but the embodiment is not so limited.
    • An iControl Mobile Portal 1374 is a small-footprint web-based interface that runs on mobile phones and PDAs. This interface is optimized for remote viewing of device states and pictures/videos rather than network management. As such, its interaction with the Business Components is primarily via the Data Manager API.
    • Custom portals and targeted client applications can be provided that leverage the same Business Component APIs used by the above applications.
    • A Content Manager Application Component 1376 delivers content to a variety of clients. It sends multimedia-rich user interface components to widget container clients (both PC and browser-based), as well as to advanced touchscreen keypad clients. In addition to providing content directly to end-user devices, the Content Manager 1376 provides widget-based user interface components to satisfy requests from other Application Components such as the iControl Web 1372 and Mobile 1374 portals.


A number of Application Components are responsible for overall management of the service. These pre-defined applications, referred to as Service Management Application Components, are configured to offer off-the-shelf solutions for production management of the integrated security system service including provisioning, overall service monitoring, customer support, and reporting, for example. The Service Management Application Components of an embodiment include, but are not limited to, the following:

    • A Service Management Application 1380 allows service administrators to perform activities associated with service installation, scaling and monitoring/alerting. This application interacts heavily with the Element Management System (EMS) Business Component to execute its functionality, and also retrieves its monitoring data from that component via protocols such as SNMP MIBs.
    • A Kitting Application 1382 is used by employees performing service provisioning tasks. This application allows home security and self-monitoring devices to be associated with gateways during the warehouse kitting process.
    • A CSR Application and Report Generator 1384 is used by personnel supporting the integrated security system service, such as CSRs resolving end-user issues and employees enquiring about overall service usage. Pushes of new gateway firmware to deployed gateways is also managed by this application.


The iConnect servers 1204 also support custom-built integrations with a service provider's existing OSS/BSS, CSR and service delivery systems 1390. Such systems can access the iConnect web services XML API to transfer data to and from the iConnect servers 1204. These types of integrations can compliment or replace the PC browser-based Service Management applications, depending on service provider needs.


As described above, the integrated security system of an embodiment includes a gateway, or iHub. The gateway of an embodiment includes a device that is deployed in the home or business and couples or connects the various third-party cameras, home security panels, sensors and devices to the iConnect server over a WAN connection as described in detail herein. The gateway couples to the home network and communicates directly with the home security panel in both wired and wireless sensor installations. The gateway is configured to be low-cost, reliable and thin so that it complements the integrated security system network-based architecture.


The gateway supports various wireless protocols and can interconnect with a wide range of home security control panels. Service providers and users can then extend the system's capabilities by adding IP cameras, lighting modules and additional security devices. The gateway is configurable to be integrated into many consumer appliances, including set-top boxes, routers and security panels. The small and efficient footprint of the gateway enables this portability and versatility, thereby simplifying and reducing the overall cost of the deployment.



FIG. 14 is a block diagram of the gateway 1202 including gateway software or applications, under an embodiment. The gateway software architecture is relatively thin and efficient, thereby simplifying its integration into other consumer appliances such as set-top boxes, routers, touch screens and security panels. The software architecture also provides a high degree of security against unauthorized access. This section describes the various key components of the gateway software architecture.


The gateway application layer 1402 is the main program that orchestrates the operations performed by the gateway. The Security Engine 1404 provides robust protection against intentional and unintentional intrusion into the integrated security system network from the outside world (both from inside the premises as well as from the WAN). The Security Engine 1404 of an embodiment comprises one or more sub-modules or components that perform functions including, but not limited to, the following:

    • Encryption including 128-bit SSL encryption for gateway and iConnect server communication to protect user data privacy and provide secure communication.
    • Bi-directional authentication between the gateway and iConnect server in order to prevent unauthorized spoofing and attacks. Data sent from the iConnect server to the gateway application (or vice versa) is digitally signed as an additional layer of security. Digital signing provides both authentication and validation that the data has not been altered in transit.
    • Camera SSL encapsulation because picture and video traffic offered by off-the-shelf networked IP cameras is not secure when traveling over the Internet. The gateway provides for 128-bit SSL encapsulation of the user picture and video data sent over the internet for complete user security and privacy.
    • 802.11b/g/n with WPA-2 security to ensure that wireless camera communications always takes place using the strongest available protection.
    • A gateway-enabled device is assigned a unique activation key for activation with an iConnect server. This ensures that only valid gateway-enabled devices can be activated for use with the specific instance of iConnect server in use. Attempts to activate gateway-enabled devices by brute force are detected by the Security Engine. Partners deploying gateway-enabled devices have the knowledge that only a gateway with the correct serial number and activation key can be activated for use with an iConnect server. Stolen devices, devices attempting to masquerade as gateway-enabled devices, and malicious outsiders (or insiders as knowledgeable but nefarious customers) cannot effect other customers' gateway-enabled devices.


As standards evolve, and new encryption and authentication methods are proven to be useful, and older mechanisms proven to be breakable, the security manager can be upgraded “over the air” to provide new and better security for communications between the iConnect server and the gateway application, and locally at the premises to remove any risk of eavesdropping on camera communications.


A Remote Firmware Download module 1406 allows for seamless and secure updates to the gateway firmware through the iControl Maintenance Application on the server 1204, providing a transparent, hassle-free mechanism for the service provider to deploy new features and bug fixes to the installed user base. The firmware download mechanism is tolerant of connection loss, power interruption and user interventions (both intentional and unintentional). Such robustness reduces down time and customer support issues. Gateway firmware can be remotely download either for one gateway at a time, a group of gateways, or in batches.


The Automations engine 1408 manages the user-defined rules of interaction between the different devices (e.g. when door opens turn on the light). Though the automation rules are programmed and reside at the portal/server level, they are cached at the gateway level in order to provide short latency between device triggers and actions.


DeviceConnect 1410 includes definitions of all supported devices (e.g., cameras, security panels, sensors, etc.) using a standardized plug-in architecture. The DeviceConnect module 1410 offers an interface that can be used to quickly add support for any new device as well as enabling interoperability between devices that use different technologies/protocols. For common device types, pre-defined sub-modules have been defined, making supporting new devices of these types even easier. SensorConnect 1412 is provided for adding new sensors, CameraConnect 1416 for adding IP cameras, and PanelConnect 1414 for adding home security panels.


The Schedules engine 1418 is responsible for executing the user defined schedules (e.g., take a picture every five minutes; every day at 8 am set temperature to 65 degrees Fahrenheit, etc.). Though the schedules are programmed and reside at the iConnect server level they are sent to the scheduler within the gateway application. The Schedules Engine 1418 then interfaces with SensorConnect 1412 to ensure that scheduled events occur at precisely the desired time.


The Device Management module 1420 is in charge of all discovery, installation and configuration of both wired and wireless IP devices (e.g., cameras, etc.) coupled or connected to the system. Networked IP devices, such as those used in the integrated security system, require user configuration of many IP and security parameters—to simplify the user experience and reduce the customer support burden, the device management module of an embodiment handles the details of this configuration. The device management module also manages the video routing module described below.


The video routing engine 1422 is responsible for delivering seamless video streams to the user with zero-configuration. Through a multi-step, staged approach the video routing engine uses a combination of UPnP port-forwarding, relay server routing and STUN/TURN peer-to-peer routing.



FIG. 15 is a block diagram of components of the gateway 1202, under an embodiment. Depending on the specific set of functionality desired by the service provider deploying the integrated security system service, the gateway 1202 can use any of a number of processors 1502, due to the small footprint of the gateway application firmware. In an embodiment, the gateway could include the Broadcom BCM5354 as the processor for example. In addition, the gateway 1202 includes memory (e.g., FLASH 1504, RAM 1506, etc.) and any number of input/output (I/O) ports 1508.


Referring to the WAN portion 1510 of the gateway 1202, the gateway 1202 of an embodiment can communicate with the iConnect server using a number of communication types and/or protocols, for example Broadband 1512, GPRS 1514 and/or Public Switched Telephone Network (PTSN) 1516 to name a few. In general, broadband communication 1512 is the primary means of connection between the gateway 1202 and the iConnect server 1204 and the GPRS/CDMA 1514 and/or PSTN 1516 interfaces acts as back-up for fault tolerance in case the user's broadband connection fails for whatever reason, but the embodiment is not so limited.


Referring to the LAN portion 1520 of the gateway 1202, various protocols and physical transceivers can be used to communicate to off-the-shelf sensors and cameras. The gateway 1202 is protocol-agnostic and technology-agnostic and as such can easily support almost any device networking protocol. The gateway 1202 can, for example, support GE and Honeywell security RF protocols 1522, Z-Wave 1524, serial (RS232 and RS485) 1526 for direct connection to security panels as well as WiFi 1528 (802.11b/g) for communication to WiFi cameras.


Embodiments include a system comprising a drone comprising a plurality of sensors configured to collect surveillance data at a premises. The drone includes a positioning system and propulsion system configured to control position and movement of the drone for premises surveillance. The system includes a plurality of network devices installed at the premises. The system includes a gateway comprising a rules engine. The gateway is coupled to the drone and the plurality of network devices. The gateway is configured to receive drone data and the surveillance data from the drone and device data from the plurality of network devices. The rules engine is configured to generate control data for the drone and the plurality of network devices using the drone data, the surveillance data and the device data. The system includes a remote client device coupled to the gateway, wherein the remote client device includes a user interface generated by an application of the remote client device. The user interface is configured to present at least one of the drone data, the surveillance data and the device data.


Embodiments include a system comprising: a drone comprising a plurality of sensors configured to collect surveillance data at a premises, wherein the drone includes a positioning system and propulsion system configured to control position and movement of the drone for premises surveillance; a plurality of network devices installed at the premises; a gateway comprising a rules engine, wherein the gateway is coupled to the drone and the plurality of network devices, wherein the gateway is configured to receive drone data and the surveillance data from the drone and device data from the plurality of network devices, wherein the rules engine is configured to generate control data for the drone and the plurality of network devices using the drone data, the surveillance data and the device data; and a remote client device coupled to the gateway, wherein the remote client device includes a user interface generated by an application of the remote client device, wherein the user interface is configured to present at least one of the drone data, the surveillance data and the device data.


The drone comprises an unmanned autonomous vehicle, wherein the plurality of sensors includes at least one of an image sensor, an acoustic sensor, an environmental sensor, a motion sensor, and a detector.


The drone includes at least one of an aircraft, a land vehicle, a watercraft, and a motor vehicle.


The drone includes control logic comprising at least one of the following: operation logic defined by one or more predefined operation procedures using data of sensor states of at least one system sensor of the drone including at least one of velocity, a timer, an inertial measurement unit, and a global positioning system (GPS); range prediction logic defined by a status of the power source of the drone and premises environmental conditions including at least one of wind speed and direction, humidity, altitude, temperature, and air pressure, and a trajectory planner associated with one or more mobile operations; and autonomous logic associated with the range prediction logic including collision avoidance logic and control and encryption for information transmitted between the drone and at least one of the gateway and the remote server.


The drone comprises operational states including at least one of a quiet state, a charging state, and a patrol state when the drone is performing surveillance of the premises.


The drone includes at least one pre-programmed premises patrol route for use in the patrol state.


The drone generates a premises patrol route for use in a patrol state.


The system comprises a remote server coupled to at least one of the gateway and the drone, wherein the remote server is configured to receive at least a portion of the drone data, the surveillance data, the device data, and the control data.


The remote server includes a server rules engine, wherein the server rules engine is configured to control at least one of the drone and at least one premises device of the plurality of premises devices.


Processing of at least one of the drone data, the surveillance data and the device data is distributed among the rules engine of the gateway and the server rules engine.


At least one of the remote server and the gateway are configured to coordinate control of the drone using at least one of the drone data, the surveillance data and the device data.


The system comprises a map of the premises, wherein the map includes at least one of a two-dimensional and a three-dimensional map.


The drone is configured to generate the map from at least one of the drone data, the surveillance data and the device data.


At least one of the drone, the gateway, and the remote server is configured to generate the map from at least one of the drone data, the surveillance data and the device data.


The drone includes a communication system configured to transmit at least one of the surveillance data and the drone data to at least one of the remote server and the gateway, wherein the communication system includes at least one of radio frequency (RF) and cellular channels.


At least one of the gateway and the remote server is configured to generate alert messages using at least one of the drone data, the surveillance data and the device data, and provide the alert messages to the user interface of the remote client device.


The gateway is located at the premises.


The drone includes the gateway.


The remote server includes the gateway.


The gateway is coupled to the remote server via a plurality of communication channels, wherein the plurality of communication channels include at least one of a broadband channel, a cellular channel, and an RF channel.


The rules engine is configured to control interaction among the plurality of premises devices.


The rules engine is configured to control interaction among the drone and at least one premises device of the plurality of premises devices.


The device data comprises data generated by the plurality of premises devices.


The drone data includes at least one of position data and route data of the drone.


The drone data includes system data of at least one drone onboard system.


The gateway is configured to process at least a portion of at least one of the drone data, the surveillance data and the device data.


The position and the movement of the drone is controlled automatically by at least one of the gateway and the server.


The user interface is configured to receive control inputs for the drone, wherein the position and the movement of the drone is controlled via the control inputs.


The user interface is configured to receive control inputs for at least one of the drone and the plurality of network devices.


The system comprises a docking station configured to receive the drone.


The gateway includes the docking station.


The docking station includes a charging system configured to charge a power source of the drone.


The plurality of premises devices includes at least one of an Internet Protocol (IP) device, a sensor, a detector, a camera, a controller, an actuator, an automation device, a monitoring device, and a security device.


The system comprises a security system at the premises, wherein the security system comprises a security controller coupled to security system components installed at the premises.


The security system is configured to provide security data of the premises to a central monitoring station remote to the premises.


The plurality of premises devices includes the security system.


The security system is coupled to at least one of the gateway and the drone.


The drone includes the security controller.


The drone includes the security system.


The drone includes the gateway.


The gateway and the security system form a security network that is independent of remaining premises devices of the plurality of premises devices.


The security system components include at least one of sensors, cameras, input/output (I/O) devices, accessory controllers, door sensor, window sensor, enclosure sensor, motion sensor, thermostat, temperature sensor, heat sensor, smoke sensor, carbon monoxide sensor, water sensor, freeze sensor, weather sensor, and remote control.


Embodiments include a method comprising configuring a drone to include a plurality of sensors configured to collect surveillance data at a premises. The drone includes a positioning system and propulsion system configured to control position and movement of the drone. The method includes configuring a gateway to receive drone data and the surveillance data from the drone and device data from a plurality of network devices installed at the premises, and generate control data for the drone and the plurality of network devices. The method includes configuring a remote client device to include a user interface generated by an application of the remote client device and to present via the user interface at least one of the drone data, the surveillance data and the device data.


Embodiments include a method comprising: configuring a drone to include a plurality of sensors configured to collect surveillance data at a premises, wherein the drone includes a positioning system and propulsion system configured to control position and movement of the drone; configuring a gateway to receive drone data and the surveillance data from the drone and device data from a plurality of network devices installed at the premises, and generate control data for the drone and the plurality of network devices; and configuring a remote client device to include a user interface generated by an application of the remote client device and to present via the user interface at least one of the drone data, the surveillance data and the device data.


Embodiments include a system comprising a drone comprising a plurality of sensors configured to collect surveillance data at a premises. The system includes a plurality of network devices installed at the premises. The system includes a gateway coupled to the drone and the plurality of network devices. The gateway is configured to receive drone data and the surveillance data from the drone and device data from the plurality of network devices. The system includes a remote client device coupled to the gateway. The remote client device includes a user interface configured to present at least one of the drone data, the surveillance data and the device data.


Embodiments include a system comprising: a drone comprising a plurality of sensors configured to collect surveillance data at a premises; a plurality of network devices installed at the premises; a gateway coupled to the drone and the plurality of network devices, wherein the gateway is configured to receive drone data and the surveillance data from the drone and device data from the plurality of network devices; and a remote client device coupled to the gateway, wherein the remote client device includes a user interface configured to present at least one of the drone data, the surveillance data and the device data.


Embodiments include a system comprising a drone comprising an unmanned vehicle configured to perform surveillance of a premises. The surveillance includes at least one of autonomous navigation and remote piloting around the premises. The drone includes a security controller coupled to a plurality of sensors configured to collect security data at the premises. The system includes a remote server coupled to the drone. The remote server is configured to receive the security data and drone data. The remote server is configured to generate control data for the drone and the security controller using the security data and the drone data. The system includes a remote device coupled to at least one of the drone and the remote server. The remote device includes a user interface configured to present the security data and the drone data.


Embodiments include a system comprising: a drone comprising an unmanned vehicle configured to perform surveillance of a premises, wherein the surveillance includes at least one of autonomous navigation and remote piloting around the premises, wherein the drone includes a security controller coupled to a plurality of sensors configured to collect security data at the premises; a remote server coupled to the drone, wherein the remote server is configured to receive the security data and drone data, wherein the remote server is configured to generate control data for the drone and the security controller using the security data and the drone data; and a remote device coupled to at least one of the drone and the remote server, wherein the remote device includes a user interface configured to present the security data and the drone data.


Embodiments include a system comprising a drone comprising an unmanned vehicle configured to perform surveillance of a premises. The surveillance includes at least one of autonomous navigation and remote piloting around the premises. The drone includes a controller coupled to a plurality of sensors configured to collect drone data and security data at the premises. The controller is configured to generate control data for the drone and the premises using the drone data and the security data. The system includes a remote device coupled to the drone. The remote device includes a user interface configured to present at least one of the drone data, the security data, and the control data.


Embodiments include a system comprising: a drone comprising an unmanned vehicle configured to perform surveillance of a premises, wherein the surveillance includes at least one of autonomous navigation and remote piloting around the premises, wherein the drone includes a controller coupled to a plurality of sensors configured to collect drone data and security data at the premises, wherein the controller is configured to generate control data for the drone and the premises using the drone data and the security data; and a remote device coupled to the drone, wherein the remote device includes a user interface configured to present at least one of the drone data, the security data, and the control data.


Embodiments include a system comprising a drone comprising an unmanned vehicle configured to patrol a premises. The patrol includes at least one of autonomous navigation and remote piloting around the premises. The drone includes an automation controller coupled to a plurality of sensors configured to collect sensor data. A first set of sensors of the plurality of sensors is onboard the drone and a second set of sensors of the plurality of sensors is installed at the premises. The system includes a remote server coupled to the drone and configured to receive the sensor data. At least one of the remote server and the automation controller is configured to use the sensor data to generate control data for the drone and for premises devices installed at the premises. The system includes a remote device coupled to at least one of the drone and the remote server. The remote device includes a user interface configured to present at least one of the security data and the drone data


Embodiments include a system comprising: a drone comprising an unmanned vehicle configured to patrol a premises, wherein the patrol includes at least one of autonomous navigation and remote piloting around the premises, wherein the drone includes an automation controller coupled to a plurality of sensors configured to collect sensor data, wherein a first set of sensors of the plurality of sensors is onboard the drone and a second set of sensors of the plurality of sensors is installed at the premises; a remote server coupled to the drone and configured to receive the sensor data, wherein at least one of the remote server and the automation controller is configured to use the sensor data to generate control data for the drone and for premises devices installed at the premises; and a remote device coupled to at least one of the drone and the remote server, wherein the remote device includes a user interface configured to present at least one of the security data and the drone data


As described above, computer networks suitable for use with the embodiments described herein include local area networks (LAN), wide area networks (WAN), Internet, or other connection services and network variations such as the world wide web, the public internet, a private internet, a private computer network, a public network, a mobile network, a cellular network, a value-added network, and the like. Computing devices coupled or connected to the network may be any microprocessor controlled device that permits access to the network, including terminal devices, such as personal computers, workstations, servers, mini computers, main-frame computers, laptop computers, mobile computers, palm top computers, hand held computers, mobile phones, TV set-top boxes, or combinations thereof. The computer network may include one of more LANs, WANs, Internets, and computers. The computers may serve as servers, clients, or a combination thereof.


The system can be a component of a single system, multiple systems, and/or geographically separate systems. The system can also be a subcomponent or subsystem of a single system, multiple systems, and/or geographically separate systems. The system can be coupled to one or more other components (not shown) of a host system or a system coupled to the host system.


One or more components of the system and/or a corresponding system or application to which the system is coupled or connected includes and/or runs under and/or in association with a processing system. The processing system includes any collection of processor-based devices or computing devices operating together, or components of processing systems or devices, as is known in the art. For example, the processing system can include one or more of a portable computer, portable communication device operating in a communication network, and/or a network server. The portable computer can be any of a number and/or combination of devices selected from among personal computers, personal digital assistants, portable computing devices, and portable communication devices, but is not so limited. The processing system can include components within a larger computer system.


The processing system of an embodiment includes at least one processor and at least one memory device or subsystem. The processing system can also include or be coupled to at least one database. The term “processor” as generally used herein refers to any logic processing unit, such as one or more central processing units (CPUs), digital signal processors (DSPs), application-specific integrated circuits (ASIC), etc. The processor and memory can be monolithically integrated onto a single chip, distributed among a number of chips or components, and/or provided by some combination of algorithms. The methods described herein can be implemented in one or more of software algorithm(s), programs, firmware, hardware, components, circuitry, in any combination.


The components of any system that includes the system herein can be located together or in separate locations. Communication paths couple the components and include any medium for communicating or transferring files among the components. The communication paths include wireless connections, wired connections, and hybrid wireless/wired connections. The communication paths also include couplings or connections to networks including local area networks (LANs), metropolitan area networks (MANs), wide area networks (WANs), proprietary networks, interoffice or backend networks, and the Internet. Furthermore, the communication paths include removable fixed mediums like floppy disks, hard disk drives, and CD-ROM disks, as well as flash RAM, Universal Serial Bus (USB) connections, RS-232 connections, telephone lines, buses, and electronic mail messages.


Aspects of the systems and methods described herein may be implemented as functionality programmed into any of a variety of circuitry, including programmable logic devices (PLDs), such as field programmable gate arrays (FPGAs), programmable array logic (PAL) devices, electrically programmable logic and memory devices and standard cell-based devices, as well as application specific integrated circuits (ASICs). Some other possibilities for implementing aspects of the systems and methods include: microcontrollers with memory (such as electronically erasable programmable read only memory (EEPROM)), embedded microprocessors, firmware, software, etc. Furthermore, aspects of the systems and methods may be embodied in microprocessors having software-based circuit emulation, discrete logic (sequential and combinatorial), custom devices, fuzzy (neural) logic, quantum devices, and hybrids of any of the above device types. Of course the underlying device technologies may be provided in a variety of component types, e.g., metal-oxide semiconductor field-effect transistor (MOSFET) technologies like complementary metal-oxide semiconductor (CMOS), bipolar technologies like emitter-coupled logic (ECL), polymer technologies (e.g., silicon-conjugated polymer and metal-conjugated polymer-metal structures), mixed analog and digital, etc.


It should be noted that any system, method, and/or other components disclosed herein may be described using computer aided design tools and expressed (or represented), as data and/or instructions embodied in various computer-readable media, in terms of their behavioral, register transfer, logic component, transistor, layout geometries, and/or other characteristics. Computer-readable media in which such formatted data and/or instructions may be embodied include, but are not limited to, non-volatile storage media in various forms (e.g., optical, magnetic or semiconductor storage media) and carrier waves that may be used to transfer such formatted data and/or instructions through wireless, optical, or wired signaling media or any combination thereof. Examples of transfers of such formatted data and/or instructions by carrier waves include, but are not limited to, transfers (uploads, downloads, e-mail, etc.) over the Internet and/or other computer networks via one or more data transfer protocols (e.g., HTTP, FTP, SMTP, etc.). When received within a computer system via one or more computer-readable media, such data and/or instruction-based expressions of the above described components may be processed by a processing entity (e.g., one or more processors) within the computer system in conjunction with execution of one or more other computer programs.


Unless the context clearly requires otherwise, throughout the description and the claims, the words “comprise,” “comprising,” and the like are to be construed in an inclusive sense as opposed to an exclusive or exhaustive sense; that is to say, in a sense of “including, but not limited to.” Words using the singular or plural number also include the plural or singular number respectively. Additionally, the words “herein,” “hereunder,” “above,” “below,” and words of similar import, when used in this application, refer to this application as a whole and not to any particular portions of this application. When the word “or” is used in reference to a list of two or more items, that word covers all of the following interpretations of the word: any of the items in the list, all of the items in the list and any combination of the items in the list.


The above description of embodiments of the systems and methods is not intended to be exhaustive or to limit the systems and methods to the precise forms disclosed. While specific embodiments of, and examples for, the systems and methods are described herein for illustrative purposes, various equivalent modifications are possible within the scope of the systems and methods, as those skilled in the relevant art will recognize. The teachings of the systems and methods provided herein can be applied to other systems and methods, not only for the systems and methods described above.


The elements and acts of the various embodiments described above can be combined to provide further embodiments. These and other changes can be made to the systems and methods in light of the above detailed description.

Claims
  • 1. A system comprising: a drone associated with monitoring a premises, wherein the drone comprises a plurality of sensors and a propulsion element configured to move the drone, wherein the drone is configured to detect, by one or more of the plurality of sensors, locations of a plurality of premises devices located at the premises, wherein the drone is configured to detect the locations of the plurality of premises devices by controlling, based on signal characteristics associated with at least one of the plurality of premises devices, one or more of movement or speed of the drone;a gateway device located at the premises and configured to: receive, from the drone, drone data associated with one or more of the plurality of sensors or the propulsion element;receive, from a first premises device of the plurality of premises devices and via a first communication protocol, first premises data;receive, from a second premises device of the plurality of premises devices and via a second communication protocol different than the first communication protocol, second premises data; anddetermine, based on the drone data and one or more of the first premises data or the second premises data, control data associated with controlling one or more of the drone or at least a portion of the plurality of premises devices; anda user device configured to communicate with the gateway device and output, via a user interface, one or more of the drone data, the first premises data, the second premises data, or the locations of the plurality of premises devices.
  • 2. The system of claim 1, wherein the drone comprises one or more of an unmanned autonomous vehicle, an aircraft, a land vehicle, a watercraft, or a motor vehicle, and wherein the plurality of sensors comprise one or more of an image sensor, an acoustic sensor, an environmental sensor, a motion sensor, a detector, a video sensor, infrared sensor, ultraviolet sensor, a proximity sensor, a temperature sensor, a moisture sensor, a fire sensor, a carbon monoxide sensor, a near field communication sensor, a scanner configured to detect a location identifier, a laser range finder, a laser doppler velocimeter, or an infrared ranger.
  • 3. The system of claim 2, wherein the drone is configured to perform at least one of: one or more predefined operation procedures based on data indicative of a sensor state associated with at least one of the plurality of sensors of the drone, wherein the sensor state comprises one or more of a velocity, a timer value, an inertial measurement unit, and a global positioning system (GPS) measurement;predict, based on a status of a power source of the drone and a premises environmental condition, a range associated with the drone, wherein the premises environmental condition comprises one or more of a wind speed, a wind direction, a humidity, an altitude, a temperature, an air pressure, or a trajectory; anddetermine a collision avoidance path associated with the drone.
  • 4. The system of claim 1, wherein the drone is configured to at least one of: access a pre-programmed premises patrol route or determine a premises patrol route for use in a patrol state.
  • 5. The system of claim 1, further comprising a remote server located external to the premises and configured to communicate with one or more of the gateway device or the drone, wherein the remote server is configured to receive at least a portion of the drone data and the control data.
  • 6. The system of claim 5, wherein the remote server is configured to control, based on one or more rules, the drone and at least one premises device of the plurality of premises devices.
  • 7. The system of claim 5, wherein at least one of the remote server and the gateway device are configured to coordinate control of the drone using the drone data.
  • 8. The system of claim 5, wherein the gateway device is configured to communicate with the remote server via a plurality of communication channels, wherein the plurality of communication channels comprise one or more of a broadband channel, a cellular channel, or an RF channel.
  • 9. The system of claim 5, wherein one or more of the gateway device or the remote server is configured to cause the drone to move.
  • 10. The system of claim 1, wherein the user interface is configured to output, via the user interface and based on the locations of the plurality of premises devices, a floor plan, and wherein the floor plan comprises one or more of a two-dimensional map or a three-dimensional map of the premises.
  • 11. The system of claim 10, wherein one or more of the drone or the gateway device is configured to generate the floor plan.
  • 12. The system of claim 1, wherein the gateway device is configured to determine, based on one or more of the drone data, the first premises data or the second premises data, an alert message and send, to the user interface of the user device, the alert message.
  • 13. The system of claim 1, wherein one or more of the first premises data and the second premises data comprises data indicative of one or more of an event, a sensor state, or a sensor measurement.
  • 14. The system of claim 1, wherein the gateway device is configured to control interaction among at least one of: the drone and one or more of the plurality of premises devices.
  • 15. The system of claim 1, wherein the drone data comprises one or more of position data, route data of the drone, or system data of at least one drone onboard system.
  • 16. The system of claim 1, wherein the gateway device is configured to process at least a portion of the drone data, the first premises data, and the second premises data.
  • 17. The system of claim 1, wherein the user interface is configured to receive control inputs associated with one or more of the drone or the plurality of premises devices, wherein movement of one or more of the drone or the plurality of premises devices is controlled via the control inputs.
  • 18. The system of claim 1, further comprising a docking station configured to at least one of: receive the drone or charge a power source of the drone.
  • 19. The system of claim 1, wherein the plurality of premises devices comprises one or more of an Internet Protocol (IP) device, a sensor, a detector, a camera, a controller, an actuator, an automation device, a monitoring device, or a security device.
  • 20. The system of claim 1, further comprising a security system located at the premises, wherein the security system comprises a security controller configured to communicate with one or more security system components located at the premises.
  • 21. The system of claim 20, wherein the security system is configured to provide security data associated with the premises to a central monitoring station located external to the premises.
  • 22. The system of claim 20, wherein the plurality of premises devices comprises the security system.
  • 23. The system of claim 20, wherein the security system is configured to communicate with at least one of the gateway device and the drone.
  • 24. The system of claim 20, wherein the drone comprises one or more of the security controller, the security system, or the gateway device.
  • 25. The system of claim 20, wherein the security system components comprise one or more of a sensor, a camera, an input/output (I/O) device, an accessory controller, a door sensor, a window sensor, an enclosure sensor, a motion sensor, a thermostat, a temperature sensor, a heat sensor, a smoke sensor, a carbon monoxide sensor, a water sensor, a freeze sensor, a weather sensor, or a remote control.
  • 26. The system of claim 1, wherein the first communication protocol comprises a first proprietary protocol and the second communication protocol comprises a second proprietary protocol.
  • 27. The system of claim 1, wherein the user interface is configured to output a visual indication of a floor plan, and wherein the visual indication of the floor plan indicates the locations of the plurality of premises devices and at least one value detected by a sensor of at least one of the plurality of premises devices.
  • 28. The system of claim 1, wherein the drone is configured to move at the premises based on one or more of a command associated with user input, a command associated with one or more of the premises devices, a command associated with the gateway device, a command associated with a remote device located external to the premises, entry of the drone into a premises learning mode, data indicative of a route, a command triggered by an automation rule, or data indicative of a change in a state of premises device.
  • 29. The system of claim 1, wherein the drone is configured to detect the locations of the plurality of premises devices based on one or more of a premises learning mode, one or more spatial identifiers associated with the plurality of premises devices, or one or more signals associated with the plurality of premises devices.
  • 30. The system of claim 1, wherein the signal characteristics comprise one or more of a number of sensor signals, a density of sensor signals, a strength of a sensor signal, a direction of sensor signal, or a distance to a sensor.
  • 31. A method comprising: receiving, by a gateway device located at a premises comprising a plurality of premises devices and from a drone associated with monitoring the premises, drone data, wherein the drone comprises a plurality of sensors and a propulsion element configured to move the drone, and wherein the drone is configured to detect, by one or more of the plurality of sensors, locations of the plurality of premises devices, and wherein the drone is configured to detect the locations of the plurality of premises devices by controlling, based on signal characteristics associated with at least one of the plurality of premises devices, one or more of movement or speed of the drone;receiving, by the gateway device and from a first premises device of the plurality of premises devices located at the premises, and via a first communication protocol, first premises data;receiving, by the gateway device and from a second premises device of the plurality of premises devices located at the premises, and via a second communication protocol different than the first communication protocol, second premises data;determining, based on the drone data and one or more of the first premises data or the second premises data, control data associated with controlling one or more of the drone or at least one of the plurality of premises devices; andsending, to a user device, one or more of the drone data, the first premises data, or the second premises data, wherein the user device is configured to output, via a user interface, one or more of the drone data, the first premises data, the second premises data, or the locations of the plurality of premises devices.
  • 32. The method of claim 31, further comprising determining a difference between first data associated with a first time and second data associated with a second time prior to the first time, wherein the first data comprises one or more of the drone data, the first premises data, or the second premises data, wherein determining the control data is based on the difference.
  • 33. The method of claim 31, wherein determining the control data comprises determining one or more of an operation for the drone to perform at an associated location or updated route information for causing the drone to move.
  • 34. A system comprising: a plurality of premises devices located at a premises and comprising a first premises device and a second premises device;a drone comprising a plurality of sensors configured to determine drone data associated with monitoring the premises, wherein the drone is configured to detect, by one or more of the plurality of sensors, locations of the plurality of premises devices, and wherein the drone is configured to detect the locations of the plurality of premises devices by controlling, based on signal characteristics associated with at least one of the plurality of premises devices, one or more of movement or speed of the drone;a gateway device configured to communicate with the drone and the plurality of premises devices, wherein the gateway device is configured to: receive, from the first premises device and via a first communication protocol, first premises data;receive, from the second premises device and via a second communication protocol different from the first communication protocol, second premises data; anddetermine, based on the drone data and one or more of the first premises data or the second premises data, control data associated with controlling one or more of or at least a portion of the plurality of premises devices; anda user device configured to communicate with the gateway device and to output, via a user interface, one or more of the drone data, the first premises data, the second premises data, or the locations of the plurality of premises devices.
  • 35. The system of claim 34, wherein the gateway device is further configured to determine a difference between first data associated with a first time and second data associated with a second time prior to the first time, wherein the first data comprises one or more of the drone data, the first premises data, or the second premises data, wherein the gateway device is configured to determine the control data based on the difference.
  • 36. The system of claim 34, wherein the gateway device is configured to determine the control data by determining one or more of an operation for the drone to perform at an associated location or updated route information for controlling movement of the drone.
  • 37. A device comprising: one or more processors; andmemory storing instructions that, when executed by the one or more processors, cause the device to: receive, at a premises comprising a plurality of premises devices and from a drone associated with monitoring the premises, drone data, wherein the drone comprises a plurality of sensors and a propulsion element configured to move the drone, and wherein the drone is configured to detect, by one or more of the plurality of sensors, locations of the plurality of premises devices, and wherein the drone is configured to detect the locations of the plurality of premises devices by controlling, based on signal characteristics associated with at least one of the plurality of premises devices, one or more of movement or speed of the drone;receive, from a first premises device of the plurality of premises devices located at the premises and via a first communication protocol, first premises data;receive, from a second premises device of the plurality of premises devices located at the premises and via a second communication protocol different than the first communication protocol, second premises data;determine, based on the drone data and one or more of the first premises data or the second premises data, control data associated with controlling one or more of the drone or at least one of the plurality of premises devices; andsend, to a user device, one or more of the drone data, the first premises data, or the second premises data, wherein the user device is configured to output, via a user interface, one or more of the drone data, the first premises data, the second premises data, or the locations of the plurality of premises devices.
  • 38. The device of claim 37, wherein the instructions, when executed by the one or more processors, further cause the device to determine a difference between first data associated with a first time and second data associated with a second time prior to the first time, wherein the first data comprises one or more of the drone data, the first premises data, or the second premises data, and wherein the control data is determined based on the difference.
  • 39. The device of claim 37, wherein the instructions that, when executed by the one or more processors, cause the device to determine the control data comprises instructions that, when executed by the one or more processors, cause the device to determine one or more of an operation for the drone to perform at an associated location or updated route information for causing the drone to move.
  • 40. The device of claim 37, wherein the user interface is configured to output a visual indication of a floor plan, and wherein the visual indication of the floor plan indicates the locations of the plurality of premises devices and at least one value detected by a sensor of at least one of the plurality of premises devices.
  • 41. The device of claim 37, wherein the drone is configured to detect the locations of the plurality of premises devices based on one or more of a premises learning mode, one or more spatial identifiers associated with the plurality of premises devices, or one or more signals associated with the plurality of premises devices.
  • 42. The device of claim 37, wherein the signal characteristics comprise one or more of a number of sensor signals, a density of sensor signals, a strength of a sensor signal, a direction of sensor signal, or a distance to a sensor.
  • 43. A non-transitory computer-readable medium storing computer-executable instructions that, when executed, cause: receiving, by a gateway device located at a premises comprising a plurality of premises devices and from a drone associated with monitoring the premises, drone data, wherein the drone comprises a plurality of sensors and a propulsion element configured to move the drone, and wherein the drone is configured to detect, by one or more of the plurality of sensors, locations of the plurality of premises devices, and wherein the drone is configured to detect the locations of the plurality of premises devices by controlling, based on signal characteristics associated with at least one of the plurality of premises devices, one or more of movement or speed of the drone;receiving, by the gateway device and from a first premises device of the plurality of premises devices located at the premises, and via a first communication protocol, first premises data;receiving, by the gateway device and from a second premises device of the plurality of premises devices located at the premises, and via a second communication protocol different than the first communication protocol, second premises data;determining, based on the drone data and one or more of the first premises data or the second premises data, control data associated with controlling one or more of the drone or at least one of the plurality of premises devices; andsending, to a user device, one or more of the drone data, the first premises data, or the second premises data, wherein the user device is configured to output, via a user interface, one or more of the drone data, the first premises data, the second premises data, or the locations of the plurality of premises devices.
  • 44. The non-transitory computer-readable medium of claim 43, wherein the instructions, when executed, further cause determining a difference between first data associated with a first time and second data associated with a second time prior to the first time, wherein the first data comprises one or more of the drone data, the first premises data, or the second premises data, wherein determining the control data is based on the difference.
  • 45. The non-transitory computer-readable medium of claim 43, wherein determining the control data comprises determining one or more of an operation for the drone to perform at an associated location or updated route information for causing the drone to move.
  • 46. The non-transitory computer-readable medium of claim 43, wherein the user interface is configured to output a visual indication of a floor plan, and wherein the visual indication of the floor plan indicates the locations of the plurality of premises devices and at least one value detected by a sensor of at least one of the plurality of premises devices.
  • 47. The non-transitory computer-readable medium of claim 43, wherein the drone is configured to detect the locations of the plurality of premises devices based on one or more of a premises learning mode, one or more spatial identifiers associated with the plurality of premises devices, or one or more signals associated with the plurality of premises devices.
  • 48. The non-transitory computer-readable medium of claim 43, wherein the signal characteristics comprise one or more of a number of sensor signals, a density of sensor signals, a strength of a sensor signal, a direction of sensor signal, or a distance to a sensor.
RELATED APPLICATIONS

This application claims the benefit of United States (U.S.) Patent Application No. 62/256,232, filed Nov. 17, 2015. This application is a continuation in part application of U.S. patent application Ser. No. 12/189,780, filed Aug. 11, 2008, now abandoned. This application is a continuation in part application of U.S. patent application Ser. No. 13/531,757, filed Jun. 25, 2012, now abandoned. This application is a continuation in part application of U.S. patent application Ser. No. 12/197,958, filed Aug. 25, 2008, now U.S. Pat. No. 10,721,087. This application is a continuation in part application of U.S. patent application Ser. No. 13/334,998, filed Dec. 22, 2011, now U.S. Pat. No. 9,531,593. This application is a continuation in part application of U.S. patent application Ser. No. 12/539,537, filed Aug. 11, 2009, now U.S. Pat. No. 10,156,959. This application is a continuation in part application of U.S. patent application Ser. No. 14/645,808, filed Mar. 12, 2015, now U.S. Pat. No. 10,127,801. This application is a continuation in part application of U.S. patent application Ser. No. 13/104,932, filed May 10, 2011, now abandoned. This application is a continuation in part application of U.S. patent application Ser. No. 13/104,936, filed May 10, 2011, now U.S. Pat. No. 10,380,871. This application is a continuation in part application of U.S. patent application Ser. No. 13/929,568, filed Jun. 27, 2013, now U.S. Pat. No. 10,444,964. This application is a continuation in part application of U.S. patent application Ser. No. 14/704,045, filed May 5, 2015, now U.S. Pat. No. 10,365,810. This application is a continuation in part application of U.S. patent application Ser. No. 14/704,098, filed May 5, 2015, now U.S. Pat. No. 10,348,575. This application is a continuation in part application of U.S. patent application Ser. No. 14/704,127, filed May 5, 2015. This application is a continuation in part application of U.S. patent application Ser. No. 14/628,651, filed Feb. 23, 2015, now U.S. Pat. No. 10,091,014. This application is a continuation in part application of U.S. patent application Ser. No. 13/718,851, filed Dec. 18, 2012, now U.S. Pat. No. 10,156,831. This application is a continuation in part application of U.S. patent application Ser. No. 12/972,740, filed Dec. 20, 2010, now U.S. Pat. No. 9,729,342. This application is a continuation in part application of U.S. patent application Ser. No. 13/954,553, filed Jul. 30, 2013. This application is a continuation in part application of U.S. patent application Ser. No. 14/943,162, filed Nov. 17, 2015, now U.S. Pat. No. 10,062,245. This application is a continuation in part application of U.S. patent application Ser. No. 15/177,915, filed Jun. 9, 2016. This application is a continuation in part application of U.S. patent application Ser. No. 15/196,281, filed Jun. 29, 2016. This application is a continuation in part application of U.S. patent application Ser. No. 15/198,531, filed Jun. 30, 2016. This application is a continuation in part application of U.S. patent application Ser. No. 15/204,662, filed Jul. 7, 2016, now U.S. Pat. No. 10,522,026. This application is a continuation in part application of U.S. patent application Ser. No. 15/292,866, filed Oct. 13, 2016, now abandoned.

US Referenced Citations (2149)
Number Name Date Kind
686838 Appel Nov 1901 A
1738540 Replogle et al. Dec 1929 A
3803576 Dobrzanski et al. Apr 1974 A
3852541 Altenberger Dec 1974 A
4006460 Hewitt et al. Feb 1977 A
4141006 Braxton Feb 1979 A
4206449 Apsell et al. Jun 1980 A
4257038 Rounds et al. Mar 1981 A
4286331 Anderson et al. Aug 1981 A
4304970 Fahey et al. Dec 1981 A
4351023 Richer Sep 1982 A
4363031 Reinowitz Dec 1982 A
4459582 Sheahan et al. Jul 1984 A
4520503 Kirst et al. May 1985 A
4559526 Tani et al. Dec 1985 A
4559527 Kirby Dec 1985 A
4567557 Burns Jan 1986 A
4574305 Campbell et al. Mar 1986 A
4581606 Mallory Apr 1986 A
4591834 Kyle May 1986 A
D284084 Ferrara, Jr. Jun 1986 S
4641127 Wright Feb 1987 A
4652859 Van Wienen Mar 1987 A
4670739 Kelly, Jr. Jun 1987 A
4683460 Nakatsugawa Jul 1987 A
4694282 Tamura et al. Sep 1987 A
4716973 Cobern Jan 1988 A
4730184 Bach Mar 1988 A
4754261 Marino Jun 1988 A
4755792 Pezzolo et al. Jul 1988 A
4779007 Schlanger et al. Oct 1988 A
4801924 Burgmann et al. Jan 1989 A
4812820 Chatwin Mar 1989 A
4818970 Natale et al. Apr 1989 A
4833339 Luchaco et al. May 1989 A
4833449 Gaffigan May 1989 A
4855713 Brunius Aug 1989 A
4860185 Brewer et al. Aug 1989 A
4887064 Drori et al. Dec 1989 A
4897630 Nykerk Jan 1990 A
4918623 Lockitt et al. Apr 1990 A
4918717 Bissonnette et al. Apr 1990 A
4951029 Severson Aug 1990 A
4959713 Morotomi et al. Sep 1990 A
4962473 Crain Oct 1990 A
4980666 Hwang Dec 1990 A
4993059 Smith et al. Feb 1991 A
4994787 Kratt Feb 1991 A
4996646 Farrington Feb 1991 A
5023901 Sloan et al. Jun 1991 A
5083106 Kostusiak et al. Jan 1992 A
5086385 Launey et al. Feb 1992 A
5091780 Pomerleau Feb 1992 A
5109278 Erickson et al. Apr 1992 A
5132968 Cephus Jul 1992 A
5134644 Garton et al. Jul 1992 A
5159315 Schultz et al. Oct 1992 A
5160879 Tortola et al. Nov 1992 A
5164703 Rickman Nov 1992 A
5164979 Choi Nov 1992 A
D337569 Kando Jul 1993 S
5227776 Starefoss Jul 1993 A
5237305 Ishikuro et al. Aug 1993 A
5245694 Zwern Sep 1993 A
5280527 Gullman et al. Jan 1994 A
5283816 Gomez Diaz Feb 1994 A
5299971 Hart Apr 1994 A
5319394 Dukek Jun 1994 A
5319698 Glidewell et al. Jun 1994 A
5334974 Moore, Jr. Aug 1994 A
5400011 Sutton Mar 1995 A
5400246 Wilson et al. Mar 1995 A
5406260 Cummings et al. Apr 1995 A
5410343 Coddington et al. Apr 1995 A
5412708 Katz May 1995 A
5414409 Voosen et al. May 1995 A
5414833 Hershey et al. May 1995 A
5428293 Sinclair et al. Jun 1995 A
5438607 Przygoda, Jr. et al. Aug 1995 A
5446445 Bloomfield et al. Aug 1995 A
5448290 Vanzeeland Sep 1995 A
5452344 Larson Sep 1995 A
5465081 Todd Nov 1995 A
5471194 Guscott Nov 1995 A
5481312 Cash et al. Jan 1996 A
5483224 Rankin et al. Jan 1996 A
5486812 Todd Jan 1996 A
5499014 Greenwaldt Mar 1996 A
5499196 Pacheco Mar 1996 A
5510975 Ziegler, Jr. Apr 1996 A
5519878 Dolin, Jr. May 1996 A
RE35268 Frolov et al. Jun 1996 E
5525966 Parish Jun 1996 A
5526428 Arnold Jun 1996 A
5534845 Issa et al. Jul 1996 A
5541585 Duhame et al. Jul 1996 A
5543778 Stouffer Aug 1996 A
5546072 Creuseremee et al. Aug 1996 A
5546074 Bernal et al. Aug 1996 A
5546447 Skarbo et al. Aug 1996 A
5548646 Aziz et al. Aug 1996 A
5550984 Gelb Aug 1996 A
5557254 Johnson et al. Sep 1996 A
5565843 Meyvis Oct 1996 A
5570079 Dockery Oct 1996 A
5572438 Ehlers et al. Nov 1996 A
5578989 Pedtke Nov 1996 A
5579197 Mengelt et al. Nov 1996 A
5579221 Mun Nov 1996 A
D377034 Matsushita Dec 1996 S
5586254 Kondo et al. Dec 1996 A
5587705 Morris Dec 1996 A
5598086 Somerville Jan 1997 A
5602918 Chen et al. Feb 1997 A
5604493 Behlke Feb 1997 A
5606615 Lapointe et al. Feb 1997 A
5621662 Humphries et al. Apr 1997 A
5623601 Vu Apr 1997 A
5625338 Pildner et al. Apr 1997 A
5625410 Washino et al. Apr 1997 A
5629687 Sutton et al. May 1997 A
5630216 McEwan May 1997 A
5631630 Mcsweeney May 1997 A
5638046 Malinowski Jun 1997 A
5650773 Chiarello Jul 1997 A
5651070 Blunt Jul 1997 A
5652567 Traxler Jul 1997 A
5654694 Newham Aug 1997 A
5675321 Mcbride Oct 1997 A
5680131 Utz Oct 1997 A
5682133 Johnson et al. Oct 1997 A
5686885 Bergman Nov 1997 A
5686896 Bergman Nov 1997 A
5689235 Sugimoto et al. Nov 1997 A
5689708 Regnier et al. Nov 1997 A
5691697 Carvalho et al. Nov 1997 A
5694335 Hollenberg Dec 1997 A
5694595 Jacobs et al. Dec 1997 A
5696486 Poliquin et al. Dec 1997 A
5696898 Baker et al. Dec 1997 A
D389501 Mascarenas, Sr. et al. Jan 1998 S
5706191 Bassett et al. Jan 1998 A
5712679 Coles Jan 1998 A
5714933 Le Van Suu Feb 1998 A
5715394 Jabs Feb 1998 A
5717378 Malvaso et al. Feb 1998 A
5717379 Peters Feb 1998 A
5717578 Afzal Feb 1998 A
5719551 Flick Feb 1998 A
5726912 Krall et al. Mar 1998 A
5731756 Roddy Mar 1998 A
5736927 Stebbins et al. Apr 1998 A
5737391 Dame et al. Apr 1998 A
5748084 Isikoff May 1998 A
5748089 Sizemore May 1998 A
5757616 May et al. May 1998 A
5761206 Kackman Jun 1998 A
5774051 Kostusiak Jun 1998 A
5777551 Hess Jul 1998 A
5777837 Eckel et al. Jul 1998 A
5784461 Shaffer et al. Jul 1998 A
5784463 Chen et al. Jul 1998 A
5790531 Ellebracht et al. Aug 1998 A
5793028 Wagener et al. Aug 1998 A
5793763 Mayes et al. Aug 1998 A
5794128 Brockel et al. Aug 1998 A
5796401 Winer Aug 1998 A
5798701 Bernal et al. Aug 1998 A
5801618 Jenkins Sep 1998 A
5805056 Mueller et al. Sep 1998 A
5805064 Yorkey Sep 1998 A
5809013 Kackman Sep 1998 A
5809265 Blair et al. Sep 1998 A
5812054 Cohen Sep 1998 A
5819124 Somner et al. Oct 1998 A
5821937 Tonelli Oct 1998 A
5844599 Hildin Dec 1998 A
5845070 Ikudome Dec 1998 A
5854588 Dockery Dec 1998 A
5859966 Hayman et al. Jan 1999 A
5861804 Fansa et al. Jan 1999 A
5864614 Farris Jan 1999 A
5867484 Shaunfield Feb 1999 A
5867495 Elliott et al. Feb 1999 A
5874952 Morgan Feb 1999 A
5875395 Holmes Feb 1999 A
5877696 Powell Mar 1999 A
5877957 Bennett Mar 1999 A
5880775 Ross Mar 1999 A
5881226 Veneklase Mar 1999 A
5886894 Rakoff Mar 1999 A
5892442 Ozery Apr 1999 A
5898831 Hall et al. Apr 1999 A
5905438 Weiss et al. May 1999 A
5907279 Bruins et al. May 1999 A
5909183 Borgstahl et al. Jun 1999 A
5914655 Clifton et al. Jun 1999 A
5924069 Kowalkowski et al. Jul 1999 A
5926209 Glatt Jul 1999 A
5933098 Haxton Aug 1999 A
5940387 Humpleman Aug 1999 A
5943394 Ader et al. Aug 1999 A
5952815 Rouillard et al. Sep 1999 A
5955946 Beheshti et al. Sep 1999 A
5958053 Denker Sep 1999 A
5959528 Right et al. Sep 1999 A
5959529 Kail, IV Sep 1999 A
5963916 Kaplan Oct 1999 A
5967975 Ridgeway Oct 1999 A
5974547 Klimenko Oct 1999 A
D416910 Vasquez Nov 1999 S
5982418 Ely Nov 1999 A
5991795 Howard et al. Nov 1999 A
5995838 Oda et al. Nov 1999 A
6002430 Mccall et al. Dec 1999 A
6009320 Dudley Dec 1999 A
6011321 Stancu et al. Jan 2000 A
6011921 Takahashi et al. Jan 2000 A
6032036 Maystre et al. Feb 2000 A
6037991 Thro et al. Mar 2000 A
6038289 Sands Mar 2000 A
6040770 Britton Mar 2000 A
6049272 Moore Apr 2000 A
6049273 Hess Apr 2000 A
6049598 Peters et al. Apr 2000 A
6052052 Delmonaco Apr 2000 A
6058115 Sawyer et al. May 2000 A
6060994 Chen May 2000 A
6067346 Akhteruzzaman et al. May 2000 A
6067440 Diefes May 2000 A
6069655 Seeley et al. May 2000 A
6078253 Fowler Jun 2000 A
6078257 Ferraro Jun 2000 A
6078649 Small et al. Jun 2000 A
6085030 Whitehead et al. Jul 2000 A
6091771 Seeley et al. Jul 2000 A
6094134 Cohen Jul 2000 A
6097429 Seeley et al. Aug 2000 A
6104785 Chen Aug 2000 A
6107918 Klein et al. Aug 2000 A
6107930 Behlke et al. Aug 2000 A
6108034 Kim Aug 2000 A
6112015 Planas et al. Aug 2000 A
6112237 Donaldson et al. Aug 2000 A
6117182 Alpert et al. Sep 2000 A
6124882 Voois et al. Sep 2000 A
6128653 Del et al. Oct 2000 A
6134303 Chen Oct 2000 A
6134591 Nickles Oct 2000 A
6138249 Nolet Oct 2000 A
6139177 Venkatraman et al. Oct 2000 A
6140987 Stein et al. Oct 2000 A
6144993 Fukunaga et al. Nov 2000 A
6154133 Ross et al. Nov 2000 A
6157943 Meyer Dec 2000 A
6161182 Nadooshan Dec 2000 A
6167186 Kawasaki et al. Dec 2000 A
6167253 Farris Dec 2000 A
6181341 Shinagawa Jan 2001 B1
6192282 Smith et al. Feb 2001 B1
6192418 Hale et al. Feb 2001 B1
6198475 Kunimatsu et al. Mar 2001 B1
6198479 Humpleman et al. Mar 2001 B1
6208247 Agre et al. Mar 2001 B1
6208952 Goertzel et al. Mar 2001 B1
6209011 Vong et al. Mar 2001 B1
6211783 Wang Apr 2001 B1
6215404 Morales Apr 2001 B1
6218938 Lin Apr 2001 B1
6219677 Howard Apr 2001 B1
6226031 Barraclough et al. May 2001 B1
6229429 Horon May 2001 B1
6230271 Wadlow et al. May 2001 B1
6239892 Davidson May 2001 B1
6243683 Peters Jun 2001 B1
6246320 Monroe Jun 2001 B1
6252883 Schweickart et al. Jun 2001 B1
6271752 Vaios Aug 2001 B1
6275227 Destefano Aug 2001 B1
6281790 Kimmel et al. Aug 2001 B1
6282569 Wallis et al. Aug 2001 B1
6286038 Reichmeyer et al. Sep 2001 B1
6288716 Humpleman et al. Sep 2001 B1
6289382 Bowman-Amuah Sep 2001 B1
6292766 Mattos et al. Sep 2001 B1
6292827 Raz Sep 2001 B1
6295346 Markowitz et al. Sep 2001 B1
6314425 Serbinis et al. Nov 2001 B1
6320506 Ferraro Nov 2001 B1
6323897 Kogane et al. Nov 2001 B1
D451529 Vasquez Dec 2001 S
6327044 Shima Dec 2001 B1
6331122 Wu Dec 2001 B1
6332193 Glass et al. Dec 2001 B1
6347393 Alpert et al. Feb 2002 B1
6351213 Hirsch et al. Feb 2002 B1
6351271 Mainwaring et al. Feb 2002 B1
6351595 Kim Feb 2002 B1
6351829 Dupont et al. Feb 2002 B1
6353853 Gravlin Mar 2002 B1
6353891 Borella et al. Mar 2002 B1
6359560 Budge et al. Mar 2002 B1
6363417 Howard et al. Mar 2002 B1
6363422 Hunter et al. Mar 2002 B1
6366211 Parker Apr 2002 B1
6369695 Horon Apr 2002 B1
6369705 Kennedy Apr 2002 B1
6370436 Howard et al. Apr 2002 B1
6374079 Hsu Apr 2002 B1
6377861 York Apr 2002 B1
6378109 Young et al. Apr 2002 B1
6385772 Courtney May 2002 B1
6392538 Shere May 2002 B1
6400265 Saylor et al. Jun 2002 B1
6405348 Fallah-Tehrani et al. Jun 2002 B1
6411802 Cardina et al. Jun 2002 B1
D460472 Wang Jul 2002 S
6418037 Zhang Jul 2002 B1
6421080 Lambert Jul 2002 B1
6430629 Smyers Aug 2002 B1
6433683 Robinson Aug 2002 B1
6434604 Harada et al. Aug 2002 B1
6434700 Alonso et al. Aug 2002 B1
6437692 Petite et al. Aug 2002 B1
6441723 Mansfield et al. Aug 2002 B1
6441731 Hess Aug 2002 B1
6442241 Tsumpes Aug 2002 B1
6445291 Addy et al. Sep 2002 B2
6446192 Narasimhan et al. Sep 2002 B1
6452490 Garland et al. Sep 2002 B1
6452923 Gerszberg et al. Sep 2002 B1
6453687 Sharood et al. Sep 2002 B2
D464328 Vasquez et al. Oct 2002 S
D464948 Vasquez et al. Oct 2002 S
6462507 Fisher, Jr. Oct 2002 B2
6462663 Wilson et al. Oct 2002 B1
6467084 Howard et al. Oct 2002 B1
6476858 Ramirez et al. Nov 2002 B1
6480901 Weber et al. Nov 2002 B1
6493020 Stevenson et al. Dec 2002 B1
6496927 McGrane et al. Dec 2002 B1
6499131 Savithri et al. Dec 2002 B1
6504479 Lemons et al. Jan 2003 B1
6507589 Ramasubramani et al. Jan 2003 B1
6508709 Karmarkar Jan 2003 B1
6515968 Combar Feb 2003 B1
6526581 Edson Feb 2003 B1
6529230 Chong Mar 2003 B1
6529723 Bentley Mar 2003 B1
6535110 Arora et al. Mar 2003 B1
6542075 Barker et al. Apr 2003 B2
6542992 Peirce et al. Apr 2003 B1
6549130 Joao Apr 2003 B1
6552647 Thiessen et al. Apr 2003 B1
6553336 Johnson et al. Apr 2003 B1
6559769 Anthony et al. May 2003 B2
6563800 Salo et al. May 2003 B1
6563910 Menard et al. May 2003 B2
6567122 Anderson et al. May 2003 B1
6567502 Zellner et al. May 2003 B2
6574234 Myer et al. Jun 2003 B1
6580424 Krumm Jun 2003 B1
6580950 Johnson et al. Jun 2003 B1
6587046 Joao Jul 2003 B2
6587455 Ray et al. Jul 2003 B1
6587736 Howard et al. Jul 2003 B2
6587739 Abrams et al. Jul 2003 B1
6591094 Bentley Jul 2003 B1
6593856 Madau Jul 2003 B1
6597703 Li et al. Jul 2003 B1
6601086 Howard et al. Jul 2003 B1
6603488 Humpleman et al. Aug 2003 B2
6609127 Lee et al. Aug 2003 B1
6611206 Eshelman et al. Aug 2003 B2
6615088 Myer et al. Sep 2003 B1
6621827 Rezvani et al. Sep 2003 B1
6624750 Marman et al. Sep 2003 B1
6631416 Bendinelli et al. Oct 2003 B2
6636893 Fong Oct 2003 B1
6643355 Tsumpes Nov 2003 B1
6643652 Helgeson et al. Nov 2003 B2
6643669 Novak et al. Nov 2003 B1
6643795 Sicola et al. Nov 2003 B1
6648682 Wu Nov 2003 B1
6658091 Naidoo et al. Dec 2003 B1
6661340 Saylor et al. Dec 2003 B1
6662340 Rawat et al. Dec 2003 B2
6665004 Paff Dec 2003 B1
6667688 Menard et al. Dec 2003 B1
6674767 Kadyk et al. Jan 2004 B1
6675365 Elzinga Jan 2004 B2
6680730 Shields et al. Jan 2004 B1
6686838 Rezvani et al. Feb 2004 B1
6690411 Naidoo et al. Feb 2004 B2
6690719 Raphaeli et al. Feb 2004 B1
6693530 Dowens et al. Feb 2004 B1
6693545 Brown et al. Feb 2004 B2
6697103 Fernandez et al. Feb 2004 B1
6704786 Gupta et al. Mar 2004 B1
6720990 Walker et al. Apr 2004 B1
6721689 Markle et al. Apr 2004 B2
6721740 Skinner et al. Apr 2004 B1
6721747 Lipkin Apr 2004 B2
6721802 Wright et al. Apr 2004 B1
6727811 Fendis Apr 2004 B1
6728233 Park et al. Apr 2004 B1
6728688 Hirsch et al. Apr 2004 B1
6738824 Blair May 2004 B1
6741171 Palka et al. May 2004 B2
6741977 Nagaya et al. May 2004 B1
6754717 Day, III et al. Jun 2004 B1
6756896 Ford Jun 2004 B2
6756998 Bilger Jun 2004 B1
6759956 Menard et al. Jul 2004 B2
6762686 Tabe Jul 2004 B1
6771181 Hughen, Jr. Aug 2004 B1
6778085 Faulkner et al. Aug 2004 B2
6779019 Mousseau et al. Aug 2004 B1
6781509 Oppedahl et al. Aug 2004 B1
6785542 Blight et al. Aug 2004 B1
6789147 Kessler et al. Sep 2004 B1
6795322 Aihara et al. Sep 2004 B2
6795863 Doty, Jr. Sep 2004 B1
6798344 Faulkner et al. Sep 2004 B2
6804638 Fiedler Oct 2004 B2
6810409 Fry et al. Oct 2004 B1
6823223 Gonzales et al. Nov 2004 B2
6826173 Kung et al. Nov 2004 B1
6826233 Oosawa Nov 2004 B1
6829478 Layton et al. Dec 2004 B1
6834208 Gonzales et al. Dec 2004 B2
6836214 Choi Dec 2004 B2
6850252 Hoffberg Feb 2005 B1
6856236 Christensen et al. Feb 2005 B2
6857026 Cain Feb 2005 B1
6865690 Kocin Mar 2005 B2
6871193 Campbell et al. Mar 2005 B1
6873256 Lemelson et al. Mar 2005 B2
6885362 Suomela Apr 2005 B2
D504889 Andre et al. May 2005 S
6891838 Petite et al. May 2005 B1
6912429 Bilger Jun 2005 B1
6914533 Petite Jul 2005 B2
6918112 Bourke-Dunphy et al. Jul 2005 B2
6920502 Araujo et al. Jul 2005 B2
6920615 Campbell et al. Jul 2005 B1
6922701 Ananian et al. Jul 2005 B1
6928148 Simon et al. Aug 2005 B2
6930598 Weiss Aug 2005 B2
6930599 Naidoo et al. Aug 2005 B2
6930730 Maxon et al. Aug 2005 B2
6931445 Davis Aug 2005 B2
6941258 Van Heijningen et al. Sep 2005 B2
6943681 Rezvani et al. Sep 2005 B2
6956477 Chun Oct 2005 B2
6957186 Guheen et al. Oct 2005 B1
6957275 Sekiguchi Oct 2005 B1
6959341 Leung Oct 2005 B1
6959393 Hollis et al. Oct 2005 B2
6963908 Lynch et al. Nov 2005 B1
6963981 Bailey et al. Nov 2005 B1
6965294 Elliott et al. Nov 2005 B1
6965313 Saylor et al. Nov 2005 B1
6970183 Monroe Nov 2005 B1
6971063 Rappaport et al. Nov 2005 B1
6971076 Chen Nov 2005 B2
6972676 Kimmel et al. Dec 2005 B1
6975220 Foodman et al. Dec 2005 B1
6977485 Wei Dec 2005 B1
6983432 Hayes Jan 2006 B2
6990591 Pearson Jan 2006 B1
6993658 Engberg et al. Jan 2006 B1
6999562 Winick Feb 2006 B2
6999992 Deen et al. Feb 2006 B1
7015806 Naidoo et al. Mar 2006 B2
7016970 Harumoto et al. Mar 2006 B2
7019639 Stilp Mar 2006 B2
7020697 Goodman et al. Mar 2006 B1
7020701 Gelvin et al. Mar 2006 B1
7023913 Monroe Apr 2006 B1
7023914 Furukawa et al. Apr 2006 B2
7023975 Mansfield et al. Apr 2006 B2
7024676 Klopfenstein Apr 2006 B1
7028328 Kogane et al. Apr 2006 B2
7030752 Tyroler Apr 2006 B2
7032002 Rezvani et al. Apr 2006 B1
7034681 Yamamoto et al. Apr 2006 B2
7035907 Decasper et al. Apr 2006 B1
7039391 Rezvani et al. May 2006 B2
7042880 Voit et al. May 2006 B1
7043537 Pratt May 2006 B1
7047088 Nakamura et al. May 2006 B2
7047092 Wimsatt May 2006 B2
7047180 Mathews et al. May 2006 B1
7050388 Kim et al. May 2006 B2
7053764 Stilp May 2006 B2
7053765 Clark May 2006 B1
7068164 Duncan et al. Jun 2006 B1
7072934 Helgeson et al. Jul 2006 B2
7073140 Li et al. Jul 2006 B1
7075429 Marshall Jul 2006 B2
7079020 Stilp Jul 2006 B2
7080046 Rezvani et al. Jul 2006 B1
7081813 Winick et al. Jul 2006 B2
7082460 Hansen et al. Jul 2006 B2
7084756 Stilp Aug 2006 B2
7085814 Gandhi et al. Aug 2006 B1
7085937 Rezvani et al. Aug 2006 B1
7086018 Ito Aug 2006 B2
7099944 Anschutz et al. Aug 2006 B1
7099994 Thayer et al. Aug 2006 B2
7103152 Naidoo et al. Sep 2006 B2
7106176 La et al. Sep 2006 B2
7107322 Freeny, Jr. Sep 2006 B1
7110774 Davis et al. Sep 2006 B1
7113090 Saylor et al. Sep 2006 B1
7113099 Tyroler et al. Sep 2006 B2
7114554 Bergman et al. Oct 2006 B2
7119609 Naidoo et al. Oct 2006 B2
7119674 Sefton Oct 2006 B2
7120139 Kung et al. Oct 2006 B1
7120232 Naidoo et al. Oct 2006 B2
7120233 Naidoo et al. Oct 2006 B2
7126473 Powell Oct 2006 B1
7130383 Naidoo et al. Oct 2006 B2
7130585 Ollis et al. Oct 2006 B1
7134138 Scherr Nov 2006 B2
7136711 Duncan et al. Nov 2006 B1
7142503 Grant et al. Nov 2006 B1
7145898 Elliott Dec 2006 B1
7147147 Enright et al. Dec 2006 B1
7148810 Bhat Dec 2006 B2
7149798 Rezvani et al. Dec 2006 B2
7149814 Neufeld et al. Dec 2006 B2
7158026 Feldkamp et al. Jan 2007 B2
7158776 Estes et al. Jan 2007 B1
7158920 Ishikawa Jan 2007 B2
7164883 Rappaport et al. Jan 2007 B2
7164907 Cochran et al. Jan 2007 B2
7166987 Lee et al. Jan 2007 B2
7171466 Van Der Meulen Jan 2007 B2
7171686 Jansen et al. Jan 2007 B1
7174018 Patil et al. Feb 2007 B1
7174564 Weatherspoon et al. Feb 2007 B1
7180889 Kung et al. Feb 2007 B1
7181207 Chow et al. Feb 2007 B1
7181716 Dahroug Feb 2007 B1
7183907 Simon et al. Feb 2007 B2
7184848 Krzyzanowski et al. Feb 2007 B2
7187279 Chung Mar 2007 B2
7187986 Johnson et al. Mar 2007 B2
7194003 Danner et al. Mar 2007 B2
7194446 Bromley et al. Mar 2007 B1
7203486 Patel Apr 2007 B2
7209945 Hicks, III et al. Apr 2007 B2
7212570 Akiyama et May 2007 B2
7213061 Hite et al May 2007 B1
7218217 Adonailo et al. May 2007 B2
7222359 Freund et al. May 2007 B2
7229012 Enright et al. Jun 2007 B1
7237267 Rayes et al. Jun 2007 B2
7240327 Singh et al. Jul 2007 B2
7246044 Imamura et al. Jul 2007 B2
7248150 Mackjust et al. Jul 2007 B2
7248161 Spoltore et al. Jul 2007 B2
7249177 Miller Jul 2007 B1
7249317 Nakagawa et al. Jul 2007 B1
7250854 Rezvani et al. Jul 2007 B2
7250859 Martin et al. Jul 2007 B2
7254779 Rezvani et al. Aug 2007 B1
7262690 Heaton et al. Aug 2007 B2
7277010 Joao Oct 2007 B2
7292142 Simon et al. Nov 2007 B2
7293083 Ranous et al. Nov 2007 B1
7298253 Petricoin et al. Nov 2007 B2
7305461 Ullman Dec 2007 B2
7310115 Tanimoto Dec 2007 B2
7313102 Stephenson et al. Dec 2007 B2
7313231 Reid Dec 2007 B2
D558460 Yu et al. Jan 2008 S
D558756 Andre et al. Jan 2008 S
7337217 Wang Feb 2008 B2
7337473 Chang et al. Feb 2008 B2
7339895 Ozaki et al. Mar 2008 B2
7340314 Duncan et al. Mar 2008 B1
7343619 Ofek et al. Mar 2008 B2
7345580 Akamatsu et al. Mar 2008 B2
7346338 Calhoun et al. Mar 2008 B1
7349682 Bennett, III et al. Mar 2008 B1
7349761 Cruse Mar 2008 B1
7349967 Wang Mar 2008 B2
7356372 Duncan et al. Apr 2008 B1
7359843 Keller et al. Apr 2008 B1
7362221 Katz Apr 2008 B2
7367045 Ofek et al. Apr 2008 B2
7370115 Bae et al. May 2008 B2
7383339 Meenan et al. Jun 2008 B1
7383522 Murgai et al. Jun 2008 B2
7391298 Campbell et al. Jun 2008 B1
7403838 Deen et al. Jul 2008 B2
7409045 Naidoo et al. Aug 2008 B2
7409451 Meenan et al. Aug 2008 B1
7412447 Hilbert et al. Aug 2008 B2
7425101 Cheng Sep 2008 B2
7428585 Owens, II et al. Sep 2008 B1
7430614 Shen et al. Sep 2008 B2
7437753 Nahum Oct 2008 B2
7440434 Chaskar et al. Oct 2008 B2
7440767 Ballay et al. Oct 2008 B2
7447775 Zhu et al. Nov 2008 B1
7454731 Oh et al. Nov 2008 B2
7457869 Kernan Nov 2008 B2
7466223 Sefton Dec 2008 B2
7469139 van de Groenendaal Dec 2008 B2
7469294 Luo et al. Dec 2008 B1
7469381 Ording Dec 2008 B2
7469391 Carrere et al. Dec 2008 B2
D584738 Kim et al. Jan 2009 S
D585399 Hwang Jan 2009 S
7477629 Tsirtsis et al. Jan 2009 B2
7479949 Jobs et al. Jan 2009 B2
7480713 Ullman Jan 2009 B2
7480724 Zimler et al. Jan 2009 B2
7483958 Elabbady et al. Jan 2009 B1
7493651 Vaenskae et al. Feb 2009 B2
7498695 Gaudreau et al. Mar 2009 B2
7502672 Kolls Mar 2009 B1
7506052 Qian et al. Mar 2009 B2
7509687 Ofek et al. Mar 2009 B2
7511614 Stilp et al. Mar 2009 B2
7512965 Amdur et al. Mar 2009 B1
7526539 Hsu Apr 2009 B1
7526762 Astala et al. Apr 2009 B1
7528723 Fast et al. May 2009 B2
7542721 Bonner et al. Jun 2009 B1
7549134 Li et al. Jun 2009 B1
7551071 Bennett, III et al. Jun 2009 B2
7554934 Abraham et al. Jun 2009 B2
7558379 Winick Jul 2009 B2
7558862 Tyukasz et al. Jul 2009 B1
7558903 Kinstler Jul 2009 B2
7562323 Bai et al. Jul 2009 B1
7564855 Georgiou Jul 2009 B1
7568018 Hove et al. Jul 2009 B1
7571459 Ganesh et al. Aug 2009 B2
7577420 Srinivasan et al. Aug 2009 B2
7583191 Zinser Sep 2009 B2
7587464 Moorer et al. Sep 2009 B2
7590953 Chang Sep 2009 B2
7595816 Enright et al. Sep 2009 B1
7596622 Owen et al. Sep 2009 B2
D602014 Andre et al. Oct 2009 S
D602015 Andre et al. Oct 2009 S
D602017 Andre et al. Oct 2009 S
D602486 Andre et al. Oct 2009 S
D602487 Maskatia Oct 2009 S
7606767 Couper et al. Oct 2009 B1
7610555 Klein et al. Oct 2009 B2
7610559 Humpleman et al. Oct 2009 B1
7619512 Trundle et al. Nov 2009 B2
7620427 Shanahan Nov 2009 B2
7627665 Barker et al. Dec 2009 B2
7633385 Cohn et al. Dec 2009 B2
7634519 Creamer et al. Dec 2009 B2
7639157 Whitley et al. Dec 2009 B1
7651530 Winick Jan 2010 B2
7653911 Doshi et al. Jan 2010 B2
7671729 Hershkovitz et al. Mar 2010 B2
7679503 Mason et al. Mar 2010 B2
7681201 Dale et al. Mar 2010 B2
7684418 Scott et al. Mar 2010 B2
7696873 Sharma et al. Apr 2010 B2
7697028 Johnson Apr 2010 B1
7701970 Krits et al. Apr 2010 B2
7702782 Pai Apr 2010 B1
D615083 Andre et al. May 2010 S
7711796 Gutt et al. May 2010 B2
7720654 Hollis May 2010 B2
7733371 Monroe Jun 2010 B1
7734020 Elliot et al. Jun 2010 B2
7734286 Almeda et al. Jun 2010 B2
7734906 Orlando et al. Jun 2010 B2
7739596 Clarke-Martin et al. Jun 2010 B2
7747975 Dinter et al. Jun 2010 B2
7751409 Carolan Jul 2010 B1
7755472 Grossman Jul 2010 B2
7755506 Clegg et al. Jul 2010 B1
7761275 Chopra et al. Jul 2010 B2
7787863 van de Groenendaal Aug 2010 B2
7804760 Schmukler et al. Sep 2010 B2
D624896 Park et al. Oct 2010 S
D626437 Lee et al. Nov 2010 S
7825793 Spillman et al. Nov 2010 B1
7827252 Hopmann et al. Nov 2010 B2
7844699 Horrocks et al. Nov 2010 B1
7847675 Thyen et al. Dec 2010 B1
7855635 Cohn et al. Dec 2010 B2
7859404 Chul Lee et al. Dec 2010 B2
7882466 Ishikawa Feb 2011 B2
7882537 Okajo et al. Feb 2011 B2
7884855 Ortiz Feb 2011 B2
7890612 Todd et al. Feb 2011 B2
7890915 Celik et al. Feb 2011 B2
7899732 Van Beaumont et al. Mar 2011 B2
7904074 Karaoguz et al. Mar 2011 B2
7904187 Hoffberg et al. Mar 2011 B2
7911341 Raji et al. Mar 2011 B2
D636769 Wood et al. Apr 2011 S
7921686 Bagepalli et al. Apr 2011 B2
7928840 Kim et al. Apr 2011 B2
7930365 Dixit et al. Apr 2011 B2
D637596 Akana et al. May 2011 S
7949960 Roessler et al. May 2011 B2
D639805 Song et al. Jun 2011 S
D640663 Arnholt et al. Jun 2011 S
7956736 Cohn et al. Jun 2011 B2
7957326 Christie, IV Jun 2011 B1
7970863 Fontaine Jun 2011 B1
D641018 Lee et al. Jul 2011 S
7974235 Ghozati et al. Jul 2011 B2
D642563 Akana et al. Aug 2011 S
8001219 Moorer et al. Aug 2011 B2
D645015 Lee et al. Sep 2011 S
D645435 Kim et al. Sep 2011 S
D645833 Seflic et al. Sep 2011 S
8022833 Cho Sep 2011 B2
8028041 Olliphant et al. Sep 2011 B2
8032881 Holmberg et al. Oct 2011 B2
8042049 Killian et al. Oct 2011 B2
8046411 Hayashi et al. Oct 2011 B2
8069194 Manber et al. Nov 2011 B1
D650381 Park et al. Dec 2011 S
8073931 Dawes et al. Dec 2011 B2
8086702 Baum et al. Dec 2011 B2
8086703 Baum et al. Dec 2011 B2
D654460 Kim et al. Feb 2012 S
D654497 Lee Feb 2012 S
8122131 Baum et al. Feb 2012 B2
8125184 Raji et al. Feb 2012 B2
D656137 Chung et al. Mar 2012 S
8140658 Gelvin et al. Mar 2012 B1
8144836 Naidoo et al. Mar 2012 B2
8159519 Kurtz et al. Apr 2012 B2
8159945 Muro et al. Apr 2012 B2
8160425 Kisliakov Apr 2012 B2
8196064 Krzyzanowski et al. Jun 2012 B2
8200827 Hunyady et al. Jun 2012 B1
8205181 Singla et al. Jun 2012 B1
8209400 Baum et al. Jun 2012 B2
D663298 Song et al. Jul 2012 S
D664540 Kim et al. Jul 2012 S
8214494 Slavin Jul 2012 B1
8214496 Gutt et al. Jul 2012 B2
8229812 Raleigh Jul 2012 B2
D664954 Kim et al. Aug 2012 S
D666198 Van Den Nieuwenhuizen et al. Aug 2012 S
8239477 Sharma et al. Aug 2012 B2
D667395 Lee Sep 2012 S
D667396 Koh Sep 2012 S
D667397 Koh Sep 2012 S
D667398 Koh Sep 2012 S
D667399 Koh Sep 2012 S
8269376 Elberbaum Sep 2012 B1
8269623 Addy Sep 2012 B2
8271629 Winters et al. Sep 2012 B1
8271881 Moorer et al. Sep 2012 B2
8272053 Markham et al. Sep 2012 B2
8275830 Raleigh Sep 2012 B2
D668650 Han Oct 2012 S
D668651 Kim et al. Oct 2012 S
D668652 Kim et al. Oct 2012 S
D669469 Kang Oct 2012 S
D670692 Akana et al. Nov 2012 S
D671514 Kim et al. Nov 2012 S
8311526 Forstall et al. Nov 2012 B2
D671938 Hsu et al. Dec 2012 S
D672344 Li Dec 2012 S
D672345 Li Dec 2012 S
D672739 Sin Dec 2012 S
D672768 Huang et al. Dec 2012 S
8335842 Raji et al. Dec 2012 B2
8335854 Eldering Dec 2012 B2
8336010 Chang et al. Dec 2012 B1
D673561 Hyun et al. Jan 2013 S
D673948 Andre et al. Jan 2013 S
D673950 Li et al. Jan 2013 S
D674369 Jaewoong Jan 2013 S
D675203 Yang Jan 2013 S
8350694 Trundle et al. Jan 2013 B1
D675588 Park Feb 2013 S
D675612 Andre et al. Feb 2013 S
D676443 Canizares et al. Feb 2013 S
D676819 Choi Feb 2013 S
8373313 Garcia et al. Feb 2013 B2
D677255 McManigal et al. Mar 2013 S
D677640 Kim et al. Mar 2013 S
D677659 Akana et al. Mar 2013 S
D677660 Groene et al. Mar 2013 S
D678271 Chiu Mar 2013 S
D678272 Groene et al. Mar 2013 S
D678877 Groene et al. Mar 2013 S
8396766 Enright et al. Mar 2013 B1
8400767 Yeom et al. Mar 2013 B2
D679706 Tang et al. Apr 2013 S
D680151 Katori Apr 2013 S
D680524 Feng et al. Apr 2013 S
D681032 Akana et al. Apr 2013 S
8413204 White et al. Apr 2013 B2
D681583 Park May 2013 S
D681591 Sung May 2013 S
D681632 Akana et al. May 2013 S
D682239 Yeh et al. May 2013 S
8451986 Cohn et al. May 2013 B2
D684553 Kim et al. Jun 2013 S
D684968 Smith et al. Jun 2013 S
8456293 Trundle et al. Jun 2013 B1
8473619 Baum et al. Jun 2013 B2
D685778 Fahrendorff et al. Jul 2013 S
D685783 Bryan et al. Jul 2013 S
8478450 Lu et al. Jul 2013 B2
8478844 Baum et al. Jul 2013 B2
8478871 Gutt et al. Jul 2013 B2
8483853 Lambourne Jul 2013 B1
8493202 Trundle et al. Jul 2013 B1
8499038 Vucurevich Jul 2013 B1
8520068 Naidoo et al. Aug 2013 B2
8520072 Slavin et al. Aug 2013 B1
8525664 Hadizad et al. Sep 2013 B2
8543665 Ansari et al. Sep 2013 B2
D692042 Dawes et al. Oct 2013 S
8554478 Hartman Oct 2013 B2
8560041 Flaherty et al. Oct 2013 B2
8570993 Austin et al. Oct 2013 B2
8584199 Chen et al. Nov 2013 B1
8595377 Apgar et al. Nov 2013 B1
D695735 Kitchen et al. Dec 2013 S
8599018 Kellen et al. Dec 2013 B2
8612591 Dawes et al. Dec 2013 B2
8634533 Strasters Jan 2014 B2
8635350 Gutt et al. Jan 2014 B2
8635499 Cohn et al. Jan 2014 B2
8638211 Cohn et al. Jan 2014 B2
8649386 Ansari et al. Feb 2014 B2
8666560 Lu et al. Mar 2014 B2
8675071 Slavin et al. Mar 2014 B1
8700769 Alexander et al. Apr 2014 B2
8704821 Kulkarni et al. Apr 2014 B2
8713132 Baum et al. Apr 2014 B2
8723671 Foisy et al. May 2014 B2
8730834 Marusca et al. May 2014 B2
8738765 Wyatt et al. May 2014 B2
8812654 Gelvin et al. Aug 2014 B2
8817809 Gage Aug 2014 B2
8819178 Baum et al. Aug 2014 B2
8825871 Baum et al. Sep 2014 B2
8836467 Cohn et al. Sep 2014 B1
8885552 Bedingfield, Sr. et al. Nov 2014 B2
8902740 Hicks, III Dec 2014 B2
8914526 Lindquist et al. Dec 2014 B1
8914837 Ahmed et al. Dec 2014 B2
8935236 Morita et al. Jan 2015 B2
8937539 Sharma et al. Jan 2015 B2
8937658 Hicks et al. Jan 2015 B2
8953479 Hall et al. Feb 2015 B2
8953749 Naidoo et al. Feb 2015 B2
8963713 Dawes et al. Feb 2015 B2
8976763 Shrestha et al. Mar 2015 B2
8988217 Piccolo, III Mar 2015 B2
8988221 Raji et al. Mar 2015 B2
8989922 Jones Mar 2015 B2
8996665 Baum et al. Mar 2015 B2
9047753 Dawes et al. Jun 2015 B2
9059863 Baum et al. Jun 2015 B2
9064394 Trundle Jun 2015 B1
9094407 Matthieu et al. Jul 2015 B1
9100446 Cohn et al. Aug 2015 B2
9141276 Dawes et al. Sep 2015 B2
9144143 Raji et al. Sep 2015 B2
9146548 Chambers et al. Sep 2015 B2
9147337 Cohn et al. Sep 2015 B2
9160784 Jeong et al. Oct 2015 B2
9170707 Laska et al. Oct 2015 B1
9172532 Fuller et al. Oct 2015 B1
9172553 Dawes et al. Oct 2015 B2
9172605 Hardy et al. Oct 2015 B2
9189934 Jentoft et al. Nov 2015 B2
9191228 Fulker et al. Nov 2015 B2
9202362 Hyland et al. Dec 2015 B2
9246921 Vlaminck et al. Jan 2016 B1
9286772 Shapiro et al. Mar 2016 B2
9287727 Egan et al. Mar 2016 B1
9300921 Naidoo et al. Mar 2016 B2
9306809 Dawes et al. Apr 2016 B2
9310864 Klein et al. Apr 2016 B1
9373014 Mehranfar Jun 2016 B1
9412248 Cohn et al. Aug 2016 B1
9426720 Cohn et al. Aug 2016 B2
9450776 Baum et al. Sep 2016 B2
9462041 Hagins et al. Oct 2016 B1
9510065 Cohn et al. Nov 2016 B2
9529344 Hagins et al. Dec 2016 B1
9531593 Baum et al. Dec 2016 B2
9553738 Meenan et al. Jan 2017 B2
9600945 Naidoo et al. Mar 2017 B2
9609003 Chmielewski et al. Mar 2017 B1
9613524 Lamb et al. Apr 2017 B1
9621408 Gutt et al. Apr 2017 B2
9721461 Zeng et al. Aug 2017 B2
9729342 Cohn et al. Aug 2017 B2
9779595 Thibault Oct 2017 B2
9805587 Lamb Oct 2017 B2
9824234 Cho et al. Nov 2017 B2
9843458 Cronin Dec 2017 B2
9876651 Cho et al. Jan 2018 B2
9882985 Esam et al. Jan 2018 B1
9978238 Fadell et al. May 2018 B2
9979625 Mclaughlin et al. May 2018 B2
10002507 Wilson et al. Jun 2018 B2
10025473 Sarao et al. Jul 2018 B2
10051078 Burd et al. Aug 2018 B2
10062245 Fulker et al. Aug 2018 B2
10062273 Raji et al. Aug 2018 B2
10078958 Cohn et al. Sep 2018 B2
10079839 Bryan et al. Sep 2018 B1
10120354 Rolston et al. Nov 2018 B1
10127801 Raji et al. Nov 2018 B2
10140840 Cohn et al. Nov 2018 B2
10142392 Raji et al. Nov 2018 B2
10142394 Chmielewski et al. Nov 2018 B2
10156831 Raji et al. Dec 2018 B2
10156959 Fulker et al. Dec 2018 B2
10223903 Raji et al. Mar 2019 B2
10225314 Raji et al. Mar 2019 B2
10237237 Dawes et al. Mar 2019 B2
10237757 Raleigh et al. Mar 2019 B2
10257474 Nadathur et al. Apr 2019 B2
10264138 Raleigh et al. Apr 2019 B2
10313303 Baum et al. Jun 2019 B2
10339791 Baum et al. Jul 2019 B2
10348575 Sundermeyer et al. Jul 2019 B2
10354517 King Jul 2019 B1
10380871 Sundermeyer et al. Aug 2019 B2
10380873 Halverson Aug 2019 B1
10430887 Parker et al. Oct 2019 B1
10523689 Decenzo et al. Dec 2019 B2
10687270 Ishii Jun 2020 B2
10692356 Sundermeyer et al. Jun 2020 B2
10741057 Cohn et al. Aug 2020 B2
10754304 Raji et al. Aug 2020 B2
10782681 Slavin Sep 2020 B1
20010016501 King Aug 2001 A1
20010022836 Bremer et al. Sep 2001 A1
20010025349 Sharood et al. Sep 2001 A1
20010029585 Simon et al. Oct 2001 A1
20010030597 Inoue et al. Oct 2001 A1
20010034209 Tong et al. Oct 2001 A1
20010034754 Elwahab et al. Oct 2001 A1
20010034759 Chiles et al. Oct 2001 A1
20010036192 Chiles et al. Nov 2001 A1
20010042137 Ota et al. Nov 2001 A1
20010044835 Schober et al. Nov 2001 A1
20010046366 Susskind Nov 2001 A1
20010047474 Takagi et al. Nov 2001 A1
20010053207 Jeon et al. Dec 2001 A1
20010054115 Ferguson et al. Dec 2001 A1
20020000913 Hamamoto et al. Jan 2002 A1
20020003575 Marchese Jan 2002 A1
20020004828 Davis et al. Jan 2002 A1
20020005894 Foodman et al. Jan 2002 A1
20020016639 Smith et al. Feb 2002 A1
20020018057 Sano Feb 2002 A1
20020018478 Takeyama et al. Feb 2002 A1
20020019751 Rothschild et al. Feb 2002 A1
20020026476 Miyazaki et al. Feb 2002 A1
20020026531 Keane et al. Feb 2002 A1
20020027504 Davis et al. Mar 2002 A1
20020028696 Hirayama et al. Mar 2002 A1
20020029276 Bendinelli et al. Mar 2002 A1
20020031120 Rakib Mar 2002 A1
20020032853 Preston et al. Mar 2002 A1
20020037004 Bossemeyer et al. Mar 2002 A1
20020038380 Brawn et al. Mar 2002 A1
20020046280 Fujita Apr 2002 A1
20020052719 Alexander et al. May 2002 A1
20020052913 Yamada et al. May 2002 A1
20020055977 Nishi May 2002 A1
20020059078 Valdes et al. May 2002 A1
20020059148 Rosenhaft et al. May 2002 A1
20020059637 Rakib May 2002 A1
20020068558 Janik Jun 2002 A1
20020068984 Alexander et al. Jun 2002 A1
20020072868 Bartone et al. Jun 2002 A1
20020075153 Dahl Jun 2002 A1
20020077077 Rezvani et al. Jun 2002 A1
20020083342 Webb et al. Jun 2002 A1
20020085488 Kobayashi Jul 2002 A1
20020091815 Anderson et al. Jul 2002 A1
20020095490 Barker et al. Jul 2002 A1
20020099809 Lee Jul 2002 A1
20020099829 Richards et al. Jul 2002 A1
20020099854 Jorgensen Jul 2002 A1
20020103898 Moyer et al. Aug 2002 A1
20020103927 Parent Aug 2002 A1
20020107910 Zhao Aug 2002 A1
20020109580 Shreve et al. Aug 2002 A1
20020111698 Graziano et al. Aug 2002 A1
20020112051 Ullman Aug 2002 A1
20020112182 Chang et al. Aug 2002 A1
20020114439 Dunlap Aug 2002 A1
20020116117 Martens et al. Aug 2002 A1
20020118107 Yamamoto et al. Aug 2002 A1
20020118796 Menard et al. Aug 2002 A1
20020120696 Mousseau et al. Aug 2002 A1
20020120698 Tamargo Aug 2002 A1
20020120790 Schwalb Aug 2002 A1
20020126009 Oyagi et al. Sep 2002 A1
20020128728 Murakami et al. Sep 2002 A1
20020131404 Mehta et al. Sep 2002 A1
20020133539 Monday Sep 2002 A1
20020133578 Wu Sep 2002 A1
20020143805 Hayes et al. Oct 2002 A1
20020143923 Alexander Oct 2002 A1
20020147982 Naidoo et al. Oct 2002 A1
20020150086 Bailey et al. Oct 2002 A1
20020152298 Kikta et al. Oct 2002 A1
20020152432 Fleming Oct 2002 A1
20020156564 Preston et al. Oct 2002 A1
20020156899 Sekiguchi Oct 2002 A1
20020161885 Childers et al. Oct 2002 A1
20020163534 Choi et al. Nov 2002 A1
20020163997 Bergman et al. Nov 2002 A1
20020164997 Parry Nov 2002 A1
20020165006 Haller et al. Nov 2002 A1
20020166125 Fulmer Nov 2002 A1
20020174367 Kimmel et al. Nov 2002 A1
20020174434 Lee et al. Nov 2002 A1
20020177428 Menard et al. Nov 2002 A1
20020177482 Cheong et al. Nov 2002 A1
20020178100 Koveos Nov 2002 A1
20020178211 Singhal et al. Nov 2002 A1
20020180579 Nagaoka et al. Dec 2002 A1
20020184301 Parent Dec 2002 A1
20020184527 Chun et al. Dec 2002 A1
20020186683 Buck et al. Dec 2002 A1
20020191636 Hallenbeck Dec 2002 A1
20030001883 Wang Jan 2003 A1
20030004088 Ushio et al. Jan 2003 A1
20030005030 Sutton et al. Jan 2003 A1
20030006879 Kang et al. Jan 2003 A1
20030009552 Benfield et al. Jan 2003 A1
20030009553 Benfield et al. Jan 2003 A1
20030010243 Roller Jan 2003 A1
20030023839 Burkhardt et al. Jan 2003 A1
20030025599 Monroe Feb 2003 A1
20030028294 Yanagi Feb 2003 A1
20030028398 Yamashita et al. Feb 2003 A1
20030030548 Kovacs et al. Feb 2003 A1
20030031165 O'Brien Feb 2003 A1
20030038730 Imafuku et al. Feb 2003 A1
20030038849 Craven et al. Feb 2003 A1
20030039242 Moore Feb 2003 A1
20030041137 Horie et al. Feb 2003 A1
20030041167 French et al. Feb 2003 A1
20030050731 Rosenblum Mar 2003 A1
20030050737 Osann Mar 2003 A1
20030051009 Shah et al. Mar 2003 A1
20030051026 Carter et al. Mar 2003 A1
20030052905 Gordon et al. Mar 2003 A1
20030052923 Porter Mar 2003 A1
20030056012 Modeste et al. Mar 2003 A1
20030056014 Verberkt et al. Mar 2003 A1
20030060900 Lo et al. Mar 2003 A1
20030061344 Monroe Mar 2003 A1
20030061615 Van Der Meulen Mar 2003 A1
20030061621 Petty et al. Mar 2003 A1
20030062997 Naidoo et al. Apr 2003 A1
20030065407 Johnson et al. Apr 2003 A1
20030065757 Mentze et al. Apr 2003 A1
20030065784 Herrod Apr 2003 A1
20030065791 Garg et al. Apr 2003 A1
20030067923 Ju et al. Apr 2003 A1
20030071724 D Amico Apr 2003 A1
20030071840 Huang et al. Apr 2003 A1
20030073406 Benjamin et al. Apr 2003 A1
20030074090 Becka et al. Apr 2003 A1
20030081768 Caminschi May 2003 A1
20030090473 Joshi May 2003 A1
20030096590 Satoh May 2003 A1
20030101243 Donahue et al. May 2003 A1
20030101459 Edson May 2003 A1
20030103088 Dresti et al. Jun 2003 A1
20030110262 Hasan et al. Jun 2003 A1
20030110302 Hodges et al. Jun 2003 A1
20030112866 Yu et al. Jun 2003 A1
20030113100 Hecht et al. Jun 2003 A1
20030115345 Chien et al. Jun 2003 A1
20030123419 Rangnekar et al. Jul 2003 A1
20030123634 Chee Jul 2003 A1
20030128114 Quigley Jul 2003 A1
20030128115 Giacopelli et al. Jul 2003 A1
20030132018 Okita et al. Jul 2003 A1
20030134590 Suda et al. Jul 2003 A1
20030137426 Anthony et al. Jul 2003 A1
20030137991 Doshi et al. Jul 2003 A1
20030147534 Ablay et al. Aug 2003 A1
20030149671 Yamamoto et al. Aug 2003 A1
20030153325 Veerepalli et al. Aug 2003 A1
20030155757 Larsen et al. Aug 2003 A1
20030158609 Chiu Aug 2003 A1
20030158635 Pillar et al. Aug 2003 A1
20030159135 Hiller et al. Aug 2003 A1
20030169728 Choi Sep 2003 A1
20030172145 Nguyen Sep 2003 A1
20030174154 Yukie et al. Sep 2003 A1
20030174648 Wang et al. Sep 2003 A1
20030174717 Zabarski et al. Sep 2003 A1
20030177236 Goto et al. Sep 2003 A1
20030182396 Reich et al. Sep 2003 A1
20030182640 Alani et al. Sep 2003 A1
20030184436 Seales et al. Oct 2003 A1
20030187920 Redkar Oct 2003 A1
20030187938 Mousseau et al. Oct 2003 A1
20030189509 Hayes et al. Oct 2003 A1
20030196115 Karp Oct 2003 A1
20030197847 Shinoda Oct 2003 A1
20030200285 Hansen et al. Oct 2003 A1
20030200325 Krishnaswamy et al. Oct 2003 A1
20030201889 Zulkowski Oct 2003 A1
20030208610 Rochetti et al. Nov 2003 A1
20030210126 Kanazawa Nov 2003 A1
20030214775 Fukuta et al. Nov 2003 A1
20030216143 Roese et al. Nov 2003 A1
20030217110 Weiss Nov 2003 A1
20030217136 Cho et al. Nov 2003 A1
20030225883 Greaves et al. Dec 2003 A1
20030227382 Breed Dec 2003 A1
20030227439 Lee et al. Dec 2003 A1
20030229779 Morais et al. Dec 2003 A1
20030230934 Cordelli et al. Dec 2003 A1
20030233155 Slemmer et al. Dec 2003 A1
20030233332 Keeler et al. Dec 2003 A1
20030233549 Hatakeyama et al. Dec 2003 A1
20030233594 Earl Dec 2003 A1
20030234725 Lemelson et al. Dec 2003 A1
20030236841 Epshteyn Dec 2003 A1
20040003051 Krzyzanowski et al. Jan 2004 A1
20040003241 Sengodan et al. Jan 2004 A1
20040008724 Devine et al. Jan 2004 A1
20040015572 Kang Jan 2004 A1
20040024851 Naidoo et al. Feb 2004 A1
20040034697 Fairhurst et al. Feb 2004 A1
20040034798 Yamada et al. Feb 2004 A1
20040036615 Candela Feb 2004 A1
20040037295 Tanaka et al. Feb 2004 A1
20040039459 Daugherty et al. Feb 2004 A1
20040041910 Naidoo et al. Mar 2004 A1
20040054789 Breh et al. Mar 2004 A1
20040056665 Iwanaga et al. Mar 2004 A1
20040064351 Mikurak Apr 2004 A1
20040068657 Alexander et al. Apr 2004 A1
20040083015 Patwari Apr 2004 A1
20040086088 Naidoo et al. May 2004 A1
20040086090 Naidoo et al. May 2004 A1
20040086093 Schranz May 2004 A1
20040093492 Daude et al. May 2004 A1
20040095943 Korotin May 2004 A1
20040102859 Bennett May 2004 A1
20040103308 Paller May 2004 A1
20040107027 Boudrieau Jun 2004 A1
20040107299 Lee et al. Jun 2004 A1
20040113770 Falk et al. Jun 2004 A1
20040113778 Script et al. Jun 2004 A1
20040113937 Sawdey et al. Jun 2004 A1
20040117068 Lee Jun 2004 A1
20040117330 Ehlers et al. Jun 2004 A1
20040117462 Bodin et al. Jun 2004 A1
20040117465 Bodin et al. Jun 2004 A1
20040123149 Tyroler Jun 2004 A1
20040125146 Gerlach et al. Jul 2004 A1
20040125782 Chang Jul 2004 A1
20040133689 Vasisht Jul 2004 A1
20040136386 Miller et al. Jul 2004 A1
20040137915 Diener et al. Jul 2004 A1
20040139227 Takeda Jul 2004 A1
20040143749 Tajalli et al. Jul 2004 A1
20040153171 Brandt et al. Aug 2004 A1
20040155757 Litwin et al. Aug 2004 A1
20040160309 Stilp Aug 2004 A1
20040162902 Davis Aug 2004 A1
20040163073 Krzyzanowski et al. Aug 2004 A1
20040163118 Mottur Aug 2004 A1
20040163705 Uhler Aug 2004 A1
20040169288 Hsieh et al. Sep 2004 A1
20040170120 Reunamaki et al. Sep 2004 A1
20040170155 Omar et al. Sep 2004 A1
20040172396 Vanska et al. Sep 2004 A1
20040172657 Phillips et al. Sep 2004 A1
20040177163 Casey et al. Sep 2004 A1
20040181693 Milliot et al. Sep 2004 A1
20040183756 Freitas et al. Sep 2004 A1
20040189460 Heaton et al. Sep 2004 A1
20040189471 Ciarcia et al. Sep 2004 A1
20040189871 Kurosawa et al. Sep 2004 A1
20040196844 Hagino Oct 2004 A1
20040198386 Dupray Oct 2004 A1
20040199645 Rouhi Oct 2004 A1
20040201472 Mcgunn et al. Oct 2004 A1
20040202351 Park et al. Oct 2004 A1
20040212494 Stilp Oct 2004 A1
20040212497 Stilp Oct 2004 A1
20040212500 Stilp Oct 2004 A1
20040212503 Stilp Oct 2004 A1
20040212687 Patwari Oct 2004 A1
20040213150 Krause et al. Oct 2004 A1
20040215694 Podolsky Oct 2004 A1
20040215700 Shenfield et al. Oct 2004 A1
20040215750 Stilp Oct 2004 A1
20040215955 Tamai et al. Oct 2004 A1
20040218591 Ogawa et al. Nov 2004 A1
20040220830 Moreton et al. Nov 2004 A1
20040223605 Donnelly Nov 2004 A1
20040225516 Bruskotter et al. Nov 2004 A1
20040225719 Kisley et al. Nov 2004 A1
20040229569 Franz Nov 2004 A1
20040243714 Wynn et al. Dec 2004 A1
20040243835 Terzis et al. Dec 2004 A1
20040243996 Sheehy et al. Dec 2004 A1
20040246339 Ooshima et al. Dec 2004 A1
20040249613 Sprogis et al. Dec 2004 A1
20040249922 Hackman et al. Dec 2004 A1
20040257433 Lia et al. Dec 2004 A1
20040260407 Wimsatt Dec 2004 A1
20040260427 Wimsatt Dec 2004 A1
20040260527 Stanculescu Dec 2004 A1
20040263314 Dorai et al. Dec 2004 A1
20040266493 Bahl et al. Dec 2004 A1
20040267385 Lingemann Dec 2004 A1
20040267937 Klemets Dec 2004 A1
20050002335 Adamczyk et al. Jan 2005 A1
20050002417 Kelly et al. Jan 2005 A1
20050007967 Keskar et al. Jan 2005 A1
20050010866 Humpleman et al. Jan 2005 A1
20050015805 Iwamura Jan 2005 A1
20050021309 Alexander et al. Jan 2005 A1
20050021626 Prajapat et al. Jan 2005 A1
20050022210 Zintel et al. Jan 2005 A1
20050023858 Bingle et al. Feb 2005 A1
20050024203 Wolfe Feb 2005 A1
20050030928 Virtanen et al. Feb 2005 A1
20050033513 Gasbarro Feb 2005 A1
20050038325 Moll et al. Feb 2005 A1
20050038326 Mathur Feb 2005 A1
20050044061 Klemow Feb 2005 A1
20050048957 Casey et al. Mar 2005 A1
20050049746 Rosenblum Mar 2005 A1
20050052831 Chen Mar 2005 A1
20050055575 Evans et al. Mar 2005 A1
20050055716 Louie et al. Mar 2005 A1
20050057361 Giraldo et al. Mar 2005 A1
20050060163 Barsness et al. Mar 2005 A1
20050060411 Coulombe et al. Mar 2005 A1
20050066045 Johnson et al. Mar 2005 A1
20050066912 Korbitz et al. Mar 2005 A1
20050069098 Kalervo et al. Mar 2005 A1
20050071483 Motoyama Mar 2005 A1
20050075764 Horst et al. Apr 2005 A1
20050079855 Jethi et al. Apr 2005 A1
20050081161 Macinnes et al. Apr 2005 A1
20050086093 Hammad et al. Apr 2005 A1
20050086126 Patterson Apr 2005 A1
20050086211 Mayer Apr 2005 A1
20050086366 Luebke et al. Apr 2005 A1
20050088983 Wesslen et al. Apr 2005 A1
20050089023 Barkley et al. Apr 2005 A1
20050090915 Geiwitz Apr 2005 A1
20050091435 Han et al. Apr 2005 A1
20050091696 Wolfe et al. Apr 2005 A1
20050096753 Arling et al. May 2005 A1
20050097478 Killian et al. May 2005 A1
20050101314 Levi May 2005 A1
20050102152 Hodges May 2005 A1
20050102497 Buer May 2005 A1
20050105530 Kono May 2005 A1
20050108091 Sotak et al. May 2005 A1
20050108369 Sather et al. May 2005 A1
20050114432 Hodges et al. May 2005 A1
20050114528 Suito May 2005 A1
20050114900 Ladd et al. May 2005 A1
20050117732 Arpin Jun 2005 A1
20050119913 Hornreich et al. Jun 2005 A1
20050120082 Hesselink et al. Jun 2005 A1
20050125083 Kiko Jun 2005 A1
20050128068 Winick et al. Jun 2005 A1
20050128083 Puzio et al. Jun 2005 A1
20050128093 Genova et al. Jun 2005 A1
20050128314 Ishino Jun 2005 A1
20050144312 Kadyk et al. Jun 2005 A1
20050144645 Casey et al. Jun 2005 A1
20050148356 Ferguson et al. Jul 2005 A1
20050149639 Vrielink et al. Jul 2005 A1
20050149746 Lu et al. Jul 2005 A1
20050154494 Ahmed Jul 2005 A1
20050154774 Giaffreda et al. Jul 2005 A1
20050155757 Paton Jul 2005 A1
20050156568 Yueh Jul 2005 A1
20050156737 Al-Khateeb Jul 2005 A1
20050159823 Hayes et al. Jul 2005 A1
20050159911 Funk et al. Jul 2005 A1
20050169288 Kamiwada et al. Aug 2005 A1
20050174229 Feldkamp et al. Aug 2005 A1
20050179531 Tabe Aug 2005 A1
20050182681 Bruskotter et al. Aug 2005 A1
20050184865 Han Aug 2005 A1
20050188315 Campbell et al. Aug 2005 A1
20050197847 Smith Sep 2005 A1
20050200474 Behnke Sep 2005 A1
20050204076 Cumpson et al. Sep 2005 A1
20050207429 Akita et al. Sep 2005 A1
20050210532 Winick Sep 2005 A1
20050216302 Raji et al. Sep 2005 A1
20050216580 Raji et al. Sep 2005 A1
20050220123 Wybenga et al. Oct 2005 A1
20050222820 Chung Oct 2005 A1
20050222933 Wesby Oct 2005 A1
20050229016 Addy Oct 2005 A1
20050231349 Bhat Oct 2005 A1
20050232242 Karaoguz et al. Oct 2005 A1
20050232284 Karaoguz et al. Oct 2005 A1
20050234568 Chung et al. Oct 2005 A1
20050237182 Wang Oct 2005 A1
20050246119 Koodali Nov 2005 A1
20050249199 Albert et al. Nov 2005 A1
20050253706 Spoltore et al. Nov 2005 A1
20050253709 Baker Nov 2005 A1
20050256608 King et al. Nov 2005 A1
20050257013 Ma Nov 2005 A1
20050257260 Lenoir et al. Nov 2005 A1
20050259673 Lu et al. Nov 2005 A1
20050260973 Van De Groenendaal Nov 2005 A1
20050262241 Gubbi et al. Nov 2005 A1
20050267605 Lee et al. Dec 2005 A1
20050270151 Winick Dec 2005 A1
20050273831 Slomovich et al. Dec 2005 A1
20050276389 Hinkson et al. Dec 2005 A1
20050277434 Tuomi et al. Dec 2005 A1
20050280964 Richmond et al. Dec 2005 A1
20050281196 Tornetta et al. Dec 2005 A1
20050282557 Mikko et al. Dec 2005 A1
20050283823 Okajo et al. Dec 2005 A1
20050285934 Carter Dec 2005 A1
20050285941 Haigh et al. Dec 2005 A1
20060009863 Lingemann Jan 2006 A1
20060010078 Rezvani et al. Jan 2006 A1
20060015943 Mahieu Jan 2006 A1
20060018328 Mody et al. Jan 2006 A1
20060018479 Chen Jan 2006 A1
20060022816 Yukawa Feb 2006 A1
20060023847 Tyroler et al. Feb 2006 A1
20060025132 Karaoguz et al. Feb 2006 A1
20060026301 Maeda et al. Feb 2006 A1
20060031436 Sakata et al. Feb 2006 A1
20060031852 Chu et al. Feb 2006 A1
20060036750 Ladd et al. Feb 2006 A1
20060041655 Holloway et al. Feb 2006 A1
20060045074 Lee Mar 2006 A1
20060050692 Petrescu et al. Mar 2006 A1
20060050862 Shen et al. Mar 2006 A1
20060051122 Kawazu et al. Mar 2006 A1
20060052884 Staples et al. Mar 2006 A1
20060053447 Krzyzanowski et al. Mar 2006 A1
20060053459 Simerly et al. Mar 2006 A1
20060053491 Khuti et al. Mar 2006 A1
20060058923 Kruk et al. Mar 2006 A1
20060063534 Kokkonen et al. Mar 2006 A1
20060064305 Alonso Mar 2006 A1
20060064478 Sirkin Mar 2006 A1
20060067344 Sakurai Mar 2006 A1
20060067356 Kim et al. Mar 2006 A1
20060067484 Elliot et al. Mar 2006 A1
20060072470 Moore et al. Apr 2006 A1
20060075235 Renkis Apr 2006 A1
20060077254 Shu et al. Apr 2006 A1
20060078344 Kawazu et al. Apr 2006 A1
20060080465 Conzola et al. Apr 2006 A1
20060088092 Chen et al. Apr 2006 A1
20060092010 Simon et al. May 2006 A1
20060092011 Simon et al. May 2006 A1
20060093365 Dybsetter et al. May 2006 A1
20060094400 Beachem et al. May 2006 A1
20060101062 Godman et al. May 2006 A1
20060103510 Chen et al. May 2006 A1
20060103520 Clark May 2006 A1
20060104312 Friar May 2006 A1
20060105713 Zheng et al. May 2006 A1
20060106933 Huang et al. May 2006 A1
20060109113 Reyes et al. May 2006 A1
20060109860 Matsunaga et al. May 2006 A1
20060111095 Weigand May 2006 A1
20060114842 Miyamoto et al. Jun 2006 A1
20060121924 Rengaraj et al. Jun 2006 A1
20060123212 Yagawa Jun 2006 A1
20060129837 Im et al. Jun 2006 A1
20060132302 Stilp Jun 2006 A1
20060136558 Sheehan et al. Jun 2006 A1
20060142880 Deen et al. Jun 2006 A1
20060142968 Han et al. Jun 2006 A1
20060142978 Suenbuel et al. Jun 2006 A1
20060143268 Chatani Jun 2006 A1
20060145842 Stilp Jul 2006 A1
20060154642 Scannell, Jr. Jul 2006 A1
20060155851 Ma et al. Jul 2006 A1
20060159032 Ukrainetz et al. Jul 2006 A1
20060161270 Luskin et al. Jul 2006 A1
20060161662 Ng et al. Jul 2006 A1
20060161960 Benoit Jul 2006 A1
20060167784 Hoffberg Jul 2006 A1
20060167919 Hsieh Jul 2006 A1
20060168013 Wilson et al. Jul 2006 A1
20060168095 Sharma et al. Jul 2006 A1
20060168178 Hwang et al. Jul 2006 A1
20060168190 Johan et al. Jul 2006 A1
20060176146 Krishan et al. Aug 2006 A1
20060176167 Dohrmann Aug 2006 A1
20060181406 Petite et al. Aug 2006 A1
20060182100 Li et al. Aug 2006 A1
20060183460 Srinivasan et al. Aug 2006 A1
20060187900 Akbar Aug 2006 A1
20060189311 Cromer et al. Aug 2006 A1
20060190458 Mishina et al. Aug 2006 A1
20060190529 Morozumi et al. Aug 2006 A1
20060197660 Luebke et al. Sep 2006 A1
20060200845 Foster et al. Sep 2006 A1
20060206220 Amundson Sep 2006 A1
20060208872 Yu et al. Sep 2006 A1
20060208880 Funk et al. Sep 2006 A1
20060209857 Hicks, III Sep 2006 A1
20060215650 Wollmershauser et al. Sep 2006 A1
20060217115 Cassett et al. Sep 2006 A1
20060218244 Rasmussen et al. Sep 2006 A1
20060218593 Afshary et al. Sep 2006 A1
20060220830 Bennett et al. Oct 2006 A1
20060221184 Vallone et al. Oct 2006 A1
20060222153 Tarkoff et al. Oct 2006 A1
20060226972 Smith Oct 2006 A1
20060229746 Ollis et al. Oct 2006 A1
20060230270 Goffin Oct 2006 A1
20060233372 Shaheen et al. Oct 2006 A1
20060235963 Wetherly et al. Oct 2006 A1
20060236050 Sugimoto et al. Oct 2006 A1
20060238372 Jung et al. Oct 2006 A1
20060238617 Tamir Oct 2006 A1
20060242395 Fausak Oct 2006 A1
20060244589 Schranz Nov 2006 A1
20060245369 Schimmelpfeng et al. Nov 2006 A1
20060246886 Benco et al. Nov 2006 A1
20060246919 Park et al. Nov 2006 A1
20060250235 Astrin Nov 2006 A1
20060251255 Batta Nov 2006 A1
20060258342 Fok et al. Nov 2006 A1
20060265489 Moore Nov 2006 A1
20060271695 Lavian Nov 2006 A1
20060274764 Mah et al. Dec 2006 A1
20060281435 Shearer et al. Dec 2006 A1
20060282886 Gaug Dec 2006 A1
20060288288 Girgensohn et al. Dec 2006 A1
20060291507 Sarosi et al. Dec 2006 A1
20060294565 Walter Dec 2006 A1
20070001818 Small et al. Jan 2007 A1
20070002833 Bajic Jan 2007 A1
20070005736 Hansen et al. Jan 2007 A1
20070005957 Sahita et al. Jan 2007 A1
20070006177 Aiber et al. Jan 2007 A1
20070008099 Kimmel et al. Jan 2007 A1
20070014248 Fowlow Jan 2007 A1
20070043478 Ehlers et al. Feb 2007 A1
20070043954 Fox Feb 2007 A1
20070046462 Fancella Mar 2007 A1
20070047585 Gillespie et al. Mar 2007 A1
20070052675 Chang Mar 2007 A1
20070055770 Karmakar et al. Mar 2007 A1
20070058627 Smith et al. Mar 2007 A1
20070061018 Callaghan et al. Mar 2007 A1
20070061020 Bovee et al. Mar 2007 A1
20070061266 Moore et al. Mar 2007 A1
20070061430 Kim Mar 2007 A1
20070061878 Hagiu et al. Mar 2007 A1
20070063836 Hayden et al. Mar 2007 A1
20070063866 Webb Mar 2007 A1
20070064714 Bi et al. Mar 2007 A1
20070079151 Connor et al. Apr 2007 A1
20070079385 Williams et al. Apr 2007 A1
20070083668 Kelsey et al. Apr 2007 A1
20070090944 Du Breuil Apr 2007 A1
20070094716 Faring et al. Apr 2007 A1
20070096981 Abraham May 2007 A1
20070101345 Takagi May 2007 A1
20070103433 Katz May 2007 A1
20070105072 Koljonen May 2007 A1
20070106124 Kuriyama et al. May 2007 A1
20070106536 Moore May 2007 A1
20070106547 Agrawal May 2007 A1
20070109975 Reckamp et al. May 2007 A1
20070116020 Cheever et al. May 2007 A1
20070117464 Freeman May 2007 A1
20070118609 Mullan et al. May 2007 A1
20070127510 Bossemeyer et al. Jun 2007 A1
20070130286 Hopmann et al. Jun 2007 A1
20070132576 Kolavennu et al. Jun 2007 A1
20070140267 Yang Jun 2007 A1
20070142022 Madonna et al. Jun 2007 A1
20070142044 Fitzgerald et al. Jun 2007 A1
20070143440 Reckamp et al. Jun 2007 A1
20070146127 Stilp et al. Jun 2007 A1
20070146484 Horton et al. Jun 2007 A1
20070147419 Tsujimoto et al. Jun 2007 A1
20070150616 Baek et al. Jun 2007 A1
20070154010 Wong Jul 2007 A1
20070155325 Bambic et al. Jul 2007 A1
20070155423 Carmody et al. Jul 2007 A1
20070156689 Meek et al. Jul 2007 A1
20070160017 Meier et al. Jul 2007 A1
20070161372 Rogalski et al. Jul 2007 A1
20070162228 Mitchell Jul 2007 A1
20070162680 Mitchell Jul 2007 A1
20070164779 Weston et al. Jul 2007 A1
20070168860 Takayama et al. Jul 2007 A1
20070176766 Cheng Aug 2007 A1
20070182543 Luo Aug 2007 A1
20070182819 Monroe Aug 2007 A1
20070183345 Fahim et al. Aug 2007 A1
20070185989 Corbett et al. Aug 2007 A1
20070192486 Wilson et al. Aug 2007 A1
20070197236 Ahn et al. Aug 2007 A1
20070198698 Boyd et al. Aug 2007 A1
20070200658 Yang Aug 2007 A1
20070208521 Petite et al. Sep 2007 A1
20070214262 Buchbinder et al. Sep 2007 A1
20070214264 Koister Sep 2007 A1
20070216764 Kwak Sep 2007 A1
20070216783 Ortiz et al. Sep 2007 A1
20070218895 Saito et al. Sep 2007 A1
20070223465 Wang et al. Sep 2007 A1
20070223500 Lee et al. Sep 2007 A1
20070226182 Sobotka et al. Sep 2007 A1
20070230415 Malik Oct 2007 A1
20070230744 Dronge Oct 2007 A1
20070245223 Siedzik et al. Oct 2007 A1
20070253361 Pristas et al. Nov 2007 A1
20070255856 Reckamp et al. Nov 2007 A1
20070256105 Tabe Nov 2007 A1
20070257986 Ivanov et al. Nov 2007 A1
20070260713 Moorer et al. Nov 2007 A1
20070262857 Jackson Nov 2007 A1
20070263782 Stock et al. Nov 2007 A1
20070265866 Fehling et al. Nov 2007 A1
20070271398 Manchester et al. Nov 2007 A1
20070275703 Lim et al. Nov 2007 A1
20070277111 Bennett et al. Nov 2007 A1
20070282665 Buehler et al. Dec 2007 A1
20070283001 Spiess et al. Dec 2007 A1
20070283004 Buehler Dec 2007 A1
20070286210 Gutt et al. Dec 2007 A1
20070286369 Gutt et al. Dec 2007 A1
20070287405 Radtke Dec 2007 A1
20070288849 Moorer et al. Dec 2007 A1
20070288858 Pereira Dec 2007 A1
20070290830 Gurley Dec 2007 A1
20070291118 Shu et al. Dec 2007 A1
20070296814 Cooper et al. Dec 2007 A1
20070298772 Owens et al. Dec 2007 A1
20080001734 Stilp et al. Jan 2008 A1
20080013531 Elliott et al. Jan 2008 A1
20080013957 Akers et al. Jan 2008 A1
20080025487 Johan et al. Jan 2008 A1
20080027587 Nickerson et al. Jan 2008 A1
20080042826 Hevia et al. Feb 2008 A1
20080043107 Coogan et al. Feb 2008 A1
20080046593 Ando et al. Feb 2008 A1
20080048861 Naidoo et al. Feb 2008 A1
20080048975 Leibow Feb 2008 A1
20080052348 Adler et al. Feb 2008 A1
20080056261 Osborn et al. Mar 2008 A1
20080059533 Krikorian Mar 2008 A1
20080059622 Hite et al. Mar 2008 A1
20080065681 Fontijn et al. Mar 2008 A1
20080065685 Frank Mar 2008 A1
20080072244 Eker et al. Mar 2008 A1
20080074258 Bennett et al. Mar 2008 A1
20080074993 Vainola Mar 2008 A1
20080082186 Hood et al. Apr 2008 A1
20080084294 Zhiying et al. Apr 2008 A1
20080084296 Kutzik et al. Apr 2008 A1
20080086564 Putman et al. Apr 2008 A1
20080091793 Diroo et al. Apr 2008 A1
20080095339 Elliott et al. Apr 2008 A1
20080102845 Zhao May 2008 A1
20080103608 Gough et al. May 2008 A1
20080104215 Excoffier et al. May 2008 A1
20080104516 Lee May 2008 A1
20080109302 Salokannel et al. May 2008 A1
20080109650 Shim et al. May 2008 A1
20080112340 Luebke May 2008 A1
20080112405 Cholas et al. May 2008 A1
20080117029 Dohrmann et al. May 2008 A1
20080117201 Martinez et al. May 2008 A1
20080117922 Cockrell et al. May 2008 A1
20080120405 Son et al. May 2008 A1
20080122575 Lavian et al. May 2008 A1
20080126535 Zhu et al. May 2008 A1
20080128444 Schininger et al. Jun 2008 A1
20080129484 Dahl et al. Jun 2008 A1
20080129821 Howarter et al. Jun 2008 A1
20080130949 Ivanov et al. Jun 2008 A1
20080133725 Shaouy Jun 2008 A1
20080134343 Pennington et al. Jun 2008 A1
20080137572 Park et al. Jun 2008 A1
20080140868 Kalayjian et al. Jun 2008 A1
20080141303 Walker et al. Jun 2008 A1
20080141341 Vinogradov et al. Jun 2008 A1
20080144884 Habibi Jun 2008 A1
20080147834 Quinn et al. Jun 2008 A1
20080155080 Marlow et al. Jun 2008 A1
20080155470 Khedouri et al. Jun 2008 A1
20080162637 Adamczyk et al. Jul 2008 A1
20080163355 Chu Jul 2008 A1
20080168404 Ording Jul 2008 A1
20080170511 Shorty et al. Jul 2008 A1
20080180240 Raji et al. Jul 2008 A1
20080181239 Wood et al. Jul 2008 A1
20080183483 Hart Jul 2008 A1
20080183842 Raji et al. Jul 2008 A1
20080189609 Larson et al. Aug 2008 A1
20080201468 Titus Aug 2008 A1
20080204190 Cohn et al. Aug 2008 A1
20080204219 Cohn et al. Aug 2008 A1
20080208399 Pham Aug 2008 A1
20080209505 Ghai et al. Aug 2008 A1
20080209506 Ghai et al. Aug 2008 A1
20080215450 Gates et al. Sep 2008 A1
20080215613 Grasso Sep 2008 A1
20080219239 Bell et al. Sep 2008 A1
20080221715 Krzyzanowski et al. Sep 2008 A1
20080227460 David et al. Sep 2008 A1
20080235326 Parsi et al. Sep 2008 A1
20080235600 Harper et al. Sep 2008 A1
20080239075 Mehrotra et al. Oct 2008 A1
20080240372 Frenette Oct 2008 A1
20080240696 Kucharyson Oct 2008 A1
20080253391 Krits et al. Oct 2008 A1
20080259818 Balassanian Oct 2008 A1
20080261540 Rohani et al. Oct 2008 A1
20080263150 Childers et al. Oct 2008 A1
20080266080 Leung et al. Oct 2008 A1
20080266257 Chiang Oct 2008 A1
20080271150 Boerger et al. Oct 2008 A1
20080284580 Babich et al. Nov 2008 A1
20080284587 Saigh et al. Nov 2008 A1
20080284592 Collins et al. Nov 2008 A1
20080288639 Ruppert et al. Nov 2008 A1
20080294588 Morris et al. Nov 2008 A1
20080297599 Donovan et al. Dec 2008 A1
20080303903 Bentley et al. Dec 2008 A1
20080313316 Hite et al. Dec 2008 A1
20080316024 Chantelou et al. Dec 2008 A1
20090003252 Salomone et al. Jan 2009 A1
20090003820 Law et al. Jan 2009 A1
20090007596 Goldstein et al. Jan 2009 A1
20090013210 Mcintosh et al. Jan 2009 A1
20090019141 Bush et al. Jan 2009 A1
20090036142 Yan Feb 2009 A1
20090041467 Carleton et al. Feb 2009 A1
20090042649 Hsieh et al. Feb 2009 A1
20090046664 Aso Feb 2009 A1
20090049094 Howell et al. Feb 2009 A1
20090049488 Stransky Feb 2009 A1
20090051769 Kuo et al. Feb 2009 A1
20090055760 Whatcott et al. Feb 2009 A1
20090057427 Geadelmann et al. Mar 2009 A1
20090063582 Anna et al. Mar 2009 A1
20090066534 Sivakkolundhu Mar 2009 A1
20090066788 Baum et al. Mar 2009 A1
20090066789 Baum et al. Mar 2009 A1
20090067395 Curtis et al. Mar 2009 A1
20090067441 Ansari et al. Mar 2009 A1
20090070436 Dawes et al. Mar 2009 A1
20090070473 Baum et al. Mar 2009 A1
20090070477 Baum et al. Mar 2009 A1
20090070681 Dawes et al. Mar 2009 A1
20090070682 Dawes et al. Mar 2009 A1
20090070692 Dawes et al. Mar 2009 A1
20090072988 Haywood Mar 2009 A1
20090074184 Baum et al. Mar 2009 A1
20090076211 Yang et al. Mar 2009 A1
20090076879 Sparks et al. Mar 2009 A1
20090077167 Baum et al. Mar 2009 A1
20090077622 Baum et al. Mar 2009 A1
20090077623 Baum et al. Mar 2009 A1
20090077624 Baum et al. Mar 2009 A1
20090079547 Oksanen et al. Mar 2009 A1
20090086660 Sood et al. Apr 2009 A1
20090092283 Whillock et al. Apr 2009 A1
20090100176 Hicks, III et al. Apr 2009 A1
20090100329 Espinoza Apr 2009 A1
20090100460 Hicks et al. Apr 2009 A1
20090100492 Hicks et al. Apr 2009 A1
20090113344 Nesse et al. Apr 2009 A1
20090119397 Neerdaels May 2009 A1
20090125708 Woodring et al. May 2009 A1
20090128365 Laskin May 2009 A1
20090134998 Baum et al. May 2009 A1
20090138600 Baum et al. May 2009 A1
20090138958 Baum et al. May 2009 A1
20090146846 Grossman Jun 2009 A1
20090158189 Itani Jun 2009 A1
20090158292 Rattner et al. Jun 2009 A1
20090161609 Bergstrom Jun 2009 A1
20090165114 Baum et al. Jun 2009 A1
20090172443 Rothman et al. Jul 2009 A1
20090177298 Mcfarland et al. Jul 2009 A1
20090177906 Paniagua et al. Jul 2009 A1
20090187297 Kish et al. Jul 2009 A1
20090193373 Abbaspour et al. Jul 2009 A1
20090197539 Shiba Aug 2009 A1
20090202250 Dizechi et al. Aug 2009 A1
20090204693 Andreev et al. Aug 2009 A1
20090221368 Yen et al. Sep 2009 A1
20090224875 Rabinowitz et al. Sep 2009 A1
20090228445 Gangal Sep 2009 A1
20090240353 Songkakul et al. Sep 2009 A1
20090240730 Wood Sep 2009 A1
20090240787 Denny Sep 2009 A1
20090240814 Brubacher et al. Sep 2009 A1
20090240946 Yeap et al. Sep 2009 A1
20090254960 Yarom et al. Oct 2009 A1
20090256708 Hsiao et al. Oct 2009 A1
20090259515 Belimpasakis et al. Oct 2009 A1
20090260052 Bathula et al. Oct 2009 A1
20090260430 Zamfes Oct 2009 A1
20090265042 Mollenkopf et al. Oct 2009 A1
20090265193 Collins Oct 2009 A1
20090270090 Kawamura Oct 2009 A1
20090271042 Voysey Oct 2009 A1
20090289787 Dawson et al. Nov 2009 A1
20090289788 Leblond Nov 2009 A1
20090292909 Feder et al. Nov 2009 A1
20090303100 Zemany Dec 2009 A1
20090307255 Park Dec 2009 A1
20090307307 Igarashi Dec 2009 A1
20090313693 Rogers Dec 2009 A1
20090316671 Rolf et al. Dec 2009 A1
20090322510 Berger et al. Dec 2009 A1
20090324010 Hou Dec 2009 A1
20090327483 Thompson et al. Dec 2009 A1
20090327510 Edelman et al. Dec 2009 A1
20100000791 Alberty Jan 2010 A1
20100001812 Kausch Jan 2010 A1
20100004949 O'Brien Jan 2010 A1
20100008274 Kneckt et al. Jan 2010 A1
20100009758 Twitchell, Jr. Jan 2010 A1
20100013917 Hanna et al. Jan 2010 A1
20100023865 Fulker et al. Jan 2010 A1
20100026481 Oh et al. Feb 2010 A1
20100026487 Hershkovitz Feb 2010 A1
20100030578 Siddique et al. Feb 2010 A1
20100030810 Marr Feb 2010 A1
20100039958 Ge et al. Feb 2010 A1
20100041380 Hewes et al. Feb 2010 A1
20100052612 Raji et al. Mar 2010 A1
20100066530 Cohn et al. Mar 2010 A1
20100067371 Gogic et al. Mar 2010 A1
20100070618 Kim et al. Mar 2010 A1
20100074112 Derr et al. Mar 2010 A1
20100077111 Holmes et al. Mar 2010 A1
20100077347 Kirtane et al. Mar 2010 A1
20100082744 Raji et al. Apr 2010 A1
20100095111 Gutt et al. Apr 2010 A1
20100095369 Gutt et al. Apr 2010 A1
20100100269 Ekhaguere Apr 2010 A1
20100102951 Rutledge Apr 2010 A1
20100121521 Kiribayashi May 2010 A1
20100122091 Huang et al. May 2010 A1
20100138758 Mizumori et al. Jun 2010 A1
20100138764 Hatambeiki et al. Jun 2010 A1
20100141762 Siann et al. Jun 2010 A1
20100145485 Duchene et al. Jun 2010 A1
20100150170 Lee et al. Jun 2010 A1
20100153853 Dawes et al. Jun 2010 A1
20100159898 Krzyzanowski et al. Jun 2010 A1
20100159967 Pounds et al. Jun 2010 A1
20100164736 Byers et al. Jul 2010 A1
20100165897 Sood Jul 2010 A1
20100174643 Schaefer et al. Jul 2010 A1
20100177749 Essinger et al. Jul 2010 A1
20100177750 Essinger et al. Jul 2010 A1
20100185857 Neitzel et al. Jul 2010 A1
20100197219 Issa et al. Aug 2010 A1
20100204839 Behm et al. Aug 2010 A1
20100210240 Mahaffey et al. Aug 2010 A1
20100212012 Touboul et al. Aug 2010 A1
20100218104 Lewis Aug 2010 A1
20100222069 Abraham et al. Sep 2010 A1
20100238286 Boghossian et al. Sep 2010 A1
20100241711 Ansari et al. Sep 2010 A1
20100241748 Ansari et al. Sep 2010 A1
20100245107 Fulker et al. Sep 2010 A1
20100248681 Phills Sep 2010 A1
20100267390 Lin et al. Oct 2010 A1
20100274366 Fata et al. Oct 2010 A1
20100277300 Cohn et al. Nov 2010 A1
20100277302 Cohn et al. Nov 2010 A1
20100277315 Cohn et al. Nov 2010 A1
20100279649 Thomas Nov 2010 A1
20100280635 Cohn Nov 2010 A1
20100280637 Cohn et al. Nov 2010 A1
20100281135 Cohn et al. Nov 2010 A1
20100281161 Cohn et al. Nov 2010 A1
20100281312 Cohn et al. Nov 2010 A1
20100298024 Choi Nov 2010 A1
20100308990 Simon et al. Dec 2010 A1
20100321151 Matsuura et al. Dec 2010 A1
20100325107 Kenton et al. Dec 2010 A1
20100332164 Aisa et al. Dec 2010 A1
20110000521 Tachibana Jan 2011 A1
20110029875 Milch Feb 2011 A1
20110030056 Tokunaga Feb 2011 A1
20110037593 Foisy et al. Feb 2011 A1
20110040415 Nickerson et al. Feb 2011 A1
20110040877 Foisy Feb 2011 A1
20110046792 Imes et al. Feb 2011 A1
20110051638 Jeon et al. Mar 2011 A1
20110068921 Shafer Mar 2011 A1
20110080267 Clare et al. Apr 2011 A1
20110087988 Ray et al. Apr 2011 A1
20110093799 Hatambeiki et al. Apr 2011 A1
20110096678 Ketonen Apr 2011 A1
20110102588 Trundle et al. May 2011 A1
20110107436 Cholas et al. May 2011 A1
20110125333 Gray May 2011 A1
20110125846 Ham et al. May 2011 A1
20110128378 Raji Jun 2011 A1
20110156914 Sheharri et al. Jun 2011 A1
20110169637 Siegler et al. Jul 2011 A1
20110197327 McElroy et al. Aug 2011 A1
20110200052 Mungo et al. Aug 2011 A1
20110208359 Duchene et al. Aug 2011 A1
20110212706 Uusilehto Sep 2011 A1
20110218777 Chen et al. Sep 2011 A1
20110230139 Nakahara Sep 2011 A1
20110230160 Felgate Sep 2011 A1
20110234392 Cohn et al. Sep 2011 A1
20110246762 Adams et al. Oct 2011 A1
20110257953 Li et al. Oct 2011 A1
20110261195 Martin et al. Oct 2011 A1
20110276699 Pedersen Nov 2011 A1
20110283006 Ramamurthy Nov 2011 A1
20110286437 Austin et al. Nov 2011 A1
20110289517 Sather et al. Nov 2011 A1
20110302497 Garrett et al. Dec 2011 A1
20110309929 Myers Dec 2011 A1
20110314515 Hernoud et al. Dec 2011 A1
20120001436 Sami et al. Jan 2012 A1
20120014363 Hassan et al. Jan 2012 A1
20120016607 Zolkiewski Jan 2012 A1
20120017268 Dispensa Jan 2012 A9
20120020060 Myer et al. Jan 2012 A1
20120023151 Lund Jan 2012 A1
20120030130 Smith et al. Feb 2012 A1
20120062026 Dawes Mar 2012 A1
20120062370 Feldstein et al. Mar 2012 A1
20120066608 Fulker Mar 2012 A1
20120066632 Fulker Mar 2012 A1
20120081842 Ewing et al. Apr 2012 A1
20120084184 Raleigh et al. Apr 2012 A1
20120143383 Cooperrider et al. Jun 2012 A1
20120154126 Kitchen Jun 2012 A1
20120154138 Quain Jun 2012 A1
20120172027 Partheesh et al. Jul 2012 A1
20120182245 Hutton Jul 2012 A1
20120209951 Enns et al. Aug 2012 A1
20120214502 Qiang Aug 2012 A1
20120232788 Diao Sep 2012 A1
20120242788 Chuang et al. Sep 2012 A1
20120257061 Edwards et al. Oct 2012 A1
20120259722 Mikurak Oct 2012 A1
20120260184 Wales Oct 2012 A1
20120265892 Ma et al. Oct 2012 A1
20120269199 Chan et al. Oct 2012 A1
20120278877 Wood Nov 2012 A1
20120280790 Gerhardt et al. Nov 2012 A1
20120296486 Marriam et al. Nov 2012 A1
20120307646 Xia et al. Dec 2012 A1
20120309354 Du Dec 2012 A1
20120314901 Hanson et al. Dec 2012 A1
20120315848 Smith et al. Dec 2012 A1
20120324566 Wood Dec 2012 A1
20120327242 Roach Dec 2012 A1
20120331109 Wood Dec 2012 A1
20130007871 Meenan et al. Jan 2013 A1
20130038730 Peterson et al. Feb 2013 A1
20130038800 Yoo Feb 2013 A1
20130062951 Dawes Mar 2013 A1
20130073746 Singh et al. Mar 2013 A1
20130082835 Shapiro et al. Apr 2013 A1
20130082836 Watts Apr 2013 A1
20130085615 Barker Apr 2013 A1
20130085620 Lu et al. Apr 2013 A1
20130086618 Klein et al. Apr 2013 A1
20130103207 Ruff et al. Apr 2013 A1
20130115972 Ziskind et al. May 2013 A1
20130120134 Hicks, III May 2013 A1
20130125157 Sharif-Ahmadi et al. May 2013 A1
20130136102 Macwan et al. May 2013 A1
20130147799 Hoguet Jun 2013 A1
20130154822 Kumar et al. Jun 2013 A1
20130155229 Thornton et al. Jun 2013 A1
20130163491 Singh et al. Jun 2013 A1
20130174239 Kim et al. Jul 2013 A1
20130183924 Saigh Jul 2013 A1
20130184874 Frader-Thompson et al. Jul 2013 A1
20130191755 Balog et al. Jul 2013 A1
20130205016 Dupre et al. Aug 2013 A1
20130218959 Kodama Aug 2013 A1
20130222133 Schultz et al. Aug 2013 A1
20130223279 Tinnakornsrisuphap et al. Aug 2013 A1
20130245837 Grohman Sep 2013 A1
20130257611 Lamb et al. Oct 2013 A1
20130258119 Kim et al. Oct 2013 A1
20130261821 Lu et al. Oct 2013 A1
20130266193 Tiwari et al. Oct 2013 A1
20130271270 Jamadagni et al. Oct 2013 A1
20130311146 Miller et al. Nov 2013 A1
20130314542 Jackson Nov 2013 A1
20130318231 Gutt Nov 2013 A1
20130318443 Bachman et al. Nov 2013 A1
20130331109 Dhillon et al. Dec 2013 A1
20130344875 Chowdhury Dec 2013 A1
20140024361 Poon et al. Jan 2014 A1
20140032034 Raptopoulos Jan 2014 A1
20140035726 Schoner et al. Feb 2014 A1
20140053246 Huang et al. Feb 2014 A1
20140068486 Sellers et al. Mar 2014 A1
20140075464 McCrea Mar 2014 A1
20140098247 Rao et al. Apr 2014 A1
20140112405 Jafarian et al. Apr 2014 A1
20140126425 Dawes May 2014 A1
20140136242 Weekes et al. May 2014 A1
20140136847 Huang May 2014 A1
20140136936 Patel et al. May 2014 A1
20140140575 Wolf May 2014 A1
20140143695 Fulker May 2014 A1
20140143851 Baum et al. May 2014 A1
20140143854 Lopez et al. May 2014 A1
20140146171 Brady et al. May 2014 A1
20140153695 Yanagisawa et al. Jun 2014 A1
20140167928 Burd et al. Jun 2014 A1
20140172957 Dawes Jun 2014 A1
20140176797 Silva et al. Jun 2014 A1
20140180968 Song et al. Jun 2014 A1
20140188290 Steinberg et al. Jul 2014 A1
20140201291 Russell Jul 2014 A1
20140218517 Kim et al. Aug 2014 A1
20140232861 Naidoo et al. Aug 2014 A1
20140233951 Cook Aug 2014 A1
20140236325 Sasaki et al. Aug 2014 A1
20140245160 Bauer et al. Aug 2014 A1
20140254896 Zhou Sep 2014 A1
20140266678 Shapiro et al. Sep 2014 A1
20140266736 Cretu-Petra Sep 2014 A1
20140277854 Jones Sep 2014 A1
20140278281 Vaynriber et al. Sep 2014 A1
20140282048 Shapiro et al. Sep 2014 A1
20140282934 Miasnik et al. Sep 2014 A1
20140289384 Kao et al. Sep 2014 A1
20140289388 Ghosh et al. Sep 2014 A1
20140293046 Ni Oct 2014 A1
20140316616 Kugelmass Oct 2014 A1
20140317660 Cheung et al. Oct 2014 A1
20140319232 Gourlay et al. Oct 2014 A1
20140328161 Haddad et al. Nov 2014 A1
20140340216 Puskarich Nov 2014 A1
20140355588 Cho et al. Dec 2014 A1
20140359101 Wales Dec 2014 A1
20140359524 Sasaki et al. Dec 2014 A1
20140368331 Quain Dec 2014 A1
20140369584 Fan et al. Dec 2014 A1
20140372599 Gutt et al. Dec 2014 A1
20140372811 Cohn et al. Dec 2014 A1
20150009325 Kardashov Jan 2015 A1
20150019714 Shaashua et al. Jan 2015 A1
20150022666 Kay et al. Jan 2015 A1
20150054947 Dawes Feb 2015 A1
20150074206 Baldwin Mar 2015 A1
20150074259 Ansari et al. Mar 2015 A1
20150077553 Dawes Mar 2015 A1
20150082414 Dawes Mar 2015 A1
20150088982 Johnson et al. Mar 2015 A1
20150097680 Fadell et al. Apr 2015 A1
20150097949 Ure et al. Apr 2015 A1
20150097961 Ure et al. Apr 2015 A1
20150106721 Cha et al. Apr 2015 A1
20150116108 Fadell et al. Apr 2015 A1
20150142991 Zaloom May 2015 A1
20150161875 Cohn et al. Jun 2015 A1
20150205465 Robison et al. Jul 2015 A1
20150222517 Mclaughlin et al. Aug 2015 A1
20150222601 Metz et al. Aug 2015 A1
20150256355 Pera et al. Sep 2015 A1
20150261427 Sasaki Sep 2015 A1
20150266577 Jones Sep 2015 A1
20150287310 Deiiuliis et al. Oct 2015 A1
20150319006 Plummer et al. Nov 2015 A1
20150319046 Plummer et al. Nov 2015 A1
20150325106 Dawes et al. Nov 2015 A1
20150331662 Lambourne Nov 2015 A1
20150334087 Dawes Nov 2015 A1
20150348554 Orr et al. Dec 2015 A1
20150350031 Burks et al. Dec 2015 A1
20150358359 Ghai et al. Dec 2015 A1
20150365217 Scholten et al. Dec 2015 A1
20150365933 Lee et al. Dec 2015 A1
20150373149 Lyons Dec 2015 A1
20150379355 Kanga et al. Dec 2015 A1
20160012715 Hazbun Jan 2016 A1
20160019763 Hazbun Jan 2016 A1
20160019778 Raji et al. Jan 2016 A1
20160023475 Bevier et al. Jan 2016 A1
20160027295 Raji et al. Jan 2016 A1
20160036944 Kitchen et al. Feb 2016 A1
20160042637 Cahill Feb 2016 A1
20160055573 Chen et al. Feb 2016 A1
20160062624 Sundermeyer et al. Mar 2016 A1
20160065413 Sundermeyer et al. Mar 2016 A1
20160065414 Sundermeyer et al. Mar 2016 A1
20160065653 Chen et al. Mar 2016 A1
20160068264 Ganesh Mar 2016 A1
20160077935 Zheng et al. Mar 2016 A1
20160087933 Johnson et al. Mar 2016 A1
20160100348 Cohn et al. Apr 2016 A1
20160107749 Mucci Apr 2016 A1
20160116914 Mucci Apr 2016 A1
20160127641 Gove May 2016 A1
20160147919 Yabe et al. May 2016 A1
20160161277 Park et al. Jun 2016 A1
20160163185 Ramasubbu et al. Jun 2016 A1
20160164923 Dawes Jun 2016 A1
20160171853 Naidoo et al. Jun 2016 A1
20160180719 Wouhaybi Jun 2016 A1
20160183073 Saito et al. Jun 2016 A1
20160189509 Malhotra et al. Jun 2016 A1
20160189524 Poder et al. Jun 2016 A1
20160189527 Peterson et al. Jun 2016 A1
20160189549 Marcus Jun 2016 A1
20160191265 Cohn et al. Jun 2016 A1
20160191621 Oh et al. Jun 2016 A1
20160192461 Minsky Jun 2016 A1
20160202695 Deroos Jul 2016 A1
20160209072 Golden et al. Jul 2016 A1
20160225240 Voddhi et al. Aug 2016 A1
20160226732 Kim et al. Aug 2016 A1
20160231916 Dawes Aug 2016 A1
20160232780 Cohn et al. Aug 2016 A1
20160234075 Sirpal et al. Aug 2016 A1
20160241633 Overby et al. Aug 2016 A1
20160260135 Zomet et al. Sep 2016 A1
20160261932 Fadell et al. Sep 2016 A1
20160266579 Chen Sep 2016 A1
20160267751 Fulker et al. Sep 2016 A1
20160269191 Cronin Sep 2016 A1
20160274759 Dawes Sep 2016 A1
20160363337 Steinberg et al. Dec 2016 A1
20160364089 Blackman et al. Dec 2016 A1
20160371961 Narang et al. Dec 2016 A1
20160373453 Ruffner et al. Dec 2016 A1
20160378109 Raffa Dec 2016 A1
20170004714 Rhee Jan 2017 A1
20170005818 Gould Jan 2017 A1
20170006107 Dawes et al. Jan 2017 A1
20170019644 K V Jan 2017 A1
20170026440 Cockrell et al. Jan 2017 A1
20170039413 Nadler Feb 2017 A1
20170052513 Raji et al. Feb 2017 A1
20170054571 Kitchen et al. Feb 2017 A1
20170054594 Decenzo et al. Feb 2017 A1
20170063967 Kitchen et al. Mar 2017 A1
20170063968 Kitchen et al. Mar 2017 A1
20170068419 Sundermeyer et al. Mar 2017 A1
20170070361 Sundermeyer et al. Mar 2017 A1
20170070563 Sundermeyer et al. Mar 2017 A1
20170078298 Vlaminck et al. Mar 2017 A1
20170092138 Trundle Mar 2017 A1
20170103646 Naidoo et al. Apr 2017 A1
20170109999 Cohn et al. Apr 2017 A1
20170118037 Kitchen et al. Apr 2017 A1
20170127124 Wilson et al. May 2017 A9
20170154507 Dawes et al. Jun 2017 A1
20170155545 Baum et al. Jun 2017 A1
20170180198 Baum et al. Jun 2017 A1
20170180306 Gutt et al. Jun 2017 A1
20170185277 Sundermeyer et al. Jun 2017 A1
20170185278 Sundermeyer et al. Jun 2017 A1
20170192402 Karp et al. Jul 2017 A1
20170244573 Baum et al. Aug 2017 A1
20170255452 Barnes et al. Sep 2017 A1
20170257257 Dawes Sep 2017 A1
20170278407 Lemmey Sep 2017 A1
20170279629 Raji Sep 2017 A1
20170289323 Gelvin et al. Oct 2017 A1
20170289360 Baum et al. Oct 2017 A1
20170301216 Cohn et al. Oct 2017 A1
20170302469 Cohn et al. Oct 2017 A1
20170303257 Yamada et al. Oct 2017 A1
20170310500 Dawes Oct 2017 A1
20170331781 Gutt et al. Nov 2017 A1
20170337806 Cohn et al. Nov 2017 A1
20170353324 Baum et al. Dec 2017 A1
20180004377 Kitchen et al. Jan 2018 A1
20180012460 Heitz, III et al. Jan 2018 A1
20180019890 Dawes Jan 2018 A1
20180054774 Cohn et al. Feb 2018 A1
20180063248 Dawes et al. Mar 2018 A1
20180063259 Connelly et al. Mar 2018 A1
20180069932 Tiwari et al. Mar 2018 A1
20180083831 Baum et al. Mar 2018 A1
20180092046 Egan et al. Mar 2018 A1
20180096568 Cohn et al. Apr 2018 A1
20180278701 Diem Sep 2018 A1
20180307223 Peeters Oct 2018 A1
20190014413 Kallai et al. Jan 2019 A1
20190041547 Rolf et al. Feb 2019 A1
20190058720 Lindquist et al. Feb 2019 A1
20190073193 Krispin Mar 2019 A1
20190073534 Dvir Mar 2019 A1
20190103030 Banga Apr 2019 A1
20190239008 Lambourne Aug 2019 A1
20190347924 Trundle Nov 2019 A1
20190386892 Sundermeyer et al. Dec 2019 A1
20190391545 Trundle et al. Dec 2019 A1
20200029339 Suzuki Jan 2020 A1
20200032887 McBurney et al. Jan 2020 A1
20200094963 Myslinski Mar 2020 A1
20200127891 Johnson et al. Apr 2020 A9
20200257721 McKinnon Aug 2020 A1
20200273277 Kerning Aug 2020 A1
20200279626 Ansari et al. Sep 2020 A1
20200328887 Kostiainen et al. Oct 2020 A1
20200333780 Kerzner Oct 2020 A1
20200380851 Farrand Dec 2020 A1
20210099753 Connelly et al. Apr 2021 A1
20210250726 Jones Aug 2021 A1
Foreign Referenced Citations (139)
Number Date Country
2005223267 Dec 2010 AU
2010297957 May 2012 AU
2011250886 Jan 2013 AU
2013284428 Feb 2015 AU
2011305163 Dec 2016 AU
2017201365 Mar 2017 AU
2017201585 Mar 2017 AU
1008939 Oct 1996 BE
2203813 Jun 1996 CA
2174482 Oct 1997 CA
2346638 Apr 2000 CA
2389958 Mar 2003 CA
2878117 Jan 2014 CA
2559842 May 2014 CA
2992429 Dec 2016 CA
2976682 Feb 2018 CA
2976802 Feb 2018 CA
102834818 Dec 2012 CN
102985915 Mar 2013 CN
0295146 Dec 1988 EP
0308046 Mar 1989 EP
0591585 Apr 1994 EP
1117214 Jul 2001 EP
1119837 Aug 2001 EP
0978111 Nov 2001 EP
1738540 Jan 2007 EP
1881716 Jan 2008 EP
2112784 Oct 2009 EP
2188794 May 2010 EP
2191351 Jun 2010 EP
2327063 Jun 2011 EP
2483788 Aug 2012 EP
2569712 Mar 2013 EP
2619686 Jul 2013 EP
2868039 May 2015 EP
3031206 Jun 2016 EP
3285238 Feb 2018 EP
3308222 Apr 2018 EP
2584217 Jan 1987 FR
2661023 Oct 1991 FR
2793334 Nov 2000 FR
2222288 Feb 1990 GB
2273593 Jun 1994 GB
2286423 Aug 1995 GB
2291554 Jan 1996 GB
2319373 May 1998 GB
2320644 Jun 1998 GB
2324630 Oct 1998 GB
2325548 Nov 1998 GB
2335523 Sep 1999 GB
2349293 Oct 2000 GB
2370400 Jun 2002 GB
2442628 Apr 2008 GB
2442633 Apr 2008 GB
2442640 Apr 2008 GB
2428821 Jun 2008 GB
452015 Nov 2015 IN
042016 Jan 2016 IN
63-033088 Feb 1988 JP
05-167712 Jul 1993 JP
06-339183 Dec 1993 JP
08-227491 Sep 1996 JP
10-004451 Jan 1998 JP
2000-006343 Jan 2000 JP
2000-023146 Jan 2000 JP
2000-278671 Oct 2000 JP
2001-006088 Jan 2001 JP
2001-006343 Jan 2001 JP
2001-069209 Mar 2001 JP
2002-055895 Feb 2002 JP
2002-185629 Jun 2002 JP
2003-085258 Mar 2003 JP
2003-141659 May 2003 JP
2003-281647 Oct 2003 JP
2004-192659 Jul 2004 JP
2006-094394 Apr 2006 JP
2007-529826 Oct 2007 JP
2010-140091 Jun 2010 JP
10-2006-0021605 Mar 2006 KR
10-0771941 Oct 2007 KR
340934 Sep 1998 TW
I239176 Sep 2005 TW
I340934 Apr 2011 TW
I480839 Apr 2015 TW
I480840 Apr 2015 TW
I509579 Nov 2015 TW
I517106 Jan 2016 TW
8907855 Aug 1989 WO
8911187 Nov 1989 WO
9403881 Feb 1994 WO
9513944 May 1995 WO
9636301 Nov 1996 WO
9713230 Apr 1997 WO
9825243 Jun 1998 WO
9849663 Nov 1998 WO
9852343 Nov 1998 WO
9859256 Dec 1998 WO
9934339 Jul 1999 WO
0021053 Apr 2000 WO
0036812 Jun 2000 WO
0072598 Nov 2000 WO
0111586 Feb 2001 WO
0152478 Jul 2001 WO
0171489 Sep 2001 WO
0199078 Dec 2001 WO
0211444 Feb 2002 WO
0221300 Mar 2002 WO
0297584 Dec 2002 WO
2002100083 Dec 2002 WO
2003026305 Mar 2003 WO
0340839 May 2003 WO
2004004222 Jan 2004 WO
2004098127 Nov 2004 WO
2004107710 Dec 2004 WO
2005091218 Sep 2005 WO
2007038872 Apr 2007 WO
2007124453 Nov 2007 WO
2008056320 May 2008 WO
2009006670 Jan 2009 WO
2009023647 Feb 2009 WO
2009029590 Mar 2009 WO
2009029597 Mar 2009 WO
2009064795 May 2009 WO
2009145747 Dec 2009 WO
2010019624 Feb 2010 WO
2010025468 Mar 2010 WO
2010127009 Nov 2010 WO
2010127194 Nov 2010 WO
2010127200 Nov 2010 WO
2010127203 Nov 2010 WO
2011038409 Mar 2011 WO
2011063354 May 2011 WO
2011143273 Nov 2011 WO
2012040653 Mar 2012 WO
2014004911 Jan 2014 WO
2015021469 Feb 2015 WO
2015134520 Sep 2015 WO
2016201033 Dec 2016 WO
201302668 Jun 2014 ZA
Non-Patent Literature Citations (253)
Entry
X10—ActiveHome, Home Automation Made Easy [retrieved on Nov. 4, 2003], 3 pages.
WLS906 Photoelectric Smoke Alarm, Data Sheet, DSC Security Products, Ontario, Canada, Jan. 1998.
Valtchev, D., and I. Frankov. “Service gateway architecture for a smart home.” Communications Magazine, IEEE 40.4 (2002): 126-132.
Supplementary Non-Final Office Action dated Oct. 28, 2010 for U.S. Appl. No. 12/630,092, filed Dec. 3, 2009.
Supplementary European Search Report for Application No. EP2191351, dated Jun. 23, 2014, 2 pages.
Supplementary Partial European Search Report for Application No. EP09807196, dated Nov. 17, 2014, 5 pages.
Supplementary European Search Report for Application No. EP11827671, dated Mar. 10, 2015, 2 pages.
Supplementary European Search Report for Application No. EP10819658, dated Mar. 10, 2015, 2 pages.
Supplemental European Search Report for Application No. EP05725743.8 dated Sep. 14, 2010, 2 pages.
South African Patent App. No. 2013/02668, corresponds to WO2012/040653.
Security For The Future, Introducing 5804B0—Advanced two-way wireless remote technology, Advertisement, ADEMCO Group, Syosset, NY, circa 1997.
Requirement for Restriction/Election dated Oct. 24, 2012 for U.S. Appl. No. 12/750,470, filed Mar. 30, 2010.
Requirement for Restriction/Election dated Jan. 22, 2013 for U.S. Appl. No. 13/104,936, filed May 10, 2011.
Requirement for Restriction/Election dated Jan. 22, 2013 for U.S. Appl. No. 13/104,932, filed May 10, 2011.
Notice of Allowance dated Oct. 25, 2012 for U.S. Appl. No. 11/084,232, filed Mar. 16, 2005.
Notice of Allowance dated May 14, 2013 for U.S. Appl. No. 12/637,671, filed Dec. 14, 2009.
Non-Final Office Action dated May 23, 2013 for U.S. Appl. No. 13/104,936, filed May 10, 2011.
Non-Final Office Action dated Jan. 5, 2010 for U.S. Appl. No. 12/019,554, filed Jan. 24, 2008.
Non-Final Office Action dated Feb. 21, 2013 for U.S. Appl. No. 12/771,372, filed Apr. 30, 2010.
Non-Final Office Action dated Apr. 13, 2010 for U.S. Appl. No. 11/761,745, filed Jun. 12, 2007.
Non-Final Office Action dated May 30, 2008 for U.S. Appl. No. 11/084,232, filed Mar. 16, 2005.
Non-Final Office Action dated Dec. 30, 2009 for U.S. Appl. No. 11/084,232, filed Mar. 16, 2005.
Non-Final Office Action dated Jun. 27, 2013 for U.S. Appl. No. 12/019,568, filed Jan. 24, 2008.
Non-Final Office Action dated Nov. 26, 2010 for U.S. Appl. No. 12/197,958, filed Aug. 25, 2008.
Non-Final Office Action dated Jan. 26, 2012 for U.S. Appl. No. 12/019,568, filed Jan. 24, 2008.
Non-Final Office Action dated Jul. 22, 2013 for U.S. Appl. No. 12/630,092, filed Dec. 3, 2009.
Non-Final Office Action dated Dec. 22, 2010 for U.S. Appl. No. 12/197,931, filed Aug. 25, 2008.
Non-Final Office Action dated Jul. 21, 2010 for U.S. Appl. No. 12/630,092, filed Dec. 3, 2009.
Non-Final Office Action dated Jan. 18, 2012 for U.S. Appl. No. 12/771,071, filed Apr. 30, 2010.
Non-Final Office Action dated Feb. 18, 2011 for U.S. Appl. No. 12/630,092, filed Dec. 3, 2009.
Non-Final Office Action dated Aug. 18, 2011 for U.S. Appl. No. 12/197,958, filed Aug. 25, 2008.
Non-Final Office Action dated Sep. 17, 2012 for U.S. Appl. No. 12/189,780, filed Aug. 11, 2008.
Non-Final Office Action dated Sep. 16, 2011 for U.S. Appl. No. 12/539,537, filed Aug. 11, 2009.
Non-Final Office Action dated Sep. 14, 2010 for U.S. Appl. No. 11/084,232, filed Mar. 16, 2005.
Non-Final Office Action dated Nov. 14, 2012 for U.S. Appl. No. 13/531,757, filed Jun. 25, 2012.
Non-Final Office Action dated Jul. 13, 2010 for U.S. Appl. No. 12/019,568, filed Jan. 24, 2008.
Non-Final Office Action dated Sep. 12, 2012 for U.S. Appl. No. 12/952,080, filed Nov. 22, 2010.
Non-Final Office Action dated Oct. 12, 2012 for U.S. Appl. No. 12/630,092, filed Dec. 3, 2009.
Non-Final Office Action dated Jul. 12, 2012 for U.S. Appl. No. 12/691,992, filed Jan. 22, 2010.
Non-Final Office Action dated Apr. 12, 2012 for U.S. Appl. No. 12/770,365, filed Apr. 29, 2010.
Non-Final Office Action dated Aug. 10, 2012 for U.S. Appl. No. 12/771,471, filed Apr. 30, 2010.
Non-Final Office Action dated Dec. 9, 2008 for U.S. Appl. No. 11/084,232, filed Mar. 16, 2005.
Non-Final Office Action dated Apr. 9, 2012 for U.S. Appl. No. 12/771,624, filed Apr. 30, 2010.
Non-Final Office Action dated Feb. 8, 2012 for U.S. Appl. No. 12/630,092, filed Dec. 3, 2009.
Non-Final Office Action dated Feb. 7, 2013 for U.S. Appl. No. 12/970,313, filed Dec. 16, 2010.
Non-Final Office Action dated Feb. 7, 2012 for U.S. Appl. No. 12/637,671, filed Dec. 14, 2009.
Non-Final Office Action dated May 5, 2010 for U.S. Appl. No. 12/189,785, filed Aug. 11, 2008.
Non-Final Office Action dated May 5, 2010 for U.S. Appl. No. 12/189,780, filed Aug. 11, 2008.
Non-Final Office Action dated Mar. 4, 2013 for U.S. Appl. No. 13/400,477, filed Feb. 20, 2012.
Non-Final Office Action dated Apr. 4, 2013 for U.S. Appl. No. 12/197,931, filed Aug. 25, 2008.
Network Working Group, Request for Comments H.Schulzrinne Apr. 1998.
J. David Eisenberg, SVG Essentials: Producing Scalable Vector Graphics with XML. O'Reilly & Associates, Inc., Sebastopol, CA 2002.
International Search Report for Application No. PCT/US2014/050548, dated Mar. 18, 2015, 4 pages.
International Search Report for Application No. PCT/US13/48324, dated Jan. 14, 2014, 2 pages.
Indian Patent App. No. 3687/DELNP/2012, corresponds to WO2011/038409.
Indian Patent App. No. 10698/DELNP/2012, corresponds to WO2011/143273.
Gong, Li, A Software architecture for open service gateways, Internet Computing, IEEE 5.1, Jan.-Feb. 2001, 64-70.
Gateway Registry Methods and Systems, U.S. Appl. No. 13/486,276.
Form PCT/ISA/237, “PCT Written Opinion ofthe International Searching Authority of the Application No. PCT/US08/83254,” dated Jan. 14, 2009, 7 pages.
Form PCT/ISA/237, “PCT Written Opinion of the International Searching Authority for the Application No. PCT/US11/53136,” dated Jan. 5, 2012.
Form PCT/ISA/237, “PCT Written Opinion of the International Searching Authority for the Application No. PCT/US11/35994,” dated Sep. 28, 2011, 11 pages.
Form PCT/ISA/237, “PCT Written Opinion of the International Searching Authority for the Application No. PCT/US11/34858,” dated Oct. 3, 2011, 8 pages.
Form PCT/ISA/237, “PCT Written Opinion of the International Searching Authority for the Application No. PCT/US10/57674,” dated Mar. 2, 2011, 6 pages.
Form PCT/ISA/237, “PCT Written Opinion of the International Searching Authority for the Application No. PCT/US10/50585,” dated Dec. 30, 2010, 7 pages.
Form PCT/ISA/237, “PCT Written Opinion of the International Searching Authority for the Application No. PCT/US09/55559,” dated Nov. 12, 2009, 6 pages.
Form PCT/ISA/237, “PCT Written Opinion of the International Searching Authority for the Application No. PCT/US09/53485,” dated Oct. 22, 2009, 8 pages.
Form PCT/ISA/237, “PCT Written Opinion of the International Searching Authority for the Application No. PCT/US08/74260,” dated Nov. 13, 2008, 6 pages.
Form PCT/ISA/237, “PCT Written Opinion of the International Searching Authority for the Application No. PCT/US08/74246,” dated Nov. 14, 2008, 6 pages.
Form PCT/ISA/237, “PCT Written Opinion of the International Searching Authority for the Application No. PCT/US08/72831,” dated Nov. 4, 2008, 6 pages.
Form PCT/ISA/237,“PCT Written Opinion ofthe International Searching Authority for the Application No. PCT/US0S/08766,” dated May 23, 2006, 5 pages.
Form PCT/ISA/220, PCT Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration for the Application No. PCT/US05/08766, dated May 23, 2006, 1 page.
Form PCT/ISA/220, “PCT Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration for the Application No. PCT/US09/53485,” dated Oct. 22, 2009, 1 page.
Form PCT/ISA/220, “PCT Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration for the Application No. PCT/US08/72831,” dated Nov. 4, 2008, 1 page.
Form PCT/ISA/220, “PCT Notification of Transmittal of the International Search Report and the Written Opinion fo the International Searching Authority, or the Declaration for the Application No. PCT/US08/74260,” dated Nov. 13, 2008, 1 page.
Form PCT/ISA/210, “PCT International Search Report for the Application No. PCT/US11/53136,” dated Jan. 5, 2012, 2 pages.
Form PCT/ISA/210, “PCT International Search Report for the Application No. PCT/US11/35994,” dated Sep. 28, 2011, 2 pages.
Form PCT/ISA/210, “PCT International Search Report for the Application No. PCT/US11/34858,” dated Oct. 3, 2011, 2 pages.
Form PCT/ISA/210, “PCT International Search Report for the Application No. PCT/US10/57674,” dated Mar. 2, 2011, 2 pages.
Form PCT/ISA/210, “PCT International Search Report for the Application No. PCT/US10/50585,” dated Dec. 30, 2010, 2 pages.
Form PCT/ISA/210, “PCT International Search Report for the Application No. PCT/US09/55559,” dated Nov. 12, 2009, 2 pages.
Form PCT/ISA/210, “PCT International Search Report for the Application No. PCT/US09/53485,”dated Oct. 22, 2009, 2 pages.
Form PCT/ISA/210, “PCT International Search Report for the Application No. PCT/US08/83254,” dated Jan. 14, 2009, 2 pages.
Form PCT/ISA/210, “PCT International Search Report for the Application No. PCT/US08/74260,” dated Nov. 13, 2008, 2 pages.
Form PCT/ISA/210, “PCT International Search Report for the Application No. PCT/US08/74246,” dated Nov. 14, 2008, 2 pages.
Form PCT/ISA/210, “PCT International Search Report for the Application No. PCT/US08/72831,” dated Nov. 4, 2008, 2 pages.
Form PCT/ISA/210, “PCT International Search Report for the Application No. PCT/US05/08766,” dated May 23, 2006, 2 pages.
Final Office Action dated Sep. 14, 2011 for U.S. Appl. No. 12/197,931, filed Aug. 25, 2008.
Final Office Action dated Jul. 12, 2010 for U.S. Appl. No. 12/019,554, filed Jan. 24, 2008.
Final Office Action dated Feb. 16, 2011 for U.S. Appl. No. 12/019,568, filed Jan. 24, 2008.
Final Office Action dated Oct. 31, 2012 for U.S. Appl. No. 12/771,624, filed Apr. 30, 2010.
Final Office Action dated Dec. 31, 2012 for U.S. Appl. No. 12/770,365, filed Apr. 29, 2010.
Final Office Action dated Jun. 29, 2012 for U.S. Appl. No. 12/539,537, filed Aug. 11, 2009.
Final Office Action dated Feb. 26, 2013 for U.S. Appl. No. 12/771,471, filed Apr. 30, 2010.
Final Office Action dated Jul. 23, 2013 for U.S. Appl. No. 13/531,757, filed Jun. 25, 2012.
Final Office Action dated Mar. 21, 2013 for U.S. Appl. No. 12/691,992, filed Jan. 22, 2010.
Final Office Action dated Sep. 17, 2012 for U.S. Appl. No. 12/197,958, filed Aug. 25, 2008.
Final Office Action dated Oct. 17, 2012 for U.S. Appl. No. 12/637,671, filed Dec. 14, 2009.
Final Office Action dated Jan. 13, 2011 for U.S. Appl. No. 12/189,780, filed Aug. 11, 2008.
Final Office Action dated Jun. 10, 2011 for U.S. Appl. No. 11/084,232, filed Mar. 16, 2005.
Yanni Zhai et al., Design of Smart Home Remote Monitoring System Based on Embedded System, 2011 IEEE 2nd International Conference on Computing, Control and Industrial Engineering, vol. 2, pp. 41-44.
visitalk.com—communication with vision, http://www.visitalk.com.
US Patent Application filed on Nov. 30, 2017, entitled “Controller and Interface for Home Security, Monitoring and Automation Having Customizable Audio Alerts for SMA Events”, U.S. Appl. No. 15/828,030.
US Patent Application filed on Nov. 28, 2017, entitled “Forming A Security Network Including Integrated Security System Components”, U.S. Appl. No. 15/824,503.
US Patent Application filed on Oct. 27, 2017, entitled “Security System With Networked Touchscreen”, U.S. Appl. No. 15/796,421.
US Patent Application filed on Oct. 13, 2017, entitled “Notification of Event Subsequent to Communication Failure With Security System”, U.S. Appl. No. 15/783,858.
US Patent Application filed on Aug. 9, 2016, entitled “Controller and Interface for Home Security, Monitoring and Automation Having Customizable Audio Alerts for SMA Events”, U.S. Appl. No. 15/232,135.
US Patent Application filed on Aug. 8, 2016, entitled “Security, Monitoring and Automation Controller Access and Use of Legacy Security Control Panel Information”, U.S. Appl. No. 15/231,273.
US Patent Application filed on Jul. 28, 2016, entitled “Method and System for Automatically Providing Alternate Network Access for Telecommunications”, U.S. Appl. No. 15/222,416.
US Patent Application filed on Mar. 10, 2014, entitled “Communication Protocols Over Internet Protocol (IP) Networks”, U.S. Appl. No. 14/202,579.
US Patent Application filed on Mar. 10, 2014, entitled “Communication Protocols Over Internet Protocol (IP) Networks”, U.S. Appl. No. 14/202,505.
US Patent Application filed on Mar. 10, 2014, entitled “Communication Protocols in Integrated Systems”, U.S. Appl. No. 14/203,219.
US Patent Application filed on Mar. 10, 2014, entitled “Communication Protocols in Integrated Systems”, U.S. Appl. No. 14/203,141.
US Patent Application filed on Mar. 10, 2014, entitled “Communication Protocols in Integrated Systems”, U.S. Appl. No. 14/203,128.
US Patent Application filed on Mar. 10, 2014, entitled “Communication Protocols in Integrated Systems”, U.S. Appl. No. 14/203,084.
US Patent Application filed on Mar. 10, 2014, entitled “Communication Protocols in Integrated Systems”, U.S. Appl. No. 14/203,077.
US Patent Application filed on Mar. 10, 2014, entitled “Communication Protocols in Integrated Systems”, U.S. Appl. No. 14/202,685.
US Patent Application filed on Mar. 10, 2014, entitled “Communication Protocols in Integrated Systems”, U.S. Appl. No. 14/202,627.
US Patent Application filed on Mar. 10, 2014, entitled “Communication Protocols in Integrated Systems”, U.S. Appl. No. 14/202,592.
US Patent Application filed on Mar. 10, 2014, entitled “Communication Protocols in Integrated Systems”, U.S. Appl. No. 14/202,573.
US Patent Application filed on Mar. 7, 2014, entitled “Security System Integrated With Social Media Platform”, U.S. Appl. No. 14/201,133.
US Patent Application filed on Mar. 7, 2014, entitled “Integrated Security and Control System With Geofencing”, U.S. Appl. No. 14/201,189.
US Patent Application filed on Mar. 7, 2014, entitled “Device Integration Framework”, U.S. Appl. No. 14/201,227.
US Patent Application filed on Mar. 7, 2014, entitled “Communication Protocols in Integrated Systems”, U.S. Appl. No. 14/200,921.
US Patent Application filed on Mar. 7, 2014, entitled “Activation of Gateway Device”, U.S. Appl. No. 14/201,162.
US Patent Application filed on Mar. 2, 2017, entitled “Generating Risk Profile Using Data of Home Monitoring and Security System”, U.S. Appl. No. 15/447,982.
Shang, Wei-lai, Study on Application of Embedded Intelligent Area System, Journal of Anyang Institute of Technology, vol. 9, No. 6, pp. 56-57 and 65.
PCT Application filed on Nov. 17, 2016, entitled “Mobile Premises Automation Platform”, PCT/US2016/062519.
PCT Application filed on Oct. 13, 2016, entitled “Coordinated Control of Connected Devices in a Premise”, PCT/US2016/056842.
PCT Application filed on Aug. 17, 2016, entitled “Automation System User Interface”, PCT/US2016/047262.
PCT Application filed on Aug. 16, 2016, entitled “Automation System User Interface”, PCT/US2016/047172.
PCT Application filed on Jul. 7, 2016, entitled “Automation System User Interface with Three-Dimensional Display”, PCT/US2016/041353.
PCT Application filed on Jun. 30, 2016, entitled “Integrated Cloud System with Lightweight Gateway for Premises Automation”, PCT/US2016/040451.
PCT Application filed on Jun. 29, 2016, entitled “Integrated Cloud System for Premises Automation”, PCT/US2016/040046.
PCT Application filed on Jun. 9, 2016, entitled “Virtual Device Systems and Methods”, PCT/US2016/036674.
GTI Genex Technologies, Inc. OmniEye.(Trademark). Product Brochure, Sep. 14, 1999 (5 pages).
GrayElectronics, http://www.grayelectronics.com/default.htm.
GrayElectronics, “Digitizing TV cameras on TCP/IP Computer Networks,” http://www.grayelectronics.com/default.htm, printed on Oct. 12, 1999 (2 pages).
Genex OmniEye, http://www.genextech.com/prod01.htm.
EP application filed on Aug. 16, 2017, entitled, “Automation System User Interface”, 17186497.8.
EP application filed on Jun. 9, 2016, entitled, “Data Model for Home Automation”, 16808247.7.
Elwahab et al.; Device, System and . . . Customer Premises Gateways; Sep. 27, 2001; WO 01/71489.
CA application filed on Aug. 16, 2017, entitled “Automation System User Interface”, 2976802.
CA application filed on Aug. 15, 2017, entitled “Automation System User Interface”, 2976682.
AU application filed on Mar. 8, 2017, entitled “Integrated Security Network with Security Alarm Signaling System”, 2017201585.
AU application filed on Feb. 28, 2017, entitled “Control System User Interface”, 2017201365.
Final Office Action dated Jan. 10, 2011 for U.S. Appl. No. 12/189,785, filed Aug. 11, 2008.
Final Office Action dated May 9, 2013 for U.S. Appl. No. 12/952,080, filed Nov. 22, 2010.
Final Office Action dated May 9, 2013 for U.S. Appl. No. 12/189,780, filed Aug. 11, 2008.
Final Office Action dated Jun. 5, 2012 for U.S. Appl. No. 12/771,071, filed Apr. 30, 2010.
Final Office Action dated Jun. 1, 2009 for U.S. Appl. No. 11/084,232, filed Mar. 16, 2005.
Final Office Action dated Aug. 1, 2011 for U.S. Appl. No. 12/630,092, filed Dec. 3, 2009.
Examination Report under Section 18(3) re for UK Patent Application No. GB0724760.4, dated Jan. 30, 2008.
Examination Report under Section 18(3) re for UK Patent Application No. GB0724248.0, dated Jan. 30, 2008.
Examination Report under Section 18(3) re for UK Patent Application No. GB0724248.0, dated Jun. 4, 2008.
Examination Report under Section 18(3) re for UK Patent Application No. GB0620362.4, dated Aug. 13, 2007.
EP examination report issued in EP08797646.0, dated May 17, 2017, 11 pages.
Diaz, Redondo R P et al., Enhancing Residential Gateways: OSGI Service Composition, IEEE Transactions on Consumer Electronics, IEEE Service Center, New York, NY, US, vol. 53, No. 1, Feb. 1, 2007 (Feb. 1, 2007), pp. 87-95, XP011381790.
CorAccess Systems, Companion 6 User Guide, Jun. 17, 2002.
Control Panel Standard—Features for False Alarm Reduction, The Security Industry Association, SIA 2009, pp. 1-48.
Alarm.com—Interactive Security Systems, Product Advantages [retrieved on Nov. 4, 2003], 3 pages.
Alarm.com—Interactive Security Systems, Overview [retrieved on Nov. 4, 2003], 2 pages.
Alarm.com—Interactive Security Systems, Frequently Asked Questions [retrieved on Nov. 4, 2003], 3 pages.
Alarm.com—Interactive Security Systems, Elders [retrieved on Nov. 4, 2003], 1 page.
6270 Touch Screen Keypad Notes, Honeywell, Sep. 2006.
Wilkinson, S: “Logitech Harmony One Universal Remote” Ultimate AV magazine May 2008 (May 2008), XP002597782 Retrieved from the Internet : Original URL: http://www.ultimateavmag.com/remotecontrols/508logi) [retrieved on Aug. 23, 2010] the whole document; Updated URL: https://www.soundandvision.com/content/logitech-harmony-one-universal-remote, Retrieved from internet on Jan. 11, 2018.
Visitalk, Communication with Vision, http://www.visitalk.jimbo.com; website accessed Jan. 10, 2018.
GrayElectronics, http://www.grayelectronics.com; webpage accessed on Jan. 10, 2018.
Genex Technologies, Genex OmniEye, www.av-iq.com/avcat/images/documents/pdfs/omnieye%20nightwatch_brochure.pdf; webpage accessed Jan. 10, 2018.
Foreign communication from a related counterpart application—International Search Report, App No. PCT/US02/14450, dated Dec. 17, 2002, 6 pgs.
Foreign communication from a related counterpart application—International Preliminary Examination Report, App No. PCT/US02/14450, dated Mar. 2, 2004, 4 pgs.
Condry M et al., Open Service Gateway architecture overview, Industrial Electronics Society, 1999, IECON '99 Proceedings, The 25th Annual Conference of the IEEE, San Jose, CA, USA, Nov. 29-Dec. 3, 1999, Piscataway, NJ, USA, IEEE, US, vol. 2, Nov. 29, 1999 (Nov. 29, 1999), pp. 735-742, XP010366642.
US Patent Application filed on May 23, 2018, entitled “Networked Touchscreen With Integrated Interfaces”, U.S. Appl. No. 15/987,638.
US patent application filed on May 2, 2018, entitled “Automation System With Mobile Interface”, U.S. Appl. No. 15/969,514.
US Patent Application filed on Dec. 27, 2018, entitled “Communication Protocols in Integrated Systems”, U.S. Appl. No. 16/233,913.
US Patent Application filed on Dec. 14, 2018, entitled “Communication Protocols Over Internet Protocol (IP) Networks”, U.S. Appl. No. 16/221,299.
US Patent Application filed on Nov. 29, 2018, entitled “Premise Management Systems And Methods”, U.S. Appl. No. 16/204,442.
US Patent Application filed on Oct. 18, 2018, entitled “Generating Risk Profile Using Data Of Home Monitoring And Security System”, U.S. Appl. No. 16/164,114.
US Patent Application filed on Oct. 10, 2018, entitled “Method and System for Providing Alternate Network Access”, U.S. Appl. No. 16/156,448.
US Patent Application filed on Oct. 3, 2018, entitled “Activation of a Home Automation Controller”, U.S. Appl. No. 16/150,973.
US Patent Application filed on Oct. 1, 2018, entitled “User Interface In A Premises Network”, U.S. Appl. No. 16/148,572.
US Patent Application filed on Oct. 1, 2018, entitled “Integrated Security System with Parallel Processing Architecture”, U.S. Appl. No. 16/148,411.
US Patent Application filed on Oct. 1, 2018, entitled “Integrated Security System With Parallel Processing Architecture”, U.S. Appl. No. 16/148,387.
US Patent Application filed on Sep. 11, 2018, entitled “Premises Management Networking”, U.S. Appl. No. 16/128,089.
US Patent Application filed on Sep. 28, 2018, entitled “Forming a Security Network Including Integrated Security System Components and Network Devices”, U.S. Appl. No. 16/147,044.
US Patent Application filed on Sep. 28, 2018, entitled “Control System User Interface”, U.S. Appl. No. 16/146,715.
US Patent Application filed on Sep. 17, 2018, entitled “Integrated Security System With Parallel Processing Architecture”, U.S. Appl. No. 16/133,135.
US Patent Application filed on Sep. 6, 2018, entitled “Takeover of Security Network”, U.S. Appl. No. 16/123,695.
US Patent Application filed on Aug. 21, 2018, entitled “Premises System Management Using Status Signal”, U.S. Appl. No. 16/107,568.
US Patent Application filed on Aug. 9, 2018, entitled “Method and System for Processing Security Event Data”, U.S. Appl. No. 16/059,833.
US Patent Application filed on Jul. 20, 2018, entitled “Cross-Client Sensor User Interface in an Integrated Security Network”, U.S. Appl. No. 16/041,291.
US Patent Application filed on Jul. 12, 2018, entitled “Integrated Security System with Parallel Processing Architecture”, U.S. Appl. No. 16/034,132.
US Patent Application filed on Jul. 3, 2018, entitled “WIFI-To-Serial Encapsulation In Systems”, U.S. Appl. No. 16/026,703.
US Patent Application filed on Jun. 27, 2018, entitled “Activation Of Gateway Device”, U.S. Appl. No. 16/020,499.
“Windows”. Newton's Telecom Dictionary, 21st ed., Mar. 2005.
Windows, Newton's Telecom Dictionary, 21st Edition, Mar. 2005, 937-938.
US Patent Application filed on Jan. 28, 2019, entitled “Automation System User Interface With Three-Dimensional Display”, U.S. Appl. No. 16/258,858.
US Patent Application filed on Jan. 25, 2019, entitled Communication Protocols in Integrated Systems, U.S. Appl. No. 16/257,706.
US Patent Application filed on Jan. 22, 2019, entitled “Premises System Automation”, U.S. Appl. No. 16/254,480.
US Patent Application filed on Jan. 22, 2019, entitled “Data Model for Home Automation”, U.S. Appl. No. 16/254,535.
US Patent Application filed on Jan. 3, 2019, entitled “Methods and Systems for Data Communication”, U.S. Appl. No. 16/239,114.
“Dragging” The Authoritative Dictionary of IEEE Standard Terms. 7th ed. 2000, p. 337.
US Patent Application filed on Mar. 18, 2019, entitled “Server-Based Notification of Alarm Event Subsequent To Communication Failure With Armed Security System”, U.S. Appl. No. 16/356,742.
US Patent Application filed on Apr. 23, 2019, entitled “Control System User Interface”, U.S. Appl. No. 16/391,625.
US Patent Application filed on Apr. 26, 2019, entitled “Custom Content for Premises Management”, U.S. Appl. No. 16/396,368.
US Patent Application filed on Jul. 2, 2019, entitled “Communication Protocols in Integrated Systems”, U.S. Appl. No. 16/460,712.
US Patent Application filed on Jul. 26, 2019, entitled “Device Integration Framework”, U.S. Appl. No. 16/522,949.
US Patent Application filed on Aug. 23, 2019, entitled “Premises System Management Using Status Signal”, U.S. Appl. No. 16/549,837.
visitalk.com—communication with vision, http://www.visitalk.com (date unknown).
“File”, The Authoritative Dictionary of IEEE Standard Terms. 7th ed. 2000, pp. 453.
“Icon”, Newton's Telecom Dictionary, 21st ed., Mar. 2005.
US Patent Application filed on Mar. 20, 2020, entitled “Security, Monitoring and Automation Controller Access and Use of Legacy Security Control Panel Information”, U.S. Appl. No. 16/825,099.
US Patent Application filed on Apr. 17, 2020, entitled “Method and System for Providing Alternate Network Access”, U.S. Appl. No. 16/852,072.
US Patent Application filed on Apr. 17, 2020, entitled “Networked Touchscreen With Integrated Interfaces”, U.S. Appl. No. 16/852,058.
US Patent Application filed on May 11, 2020, entitled “Control System User Interface”, U.S. Appl. No. 16/871,151.
US Patent Application filed on May 12, 2020, entitled “IP Device Discovery Systems and Methods”, U.S. Appl. No. 15/930,029.
US Patent Application filed on May 19, 2020, entitled “User Interface in a Premises Network”, U.S. Appl. No. 16/878,099.
US Patent Application filed on May 26, 2020, entitled “Premises Management Configuration and Control”, U.S. Appl. No. 16/882,876.
US Patent Application filed on Jun. 10, 2020, entitled “Method and System for Communicating With and Controlling an Alarm System From a Remote Server”, U.S. Appl. No. 16/898,146.
“Associate”. Merriaim-Webster.com Dictionary, Merriam-Webster, https://web.archive.org/web/20061209213742/https://www.merriam-webster.com/dictionary/associate. Dec. 9, 2006.
“Indicate”. Merriam-Webster.com Dictionary, Merriam-Webster, https://web.archive.org/web/20061209080613/https://www.merriam-webster.com/dictionary/indicate. Dec. 9, 2006.
US Patent Application filed on Jun. 24, 2020, entitled “Method and System for Processing Security Event Data”, U.S. Appl. No. 16/910,967.
US Patent Application filed on Jul. 9, 2020, entitled “Automation System With Mobile Interface”, U.S. Appl. No. 16/925,026.
US Patent Application filed on Aug. 26, 2020, entitled “Automation System User Interface With Three-Dimensional Display”, U.S. Appl. No. 17/003,550.
US Patent Application filed on Sep. 10, 2020, entitled “Security System With Networked Touchscreen”, U.S. Appl. No. 17/017,519.
US Patent Application filed on Sep. 11, 2020, entitled “Management Of Applications For A Device Located At A Premises”, U.S. Appl. No. 17/018,901.
US Patent Application filed on Oct. 8, 2020, entitled “Communication Protocols in Integrated Systems”, U.S. Appl. No. 17/065,841.
US Patent Application filed on Oct. 12, 2020, entitled “Integrated Security System With Parallel Processing Architecture”, U.S. Appl. No. 17/068,584.
US Patent Application filed on Nov. 10, 2020, entitled “Integrated Cloud System for Premises Automation”, U.S. Appl. No. 17/094,120.
US Patent Application filed on Nov. 25, 2020, entitled “Premises Management Networking”, U.S. Appl. No. 17/105,235.
US Patent Application filed on Dec. 9, 2020, entitled “Integrated Security System With Parallel Processing Architecture”, U.S. Appl. No. 17/115,936.
Wang et al, “A Large Scale Video Surveillance System with Heterogeneous Information Fusion and Visualization for Wide Area Monitoring,” 2012 Eighth International Conference on Intelligent Information Hiding and Multimedia Signal Processing, Piraeus, 2012, pp. 178-181.
3rd Generation Partnership Project! Technical Specification Group Services and System Aspects! Architecture enhancements to facilitate communications with packet data networks and application, Mar. 2015, 3GPP TS 23.682 V12.3.0, pp. 8-10. (Year: 2015).
Chapter6, Securing TCP/IP, pp. 135-164, Oct. 12, 2004.
K. Lee, D. Murray, D. Hughes and W. Joosen, “Extending sensor networks into the Cloud using Amazon Web Services,” 2010 IEEE International Conference on Networked Embedded Systems for Enterprise Applications, 2010.
US Patent Application filed on Mar. 22, 2021, entitled “Premises Management Configuration and Control”, U.S. Appl. No. 17/208,866.
US Patent Application filed on Apr. 8, 2021, entitled “System For Data Routing In Networks”, U.S. Appl. No. 17/301,605.
US Patent Application filed on May 10, 2021, entitled “Management of a Security System at a Premises”, U.S. Appl. No. 17/316,402.
US Patent Application filed on Aug. 10, 2021, entitled “Media Content Management”, U.S. Appl. No. 17/398,939.
US Patent Application filed on Aug. 16, 2021, entitled “Control System User Interface”, U.S. Appl. No. 17/403,526.
US Patent Application filed on Aug. 23, 2021, entitled “Method and System for Providing Alternate Network Access”, U.S. Appl. No. 17/409,528.
US Patent Application filed on Aug. 31, 2021, entitled “Networked Touchscreen With Integrated Interfaces”, U.S. Appl. No. 17/463,267.
US Patent Application filed on Sep. 7, 2021, entitled “Gateway Registry Methods and Systems”, U.S. Appl. No. 17/468,188.
US Patent Application filed on Sep. 8, 2021, entitled “User Interface in a Premises Network”, U.S. Appl. No. 17/469,417.
US Patent Application filed on Sep. 9, 2021, entitled “Premises System Management Using Status Signal”, U.S. Appl. No. 17/470,732.
Oxford Dictionary, Definition of “application”, 2021, 2 pages (Year: 2021).
US Patent Application filed on Jan. 11, 2021, entitled “Premise Management Systems and Methods”, U.S. Appl. No. 17/145,773.
US Patent Application filed on Feb. 9, 2021, entitled “Premises Management Networking”, U.S. Appl. No. 17/171,398.
US Patent Application filed on Mar. 15, 2021, entitled “Automation System User Interface”, U.S. Appl. No. 17/202,279.
US Patent Application filed on Mar. 17, 2021, entitled “Communication Protocols Over Internet Protocol (IP) Networks”, U.S. Appl. No. 17/204,068.
US Patent Application filed on Jul. 26, 2021, entitled “Notification of Event Subsequent To Communication Failure With Security System”, U.S. Appl. No. 17/443,427.
US Patent Application filed on Jul. 30, 2021, entitled “Gateway Integrated With Premises Security System”, U.S. Appl. No. 17/390,222.
US Patent Application filed on Jun. 9, 2021, entitled “Premises Management Configuration and Control”, U.S. Appl. No. 17/343,315.
US Patent Application filed on Jun. 18, 2021, entitled “Controlling Data Routing Among Networks”, U.S. Appl. No. 17/304,342.
Related Publications (1)
Number Date Country
20170227965 A1 Aug 2017 US
Provisional Applications (1)
Number Date Country
62256232 Nov 2015 US
Continuation in Parts (22)
Number Date Country
Parent 15292866 Oct 2016 US
Child 15354380 US
Parent 15204662 Jul 2016 US
Child 15292866 US
Parent 15198531 Jun 2016 US
Child 15204662 US
Parent 15196281 Jun 2016 US
Child 15198531 US
Parent 15177915 Jun 2016 US
Child 15196281 US
Parent 14943162 Nov 2015 US
Child 15177915 US
Parent 14704045 May 2015 US
Child 14943162 US
Parent 14704098 May 2015 US
Child 14704045 US
Parent 14704127 May 2015 US
Child 14704098 US
Parent 14645808 Mar 2015 US
Child 14704127 US
Parent 14628651 Feb 2015 US
Child 14645808 US
Parent 13954553 Jul 2013 US
Child 14628651 US
Parent 13929568 Jun 2013 US
Child 13954553 US
Parent 13718851 Dec 2012 US
Child 13929568 US
Parent 13531757 Jun 2012 US
Child 13718851 US
Parent 13334998 Dec 2011 US
Child 13531757 US
Parent 13104932 May 2011 US
Child 13334998 US
Parent 13104936 May 2011 US
Child 13104932 US
Parent 12972740 Dec 2010 US
Child 13104936 US
Parent 12539537 Aug 2009 US
Child 12972740 US
Parent 12197958 Aug 2008 US
Child 12539537 US
Parent 12189780 Aug 2008 US
Child 12197958 US