Mesh-based home security system

A network management system manages the operation of a home security system in a communication network, such as a mesh network. The home security system can include multiple components such as a camera, a lighting device, a security alarm, a doorbell switch and doorbell chime, and a fingerprint sensor, which connect with the communication network to perform various operations. The network management system monitors environmental parameters of the communication network, such as parameters associated with the access points and components of the home security system, determines an access point to which a component of the home security system is to be connected for efficient operation of the home security system, and connects the component to the communication network via the determined access point.

TECHNICAL FIELD

The disclosure is related to home security system, and more specifically to a wireless mesh network-based home security system.

BACKGROUND

A home security system typically includes smoke/fire detection, carbon monoxide (CO) detection, remote control, cameras, alarm and reporting events. The home security system is installed in a communication network, such as a local area network (LAN), which often is a wireless LAN (WLAN). The WLAN includes a gateway device, such as a modem, which connects the WLAN to an external network such as Internet, and one or more routers connected to the gateway device that generates the WLAN. The home security system can include multiple cameras, which can be installed at multiple locations of a home. When a user requests to view a video feed captured by a camera, the video feed is transmitted to a user device through the WLAN via the routers. Current home security systems do not operate efficiently. For example, when multiple users request to view the video feed from multiple cameras, the load in the WLAN, e.g., in the router to which the cameras are connected, can increase significantly, which can cause the streaming quality of the video to deteriorate. The user can experience buffering of the video, a lag or jitter in the video, or may not receive the video at all.

SUMMARY

The disclosure is related to a mesh-network based home security system. Embodiments include a network management system that manages the operation of the home security system in a communication network, such as a mesh network. The home security system can include multiple components such as a camera, a lighting device, a security alarm, a doorbell switch and doorbell chime, and a fingerprint sensor, which connect with the communication network to perform various operations. The home security system can also include a base station, which can co-ordinate various operations of the home security system, including establishing and managing a network connection for the components of the home security system with the communication network. In some embodiments, the communication network is a wireless local area network (WLAN), such as a home WLAN. The WLAN can be configured as a mesh network using multiple access points.

The network management system monitors environmental parameters of the communication network, such as parameters associated with the access points and the components of the home security system, determines whether to connect a component of the home security system to the communication network via an access point or the base station, and connects the component to the communication network via the base station the or the determined access point. For example, when the network management system receives a request from a camera to connect to the communication network, the network management system determines parameters such as a memory usage, central processing unit (CPU) usage, and/or a throughput of the base station and each of the access points; a signal strength between the camera and the base station; a signal strength between the camera and each of the access points; or hardware/software capability of the camera, determines an appropriate access point based on the environmental parameters and connects the camera to the determined access point. When a user requests for a video stream from the camera, the network management system forwards the request to the access point to which the camera is connected. Upon receiving the request, the access point obtains the video stream from the camera and transmits the video stream to a user device. The user device can be any network-enabled computing device associated with the user, such as a smartphone, a laptop, a tablet personal computer (PC), a desktop PC, a wearable device, or a smart TV.

DETAILED DESCRIPTION

FIG.1is a block diagram illustrating an environment in which the mesh-based home security system can be implemented. The environment100includes a home security system150having multiple components, such as a camera115, a lighting device116, a security alarm117, a fingerprint sensor118, a doorbell switch119and a doorbell chime120. The home security system150can include all or some of the above components, and can have one or more of any of the above components. In some embodiments, the home security system is a camera system that can be installed in a building, e.g., a house.

The home security system150operates in a communication network130. The communication network130can be a local area network (LAN). In some embodiments, the communication network130is a wireless LAN (WLAN), such as a home Wi-Fi. In some embodiments, the communication network130can be configured as a wireless mesh network using multiple access points, such as access points110a-c. A wireless mesh network is a communications network made up of radio nodes organized in a mesh topology. It is also a form of wireless ad hoc network. A mesh refers to rich interconnection among devices or nodes. Wireless mesh networks often consist of mesh access points110, gateways and mesh clients, such as a user device165and home security system150. In some embodiments, mobility of nodes in a wireless mesh is less frequent. If nodes were to constantly or frequently move, the mesh will spend more time updating routes than delivering data. In a wireless mesh network, topology tends to be more static, so that routes computation can converge and delivery of data to their destinations can occur. Hence, the wireless mesh network can be a low-mobility centralized form of wireless ad hoc network.

The mesh clients often include laptops, cell phones and other wireless devices while the mesh routers forward traffic to and from a gateway (not illustrated) which may, but need not, be connected to the Internet. The coverage area of the radio nodes working as a single network is sometimes called a mesh cloud. Access to this mesh cloud is dependent on the access points110working in harmony with each other to create the communication network130. A mesh network is reliable and offers redundancy. When one access point can no longer operate, the mesh clients can still communicate with each other, directly or through one or more intermediate access points. Wireless mesh networks can self-form and self-heal. Wireless mesh networks work with different wireless technologies including 802.11, 802.15, 802.16, cellular technologies and need not be restricted to any one technology or protocol.

