Patents by Inventor Randall E. Aull
Randall E. Aull 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: 10715381Abstract: Embodiments described herein are directed to mechanisms that enable roles (e.g., host vs. function, power provider vs. power consumer, master vs. slave, server vs. client, source vs. sink, upstream vs. downstream) to be dynamically assigned between two interconnected dual-role devices in an intelligent and deterministic manner based on the available context on each device.Type: GrantFiled: October 9, 2018Date of Patent: July 14, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Firdosh K. Bhesania, Anthony Y. Chen, Vivek Gupta, Andrea A. Keating, Randall E. Aull, Rahul Ramadas, Robert E. Harris, Jr., Jayson L. Kastens, Philip A. Froese, Cong Yang
-
Publication number: 20190052525Abstract: Embodiments described herein are directed to mechanisms that enable roles (e.g., host vs. function, power provider vs. power consumer, master vs. slave, server vs. client, source vs. sink, upstream vs. downstream) to be dynamically assigned between two interconnected dual-role devices in an intelligent and deterministic manner based on the available context on each device.Type: ApplicationFiled: October 9, 2018Publication date: February 14, 2019Inventors: Firdosh K. Bhesania, Anthony Y. Chen, Vivek Gupta, Andrea A. Keating, Randall E. Aull, Rahul Ramadas, Robert E. Harris Jr., Jayson L. Kastens, Philip A. Froese, Cong Yang
-
Patent number: 10122576Abstract: Embodiments described herein are directed to mechanisms that enable roles (e.g., host vs. function, power provider vs. power consumer, master vs. slave, server vs. client, source vs. sink, upstream vs. downstream) to be dynamically assigned between two interconnected dual-role devices in an intelligent and deterministic manner based on the available context on each device.Type: GrantFiled: September 21, 2015Date of Patent: November 6, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Firdosh K. Bhesania, Anthony Y. Chen, Vivek Gupta, Andrea A. Keating, Randall E. Aull, Rahul Ramadas, Robert E. Harris, Jr., Jayson L. Kastens, Philip A. Froese, Cong Yang
-
Publication number: 20160277235Abstract: Embodiments described herein are directed to mechanisms that enable roles (e.g., host vs. function, power provider vs. power consumer, master vs. slave, server vs. client, source vs. sink, upstream vs. downstream) to be dynamically assigned between two interconnected dual-role devices in an intelligent and deterministic manner based on the available context on each device.Type: ApplicationFiled: September 21, 2015Publication date: September 22, 2016Inventors: Firdosh K. Bhesania, Anthony Y. Chen, Vivek Gupta, Andrea A. Keating, Randall E. Aull, Rahul Ramadas, Robert E. Harris, JR., Jayson L. Kastens, Philip A. Froese, Cong Yang
-
Patent number: 9430413Abstract: This document describes techniques for detecting state loss on a device. These techniques permit a computer connected to a device to forgo, in many cases, reinitializing the device when returning to a normal-power mode.Type: GrantFiled: June 19, 2014Date of Patent: August 30, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Janet L. Schneider, Doron J. Holan, Randall E. Aull
-
Patent number: 9424225Abstract: In embodiments of driver interface functions to interface client function drivers, a set of serial communication protocol driver interfaces are exposed by a core driver stack, and the serial communication protocol driver interfaces include driver interface functions to interface with client function drivers that correspond to client devices configured for data communication in accordance with the serial communication protocol. A client function driver can check for the availability of a driver interface function before interfacing with the core driver stack via the serial communication protocol driver interfaces. A contract version identifier can also be received from the client function driver via an extension of the driver interface functions, where the contract version identifier indicates a set of operation rules by which the client function driver interfaces with the core driver stack.Type: GrantFiled: May 4, 2015Date of Patent: August 23, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Randall E. Aull, Doron J. Holan, Mukund Sankaranarayan
-
Patent number: 9417708Abstract: A computer receives data from a keyboard having one or more keys which cause generation of keyboard data that quantitatively describe the relative force applied to those keys. The keyboard data are transmitted in an HID report containing identifiers for one or more keys that have been pressed and force data for each key. The force data may be a multi-bit value quantifying the key force, or a null indicator signaling that the key is not force-sensing. Keyboard data messages are then prepared which identify keys pressed, contain force data, and may indicate whether the force data updates previous force data. Force updates are only provided to application programs registering for key force data. In other aspects of the disclosed subject matter, key repeat messages are automatically generated for a key held pressed by a user. The key repeat messages are generated at a rate controlled by the amount of force applied to the key.Type: GrantFiled: February 11, 2014Date of Patent: August 16, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Randall E. Aull, Firdosh K. Bhesania, Michael William John McCracken, Hirofumi Yamamoto, Steven N. Bathiche, Timothy T. Brewer
-
Patent number: 9342427Abstract: A computer system that recognizes multi-function devices and associates functions with multi-function devices. Each multi-function device may be represented by a multi-function object, allowing tools, applications or other components within the computer to take actions relating to the entire device or relating to a function based on the association of that function with other functions in the same device. These actions include displaying information about devices, instead of or in addition to information about functions. Actions also include selecting functions based on proximity within a device. Functions may be associated with a multi-function device using a unique device identifier provided by the device or generated for the function based on a connection hierarchy between functions and the computer. Devices may be configured to provide the same identifier regardless of the transport over which the device is accessed.Type: GrantFiled: January 24, 2013Date of Patent: May 17, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Doron J. Holan, Esaias E. Greeff, Douglas K. Brubacher, Randall E. Aull, Narayanan Ganapathy, James G. Cavalaris
-
Publication number: 20150317278Abstract: In embodiments of driver interface functions to interface client function drivers, a set of serial communication protocol driver interfaces are exposed by a core driver stack, and the serial communication protocol driver interfaces include driver interface functions to interface with client function drivers that correspond to client devices configured for data communication in accordance with the serial communication protocol. A client function driver can check for the availability of a driver interface function before interfacing with the core driver stack via the serial communication protocol driver interfaces. A contract version identifier can also be received from the client function driver via an extension of the driver interface functions, where the contract version identifier indicates a set of operation rules by which the client function driver interfaces with the core driver stack.Type: ApplicationFiled: May 4, 2015Publication date: November 5, 2015Inventors: Randall E. Aull, Doron J. Holan, Mukund Sankaranarayan
-
Patent number: 9081902Abstract: A computer system that accesses multi-transport devices and associates device instances of the multi-transport device with each other. Devices provide the same device identifier such as a device unique identifier regardless of the transport over which the device is accessed. A visual representation for the multi-transport device may be provided to a user using the device identifier. Also, a single functional representation for the multi-transport device may be provided based on an identifier provided by each function of the device. The functional representation may be independent of the addition and removal of transports and allows abstracting device access via multiple transports from a user and an application. Transports may be selected at an application and/or a system level. Operating characteristics of available transports may be used to select a desired transport, based on transport requirements specified by the application, the user or the system.Type: GrantFiled: June 20, 2008Date of Patent: July 14, 2015Assignee: Microsoft Technology Licensing, LLC.Inventors: James G. Cavalaris, Narayanan Ganapathy, Doron J. Holan, Randall E. Aull, Paresh J. Maisuria
-
Patent number: 9043497Abstract: In embodiments of driver interface functions to interface client function drivers, a set of serial communication protocol driver interfaces are exposed by a core driver stack, and the serial communication protocol driver interfaces include driver interface functions to interface with client function drivers that correspond to client devices configured for data communication in accordance with the serial communication protocol. A client function driver can check for the availability of a driver interface function before interfacing with the core driver stack via the serial communication protocol driver interfaces. A contract version identifier can also be received from the client function driver via an extension of the driver interface functions, where the contract version identifier indicates a set of operation rules by which the client function driver interfaces with the core driver stack.Type: GrantFiled: August 5, 2013Date of Patent: May 26, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Randall E. Aull, Doron J. Holan, Mukund Sankaranarayan
-
Publication number: 20140354550Abstract: Disclosed are techniques and systems for obtaining contextual information at least in part from a keyboard, to improve typing efficiencies and user experience. The contextual information may include keyboard attributes, typing metadata, user actions, and the like. The keyboard may be configured to detect an input event at the keyboard. A human interface device (HID) stack is configured to receive the contextual information, and a keyboard manager is configured to determine an output based at least in part on the input event and the contextual information. The output may be a most probable function (non-text-based output), or character or word (text-based output) that can be suggested or used to auto-correct application data. In some embodiments, the user action received in the contextual information may be translated to a gesture to manipulate application data.Type: ApplicationFiled: September 6, 2013Publication date: December 4, 2014Applicant: Microsoft CorporationInventors: Rouella J. Mendonca, Alex G. Snitkovskiy, Hirofumi Yamamoto, Randall E. Aull, Nathan C. Sherman, James C. Marshall, Scott Mail
-
Publication number: 20140304433Abstract: This document describes techniques for detecting state loss on a device. These techniques permit a computer connected to a device to forgo, in many cases, reinitializing the device when returning to a normal-power mode.Type: ApplicationFiled: June 19, 2014Publication date: October 9, 2014Inventors: Janet L. Schneider, Doron J. Holan, Randall E. Aull
-
Publication number: 20140232573Abstract: A computer receives data from a keyboard having one or more keys which cause generation of keyboard data that quantitatively describe the relative force applied to those keys. The keyboard data are transmitted in an HID report containing identifiers for one or more keys that have been pressed and force data for each key. The force data may be a multi-bit value quantifying the key force, or a null indicator signaling that the key is not force-sensing. Keyboard data messages are then prepared which identify keys pressed, contain force data, and may indicate whether the force data updates previous force data. Force updates are only provided to application programs registering for key force data. In other aspects of the disclosed subject matter, key repeat messages are automatically generated for a key held pressed by a user. The key repeat messages are generated at a rate controlled by the amount of force applied to the key.Type: ApplicationFiled: February 11, 2014Publication date: August 21, 2014Applicant: Microsoft CorporationInventors: Randall E. Aull, Firdosh K. Bhesania, Michael William John McCracken, Hirofumi Yamamoto, Steven N. Bathiche, Timothy T. Brewer
-
Patent number: 8782386Abstract: This document describes techniques for detecting state loss on a device. These techniques permit a computer connected to a device to forgo, in many cases, reinitializing the device when returning to a normal-power mode.Type: GrantFiled: September 24, 2010Date of Patent: July 15, 2014Assignee: Microsoft CorporationInventors: Janet L. Schneider, Doron J. Holan, Randall E. Aull
-
Patent number: 8738835Abstract: In embodiments of HID over simple peripheral buses, a peripheral sensor receives inputs from a peripheral device, and the peripheral sensor implements an HID SPB interface to interface the peripheral device with a computing system via a simple peripheral bus (SPB) in an HID data format. The peripheral sensor can also receive extensibility data for a proprietary function of the peripheral device, and communicate the inputs from the peripheral device and the extensibility data via the simple peripheral bus in the computing system. Alternatively or in addition, a peripheral sensor can generate sensor data and the HID SPB interface interfaces the peripheral sensor with the computing system via the simple peripheral bus. The peripheral sensor can then communicate the sensor data as well as extensibility data for a proprietary function of the peripheral sensor via the simple peripheral bus in the HID data format to the computing system.Type: GrantFiled: August 13, 2013Date of Patent: May 27, 2014Assignee: Microsoft CorporationInventors: Firdosh K. Bhesania, Arvind R. Aiyar, Randall E. Aull, David Abzarian
-
Patent number: 8648812Abstract: A computer receives data from a keyboard having one or more keys which cause generation of keyboard data that quantitatively describe the relative force applied to those keys. The keyboard data are transmitted in an HID report containing identifiers for one or more keys that have been pressed and force data for each key. The force data may be a multi-bit value quantifying the key force, or a null indicator signaling that the key is not force-sensing. Keyboard data messages are then prepared which identify keys pressed, contain force data, and may indicate whether the force data updates previous force data. Force updates are only provided to application programs registering for key force data. In other aspects of the invention, key repeat messages are automatically generated for a key held pressed by a user. The key repeat messages are generated at a rate controlled by the amount of force applied to the key.Type: GrantFiled: July 28, 2008Date of Patent: February 11, 2014Assignee: Microsoft CorporationInventors: Randall E. Aull, Firdosh K. Bhesania, Michael William John McCracken, Hirofumi Yamamoto, Steven N. Bathiche, Timothy T. Brewer
-
Publication number: 20130332643Abstract: In embodiments of HID over simple peripheral buses, a peripheral sensor receives inputs from a peripheral device, and the peripheral sensor implements an HID SPB interface to interface the peripheral device with a computing system via a simple peripheral bus (SPB) in an HID data format. The peripheral sensor can also receive extensibility data for a proprietary function of the peripheral device, and communicate the inputs from the peripheral device and the extensibility data via the simple peripheral bus in the computing system. Alternatively or in addition, a peripheral sensor can generate sensor data and the HID SPB interface interfaces the peripheral sensor with the computing system via the simple peripheral bus. The peripheral sensor can then communicate the sensor data as well as extensibility data for a proprietary function of the peripheral sensor via the simple peripheral bus in the HID data format to the computing system.Type: ApplicationFiled: August 13, 2013Publication date: December 12, 2013Applicant: Microsoft CorporationInventors: Firdosh K. Bhesania, Arvind R. Aiyar, Randall E. Aull, David Abzarian
-
Publication number: 20130326543Abstract: In embodiments of driver interface functions to interface client function drivers, a set of serial communication protocol driver interfaces are exposed by a core driver stack, and the serial communication protocol driver interfaces include driver interface functions to interface with client function drivers that correspond to client devices configured for data communication in accordance with the serial communication protocol. A client function driver can check for the availability of a driver interface function before interfacing with the core driver stack via the serial communication protocol driver interfaces. A contract version identifier can also be received from the client function driver via an extension of the driver interface functions, where the contract version identifier indicates a set of operation rules by which the client function driver interfaces with the core driver stack.Type: ApplicationFiled: August 5, 2013Publication date: December 5, 2013Inventors: Randall E. Aull, Doron J. Holan, Mukund Sankaranarayan
-
Patent number: 8521942Abstract: In embodiments of human interface device (HID) over simple peripheral buses, a peripheral sensor receives inputs from a peripheral device, and the peripheral sensor implements an HID SPB interface to interface the peripheral device with a computing system via a simple peripheral bus (SPB) in an HID data format. The peripheral sensor can receive extensibility data for a proprietary function of the peripheral device, and communicate the inputs from the peripheral device and the extensibility data via the simple peripheral bus in the computing system. Alternatively or in addition, a peripheral sensor can generate sensor data and the HID SPB interface interfaces the peripheral sensor with the computing system via the simple peripheral bus. The peripheral sensor can then communicate the sensor data as well as extensibility data for a proprietary function of the peripheral sensor via the simple peripheral bus in the HID data format to the computing system.Type: GrantFiled: March 21, 2011Date of Patent: August 27, 2013Assignee: Microsoft CorporationInventors: Firdosh K. Bhesania, Arvind R. Aiyar, Randall E. Aull, David Abzarian