Patents by Inventor Joseph R. Eykholt

Joseph R. Eykholt 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: 10990376
    Abstract: 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: Grant
    Filed: November 28, 2018
    Date of Patent: April 27, 2021
    Assignee: Ayla Networks, Inc.
    Inventors: Pritish Gandhi, Peter Hunt, Sudha Sundaresan, Daniel Myers, Joseph R. Eykholt, Adrian Caceres
  • Patent number: 10949255
    Abstract: 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: Grant
    Filed: January 23, 2019
    Date of Patent: March 16, 2021
    Assignee: Ayla Networks, Inc.
    Inventors: Jigar Vora, Joseph R. Eykholt, Sudha Sundaresan, Pablo Sebastián Rivera, David Russell Friedman, Adrian Caceres
  • Patent number: 10805279
    Abstract: 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: Grant
    Filed: October 5, 2018
    Date of Patent: October 13, 2020
    Assignee: Ayla Networks, Inc.
    Inventors: Jigar Vora, Marko Kiiskila, Daniel Myers, Joseph R. Eykholt, Adrian Caceres
  • Patent number: 10404832
    Abstract: 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: Grant
    Filed: August 29, 2016
    Date of Patent: September 3, 2019
    Assignee: Ayla Networks, Inc.
    Inventors: Jigar Vora, Vishwesh Pai, Haoqing Geng, Sudha Sundaresan, Joseph R. Eykholt, Adrian Caceres, Yipei Wang
  • Publication number: 20190155896
    Abstract: 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: Application
    Filed: January 23, 2019
    Publication date: May 23, 2019
    Inventors: Jigar Vora, Joseph R. Eykholt, Sudha Sundaresan, Pablo Sebastián Rivera, David Russell Friedman, Adrian Caceres
  • Publication number: 20190095194
    Abstract: 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: Application
    Filed: November 28, 2018
    Publication date: March 28, 2019
    Inventors: Pritish Gandhi, Peter Hunt, Sudha Sundaresan, Daniel Myers, Joseph R. Eykholt, Adrian Caceres
  • Patent number: 10223160
    Abstract: 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: Grant
    Filed: August 29, 2016
    Date of Patent: March 5, 2019
    Assignee: Ayla Networks, Inc.
    Inventors: Jigar Vora, Joseph R. Eykholt, Sudha Sundaresan, Pablo Sebastián Rivera, David Russell Friedman, Adrian Caceres
  • Publication number: 20190044926
    Abstract: 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: Application
    Filed: October 5, 2018
    Publication date: February 7, 2019
    Inventors: Jigar Vora, Marko Kiiskila, Daniel Myers, Joseph R. Eykholt, Adrian Caceres
  • Patent number: 10162622
    Abstract: 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: Grant
    Filed: February 26, 2016
    Date of Patent: December 25, 2018
    Assignee: Ayla Networks, Inc.
    Inventors: Pritish Gandhi, Peter F. Hunt, Daniel J. Myers, Joseph R. Eykholt, Adrian Caceres, Sudha Sundaresan
  • Patent number: 10129226
    Abstract: 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: Grant
    Filed: August 10, 2016
    Date of Patent: November 13, 2018
    Assignee: Ayla Networks, Inc.
    Inventors: Jigar Vora, Marko Kiiskila, Daniel Myers, Joseph R. Eykholt, Adrian Caceres
  • Publication number: 20170249135
    Abstract: 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: Application
    Filed: February 26, 2016
    Publication date: August 31, 2017
    Inventors: Pritish Gandhi, Peter F. Hunt, Daniel J. Myers, Joseph R. Eykholt, Adrian Caceres, Sudha Sundaresan
  • Patent number: 9661083
    Abstract: 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: Grant
    Filed: June 18, 2014
    Date of Patent: May 23, 2017
    Assignee: Ayla Networks, Inc.
    Inventors: Joseph R. Eykholt, Adrian Caceres
  • Publication number: 20170064042
    Abstract: 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: Application
    Filed: August 29, 2016
    Publication date: March 2, 2017
    Inventors: Jigar Vora, Vishwesh Pai, Haoqing Geng, Sudha Sundaresan, Joseph R. Eykholt, Adrian Caceres, Yipei Wang
  • Publication number: 20170060629
    Abstract: 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: Application
    Filed: August 29, 2016
    Publication date: March 2, 2017
    Inventors: Jigar Vora, Joseph R. Eykholt, Sudha Sundaresan, Pablo Sebastián Rivera, David Russell Friedman, Adrian Caceres
  • Publication number: 20160352701
    Abstract: 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: Application
    Filed: August 10, 2016
    Publication date: December 1, 2016
    Inventors: Jigar Vora, Marko Kiiskila, Daniel Myers, Joseph R. Eykholt, Adrian Caceres
  • Patent number: 9426185
    Abstract: A computing device connects to a local area network (LAN) and determines whether a device comprising an embedded system is also connected to the LAN. Responsive to determining that the device is connected to the LAN, the computing device establishes a first session with the embedded system of the device over the LAN and then communicates with the embedded system of the device via the first session.
    Type: Grant
    Filed: June 3, 2013
    Date of Patent: August 23, 2016
    Assignee: Ayla Networks, Inc.
    Inventors: Jigar Vora, Marko Kiiskila, Daniel Myers, Joseph R. Eykholt, Adrian Caceres
  • Patent number: 9268552
    Abstract: A processing device determines a memory layout for an executable comprising a plurality of functions and data, wherein the memory layout is determined based on one or more object files. The processing device updates the memory layout by inserting an unused memory region between a first function and a second function of the plurality of functions in the memory layout, wherein the first function and the second function have adjacent memory locations in the memory layout prior to insertion of the unused memory region. The processing device resolves references between the plurality of functions. The processing device then generates an executable comprising the plurality of functions and the data arranged in accordance with the memory layout, the executable having the resolved references.
    Type: Grant
    Filed: June 17, 2014
    Date of Patent: February 23, 2016
    Assignee: Ayla Networks, Inc.
    Inventors: Marko Kiiskila, Joseph R. Eykholt
  • Patent number: 7522627
    Abstract: The present invention provides a system and method for packet forwarding. The packet forwarding improves the performance of common network security applications. The system includes an operating system kernel, a plurality of packet forwarding paths, and a packet classifier. The method includes receiving network packets, receiving state information from a plurality of external agents, selecting a forwarding path from a plurality of forwarding paths based on the state information, and transmitting packets.
    Type: Grant
    Filed: September 13, 2002
    Date of Patent: April 21, 2009
    Assignee: Nokia Corporation
    Inventors: Vincent Lam, Adrian Caceres, Joseph R. Eykholt, Lawrence Huston
  • Publication number: 20030072318
    Abstract: The present invention provides a system and method for packet forwarding. The packet forwarding improves the performance of common network security applications. The system includes an operating system kernel, a plurality of packet forwarding paths, and a packet classifier. The method includes means for receiving network packets, means for receiving state information from a plurality of external agents, means for selecting a forwarding path from a plurality of forwarding paths based on the state information, and means for transmitting packets.
    Type: Application
    Filed: September 13, 2002
    Publication date: April 17, 2003
    Applicant: Nokia Inc.
    Inventors: Vincent Lam, Adrian Caceres, Joseph R. Eykholt, Lawrence Huston
  • Patent number: 6260057
    Abstract: A method and apparatus for bypassing multiple pre-tests and post-tests during a system call when those tests are known to be inapplicable. One or more slow path flags are checked during a system call or TRAP. If the slow path flag is clear, execution follows a fast instruction path, resulting in faster execution for the system call or TRAP. Otherwise execution follows a slow instruction path. The slow path flags are set, cleared, and checked at appropriate times. The invention improves the execution time of a thread in a software process and may be used in a data processing system employing multiple threads. Each thread in the data processing system has its own set of slow path flags. The invention can set, clear and check the slow path flags of each thread independently, in subsets of threads, or in all threads.
    Type: Grant
    Filed: March 1, 1995
    Date of Patent: July 10, 2001
    Assignee: Sun Microsystems, Inc.
    Inventors: Joseph R. Eykholt, Steven R. Kleiman