The home security system150can optionally include a base station125. The base station125is a computer system that can securely connect the camera115to communication network130. When a user170sends a request, e.g., from a user device165, to view a live video feed from the camera115, the base station125receives the request and in response to receiving the request, obtains the video stream from the camera115, and streams the video stream to the user device165. Upon receiving the video stream at the user device165, a video player application in the user device165decodes the encoded video stream and plays the video on the user device165. The user device165can be any computing device that can connect to a network and play video content, such as a smartphone, a laptop, a desktop, a tablet personal computer (PC), or a smart TV.

The base station125is connected to the communication network130by wired or wireless means. In some embodiments, the base station125is connected to the communication network130by wired means, e.g., Ethernet cable connection between the base station125and a gateway or one of the access points110. However, the base station125can create its own wireless network and the camera115can connect to the base station125, and therefore to the communication network130, wirelessly. The communication network130can include multiple base stations to increase wireless coverage, which may be beneficial or required in cases where the cameras are spread over a large area.

The base station125can include various features such as long range wireless connectivity to the camera115, connectivity to network attached storage (NAS), a siren, and can enhance battery life of the camera115, e.g., by making the camera115work efficiently and keeping the communications between the base station125and the camera115efficient. The base station125can be configured to store the video captured from the camera115in any of a local storage device associated with the base station125, the NAS, or a cloud storage service. The base station125can be configured to generate a sound alarm from the siren when an intrusion is detected by the base station125. While the cameras115or other components of the home security system150can connect to the base station125, the cameras115may also connect to the access points110instead of the base station125, e.g., when the cameras are outside of the wireless coverage area of the base station125or the home security system does not have a base station in which case the access points can stream the video instead of the base station125to the user device165. In some embodiments, the access points110have hardware and/or software capabilities of the base station125and can perform at least some of the tasks the base station125can perform. Note that the base station125and the access points110a-cmay be collectively referred to as “access points.”

A network management system105facilitates the operation of the home security system150in the communication network130. In some embodiments, the network management system105facilitates connecting the components of the home security system150to the communication network130. The network management system105can establish a network connection for the home security system150such that the home security system150operates efficiently, e.g., a load on the base station125or any of the access points110is below a specified threshold, all components of the home security system150have sufficient wireless coverage, etc. When a component of the home security system150sends a request for connecting to the communication network130, the network management system105selects one of the access points based on environmental parameters of the communication network130and connects the component to the selected access point. For example, if the base station125receives the connection request from a component, the network management system105executing in the base station125determines a specified access point to which the component is to be connected based on the environmental parameters. If the network management system105determines that the base station125is the suitable access point, then the network connection is established for the component by having the component connect to the base station125. On the other hand, if the network management system105determines that another access point, e.g., access point110a, is the suitable access point, then the base station125forwards the connection request to the access point110a, which establishes the network connection for the component.

The environmental parameters of the communication network130include one or more of a signal strength between a component and each of the access points; a CPU usage, memory usage, and/or a throughput of the access points; or hardware/software capability of the component. The selection criterion for selecting an access point can include at least one of (a) a load of the access point not exceeding a first specified threshold, where the load is a function of one or more of CPU usage, memory usage or a throughput of the access point, (b) a signal strength between the component and the access point being above a second specified threshold, (c) number of devices connected to the access point not exceeding a third specified threshold, or (d) hardware and/or software compatibility between the access point and the component. The CPU usage, memory usage and throughput can each have a corresponding threshold. The selection criterion can be user-defined or learnt by the network management system105using artificial intelligence (AI) or machine learning (ML) techniques, e.g., based on usage pattern of the communication network130by the user170.

The network management system105can apply the selection criteria in connecting a specified type of component, some components or all components of the home security system150. The network management system105can be implemented in the base station125and/or one or more of the access points110a-c. The components of the home security system150can connect to the access points wirelessly or via wired means, although, in some embodiments, the components connect to the access points wirelessly, e.g., via Wi-Fi, Wi-Fi direct, Wi-Fi ad hoc, Bluetooth or similar wireless connection technologies. For example, the doorbell switch119may connect to an access point or to another component, such as a camera115, via Bluetooth. The following paragraphs describe various operations of the home security system150.

FIG.2is a block diagram of an example implementation200of a mesh-based home security system having multiple security cameras, consistent with various embodiments. The access points110a-cgenerate the communication network130. The home security system150includes multiple cameras115a-d. In some embodiments, the home security system150is installed in a building, such as a house. The communication network130can also include client devices205, such as one or more of a laptop, gaming console, wearable device, smartphone, tablet PC, desktop PC, storage device, or NAS.

