IP Library Granted Patent US 12670113
Granted Patent B1
US 12670113 · App. 18/797,353 · Granted Jun 30, 2026

Systems and methods for connecting computing devices

Inventors: Scott A Long (Boulder, CO); Alain Raynaud (Mountain View, CA)
Assignee: Apple Inc.
G06F13/385G06F2213/0042
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12670113
App. No.
18/797,353
Granted
Jun 30, 2026
Kind
B1
Abstract

Techniques are disclosed relating to controlling hardware resources over an interface. In some embodiments, a first device performs tasks using one or more included hardware resources, including providing a local control stream that controls operation of the one or more hardware resources. In response to detecting a connection to a second device, the first device offloads the tasks to the second device including transitioning from providing the local control stream to routing, via the interface controller, a remote control stream received from the second device to the one or more hardware resources.

Claims (61)

1 . A first device, comprising:

a first processor;

one or more hardware resources;

an interface controller configured to connect to a second device; and

memory having program instructions stored therein that are executable by the first processor to cause the first device to perform operations including:

in response to detecting a connection to the second device:

communicating, via the interface controller, a data stream between the one or more hardware resources and the second device;

presenting, to the second device via the interface controller, a vendor specific adapter (VSA) operable to receive a control stream that controls operation of the one or more hardware resources, wherein the interface controller includes a first native host interface (NHI) adapter configured to present the VSA to a second NHI adapter in another interface controller in the second device; and

receiving the control stream via the VSA, and wherein the first native host interface (NHI) adapter is configured to receive the control stream from the second NHI adapter.

2 . The first device of claim 1 ,

wherein the first and second NHI adapters are within the same domain.

3 . The first device of claim 1 , wherein the interface controller is configured to:

present the first device as a universal serial bus (USB) device on an interconnect established with the second device; and

receive, from the other interface controller, information identifying the second device as a host on the interconnect.

4 . The first device of claim 1 , wherein the interface controller is configured to:

receive the data stream and the control stream via a single universal serial bus (USB) channel.

5 . The first device of claim 4 , wherein the one or more hardware resources includes a display;

wherein the data stream includes DisplayPort (DP) packets that include scan line data for presenting scan lines on the display; and

wherein the control stream and the data stream are received such that packets of the control stream are interspersed between DP packets corresponding to separate scan lines.

6 . The first device of claim 1 , wherein the received control stream includes commands from a driver executing on the second device.

7 . The first device of claim 1 , wherein the one or more hardware resources includes a camera configured to provide a video data stream via the interface controller to the second device; and

wherein the control stream includes commands to control the camera.

8 . The first device of claim 1 , wherein the one or more hardware resources includes audio hardware configured to:

receive audio data included in the data stream; and

based on the audio data, drive a speaker to produce a corresponding sound; and

wherein the control stream includes commands to control the audio hardware.

9 . The first device of claim 1 , wherein the one or more hardware resources includes a microphone configured to provide an audio data stream via the interface controller to the second device; and

wherein the control stream includes commands to enable and disable the microphone.

10 . The first device of claim 1 , wherein the first device is a head mounted display (HMD);

wherein the one or more hardware resources includes one or more sensors mounted in the HMD; and

wherein the control stream includes commands to control operation of the one or more sensors.

11 . A non-transitory computer readable medium having program instructions stored therein that are executable by a first device to cause the first device to perform operations comprising:

in response to detecting a connection to a second device:

communicating, via an interface controller of the first device, a data stream between one or more hardware resources and the second device;

presenting, to the second device via the interface controller, a vendor specific adapter (VSA) operable to receive a control stream that controls operation of the one or more hardware resources, wherein the VSA is presented, via a first native host interface (NHI) adapter of the interface controller, to a second NHI adapter in another interface controller in the second device; and

receiving the control stream via the VSA and from the second NHI adapter.

12 . The computer readable medium of claim 11 ,

wherein the first and second NHI adapters are within the same domain.

13 . The computer readable medium of claim 11 , wherein the operations further comprise:

presenting, via the interface controller, the first device as a universal serial bus (USB) device on an interconnect established with the second device; and

receiving, from the other interface controller, information identifying the second device as a host on the interconnect.

14 . The computer readable medium of claim 11 , wherein the operations further comprise:

receiving, via the interface controller, the data stream and the control stream via a single universal serial bus (USB) channel;

wherein the data stream includes DisplayPort (DP) packets that include scan line data for presenting scan lines on a display; and

wherein the control stream and the data stream are received such that packets of the control stream are interspersed between DP packets corresponding to separate scan lines.

15 . The computer readable medium of claim 11 , wherein the received control stream includes commands from a driver executing on the second device.

16 . A method, comprising:

determining, by a second device, that a connection has been made to a first device;

in response to the determining:

communicating, by the second device via an interface controller of the first device, a data stream between the second device and one or more hardware resources of the first device;

detecting, by the second device, that the interface controller presents a vendor specific adapter (VSA) operable to receive a control stream that controls operation of the one or more hardware resources;

receiving, from a first native host interface (NHI) adapter in the interface controller, the VSA at a second NHI adapter in another interface controller in the second device; and

providing, by the second NHI adapter, the control stream via the VSA.

17 . The method of claim 16 ,

wherein the first and second NHI adapters are within the same domain.

18 . The method of claim 16 , further comprising:

providing, by the second device, the data stream and the control stream via a single universal serial bus (USB) channel.

19 . The method of claim 16 , wherein the provided control stream includes commands from a driver executing on the second device.

20 . The method of claim 16 , wherein the first device is a head mounted display (HMD);

wherein the one or more hardware resources includes one or more sensors mounted in the HMD; and

wherein the control stream includes commands to control operation of the one or more sensors.