Patents by Inventor Brien Colwell

Brien Colwell 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).

  • Publication number: 20230308284
    Abstract: A first device that lacks the private cryptographic key used to generate a cryptographic signature for a component of an application is able to obtain a signature from a second device. The second device provides data indicative of a profile or certificate that is associated with a stored private key to a data store via an intermediate device that does not access the private key. The first device provides a request that indicates the profile or certificate to the data store via an intermediate device. When a match between the request and the data provided by the second device is determined, the request is sent to the second device, which generates a cryptographic signature and provides it to the first device via the intermediate devices. The first device is therefore able to obtain signatures for components of an application from a separate device that accesses the associated private key.
    Type: Application
    Filed: March 23, 2022
    Publication date: September 28, 2023
    Inventors: JAMES RILEY WILBURN, SIMO ANTTI KALERVO KINNUNEN, JONATHAN RAFKIND, BRIEN COLWELL
  • Patent number: 11770458
    Abstract: When significant latency exists between a test device executing an application and a remote device used to debug the application, an intermediate device is used to receive requests from the remote device. When a first request is received, the intermediate device determines other requests that are related to the first request, sequentially sends the other requests to the test device, and receives a response after each request, using a wired connection or a wireless network having lower latency than wireless communication between the remote device and the test device. The intermediate device then sends each of the responses to the remote device. The remote device stores the responses. The remote device is then able to use the stored data to determine responses for subsequent requests.
    Type: Grant
    Filed: December 13, 2022
    Date of Patent: September 26, 2023
    Assignee: HEADSPIN, INC.
    Inventors: Simo Antti Kalervo Kinnunen, James Riley Wilburn, Brien Colwell
  • Patent number: 11650263
    Abstract: The power consumption associated with use of an application is determined by causing one or more devices to execute the application. The state of the power source for each device is determined before, during, and after execution of the application. The state may include an amount of power discharged by the power source, an amount of power used to maintain a charge level of the power source, or a difference between a baseline power use and the amount of power consumed during use of the application. The determined states for the power sources of each device are used to generate an output that indicates periods of high and low power use. The output may associate these periods of power use with different characteristics of the functions that were performed during those time periods or of the devices. Using the output, a developer may optimize power use associated with an application.
    Type: Grant
    Filed: September 24, 2021
    Date of Patent: May 16, 2023
    Assignee: HEADSPIN, INC.
    Inventors: Christopher Kwan Liu, Brien Colwell
  • Patent number: 11625506
    Abstract: Mobile devices executing applications may be tested for networking issues by utilizing a test network having proxy access devices placed at different physical locations. Devices may be stored in a secure enclosure that includes a host device. The enclosure includes access controls to prevent unauthorized removal of devices or access to stored data. If an unauthorized access, disconnection from the host device, or disconnection of a device from a power source is detected, devices may be placed into a locked state or data on the devices may be deleted. The enclosure may also include a control device for testing the exchange of Bluetooth data by the devices. The enclosure may also include conductive members placed on the touch sensors of devices for providing simulated touch input to the touch sensors by changing the capacitance of adjacent regions of the touch sensors.
    Type: Grant
    Filed: October 4, 2019
    Date of Patent: April 11, 2023
    Assignee: HEADSPIN, INC.
    Inventors: Severin Smith, Brien Colwell, Manish Lachwani
  • Patent number: 11570274
    Abstract: Application debug protocols that require waiting for responses between each request may be adversely affected if significant latency exists between a test device executing an application and a remote device used to debug the application. To address this, the test device is connected to a separate device that receives requests from the remote device. When a first request is received, the separate device determines other requests that are related to the first request, sequentially sends the other requests to the test device, and receives a response after each request, using a wired connection affected by less latency than communication with the remote device. The separate device then sends each of the requests and responses to the remote device for storage. When the remote device prepares to send a subsequent request, if a response can be determined using the stored data, the stored data is used to determine the response locally.
    Type: Grant
    Filed: September 15, 2021
    Date of Patent: January 31, 2023
    Assignee: HEADSPIN, INC.
    Inventors: Simo Antti Kalervo Kinnunen, James Riley Wilburn, Brien Colwell
  • Patent number: 11531613
    Abstract: Devices at different geolocations are configured to determine and share information regarding execution of an application under various conditions. Data determined by a user device includes private information, such as screen capture data, location data, or information about the user. The user device processes the data locally, such as by determining performance metrics or other characteristics of execution of the application, and sends this information to a server. The data sent to the server excludes the private information. The server determines additional data associated with execution of the application by devices other than the user device, which may include screen capture data or location data associated with those other devices. The additional data is used in conjunction with the data received from the user device to generate interfaces indicative of performance metrics of the application.
    Type: Grant
    Filed: March 19, 2021
    Date of Patent: December 20, 2022
    Assignee: HEADSPIN, INC.
    Inventors: Jason Lomnitz, Brian Perea, Brien Colwell, Daweon Ryu, Stepan Salenikovich
  • Publication number: 20220369064
    Abstract: A first device executing an application determines data indicative of conditions associated with the first device during use of the application. Based on correspondence between this data and threshold data that indicates conditions in which frames representing a display output of the first device should be stored, the first device is caused to send data indicative of these frames to a second device. The second device generates user interface data based in part on the received frames and may send the user interface data to other devices. To reduce the amount of data sent and the computational resources used, the first device may store only changed frames of display output, and may send data to the second device at times when a communication interface of the first device is active for other purposes.
    Type: Application
    Filed: May 14, 2021
    Publication date: November 17, 2022
    Inventors: JASON LOMNITZ, STEPAN SALENIKOVICH, BRIAN PEREA, BRIEN COLWELL
  • Patent number: 11442849
    Abstract: Mobile devices executing applications utilize data services worldwide, with issues involving the transfer of data on the network impacting the operation and user experience of those applications. Network data is acquired from a mobile computing device during communication and processed to determine occurrence of a burst which is representative of elements in the network data that are determined to be causally related. Bursts are analyzed, and those associated with poor performance are presented in a user interface. The user interface provides impact information about the effect the burst had on operation of the application. The user interface may provide suggestions to mitigate the poor performance. If no problem is determined by the system, but the user believes a problem to have occurred, user input is collected and used to trigger a workflow to analyze the burst. Subsequent results of this analysis are returned to the user via the user interface.
    Type: Grant
    Filed: February 23, 2021
    Date of Patent: September 13, 2022
    Assignee: HEADSPIN, INC.
    Inventors: Brien Colwell, Manish Lachwani, Marius Nita, Benjamin Lichtner, Shawn Weiland
  • Publication number: 20220261339
    Abstract: Devices at different geolocations are configured to determine and share information regarding execution of an application under various conditions. A device executing the application, or another device connected to the device executing the application, may send data determined by executing the application to a central device. The central device may in turn receive requests from other devices and provide the determined data to the other devices. The devices may be configured to exchange data using native debugging or bridge software on the devices by determining communication parameters that are common to each device, such as protocols, networks, intermediate devices through which communications may be passed, and so forth. To reduce the amount of data that is transmitted portions of the data related to communications between devices, such as acknowledgement codes, may be identified and withheld from sending.
    Type: Application
    Filed: February 18, 2021
    Publication date: August 18, 2022
    Inventors: SIMO ANTTI KALERVO KINNUNEN, BRIEN COLWELL
  • Patent number: 11416383
    Abstract: Devices at different geolocations are configured to determine and share information regarding execution of an application under various conditions. A device executing the application, or another device connected to the device executing the application, may send data determined by executing the application to a central device. The central device may in turn receive requests from other devices and provide the determined data to the other devices. The devices may be configured to exchange data using native debugging or bridge software on the devices by determining communication parameters that are common to each device, such as protocols, networks, intermediate devices through which communications may be passed, and so forth. To reduce the amount of data that is transmitted portions of the data related to communications between devices, such as acknowledgement codes, may be identified and withheld from sending.
    Type: Grant
    Filed: February 18, 2021
    Date of Patent: August 16, 2022
    Assignee: HEADSPIN, INC.
    Inventors: Simo Antti Kalervo Kinnunen, Brien Colwell
  • Patent number: 11386663
    Abstract: A machine learning system is trained to determine scores indicative of a quality of video data based on the characteristics of the video data, without requiring information regarding the correct appearance or other aspects of the video content. To train the machine learning system, users input scores for videos having predetermined quality scores, videos that have been previously seen by the users, and videos that have not been previously seen by the users. The differences between a user's score and a predetermined score or a score previously input by the user are used to determine a consistency metric. The scores and consistency metrics determined for a group of users, and the video characteristics of the videos presented to the users, are used to train the machine learning system to determine scores indicative of the quality of a video based on the characteristics of the video.
    Type: Grant
    Filed: August 28, 2020
    Date of Patent: July 12, 2022
    Assignee: HEADSPIN, INC.
    Inventors: Brian Perea, James Morad, Daweon Ryu, Brien Colwell
  • Publication number: 20220206912
    Abstract: An enclosure for testing performance of an application contains one or more devices. A first device being tested presents output using a display or a speaker. A camera or microphone, which may be associated with a second device in the enclosure, acquires information regarding the output, such as by acquiring data representing the display output of the first device using a camera. An interface presenting information regarding the performance of the application includes information determined using the camera or microphone, which may be useful when the first device is unable to directly capture the output that is presented. In other cases, a second device in the enclosure may provide a display output or an audio output, and the first device may receive the output using a camera or microphone, enabling the performance of the application relating to receipt of input by the first device to be tested.
    Type: Application
    Filed: December 31, 2020
    Publication date: June 30, 2022
    Inventors: SEVERIN SMITH, THOMAS HOBSON, ELIAS PSCHERNIG, BRIEN COLWELL
  • Patent number: 11372744
    Abstract: Mobile devices worldwide execute applications that utilize data services, with issues involving the transfer of data via networks impacting the operation and user experience of those applications. Data is acquired from a mobile computing device executing an application and processed to determine occurrence of a group of related activities performed when executing the application. Parameters of the activities are analyzed, and those parameters associated with poor performance are presented in a user interface. The interface provides impact information about the effect of the activities on operation of the application and may include recommended actions to mitigate the poor performance. A user may interact with data within the interface to trigger a workflow to analyze indicated portions of the data. Subsequent results of this analysis may be returned to the user via the user interface or may be implemented as analytic rules for subsequent data processing.
    Type: Grant
    Filed: November 25, 2019
    Date of Patent: June 28, 2022
    Assignee: HEADSPIN, INC.
    Inventors: Brien Colwell, Manish Lachwani, Marius Nita
  • Patent number: 11366738
    Abstract: A test device may include a performance module to determine entropy values for images, such as of a graphical user interface, to be presented on a display device of the test device. An entropy value for an image may be indicative of a distribution of data values, such as intensity or color values for pixels in the image. Patterns of entropy values over time may provide information indicative of performance of the test device. For example, a constant entropy value over time may indicate the graphical user interface is not changing. In another example, particular patterns of entry values over time may be indicative of presentation of wait indicators or other user interface elements. The entropy values may be used to determine data indicative of performance of the test device. This data may be stored locally, sent to an external device, and so forth.
    Type: Grant
    Filed: March 8, 2019
    Date of Patent: June 21, 2022
    Assignee: HEADSPIN, INC.
    Inventors: Brian Christian Perea, Severin Smith, Brien Colwell, Manish Lachwani
  • Patent number: 11221375
    Abstract: The power consumption associated with execution of an application is determined by causing one or more devices to execute the application. At multiple times before, during, and after execution of the application, the state of the power source for each device is determined. The state may include an amount of power discharged by the power source, an amount of power used to maintain a charge level of the power source, or a difference between a baseline power use and the amount of power used during execution of the application. The states for the power sources of each device are used to generate an output that indicates periods of high and low power use, and shows these periods of power use in association with different characteristics of the functions that were performed during those time periods. Using the output, a developer may optimize power use associated with an application.
    Type: Grant
    Filed: November 25, 2020
    Date of Patent: January 11, 2022
    Assignee: HEADSPIN, INC.
    Inventors: Christopher Kwan Liu, Brien Colwell
  • Patent number: 11159416
    Abstract: Mobile devices executing applications utilize data services worldwide. Testing of the applications for networking issues is facilitated by utilizing a test network having proxy devices placed at different physical locations. A tester may use the test network to direct traffic to and from an application under test to one of the proxy devices. Using the proxy device, the traffic is then exchanged with a real-world network, such as a cellular data network, at the different locations. The tester may thus test operation of the application under test in real-world conditions at a variety of different physical locations. The system may include a proxy host device with an intermediate module to establish Virtual Private Network (VPN) connections and to capture VPN data, including VPN protocol data, session data, and other data. The VPN data may be provided to a network system to analyze performance of an application under test.
    Type: Grant
    Filed: August 6, 2019
    Date of Patent: October 26, 2021
    Assignee: HEADSPIN, INC.
    Inventors: Brien Colwell, Marius Nita, Jonathan Rafkind, Manish Lachwani
  • Patent number: 11144441
    Abstract: Mobile devices executing applications utilize data services worldwide, with issues involving the transfer of data on the network impacting the operation and user experience of those applications. Network data is acquired from a mobile computing device during communication and processed to determine occurrence of a burst which is representative of elements in the network data that are determined to be causally related. Bursts are analyzed, and those associated with poor performance are presented in a user interface. The user interface provides impact information about the effect the burst had on operation of the application. The user interface may provide suggestions to mitigate the poor performance. If no problem is determined by the system, but the user believes a problem to have occurred, user input is collected and used to trigger a workflow to analyze the burst. Subsequent results of this analysis are returned to the user via the user interface.
    Type: Grant
    Filed: June 9, 2017
    Date of Patent: October 12, 2021
    Assignee: HEADSPIN, INC.
    Inventors: Brien Colwell, Manish Lachwani, Marius Nita, Benjamin Lichtner, Shawn Weiland
  • Patent number: 11019129
    Abstract: A mobile device executes an application and is remotely controlled by a client device. To reduce bandwidth used during operation, a rate limiter selects a portion of data from the mobile device to be sent to the client device. A timer value is specified. The rate limiter on the mobile device, on an ongoing basis, updates a pointer to the latest data stored in memory, such as a latest frame of an image presented by a display of the mobile device. When the elapsed time since last data sent is greater than or equal to the timer value, the latest data is sent to the client device, and the timer is reset.
    Type: Grant
    Filed: August 7, 2018
    Date of Patent: May 25, 2021
    Assignee: HEADSPIN, INC.
    Inventors: Brien Colwell, Manish Lachwani
  • Patent number: 10855789
    Abstract: Mobile devices executing applications utilize data services worldwide. The application executing on these mobile devices may be tested using proxy access devices (PADs) located at various points-of-presence (POPs) at different geolocations. A plurality of PADs in a high density configuration are managed to provide a pool of accessible devices at a POP for developers to utilize in testing. The PADs may comprise consumer-grade devices which individually are less reliable than that desired by an operator of the POP. Systems are used to provide a desired level of reliability by maintaining a reserve of additional PADs, automatically fixing problems, generating trouble tickets for more detailed troubleshooting, and so forth.
    Type: Grant
    Filed: February 6, 2017
    Date of Patent: December 1, 2020
    Assignee: HEADSPIN, INC.
    Inventors: Manish Lachwani, Marius Nita, Brien Colwell
  • Patent number: 10729038
    Abstract: Mobile devices executing applications utilize data services worldwide. An application executing on these mobile devices may be tested using proxy access devices (PADs) located at various points-of-presence (POPs) at different geolocations. A PAD retainer device is used to maintain a plurality of PADs in a high density arrangement while still permitting adequate cooling, wireless connectivity, and physical connectivity to a proxy host device. In one implementation, the PAD retainer device is configured to maintain a predefined physical configuration of the PADs mounted therein, while hot spots of the PADs are exposed to the ambient atmosphere to facilitate heat dissipation.
    Type: Grant
    Filed: February 6, 2017
    Date of Patent: July 28, 2020
    Assignee: HEADSPIN, INC.
    Inventors: Brien Colwell, Manish Lachwani, Michael Ramirez