The cameras115can capture video feed, encode the video feed, and transmit the encoded video feed. The cameras115can encode the video feed using a codec such as H.264, H.265, MPEG-2, HEVC. Further, a file format of the encoded video feed can be one of many formats, e.g., AVI, MP4, MOV, WMA, or MKV. The encoded video feed can include audio as well if the cameras have audio capabilities, e.g., a speaker and/or a microphone. The cameras115can be battery powered or powered from a wall outlet. The cameras115can include one or more sensors, e.g., a motion sensor that can activate the recording of the video when a motion is detected. The cameras115can include infrared (IR) light emitting diode (LED) sensors, which can provide night-vision capabilities. The cameras115can be installed at various locations of the building. Further, all the cameras115in the home security system150can have the same features, or at least some of the cameras115can have different features. For example, one camera can have a night-vision feature while another camera may not, and one camera can be battery powered while another may be powered from a wall outlet. The encoded video stream from the cameras115can be transmitted to the user device165as a live or real-time video stream or can be stored at a storage device, which can include a local storage device associated with the base station125or any of the access points110, a NAS or a cloud storage service (not illustrated).

In the communication network130, the camera115ais connected to the access point110a, camera115bto access point110b, and camera115cto base station125. The communication network130may also have other client devices205(e.g., other computing devices or other components of the home security system150) connected to the communication network130. When the user170requests a video feed from a specified camera, the network management system105forwards the request to a specified access point to which the specified camera is connected. The specified access point obtains the video feed from the specified camera and streams the video feed to the user170. The streamed video feed may be forwarded to the user170via one or more access points, e.g., depending on the access point to which the user device165is connected. For example, if the specified camera is camera115aand the user device165is connected to the access point110c, the access point110aobtains the video feed from the camera115aand streams the video feed to the user device165via the access point110c. The user170can move around in the building and the user device165carried by the user170may connect to different access points depending where the user170is the building. For example, when the user170is at a basement of the building the user device165may be connected to the access point110b, which can be in or near the basement, and when the user170is in the living room, the user device165may be connected to the access point110c, which can be in or near the living room.

The network management system105monitors the environmental parameters of the communication network130. These environmental parameters can be used in determining a specified access point to which a specified camera is to be connected. For example, when the user170adds a new camera, e.g., camera115d, to the communication network130, the camera115dsends a request to the network management system105to connect to the communication network130. The network management system determines the specified access point to which the camera115dis to be connected based on the environmental parameters and connects the camera115dto an access point that satisfies the selection criterion. For example, based on any of CPU usage, memory usage or a throughput of each of the access points, the network management system105can determine that since a load on the base station125and the access points110b-cexceed a specified threshold and the load on the access point110ais below the specified threshold, the access point110asatisfies the selection criterion. In another example, the network management system105can determine that while a load of both the access point110aand the base station125is below the specified threshold, since the wireless signal strength between the access point110aand the camera115dis better than the wireless signal strength between the base station125and the camera115d, the access point110asatisfies the selection criterion. In still another example, the network management system105can determine that regardless of a load on the access points, since the access point110ais the only access point that has hardware/software compatibility with the camera115d, the access point110asatisfies the selection criterion. One example scenario where the hardware/software compatibility criterion plays a significant role is where the camera115dis a 4K resolution camera, which requires sufficient memory availability in an access point (typically more than what is required for a HD camera) for streaming the video without any lag, jitter, buffering or drop in a quality of the video. Accordingly, the network management system105determines the access point110abased on the environmental parameters as the suitable access point for establishing a network connection for the camera115dand connects the camera115dto the access point110a.

Various such selection criteria can be used in selecting an access point for connecting any of the components of the home security system150to the communication network130. As mentioned above, the selection criteria can be user-defined and/or learnt by the network management system105using AI or ML techniques, e.g., based on usage pattern of the communication network130by the user170. In some embodiments, a load of the access point is considered exceeding a specified threshold when any of the CPU usage of the exceeds a first specified threshold, memory usage exceeds a second specified threshold, memory availability is below a third specified threshold, or throughput is below a fourth specified threshold. One or more of these thresholds are configurable, e.g., by the user170or the network management system. For example, using AI and ML techniques, the network management system105can analyze the usage of the access points in the communication network130over a period and can determine or predict load on the access points at various points of the day, week, or month and adjust the thresholds, or even modify the selection criterion, accordingly.

