Patents by Inventor Adrian Caceres
Adrian Caceres has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 10999375Abstract: A device includes at least one of a mechanical component or an electrical component and an Internet enabled embedded system that controls at least one of the mechanical component or the electrical component. The Internet enabled embedded system is configured to establish a connection to a local area network (LAN), provide data to a registration service via the connection to the LAN, receive from the registration service an instruction to implement a specified registration technique, and implement the specified registration technique. The registration service is configured to bind the embedded system to a user account responsive to satisfaction of a criterion of the specified registration technique.Type: GrantFiled: November 6, 2017Date of Patent: May 4, 2021Assignee: Ayla Networks, Inc.Inventors: Vishwesh Pai, Sudha Sundaresan, Adrian Caceres
-
Patent number: 10990376Abstract: A processing device executing a wide area network (WAN) accessible service receive an encrypted digital image comprising a firmware update for an embedded system of a device having a specific device serial number (DSN). The processing device additionally receives device related information from a computing device, wherein the device related information comprises the DSN of the device comprising the embedded system and a version number of a current firmware component installed on the embedded system. The processing device determines, using the device related information, that the encrypted digital image for the device is available. The processing device then provides the encrypted digital image to the computing device for use by the computing device to update a firmware version of the embedded system.Type: GrantFiled: November 28, 2018Date of Patent: April 27, 2021Assignee: Ayla Networks, Inc.Inventors: Pritish Gandhi, Peter Hunt, Sudha Sundaresan, Daniel Myers, Joseph R. Eykholt, Adrian Caceres
-
Patent number: 10949255Abstract: In an embodiment, a processing device receives an instruction to schedule an event associated with a remote target device, generates a schedule for the remote target device, and transmits the schedule to the remote target device. The processing device receives usage information from the remote target device and additional usage information from other remote devices. The processing device applies a machine learning algorithm to the usage information and the additional usage information to determine an update to the schedule. The processing device updates the schedule and sends the update to the remote target device.Type: GrantFiled: January 23, 2019Date of Patent: March 16, 2021Assignee: Ayla Networks, Inc.Inventors: Jigar Vora, Joseph R. Eykholt, Sudha Sundaresan, Pablo Sebastián Rivera, David Russell Friedman, Adrian Caceres
-
Patent number: 10805279Abstract: A hardware module for an embedded system comprises a network adapter, a memory and a processing device. The memory stores a shared key and a key identifier (ID) associated with the shared key. The processing device is to connect to a local area network (LAN) using the network adapter. The processing device is further to receive a first notification from a computing device that is also connected to the LAN and determine whether the computing device has access to a copy of the shared key based on the key identifier (ID). Responsive to determining that the computing device has access to the copy of the shared key, the processing device is to use the shared key to generate a session key for a session with the computing device. The processing device may then encrypt communications to the computing device using the session key.Type: GrantFiled: October 5, 2018Date of Patent: October 13, 2020Assignee: Ayla Networks, Inc.Inventors: Jigar Vora, Marko Kiiskila, Daniel Myers, Joseph R. Eykholt, Adrian Caceres
-
Patent number: 10404832Abstract: A server determines a plurality of device templates that define a plurality of device attributes of a remote device connected to a gateway device. The server creates a virtual device from the plurality of device templates, wherein the virtual device is a virtual representation of the remote device. The server determines an attribute update for a first device attribute of the remote device. The server updates a second device attribute of the virtual device. The server generates an instruction for the gateway device to initiate the attribute update for the first device attribute. The server transmits the instruction to the gateway device, wherein the instruction causes the gateway device to generate a command for the remote device to perform the attribute update on the device attribute.Type: GrantFiled: August 29, 2016Date of Patent: September 3, 2019Assignee: Ayla Networks, Inc.Inventors: Jigar Vora, Vishwesh Pai, Haoqing Geng, Sudha Sundaresan, Joseph R. Eykholt, Adrian Caceres, Yipei Wang
-
Publication number: 20190155896Abstract: In an embodiment, a processing device receives an instruction to schedule an event associated with a remote target device, generates a schedule for the remote target device, and transmits the schedule to the remote target device. The processing device receives usage information from the remote target device and additional usage information from other remote devices. The processing device applies a machine learning algorithm to the usage information and the additional usage information to determine an update to the schedule. The processing device updates the schedule and sends the update to the remote target device.Type: ApplicationFiled: January 23, 2019Publication date: May 23, 2019Inventors: Jigar Vora, Joseph R. Eykholt, Sudha Sundaresan, Pablo Sebastián Rivera, David Russell Friedman, Adrian Caceres
-
Publication number: 20190095194Abstract: A processing device executing a wide area network (WAN) accessible service receive an encrypted digital image comprising a firmware update for an embedded system of a device having a specific device serial number (DSN). The processing device additionally receives device related information from a computing device, wherein the device related information comprises the DSN of the device comprising the embedded system and a version number of a current firmware component installed on the embedded system. The processing device determines, using the device related information, that the encrypted digital image for the device is available. The processing device then provides the encrypted digital image to the computing device for use by the computing device to update a firmware version of the embedded system.Type: ApplicationFiled: November 28, 2018Publication date: March 28, 2019Inventors: Pritish Gandhi, Peter Hunt, Sudha Sundaresan, Daniel Myers, Joseph R. Eykholt, Adrian Caceres
-
Patent number: 10223160Abstract: A processing device executing a scheduler receives, by a device, a schedule from a remote server computing device, the schedule having a compact format that is understood by the device. The device stores the schedule and the processing device parses the schedule to identify a scheduled event. The processing device executes the scheduled event at a specified time in accordance with the schedule even in the absence of a network connection between the device and the remote server computing device.Type: GrantFiled: August 29, 2016Date of Patent: March 5, 2019Assignee: Ayla Networks, Inc.Inventors: Jigar Vora, Joseph R. Eykholt, Sudha Sundaresan, Pablo Sebastián Rivera, David Russell Friedman, Adrian Caceres
-
Publication number: 20190044926Abstract: A hardware module for an embedded system comprises a network adapter, a memory and a processing device. The memory stores a shared key and a key identifier (ID) associated with the shared key. The processing device is to connect to a local area network (LAN) using the network adapter. The processing device is further to receive a first notification from a computing device that is also connected to the LAN and determine whether the computing device has access to a copy of the shared key based on the key identifier (ID). Responsive to determining that the computing device has access to the copy of the shared key, the processing device is to use the shared key to generate a session key for a session with the computing device. The processing device may then encrypt communications to the computing device using the session key.Type: ApplicationFiled: October 5, 2018Publication date: February 7, 2019Inventors: Jigar Vora, Marko Kiiskila, Daniel Myers, Joseph R. Eykholt, Adrian Caceres
-
Patent number: 10162622Abstract: A computing device determines a unique identifier associated with a device comprising an embedded system. The computing device sends the unique identifier to a wide area network (WAN) accessible service and receives an encrypted digital image comprising a firmware update for the device comprising the embedded system from the WAN accessible service. The computing device stores the encrypted digital image in a storage area of the computing device and initiates an over the air update of firmware of the device comprising the embedded system using the encrypted digital image.Type: GrantFiled: February 26, 2016Date of Patent: December 25, 2018Assignee: Ayla Networks, Inc.Inventors: Pritish Gandhi, Peter F. Hunt, Daniel J. Myers, Joseph R. Eykholt, Adrian Caceres, Sudha Sundaresan
-
Patent number: 10129226Abstract: A hardware module for an embedded system comprises a network adapter, a memory and a processing device. The memory stores a shared key and a key identifier (ID) associated with the shared key. The processing device is to connect to a local area network (LAN) using the network adapter. The processing device is further to receive a first notification from a computing device that is also connected to the LAN and determine whether the computing device has access to a copy of the shared key based on the key identifier (ID). Responsive to determining that the computing device has access to the copy of the shared key, the processing device is to use the shared key to generate a session key for a session with the computing device. The processing device may then encrypt communications to the computing device using the session key.Type: GrantFiled: August 10, 2016Date of Patent: November 13, 2018Assignee: Ayla Networks, Inc.Inventors: Jigar Vora, Marko Kiiskila, Daniel Myers, Joseph R. Eykholt, Adrian Caceres
-
Publication number: 20180063257Abstract: A device includes at least one of a mechanical component or an electrical component and an Internet enabled embedded system that controls at least one of the mechanical component or the electrical component. The Internet enabled embedded system is configured to establish a connection to a local area network (LAN), provide data to a registration service via the connection to the LAN, receive from the registration service an instruction to implement a specified registration technique, and implement the specified registration technique. The registration service is configured to bind the embedded system to a user account responsive to satisfaction of a criterion of the specified registration technique.Type: ApplicationFiled: November 6, 2017Publication date: March 1, 2018Inventors: Vishwesh Pai, Sudha Sundaresan, Adrian Caceres
-
Patent number: 9813505Abstract: A device includes at least one of a mechanical component or an electrical component and an Internet enabled embedded system that controls at least one of the mechanical component or the electrical component. The Internet enabled embedded system is configured to establish a connection to a local area network (LAN), provide data to a registration service via the connection to the LAN, receive from the registration service an instruction to implement a specified registration technique, and implement the specified registration technique. The registration service is configured to bind the embedded system to a user account responsive to satisfaction of a criterion of the specified registration technique.Type: GrantFiled: October 15, 2014Date of Patent: November 7, 2017Assignee: Ayla Networks, Inc.Inventors: Vishwesh Pai, Sudha Sundaresan, Adrian Caceres
-
Patent number: 9800619Abstract: A processing device executing a registration service receives information identifying a first device, a second device and an application running on the first device. The processing device determines a registration technique that is supported by both the application and the second device and sends a message indicating the registration technique to at least one of the first device or the second device, wherein the application is to perform an operation associated with the first registration technique to bind the second device to the user account.Type: GrantFiled: October 15, 2014Date of Patent: October 24, 2017Assignee: Ayla Networks, Inc.Inventors: Vishwesh Pai, Sudha Sundaresan, Adrian Caceres
-
Publication number: 20170249135Abstract: A computing device determines a unique identifier associated with a device comprising an embedded system. The computing device sends the unique identifier to a wide area network (WAN) accessible service and receives an encrypted digital image comprising a firmware update for the device comprising the embedded system from the WAN accessible service. The computing device stores the encrypted digital image in a storage area of the computing device and initiates an over the air update of firmware of the device comprising the embedded system using the encrypted digital image.Type: ApplicationFiled: February 26, 2016Publication date: August 31, 2017Inventors: Pritish Gandhi, Peter F. Hunt, Daniel J. Myers, Joseph R. Eykholt, Adrian Caceres, Sudha Sundaresan
-
Patent number: 9729383Abstract: A processing device executing a rules engine receives a notification of a first event on a first network-connected device. The processing device identifies a first rule associated with a first user account, wherein the first user account is further associated with the first network-connected device, and wherein the first event on the first network-connected device is an input for the first rule. The processing device determines that the first event satisfies a first criterion of the first rule and generates a first command for a second network-connected device also associated with the first user account. The processing device then transmits the first command to the second network-connected device on behalf of the first user account, wherein the first command causes the second network-connected device to perform an action.Type: GrantFiled: October 15, 2014Date of Patent: August 8, 2017Assignee: Ayla Networks, Inc.Inventors: Sudha Sundaresan, Vishwesh Pai, Adrian Caceres
-
Patent number: 9661083Abstract: A first computing device sends a plurality of request messages to a second computing device that is outside a firewall associated with the first computing device, each request message of the plurality of request messages comprising a request for the second computing device to send a response message to the first computing device after a time period specified in the request message. The first computing device determines a timeout period of the firewall based on one or more response messages that are received responsive to the plurality of request messages. The first computing device sends or receives an additional message to or from the second computing device within the timeout period to prevent the firewall from blocking future messages from the second computing device.Type: GrantFiled: June 18, 2014Date of Patent: May 23, 2017Assignee: Ayla Networks, Inc.Inventors: Joseph R. Eykholt, Adrian Caceres
-
Patent number: 9648055Abstract: A processing device executing an application that is logged in to a user account recognized by a registration service receives information identifying a device that has not been bound to any user account, wherein the application supports a plurality of registration techniques. The processing device identifies a registration technique supported by the device that is to be used for registration of the device. The processing device performs at least one of sending information associated with the registration technique to the device or receiving the information associated with the registration technique. The processing device sends the information associated with the registration technique to the registration service, and then receives a message from the registration service, wherein the message indicates that the information satisfied a criterion of the registration technique and comprises a notification that the device is bound to the user account.Type: GrantFiled: October 15, 2014Date of Patent: May 9, 2017Assignee: Ayla Networks, Inc.Inventors: Vishwesh Pai, Sudha Sundaresan, Adrian Caceres
-
Publication number: 20170060629Abstract: A processing device executing a scheduler receives, by a device, a schedule from a remote server computing device, the schedule having a compact format that is understood by the device. The device stores the schedule and the processing device parses the schedule to identify a scheduled event. The processing device executes the scheduled event at a specified time in accordance with the schedule even in the absence of a network connection between the device and the remote server computing device.Type: ApplicationFiled: August 29, 2016Publication date: March 2, 2017Inventors: Jigar Vora, Joseph R. Eykholt, Sudha Sundaresan, Pablo Sebastián Rivera, David Russell Friedman, Adrian Caceres
-
Publication number: 20170064042Abstract: A server determines a plurality of device templates that define a plurality of device attributes of a remote device connected to a gateway device. The server creates a virtual device from the plurality of device templates, wherein the virtual device is a virtual representation of the remote device. The server determines an attribute update for a first device attribute of the remote device. The server updates a second device attribute of the virtual device. The server generates an instruction for the gateway device to initiate the attribute update for the first device attribute. The server transmits the instruction to the gateway device, wherein the instruction causes the gateway device to generate a command for the remote device to perform the attribute update on the device attribute.Type: ApplicationFiled: August 29, 2016Publication date: March 2, 2017Inventors: Jigar Vora, Vishwesh Pai, Haoqing Geng, Sudha Sundaresan, Joseph R. Eykholt, Adrian Caceres, Yipei Wang