FIG.3is a block diagram of an example implementation300of the home security system having cameras and lighting devices, consistent with various embodiments. The home security system150includes multiple cameras115a-eand lighting devices116a-b. The lighting devices116can connect to the communication network130wirelessly or via wired means. In some embodiments, the lighting devices116aconnect to the communication network wirelessly. For example, the lighting devices116can connect to an access point (or the base station125) via Bluetooth. At least some of the access points110have Bluetooth connectivity. The lighting devices116can be battery powered or be plugged into a wall outlet. The lighting devices116can include a motion sensor, which can detection motion. The lighting devices116can be configured to turn on when a motion is detected. In some embodiments, the lighting devices116can also be configured to turn on automatically when the amount of light around the lighting device is below a specified threshold. In some embodiments, the lighting devices116can also be configured to turn on in response to a detection of motion if the amount of light around the lighting device is below a specified threshold. The lighting devices116can have a sensor that can measure the amount of light around the lighting devices116.

The network management system105determines the access point to which the lighting device is to be connected, e.g., based on the selection criterion described above. In some embodiments, the lighting devices116can also connect to another component of the home security system150such as a camera instead of connecting to an access point. For example, the lighting device116acan wirelessly connect to the camera115e, e.g., using Bluetooth. This can be advantageous in cases where the lighting devices are not in wireless coverage area (e.g., Bluetooth coverage area) of an access point.

In some embodiments, the lighting devices116be configured to turn on the light in response to a detection of motion by one or more of the cameras115. For example, consider that the camera115eis installed in a driveway or a walkway to a door of the house and the lighting device116ais installed at or near the door. When the camera115esenses a motion, e.g., when the user170returns home from work and gets down from his car in the driveway, the network management system105can send a command to the lighting device116ato turn on the light. The network management system105can turn on more than one lighting device in response to the motion detected by the camera. For example, the network management system105can also send an instruction to the lighting device116b, which can be installed near the stairway leading to the bedroom, to turn on the light so that the stairway is lit for the user170to climb the stairs.

The network management system105can be programmed to turn on specific lighting devices in response to specific events, e.g., based on location of the user170, motion detection by cameras at specific locations. In some embodiments, the network management system105can turn on specific lighting devices116based on the location of the user170in the building. For example, if the user170is near or enters the basement of building, the network management system105can command the lighting device in the basement of the building to turn on. In another example, if the user170is climbing the stairway towards the bedroom, then the network management system105can command the lighting device in or near the bedroom. In still another example, if the user170is walking towards the backyard of the building, then the network management system105can command the lighting device in the backyard to turn on.

The network management system105can determine the location of the user170in various ways. In some embodiments, the network management system105can determine the location based on the location of the user device165the user170is carrying. The location of the user device165in respect to the access points can be determined using Wi-Fi triangulation technique. For example, by reading various parameters, such as antenna phase parameters, from the user device165and the access points110the network management system can determine where the user device165is, e.g., closer to which access point, and accordingly send an instruction to turn on one or more lighting devices connected to the access point which is closest to the user device165. In another example, the network management system105can determine the location of the user170based on a frequency response of the signals from the access points. In this method, when two access points are communicating with each other, there is a frequency response of the signals between them, which vary when there are obstacles between them. So, when a user is moving between the access points, the frequency response of the signals vary—the frequency response of one access point increases while that of another decreases due to the user170moving away or towards the access point. The network management system105can determine the location of the user170in relation to the access points based on the variations in the frequency responses.

In some embodiments, network management system105can also turn a specific set of lighting devices in response to a detection of motion by one of the cameras115. For example, when the user170returns home from work and gets down from his car in the driveway, the camera115einstalled in the driveway can detect the motion and the network management system105can send a command to a specific set of lighting devices to turn on the light, e.g., lighting device116aat the main entrance door, lighting device116binstalled in the living room, a lighting device installed in the kitchen and a lighting device installed in the bedroom. The network management system105can turn the specific set of lights based on the current location of the user170, e.g., which is determined as described above, or based on a prediction of the path to be taken by the user170. The network management system105can predict the path to be taken by the user based on previous movements of the user170recorded by the network management system105over a period and using AI and ML techniques. For example, the network management system105can record user movements on a daily basis, e.g., gathered using location data from the user device165, video from cameras115, operation of lighting devices in specific areas, or data from other client devices205. The network management system105can analyze such movement data and determine that when the user170comes back home from work, the camera115edetects the motion, then the user170typically walks to the main door, then to kitchen, then to the bedroom, etc. The network management system105can use AI and ML techniques in making such a prediction.

The user170can also program the network management system105to turn on specific lights when the user is at specific locations. For example, the user170can define that when the user170is within 10 feet of an access point a first lighting device is to be turned on and a second lighting device when the user170is between 10 feet and 20 feet and so on. The user170can also program the network management system105to turn on specific lights in response to specific events. For example, the user170can program the network management system105to turn on a first set of lighting devices in response to a motion detected by camera115eand a second set of lighting devices in response to a motion detected by camera115a. In fact, the user170can program one or more components of the home security system150, not just the lighting devices116, to perform a specific task in response to a specific event. The network management system105provides a graphical user interface (GUI) using which the user170can program specific tasks to be performed by the components in response to specific events. Such a configuration can be stored in a database associated with the network management system105.

For sending a command to turn on the lighting device116bin response to detecting a motion by the camera115e, the process can be as follows: in response to receiving an indication from the camera115ethat a motion is detected, the access point110cdetermines (e.g., from the database) if there are any tasks to be performed in response to the detection and determines that the lighting device116bis to be turned on. In some embodiments, the lighting device may not be specified in the database, but the network management system105may determine the lighting device itself, e.g., based on location of the user170or the prediction as described above. Upon determining that the lighting device116bis to be turned on, the network management system105identifies the access point110bto which the lighting device116bis connected and sends an instruction to the access point110bto command the lighting device116bto turn on the light. The access point110bcan then send a command to the lighting device116bto turn on the light.

FIG.4is a block diagram of an example implementation400of a home security system having a fingerprint sensor and a security alarm, consistent with various embodiments. The home security system150includes multiple cameras115a-e, a security alarm117and a fingerprint sensor118. The fingerprint sensor118can be integrated into the access point110cor can be a standalone unit, which can connect to the communication network130wirelessly or via wired means. For example, the fingerprint sensor118can connect to an access point (or the base station125) via Bluetooth or Wi-Fi. Similarly, the security alarm117can be integrated into one or more of the access points, such as access point110aor can be a standalone unit, which can connect to the communication network130wirelessly or via wired means. For example, the security alarm117can connect to an access point (or the base station125) via Bluetooth or Wi-Fi.

The fingerprint sensor118can be used as an authentication device for performing various tasks. In some embodiments, the fingerprint sensor118is used as an authentication device for arming or disarming the home security system150. For example, when the user170places a finger on the fingerprint sensor118, the fingerprint sensor118obtains the fingerprint408the network management system105authenticates the user170and arms the home security system150if it is disarmed or disarms if it is armed. This eliminates the need for the user170to key in any code to arm/disarm the home security system150. When the home security system150is armed, any intrusion detected by any of the cameras115, e.g., based on a detection of motion, can trigger the security alarm117. On the other hand, when the home security system150is disarmed, the security alarm117is not triggered when an intrusion is detected.

The home security system150can have multiple security alarms and the user170can program which of the security alarms have to be triggered in response to intrusion detection by which of the components (e.g., cameras115) of the home security system150. Such configurations may be stored in the database. For example, when a motion is detected by a camera115cinstalled in the backyard, the user170may configure the network management system105to trigger the security alarm117that is inside the house, e.g., near the bedroom or in the living room, instead of or in addition to the security alarm in the backyard.

In response to detecting the motion by the camera115c, the base station125determines (e.g., from the database) if there are any tasks to be performed in response to the detection when the home security system is armed and determines that the security alarm117is to be triggered. Upon determining that the security alarm117is to be triggered, the network management system105identifies the access point to which the security alarm117is connected, e.g., access point110a, and sends an instruction to the access point110ato command the security alarm117to trigger. The access point110acan then send a command to the security alarm117to generate the alarm.

The user170can also configure the specified tasks to be performed by the components, e.g., deactivate, when the home security system150is disarmed. For example, the user170may configure the security alarms to deactivate but the cameras115to continue detecting motion when the home security system150is disarmed. In another example, the user170may choose to deactivate the security alarms and intrusion detection by a subset of the cameras115when the home security system150is disarmed.

FIG.5is a block diagram of an example implementation500of a home security system having a doorbell switch and a doorbell chime, consistent with various embodiments. The home security system150includes multiple cameras115a-e, a doorbell switch119for ringing a doorbell and a doorbell chime120that generates a chime in response to activating the doorbell switch119. The doorbell switch119can connect to the communication network130wirelessly or via wired means. For example, the doorbell switch119can connect to an access point (or the base station125or a camera that is in proximity to the doorbell switch119) via Bluetooth or Wi-Fi. Similarly, the doorbell chime120can connect to the communication network130wirelessly or via wired means. For example, the doorbell chime120can connect to an access point (or the base station125) via Bluetooth or Wi-Fi.

Upon activating (e.g., pressing) the doorbell switch119, an indication is sent to the access point110bto which the doorbell switch119is connected to generate a chime. The access point110bdetermines (e.g., from the database) if there are any tasks to be performed in response to the activation of the doorbell switch119and determines that the doorbell chime120is to be triggered. Upon determining that the doorbell chime120is to be triggered, the network management system105identifies the access point to which the doorbell chime120is connected, e.g., access point110a, and sends an instruction to the access point110ato command the doorbell chime120to generate the chime. The access point110acan then send a command to the doorbell chime120to generate the chime. In an event the doorbell switch119is connected to the camera115b, then upon activating (e.g., pressing) the doorbell switch119, an indication is sent to the camera115bregarding the activation of the doorbell switch119, which the camera115bforwards to the access point110band then the process proceeds from the access point110bas explained above.

In some embodiments, in addition to generating the chime, the user170can configure the camera115bto activated, e.g., capture video data, when the doorbell switch119is activated. The user170can define the tasks to be performed by one or more components of the home security system150when the doorbell switch119is activated and such configurations are stored in the database.

FIG.6is a block diagram of an example implementation600of a home security system having a NAS, consistent with various embodiments. The home security system150includes multiple cameras115a-band115d-eand a NAS605for storing data, e.g., video feed from cameras115. The NAS605can be connected to the communication network130wirelessly or via wired means. In some embodiments, the NAS605is connected to an access point (or the base station125) using wired means. Any data associated with the communication network130, e.g., user data such as user profile, data from user device165or other client devices205, video feeds from the cameras115, network activity log, user configurations of the home security system150. The home security system can have multiple NAS devices or local storage devices (e.g., local to an access point). Further, the user170can also define rules on storing data, e.g., a specified NAS device for a specified type of data, a specified NAS device for data from a specified source, backup rules etc.

Although different implementations of the home security system150is illustrated as having different components, the home security system150can have some or all of the components illustrated inFIG.1. In some embodiments, the home security system150may not have the base station125and the access points110may perform the tasks of the base station125.

FIG.7is a block diagram of the network management system105, consistent with various embodiments. The network management system105has multiple components including a network component705, a monitoring component710, a request receiving component715, and an access point connection component720. The network component705manages the network connection and operation of the home security system150in the communication network130. The monitoring component710monitors various parameters, such as environmental parameters. The request receiving component715receives a request from the components of the home security system150for connecting to the communication network130. The access point connection component720determines an appropriate access point to which a component of the home security system is to be connected and connects the component to the determined access point.

Additional details of the foregoing components are described at least with reference toFIGS.8-14below. Note that the network management system105illustrated inFIG.7is not restricted to having the above components. The network management system105can include lesser number of components, e.g., functionalities of two components can be combined into one component, or can include more number of components, e.g., components that perform other functionalities. In some embodiments, the functionalities of one or more of the above components can be split into two or more components. Furthermore, the components of the network management system105can be implemented at a single computing device or distributed across multiple computing devices. For example, the network management system105can be executing at the base station125(if the home security system150has one) and all access points110, or the components of the network management system105can be distributed across the base station125and the access points110.

FIG.8is a flow diagram of a process800for connecting a camera of a home security system to a communication network, consistent with various embodiments. In some embodiments, the process800can be implemented in the environment100ofFIG.1. At block805, the request receiving component715receives a request from a specified camera of the home security system150to connect to the communication network130having multiple access points110. For example, the request receiving component715receives a request from the camera115dto connect to the communication network130.

At block810, the monitoring component710determines the environmental parameters associated with the communication network130. For example, the environmental parameters of the communication network130include any of a signal strength between a component and each of the access points; a CPU usage, memory usage, and/or a throughput of the access points; or hardware/software capability of the component.

At block815, the access point connection component720determines a specified access point of the communication network130to which the camera115dis to be connected based on the environmental parameters. For example, the access point connection component720determines a specified access point that satisfies the selection criterion for hosting the camera115d. In some embodiments, the selection criterion for selecting an access point includes at least one of (a) a load of the access point not exceeding a first specified threshold, where the load is a function of one or more of CPU usage, memory usage or a throughput of the access point, (b) a signal strength between the component and the access point being above a second specified threshold, (c) number of devices connected to the access point not exceeding a third specified threshold, or (d) hardware and/or software compatibility between the access point and the component. The access point connection component720determines that the access point110asatisfies the selection criterion for hosting the camera115d.

At block820, the access point connection component720connects the camera115dto the access point110a, e.g., wirelessly.

FIG.9is a flow diagram of a process900for streaming a video feed from a camera of the home security system to a user device, consistent with various embodiments. The process900may be implemented in the environment100ofFIG.1. At block905, the request receiving component715receives a request from a user device for viewing a video captured by a specified camera. For example, the request receiving component715receives a request from the user device165for viewing a video captured by the camera115d. In some embodiments, the request receiving component715in the access point to which the user device165is connected receives the request.

At block910, the network component705determines a specified access point to which the specified camera is connected. For example, the network component705determines that the camera115dis connected to the access point110a. In some embodiments, the network component705maintains information regarding the devices in the communication network130, such as identification (ID) of a device connected to the communication network130, a type of the device, the Internet protocol (IP) address of the device, the access point to which the device is connected, etc. The network component705can store such information in a database, which can be stored in any of the access points, and use the information stored in the database to determine the access point to which a specified component of the home security system150is connected.

At block915, the network component705forwards the request to the access point to which the specified camera is connected. For example, the network component705forwards the request to the access point110a.

At block920, the network component705obtains the video feed from the specified camera. For example, the network component705in the access point110aobtains the video from the camera115d.

At block930, the network component705streams the video feed to the user device. In some embodiments, if the user device165is connected to an access point other than the specified access point to which the specified camera is connected, the specified access point forwards the video to the access point which the user device is connected, which then forwards the video to the user device165. For example, the access point110aforwards the video from the camera115dto the access point110c, which then forwards it to the user device165.

FIG.10is a flow diagram of a process1000for operating a lighting device in the home security system, consistent with various embodiments. The process1000may be implemented in the environment100ofFIG.1. At block1005, the access point connection component720establishes a network connection for a lighting device with a communication network. For example, the access point connection component720establishes a network connection for the lighting device116awith the communication network130. In some embodiments, the access point connection component720establishes the network connection for the lighting device116awith the access point110cusing the selection criterion described at least with respect toFIGS.1and3. The lighting device116amay be connected to the access point110cwirelessly, e.g., via Bluetooth.

At block1010, the network component705receives an indication of a motion being detected by one of the cameras. For example, the network component705receives an indication from the camera115ethat a motion was detected by the camera115e.

At block1015, the network component705sends a command to a specified lighting device to turn on the light in response to the motion. For example, the network component705sends a command to the lighting device116ato turn on the light in response to the motion detected by the camera115e. In some embodiments, the network component705checks the database for determining a specified task to be performed in response to specified events. The database can store information that specifies which component of the home security system150has to perform what task in response to a specified event. For example, the information stored in the database can indicate that the lighting device116ais to be turned on in response to a motion detected by the camera115d. In some embodiments, the network management system105may determine the specified lighting devices to be turned on based on an actual location of the user170or a prediction of the location of the user170, which can be done using AI and ML techniques.

FIG.11is a flow diagram of a process1100for determining a set of lighting devices to be turned on in the home security system, consistent with various embodiments. The process1100may be implemented in the environment100ofFIG.1. The process1100may also be performed as part of block1015of process1000. At block1105, the network component705determines a path taken or to be taken by the user170, e.g., after a motion is detected by a specified camera. For example, the network component705determines a path taken or to be taken by the user170after a motion is detected by the camera115e.

In determining the path taken by the user170, the network component705can determine the location of the user170, e.g., based on the location of the user device165or based on the location the user170itself, as described at least with respect toFIG.3.

In predicting the path to be taken by the user170in response to a specified event such as detecting a motion by a specified camera, the network component705can predict the path to be taken by the user170using AI and ML techniques, e.g., based on past movements of the user170recorded by the network management system105over a period, as described at least with reference toFIG.3.

At block1110, the network component705determines the lighting devices along the path. In some embodiments, the network component705also determines the access points to which those lighting devices are connected.

At block1115, the network component705sends a command to the access points to which the lighting devices are connected to turn on the light. Upon receiving, the instructions from the network component705, each of the access points send a command to the corresponding lighting devices to turn on the light.

FIG.12is a flow diagram of a process1200for operating a security alarm in the home security system, consistent with various embodiments. The process1200may be implemented in the environment100ofFIG.1. At block1205, the access point connection component720establishes a network connection for multiple security alarms with a communication network. For example, the access point connection component720establishes a network connection for the security alarm117with the communication network130. In some embodiments, the access point connection component720establishes the network connection for the security alarm117with the access point110ausing the selection criterion described at least with respect toFIG.1. The security alarm117may be connected to the access point110awirelessly. In some embodiments, the security alarm117may be integrated with the access point110a, and can connect to the communication network130automatically upon connecting the access point110ato the communication network130.

At block1210, the network component705receives an indication of a motion being detected by one of the cameras. For example, the network component705receives an indication from the camera115ethat a motion was detected by the camera115e.

At block1215, the network component705determines a specified security alarm to be triggered in response to detecting a motion being by a specified camera. In some embodiments, the network component705checks the database for determining a specified task to be performed in response to a specified event. The tasks to be performed by the components of the home security system150in response to the events may be user-defined. The database can store information that specifies which component of the home security system150has to perform what task in response to a specified event. For example, the information stored in the database can indicate that the security alarm117is to be triggered in response to a motion detected by the camera115e. The network component705also determines the access point to which the specified security alarm is connected. For example, the network component determines that the security alarm117is connected to the access point110a.

At block1220, the network component705sends a command to the specified security alarm to raise the alarm in response to the motion. For example, the network component705sends a command to the security alarm117to raise the alarm in response to the motion detected by the camera115e. In some embodiments, if the security alarm that is to be triggered and the camera that detected the motion are connected to different access points, then the access point to which the camera is connected sends an instruction to the access point to which the security alarm is connected to command the security alarm to raise an alarm.

FIG.13is a flow diagram of a process1300for operating a fingerprint sensor in the home security system, consistent with various embodiments. The process1300may be implemented in the environment100ofFIG.1. At block1305, the access point connection component720establishes a network connection for a fingerprint sensor with a communication network. For example, the access point connection component720establishes a network connection for the fingerprint sensor118with the communication network130. In some embodiments, the access point connection component720establishes the network connection for the fingerprint sensor118using the selection criterion described at least with respect toFIG.1. The fingerprint sensor118may be connected to the access point110cwirelessly. In some embodiments, the fingerprint sensor118may be integrated with the access point110c, and can connect to the communication network130automatically upon connecting the access point110cto the communication network130.

At block1310, the fingerprint sensor receives a fingerprint input of a user. For example, the fingerprint sensor118receives a fingerprint input408of the user170.

At block1315, the network component705sends a command to one or more access points to arm/disarm the home security system. Upon receiving the fingerprint input408the network component705authenticates the fingerprint408to determine whether the fingerprint408is of a user who can arm/disarm the home security system150. If the fingerprint408is of a user who can arm/disarm the home security system150, e.g., the user170, the network component705proceeds with performing the specified task. In an event the home security system150is armed, it is disarmed upon authenticating the fingerprint408. In an event the home security system150is disarmed, it is armed upon authenticating the fingerprint408. The fingerprint sensor118or the access point110cmay have an output device, e.g., a display or a speaker, that indicates a status of the home security system, e.g., armed or disarmed. Upon determining that the home security system150is to be armed or disarmed, the network component705identifies the access points to which the components of the home security system150that are to be armed or disarmed are connected, e.g., access point110ato which security alarm117is connected, and sends an instruction to the access point110ato command the security alarm117to arm/disarm.

FIG.14is a flow diagram of a process1400for operating a doorbell switch and doorbell chime in the home security system, consistent with various embodiments. The process1400may be implemented in the environment100ofFIG.1. At block1405, the access point connection component720establishes a network connection for the doorbell switch and the doorbell chime with a communication network. For example, the access point connection component720establishes a network connection for the doorbell switch119and the doorbell chime120with the communication network130. The doorbell switch119and doorbell chime120can connect to the communication network130by connecting to an access point or a camera in the communication network130. In some embodiments, the doorbell switch119and the doorbell chime120connect to communication network130by connecting to the access point110band access point110a, respectively. The doorbell switch119and the doorbell chime120connect to communication network130wirelessly, e.g., via Bluetooth.

At block1410, the network component705receives an indication that an input is received from a doorbell switch, e.g., doorbell switch119is pressed.

At block1415, the network component705performs one or more tasks associated with the doorbell switch press. For example, one task can be to be ring a doorbell chime120in response to pressing of the doorbell switch119. Upon determining that the doorbell chime120is to be ringed, the network component705sends an instruction to the access point110aassociated with the doorbell chime120to command the doorbell chime120to ring the bell. In another example, a first task can be to be ring the doorbell chime120and a second task is to capture the video from an associated camera, e.g., the camera115b, and stream the video to the user device165in response to pressing of the doorbell switch119. The user170may configure one or more of the tasks to be performed by one or more of the components of the home security system150in response to pressing of the doorbell switch119.

FIG.15is a block diagram of a computer system as may be used to implement features of some embodiments of the disclosed technology. The computing system1500may be used to implement any of the entities, components, modules, interfaces, or services depicted in the foregoing figures (and in this specification). The computing system1500may include one or more central processing units (“processors”)1505, memory1510, input/output devices1525(e.g., keyboard and pointing devices, display devices), storage devices1520(e.g., disk drives), and network adapters1530(e.g., network interfaces) that are connected to an interconnect1515. The interconnect1515is illustrated as an abstraction that represents any one or more separate physical buses, point to point connections, or both connected by appropriate bridges, adapters, or controllers. The interconnect1515, therefore, may include, for example, a system bus, a Peripheral Component Interconnect (PCI) bus or PCI-Express bus, a HyperTransport or industry standard architecture (ISA) bus, a small computer system interface (SCSI) bus, a universal serial bus (USB), IIC (I2C) bus, or an Institute of Electrical and Electronics Engineers (IEEE) standard 1394 bus, also called “Firewire”.

The instructions stored in memory1510can be implemented as software and/or firmware to program the processor(s)1505to carry out actions described above. In some embodiments, such software or firmware may be initially provided to the processing system1500by downloading it from a remote system through the computing system1500(e.g., via network adapter1530).