Individual port switching

EP4802351A1Pending Publication Date: 2026-09-09HEWLETT PACKARD DEVELOPMENT COMPANY LP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
EP2023814050
Authority / Receiving Office
EP · EP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-10-30
Publication Date
2026-09-09

AI Technical Summary

Technical Problem

Existing display devices do not support multiple host devices and lack port switching features or software to switch downstream devices between multiple host devices.

Method used

The implementation of a matrix hub in a display device that allows for independent port switching of downstream devices between multiple host devices, enabling simultaneous support of multiple host and downstream devices with minimal latency.

Benefits of technology

Enables seamless switching of downstream devices between multiple host devices with minimal latency, allowing different sets of downstream devices to independently control corresponding host devices simultaneously.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure US2023078258_08052025_PF_FP_ABST
    Figure US2023078258_08052025_PF_FP_ABST
Patent Text Reader

Abstract

Display devices and methods are provided for individual port switching. A display device can include a matrix hub selectively mapping each of multiple downstream ports to a respective upstream port of multiple upstream ports. The display device further includes an electronic processor coupled to the matrix hub. The electronic processor is to detect multiple host devices on the multiple upstream ports, detect a downstream device on a first downstream port of the multiple downstream ports, receive a first user input to select a first host device of the multiple host devices for the downstream device, and control a matrix hub, in response to the first user input, to communicatively couple the first host device on a first upstream port of the multiple upstream ports to the downstream device on the first downstream port.
Need to check novelty before this filing date? Find Prior Art

Description

INDIVIDUAL PORT SWITCHINGBACKGROUND

[0001] Display devices may include an upstream port to connect to a host device and multiple downstream ports (e.g., Universal Serial Bus (USB) ports) to connect to downstream devices. For example, the host device may provide a video feed to control content displayed on the display device. Downstream devices may include, for example, keyboards, mice, cameras, and speakers, among other peripheral devices. The display device may provide an interface between the downstream devices and the host device.BRIEF DESCRIPTION OF THE DRAWINGS

[0002] The following drawings are provided to help illustrate various features of examples of the disclosure and are not intended to limit the scope of the disclosure or exclude alternative implementations.

[0003] FIG. 1 schematically illustrates a system for implementing individual switching in a display device for multiple downstream devices and host devices according to some examples.

[0004] FIG. 2 schematically illustrates a system for implementing individual switching in a display device according to some examples.

[0005] FIG. 3 schematically illustrates a matrix hub in a display device for implementing individual switching according to some examples.

[0006] FIG. 4 schematically illustrates a screen in a display device for implementing individual switching using software according to some examples.

[0007] FIG. 5 is a flowchart illustrating a method for implementing individual switching according to some examples.DETAILED DESCRIPTION OF THE PRESENT DISCLOSURE

[0008] The disclosed technology is not limited in its application to the details of construction and the arrangement of components set forth in the following description or illustrated in thefollowing drawings. Other examples of the disclosed technology are possible and examples described and / or illustrated here are capable of being practiced or of being carried out in various ways.

[0009] A plurality of hardware and software-based devices, as well as a plurality of different structural components can be used to implement the disclosed technology. In addition, examples of the disclosed technology can include hardware, software, and electronic components or modules that, for purposes of discussion, can be illustrated and described as if the majority of the components were implemented solely in hardware. However, in at least one example, the electronic based aspects of the disclosed technology can be implemented in software (for example, stored on non-transitory computer-readable medium) executable by one or more processors. Although certain drawings illustrate hardware and software located within particular devices, these depictions are for illustrative purposes only. In some examples, the illustrated components can be combined or divided into separate software, firmware, hardware, or combinations thereof. As one example, instead of being located within and performed by a single electronic processor, logic and processing can be distributed among multiple electronic processors. Regardless of how they are combined or divided, hardware and software components can be located on the same computing device or can be distributed among different computing devices connected by one or more networks or other suitable communication links.

[0010] As described above, display devices may include an upstream port to connect to a host device and multiple downstream ports (e.g., Universal Serial Bus (USB) ports) to connect to downstream devices. In some scenarios, an individual may have multiple host devices, but one display device. Additionally, the individual may have downstream devices coupled to the display device that would be useful to have communicate with the multiple host devices. However, existing display devices do not support multiple host devices to be controlled by downstream devices connected to the display device. Also, existing display devices do not have port switching features or software to switch downstream devices between multiple host devices. Thus, a display device supporting multiple host devices and / or switching of downstream devices between the multiple host devices is in need.

[0011] Accordingly, some embodiments disclosed herein can provide independent port switching of downstream devices between multiple host devices using a matrix hub in a display device to route signals from or to the downstream devices based on user assignment. For example, the display device includes a matrix hub to simultaneously support multiple host devices and multiple downstream devices (e.g., keyboard, mouse, camera, etc.). In some examples, the matrix hub selectively maps each downstream port for a downstream device to a respective upstream port of multiple upstream ports and can communicatively couple each downstream port to an upstream port for a host device based on a respective switch. Thus, each downstream device can switch from being communicatively coupled to one host device to another host device without latency or with minimal latency. Further, different sets of downstream devices can independently control corresponding host devices simultaneously via the matrix hub of the display device. In addition, the display device provides software control of downstream device switching. The disclosure provides various techniques to switch host devices and / or downstream devices and ancillary techniques (e.g., transferring data between host devices using a buffer, allowing a mouse cursor to travel between screens of multiple host devices, swap ports based on user defined key combination, etc.).

[0012] FIG. 1 illustrates a system 100 for implementing individual switching in a display device 102 for multiple downstream devices and host devices. The system 100 can include the display device 102, multiple host devices 104 communicatively coupled to the display device 102, and multiple downstream devices 106 communicatively coupled to the display device 102. In some examples, multiple host devices 104 may be communicatively coupled to the display device 102 (e.g., using Universal Serial Bus (USB) ports, wired signal transceiver ports, or wireless signal transceiver ports). In some examples, the display device 102 can display the data of one or more host devices 104 on a single screen or multiple screens of the display 102. Also, multiple downstream devices 106 (e.g., keyboard, mouse, camera, headset, etc.) may be communicatively coupled to the display device 102 (e.g., using Universal Serial Bus (USB) ports, wired signal transceiver ports, or wireless signal transceiver ports). In some examples, the display device 102 includes a matrix hub (described further below). Using the matrix hub, a user may switch between control of (or operation with) different host devices using the same downstream device. For example, the user may use a mouse for host 1 but may switch from host 1 to host 2 with little latency to use the mouse for host 2. In other examples, multiple users can use downstream devices106 for corresponding host devices 104. For example, user 1 may use keyboard 1 and mouse 1 for host 1 on screen 1 of the display device while user 2 is using keyboard 2 and mouse 2 for host 2 on screen 2 of the display device. Thus, the display device 102 can support simultaneous use of multiple downstream devices 106 for multiple hosts. The display device 102 may perform individual switching of each downstream device from a host device to another host device and may perform independent switching of each downstream device without affecting other downstream devices.

[0013] FIG. 2 schematically illustrates a system for implementing individual switching in a display device according to some examples. As described in FIG. 1, the system 100 can include the display device 102, multiple host devices 104 communicatively coupled to the display device 102, and multiple downstream devices 106 communicatively coupled to the display device 102. In some examples, the display device 102 can include, e.g., a computer monitor, a laptop computer, a tablet computer, an electronic paper, a projector, or any suitable computing device with a display 218 to visually present data or information.

[0014] As illustrated in FIG. 2, the display device 102 includes an electronic processor 212, a memory 214, a matrix hub 216, a display 218, and a communication interface 220. The electronic processor 212, the memory 214, the matrix hub 216, the display 218, and the communication interface 220 may communicate wirelessly, over one or more communication lines or buses, or a combination thereof. The display device 102 may include additional, different, or fewer components than those illustrated in FIG. 2 in various configurations. The display device 102 may perform additional functionality other than the functionality described herein.

[0015] In some embodiments, the electronic processor 212 can be any suitable hardware processor or combination of processors, such as a central processing unit (CPU), a graphics processing unit (GPU), an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a digital signal processor (DSP), a microcontroller (MCU), or another suitable electronic device for processing data. The electronic processor 212 coupled to the memory 214 is configured to retrieve instructions and data from the memory 214 and execute the instructions. For example, the electronic processor 212 is configured to receive, via the matrix hub 216 or the communication interface 220, data from one or more host devices 104 and one or moredownstream devices 106, process data received from one or more host devices 104 and / or one or more downstream devices 106, display data via a display 218, and / or transmit, via the communication interface 220, data to the one or more host devices 104, the one or more downstream devices 106, or another suitable system via a communication interface 220.

[0016] In some examples, the memory 214 can include any suitable non-transitory computer- readable storage device or devices that can be used to store instructions that can be used, for example, by the electronic processor 212 to detect multiple host devices on multiple upstream ports, detect a downstream device on a downstream port, receive a user input to select a host device for the downstream device, and / or control a matrix hub to communicatively couple the host device on an upstream port to the downstream device on the downstream port, provide a downstream device indication corresponding to the downstream device. In further examples, the memory can be used to store data as a buffer to transfer data from a host to another host where the host and another host are communicatively coupled to the display device. The memory 214 can include any suitable volatile memory, non-volatile memory, storage, or any suitable combination thereof. For example, memory 214 can include random access memory (RAM), read-only memory (ROM), electronically-erasable programmable read-only memory (EEPROM), one or more flash drives, one or more hard disks, one or more solid state drives, one or more optical drives, etc. In some embodiments, the memory 214 can have encoded thereon a computer program for executing at least a portion of process 500 described in connection with FIG. 5. For example, in such embodiments, the processor 212 can execute at least a portion of the computer program to perform one or more data processing tasks described herein, transmit / receive information via the matrix hub 216 and / or the communication interface 220, etc. As another example, the processor 212 can execute at least a portion of process 300 described below in connection with FIG. 3.

[0017] In some examples, the matrix hub 216 may map each downstream port of multiple downstream ports to a respective upstream port of multiple upstream ports. A downstream port in the matrix hub 216 may include a port that provides power and / or data to a downstream device connected to the port. For example, the downstream port can include a type-A USB port, a type-C USB port, or any other suitable port. In some examples, the downstream port can include a physical socket for a downstream device to be physically connected. In other examples, the downstream port may include a communication channel to receive a signal from a downstream device (e.g., viathe communication interface 220 over the communication network 230. For example, the display device 202 may receive a wireless signal from a downstream device over the communication network 230. In such examples, the electronic processor 212 may transmit the wireless signal or a corresponding signal to a downstream port in the matrix hub 216. In some examples, the downstream device can be a peripheral device (e.g., keyboard, mouse, camera, headset, flash drive, game controller, etc.), which uses the downstream port to communicate with the display device or a host device. In some examples, the downstream device can be physically connected on the downstream port, which is a physical port.

[0018] Also, an upstream port in the matrix hub 216 may be a port that connects to and communicates with a host device. In some examples, power can be received through the upstream port. For example, the upstream port can include a type-B SUB port, a type-C SUB port, or any other suitable port to be communicatively coupled to a host device. In some examples, the upstream port can include a physical socket for a host device to be physically connected. In other examples, the downstream port may include a communication channel to receive a signal from a host device (e.g., via the communication interface 220 over the communication network 230). For example, the display device 202 may transmit or receive a wireless signal (e.g., a single direction or a bi-direction signal) to or from a host device over the communication network 230. In such examples, the electronic processor 212 may receive a signal from an upstream port in the matrix hub 216 and transmit the signal or a corresponding signal to the host over the communication network 230 and / or receive the wireless signal from the host over the communication network 230 and transmit the signal or a corresponding signal to the upstream port in the matrix hub 216. In further examples, the display device 202 may be communicatively coupled to multiple host devices via a wireless communication link, a wired communication link, or any combination thereof. In some examples, a downstream port and an upstream port in the matrix hub 216 may be different. For example, a downstream port can use a type-A USB port while an upstream port can use a type- B USB port. In other examples, a downstream port and an upstream port in the matrix hub 216 may be the same port. For example, a downstream port and an upstream port can use the same type-C USB port and / or a bidirectional communication channel. Further detail of an example of the matrix hub 216 is described in FIG. 3.

[0019] In some examples, the display device 102 can further include a display 218. In some embodiments, the display 218 can include a pixel array that can be driven or controlled to display data or content of multiple hosts on a screen of the display 218. For example, the pixel array of the display 218 may be a light emitting diode (LED) array, an organic light emitting diode (OLED) array, a liquid crystal display (LCD) array, or another type of pixel array. In some examples, the display 218 may be a touch screen. In some examples, the display may be controlled to generate or have one or more (virtual) screens to display data or content of one or more host devices. For example, although multiple host devices are communicatively coupled to the display device 102, the electronic processor 212 may control the display to present content of one host devices on a screen of the display 218. In other examples, the electronic processor 212 may control the display 218 to split the pixel array of the display 218 into multiple screens to present content of the multiple host devices simultaneously on corresponding screens of the display 218.

[0020] In some examples, the communication interface 220 can include any suitable hardware, firmware, and / or software for communicating with the multiple hosts 104, the multiple downstream devices 106, and / or another system over communication network 230 and / or any other suitable communication networks 230. For example, the communication interface 220 can include one or more transceivers, one or more communication chips and / or chip sets, etc. In a more particular example, the communication interface 220 can include hardware, firmware and / or software that can be used to establish a Wi-Fi connection, a Bluetooth® connection, a cellular connection, an Ethernet connection, etc.

[0021] In some examples, the matrix hub 216 may directly communicate with or communicate, via the communication interface, with multiple host devices 104 and / or multiple downstream devices over the communication network 230. In such examples, communication channels in the communication interface 220 used to receive and transmit data from and to the multiple hosts over the communication network 230 may be communicationally coupled to multiple corresponding upstream ports in the matrix hub 216. Also, other communication channels in the communication interface 220 used to receive and transmit data from and to multiple host devices 104 over the communication network 230 may be communicationally coupled to multiple corresponding downstream ports in the matrix hub 216. Portions of the communication networks 130 may include a Wi-Fi network (which can include one or more wireless routers, one or more switches, etc.), apeer-to-peer network (e g., a Bluetooth® network), a cellular network (e.g., a 3G network, a 4G network, a 5G network, etc., complying with any suitable standard, such as CDMA, GSM, LTE, LTE Advanced, NR, etc.), a wired network, etc.

[0022] In some examples, each host device of the multiple host devices 104 can be any suitable computing device (e.g., a desktop computer, laptop, tablet, etc.) having a processor and memory to control the display 218 to present data in the memory of the host device. In some examples, the processor and the memory of the host device may be similar to the electronic processor 212 and the memory 214 of the display device 102.

[0023] In some examples, each downstream device 106 may be a peripheral device including: any suitable input devices and / or sensors that can be used to receive user input, such as a keyboard, a mouse, a camara, a touchscreen, a microphone, a game controller, a sensor, etc.; any suitable output devices that can be used to provide user output or feedback, such as a speaker, light(s) (e.g., LEDs or other illuminating elements), tactile or haptic feedback generator; or a combination of input and / or output devices (e.g., a keyboard with lights, a mouse with haptic feedback, etc.). In further examples, each downstream device 106 may include any other peripheral devices to perform a task and be communicationally coupled to a host device 106 via the display device 102.

[0024] FIG. 3 schematically illustrates an example of the matrix hub 216 in a display device for implementing individual switching according to some examples. The matrix hub 216 includes upstream modules 302 having an upstream port 304 and downstream endpoints 306. The matrix hub 216 further includes switches (e.g., switches 308 and / or switches 310) selectively connecting the upstream modules 302 with downstream modules 312. Each downstream module 312 may include a downstream port 314 and upstream endpoints 316. The matrix hub 216 may selectively map each downstream port 314 to a respective upstream port 404 and, thus, to a respective host 104 (e.g., host 104a or 104b). In some examples, relative to the illustrated example of FIG. 3, the matrix hub 216 includes more or fewer upstream modules 302 (for coupling to more or fewer host devices 104) and / or more or fewer downstream modules 312 (for coupling to more or fewer downstream devices).

[0025] In some examples, the matrix hub 216 may include multiple upstream modules 302 (e.g., one for each host device). The upstream port 304 of each upstream module 302 can becommuni cationally coupled to a respective host device 104. In some examples, the electronic processor 212 of the display device 102 (see FIG. 2) may detect multiple host devices 104 on multiple upstream ports 304 (e.g., based on a signal received from the respective host device). In some examples, an upstream port 304 may include a communication channel to carry power, transfer data, and be communicationally coupled to a host device 104. In some examples, the upstream port 304 can include a physical socket to be physically connected to a host device 104 (e.g., via a cable) or a wireless channel to be communicationally coupled to the host device 104 (e g., via a wireless communication protocol). In some examples, each upstream module 302 may include one upstream port 304 and multiple downstream endpoints 306, which are connected or communicationally coupled to the upstream port 304 in the respective upstream module 302. Further, each downstream endpoint 306 in the upstream module 302 may be electrically and communicationally coupled to a downstream port via a switch 308, 310. In some examples, a downstream endpoint 306 of the upstream module 302 may include an electrical contact, which is connected to a switch 308, 310 (e.g., via an electrically conductive material, a wire, a circuit trace, etc.). Thus, a signal path may be established between the downstream endpoint 306 and the switch 308, 310, and current may flow between the downstream endpoint 306 and the switch 308, 310.

[0026] As illustrated in FIG. 3, the matrix hub 216 includes switches interfacing the upstream modules 302 and the downstream modules 312. For example, the switch 308, 310 may communicationally couple a downstream port 314 to an upstream port 304 by selecting or electrically connecting the downstream port 314 to the upstream port 304 among multiple upstream ports. For example, the switch 308, 310 may include a selector switch 308 or a binary enable switch 310. In some examples, the switch may include a multiplexor as a selector switch 308 to select a signal path to be connected from the downstream port 314 to a downstream endpoint 306 of an upstream module 302 among multiple signal paths corresponding to multiple upstream modules 302 from the downstream port. In such examples, the selector switch 308 may use one signal path between the switch and the downstream port 314. In further examples, the switch may include a binary enable switch 310. The binary enable switch 310 may be on a signal path between the downstream port and each upstream port of multiple upstream ports. The binary enable switch 310 may be enabled (or closed) to make a connection between a downstream port and an upstream port, and may be disabled (or opened) to break a connection between the downstream port and the upstream port.

[0027] As illustrated, the matrix hub 216 includes multiple downstream modules 312 where each downstream module 312 includes a downstream port 314, which can be communicationally coupled to a downstream device. In some examples, the electronic processor 212 of the display device 102 (see FIG. 2) may detect multiple downstream devices on multiple downstream ports (e.g., based on a signal received from the respective downstream device). In some examples, a downstream port 314 may include a communication channel to provide power, transfer data, and be communicationally coupled to a downstream device. In some examples, the downstream port 314 can include a physical socket to be physically connected to a downstream device (e.g., via a cable) or a wireless channel to be communicationally coupled to the downstream device 104 (e.g., via a wireless communication protocol). The downstream device 104 can include a peripheral device (e g., an input device, output device, or input-output device) rather than a host device. In some examples, each downstream module 312 may include one downstream port 314 and multiple upstream endpoints 316, which are connected or communicationally coupled to one or more upstream ports 304 in the one or more upstream module 302. Further, each upstream endpoint 316 in the downstream module 312 may be electrically and communicationally coupled to an upstream port via the switch 308, 310. In some examples, an upstream endpoint 316 of the downstream module 312 may include an electrical contact, which is connected to a switch 308, 310 (e.g., via an electrically conductive material, a wire, a circuit trace, etc.). In some examples for the selector switch 308, a downstream module 312 may have one upstream endpoint 316 to be connected to the switch 308, which selects one signal path connected to a downstream endpoint of an upstream module 302. In other examples for binary enable switch 310, a downstream module 312 may have multiple upstream endpoints 316 to be connected to the corresponding switches 310, which may connect or disconnect to corresponding downstream endpoints of upstream modules 302.

[0028] For example, the matrix hub 216 may include a first upstream module 302a, a second upstream module 302b, a downstream module 312a, and a switch (e.g., a selector switch 308). The first upstream module 302a may include a first upstream port 304a and a first downstream endpoint 306a where the first upstream port 304a may be communicationally coupled to a first host device 104a and the first downstream endpoint 306a is electrically connected to the switch 308. The first upstream port 304a in the first upstream module 302a may be connected to the first downstream endpoint 306a. The second upstream module 302b may include a second upstream port 304b and a second downstream endpoint 306b where the second upstream port 304b may be connected to asecond host device 104b and the second downstream endpoint 306b is electrically connected to the switch 308. The second upstream port 304b may be connected to the second downstream endpoint 306b. In such examples, the downstream module 312a may include an upstream endpoint 316a and a downstream port 304a where the upstream endpoint 316a is electrically connected to the switch 308 and the downstream port 304a may be communicationally coupled to a downstream device. In some examples, to communicatively couple the first host device 104a to the downstream device, the electronic processor 212 may close the switch 308 to be electrically connected between a downstream port 314a corresponding to the downstream device and the first upstream port 304a corresponding to the first host device and open the switch 308 to be disconnected between the downstream port 314a and the second upstream port 304b corresponding to the second host device. In such examples, to communicatively couple the first host device 104a to the downstream device, the electronic processor 212 may close the switch 308 to be connected between the downstream endpoint 306a of the first upstream module 302a and the first upstream endpoint 316a of the downstream module 312a and open the switch 308 to be disconnected between the second downstream endpoint 306b of the second upstream module 302b and the upstream endpoint 316a of the downstream module 312a. In such examples, when the matrix hub 216 may include multiples upstream ports, the electronic processor 212 may open the switch 308 to be disconnected between each of other downstream endpoints corresponding upstream ports than the first downstream endpoint 306a in the first upstream module 302a and the upstream endpoint 316a of the downstream module 312a.

[0029] In further examples, the matrix hub 216 may include a first upstream module 302a, a second upstream module 302b, a downstream module 312b, and a second switch 310a and a third switch 310b (e g., binary enable switches 310). In such examples, the first upstream module 302a may include the first upstream port 304a and a third downstream endpoint 306c. The second upstream module 302b may include the second upstream port 304b and a fourth downstream endpoint 306d. In such examples, the third downstream endpoint 306c may be electrically connected to the second switch 310a while the fourth downstream endpoint 306d may be electrically connected to the third switch 310b. In such examples, the downstream module 312b of the matrix hub 216 may include a second upstream endpoint 316b and a third upstream endpoint 316c corresponding to the second switch 310a and the third switch 310b, respectively. For example, the second switch 310a may be electrically connected to the second upstream endpoint316b in the second downstream module 312b, and the third switch 310b may be electrically connected to the third upstream endpoint 316c in the second downstream module 312b. The second and third upstream endpoints 316b, 316c may be connected to the downstream port 314b in the downstream module 312b. In some examples, to communicatively couple the first host device 104a to a downstream device connected to the downstream port 314b in the second downstream module 312b, the electronic processor 212 may close the second switch 310a to be electrically connected between the downstream port 314b corresponding to the downstream device and the first upstream port 304a corresponding to the first host device and open the third switch 310b to be disconnected between the downstream port 314b and the second upstream port 304b corresponding to the second host device. In such examples, to communicatively couple the first host device 104a to the downstream device, the electronic processor 212 may close the second switch 310a to be electrically connected between the second downstream endpoint 306c in the first upstream module 302a and the second upstream endpoint 316b of the second downstream module 312b and open the third switch 310b to be disconnected between the fourth downstream endpoint 306d of the second upstream module 302b and the third upstream endpoint 316c of the second downstream module 312b. In such examples, when the matrix hub 216 includes multiples upstream ports, the electronic processor 212 may open other corresponding switches to be disconnected between each of other downstream endpoints than the third downstream endpoint 306c and the second upstream endpoint 316b of the second downstream module 312b. Thus, each switch may individually control connection between the second downstream port 314b and a respective upstream port. In other examples, the matrix hub 216 may use a different type of switches to map each of multiple downstream ports to a respective upstream port of multiple upstream ports.

[0030] In further examples, the electronic processor 212 may switch control of a downstream device from a host device to another host device by opening the switch 308, 310 between a downstream port for the downstream device and an upstream port of the host device and closing the switch 308 or another switch 310 between the downstream port and another upstream port for another host device. Thus, the downstream device can be communicatively coupled to another host device from the host device. Although not illustrated in FIG. 3, similar switches 308 or 310 may be present between each downstream module 312 and each upstream module 302.

[0031] FIG. 4 schematically illustrates a screen 400 in a display device 102 for implementing individual switching using software according to some examples. In some examples, the software may be stored in the memory 214 of the display device 102. When executed (e.g., by the electronic processor 212), the software may cause display of the screen 400 on the display 218 to control switching of a downstream device from a host device to another host device. In some examples, the electronic processor 212 of the display device 102 may detect multiple host devices on multiple upstream ports of the display device 102 and display host device indications 402 corresponding to the detected host devices on the screen 400. In some examples, although the display device 102 may have multiple upstream ports, one or more host devices corresponding to a subset of the multiple upstream ports may be detected and displayed on the screen 400. In some examples, the electronic process may provide multiple screens (not shown in FIG. 4 but shown in FIG. 1) on the display 218 where the multiple screens correspond to the multiple detected host devices.

[0032] In some examples, the electronic processor 212 of the display device 102 may detect multiple downstream devices on multiple downstream ports of the display device 102 and display the detected downstream devices 402 on the screen 400. For example, the electronic processor 212 may provide a downstream device indication corresponding to the detected downstream device. In some examples, the downstream device indication may include a type (e.g., mouse, keyboard, webcam, headset, etc.), a model, an indication of the detection, or any suitable indication of the downstream device. In some examples, when the electronic processor 212 detects the downstream device, the electronic processor 212 may receive a device identification 404 from the downstream device on a downstream port 406 and identify the downstream device indication of the downstream device (e.g., by using a lookup table stored in the memory 214 of the display device 102). For example, when the electronic processor 212 detects a keyboard (i.e., a downstream device) on port 1 (406), the electronic processor 212 may identify that the downstream device is a keyboard and display the device indication 404 (e.g., “Mouse / Keyboard”). In some examples, the screen 400 may include a feature for a user to select one host device indication 402 among detected host devices. Then, the electronic processor 212 may communicatively couple the selected host device to the downstream port based on the matric hub. In some examples, some downstream ports 408 may not be connected to a downstream device. Then, the electronic processor 212 may show a disconnection indication 410 on the screen 400 that the downstream port 408 is disconnected. In other examples, some downstream port may be connected to a downstream device, but theelectronic processor 212 may not identify the downstream device (e.g., because the lookup table in the memory does not include identification information of the downstream device). Then, the electronic processor 212 may show an unknown indication on the screen 400 that the downstream device is unknown. Accordingly, the user can individually control each detected downstream device to be used in one host device of the multiple detected host devices or to be switched to another host device.

[0033] In some examples, the electronic processor 212 of the display device 102 may turn on a file transfer function 412. For example, when the file transfer function 412 is on, the electronic processor 212 may store data received via the matrix hub from a host device in the memory 214 of the display device and transmit via the matrix hub the data stored in the memory to another host device, which the user indicates. For example, a user input (e.g., via a graphic user interface, a shortcut key, etc.) on a first host device may cause the electronic processor 212 to store data in the memory 214 in the display device 102 rather than a memory in the first host device and another user input (e.g., via a graphic user interface, a shortcut key, etc.) on a second host device may transmit the data stored in the memory of the display device 102 to the second host device. In other examples, a user can drag a file on a first host device and drag the file to a second host device to transfer the file from the first host device to the second host device.

[0034] In some examples, the electronic processor 212 of the display device 102 may turn on an on-mouse movement function 414. For example, when the on-mouse movement function 414 is on, the electronic processor 212 may allow a mouse to travel between two host devices as the pointer of the mouse crosses the border of two screens corresponding to the two host devices. For example, the electronic processor 212 may control the matrix hub 216 to connect the downstream port to which the mouse is coupled from a first upstream port for a first host device to a second upstream port for a second host device, where the control is based on the electronic processor 212 detecting that a cursor (controlled by the mouse) displayed on the display 218 crosses from a first screen of the display 218 associated with the first host device to a second screen of the display 218 associated with the second host device.

[0035] In some examples, the electronic processor 212 of the display device 102 may turn on a swap on key combination function 416. For example, the user can define a key combination (e.g.,a shortcut key) that causes the electronic processor 212 to swap one or more ports (which may be predefined) from being coupled to a current host to being coupled to another host. In response to receiving the particular key combination again, the electronic processor 212 can control the matrix hub 216 to cause the one or more ports to swap back to the previous host, or to a third host.

[0036] FIG. 5 is a flowchart illustrating a method for implementing individual switching according to some examples. The method 500 is described as being performed by the display device 102 or any computing device and, in particular, the electronic processor 212. However, as noted above, the functionality described with respect to the method 500 can be performed by other suitable devices. As described below, a particular implementation can omit some or all illustrated features / steps, may be implemented in some embodiments in a different order, and may not require some illustrated features to implement all embodiments.

[0037] In block 505 of the method 500, the electronic processor 212 detects multiple host devices on multiple upstream ports. In some examples, the electronic processor 212 may provide, via the display, multiple host device indications corresponding to the multiple host devices on the multiple upstream ports. In some examples, the electronic processor 212 may provide multiple screens on the display where the multiple screens correspond to the multiple host devices. An example of the detection of multiple host devices and display of the host device indications are further explained in connection with FIGS. 3 and 4.

[0038] In block 510 of the method 500, the electronic processor 212 detects a downstream device on a first downstream port of the multiple downstream ports. In some examples, the electronic processor 212 may provide, via the display, a downstream device indication corresponding to the downstream device on the first downstream port. An example of the detection of the downstream device and display of the downstream device indication are further explained in connection with FIGS. 3 and 4.

[0039] In block 515 of the method 500, the electronic processor 212 receives a first user input to select a first host device of the multiple host devices for the downstream device. In some examples, to receive the first user input to select the first host device, the electronic processor 212 may receive the first user input to select a first host device indication of the multiple host deviceindications, the first host device indication corresponding to the first host device. An example of the user input to select a host device is further explained in connection with FIG. 4.

[0040] In block 520 of the method 500, the electronic processor 212 controls the matrix hub (e.g., the matrix hub 216) to communicatively couple the downstream device of the first downstream port to the first host device on a first upstream port of the multiple upstream ports. An example of the matrix hub and the coupling of a downstream device on a downstream port to a host device on an upstream port is further explained in FIG. 3. In some examples, the matrix hub may map each of multiple downstream ports to a respective upstream port of multiple upstream ports. In some examples, the matrix hub may include a switch (e.g., switch 308 or 310 of FIG. 3). In such examples, to communicatively couple the downstream device to the first host device, the electronic processor 212 may electrically connect, via the switch, the first downstream port to the first upstream port corresponding to the first host device. For example, to communicatively couple the first host device to the downstream device, the electronic processor 212 may close the switch to be electrically connected between the first downstream port of the multiple downstream ports and the first upstream port of the multiple upstream ports where the first upstream port corresponds to the first host device. In such examples, the electronic processor 212 may open the switch to be disconnected between the first downstream port of the multiple downstream ports and a second upstream port of the multiple upstream ports where the second upstream port corresponds to a second host device of the multiple host devices. In some examples, the matrix hub may include a first upstream module, a second upstream module, and a downstream module (see, e.g., FIG. 3). In such examples, the first upstream module may be coupled, via the first upstream port, to the first host device where the first upstream module includes a first downstream endpoint. The second upstream module may be coupled, via the second upstream port, to the second host device where the second upstream module may include a second downstream endpoint. The downstream module may be coupled, via the first downstream port, to the downstream device where the downstream module may include a first upstream endpoint. In such examples, to communicatively couple the first host device to the downstream device, the electronic processor 212 may close the switch to be connected between the first downstream endpoint of the first upstream module and the first upstream endpoint of the downstream module. In such examples, the electronic processor 212 may open the switch to be disconnected between the second downstream endpoint of the second upstream module and the first upstream endpoint of the downstream module.

[0041] In other examples, the matrix hub may include multiple switches corresponding to the multiple upstream ports. In such examples, to communicatively couple the first host device to the downstream device, the electronic processor 212 may close a first switch of the multiple switches to be connected between the first downstream port of the multiple downstream ports and a first upstream port of the multiple upstream ports where the first upstream port corresponds to the first host device. In such examples, the electronic processor 212 may open a second switch to be disconnected between the first downstream port of the multiple downstream ports and a second upstream port of the multiple upstream ports where the second upstream port corresponds to a second host device of the multiple host devices. For example, the matrix hub may include a first upstream module, a second upstream module, and a downstream module. The first upstream module may be coupled, via the first upstream port, to the first host device where the first upstream module may include a first downstream endpoint. The second upstream module may be coupled, via the second upstream port, to the second host device where the second upstream module may include a second downstream endpoint. The downstream module may be coupled, via the first downstream port, to the downstream device where the downstream module may include a first upstream endpoint and a second upstream endpoint. In such examples, to communicatively couple the first host device to the downstream device, the electronic processor 212 may close the first switch to be connected between the first downstream endpoint of the first upstream module and the first upstream endpoint of the downstream module. In such examples, the electronic processor 212 may open the second switch to be disconnected between the second downstream endpoint of the first upstream module and the second upstream endpoint of the downstream module.

[0042] In some examples, the electronic processor may receive a second user input to select a second host device of the multiple host devices and communicatively couple the second host device to the downstream device based on the matrix hub in response to the second user input. In such examples, the matrix hub may include a switch. To communicatively couple the second host device to the downstream device, the electronic processor 212 may open the switch to be disconnected between the first downstream port of the multiple downstream ports and the first upstream port of the multiple upstream ports, the first upstream port corresponding to the first host device, and close the switch to be connected between the first downstream port to a second upstream port of the multiple upstream ports, the second upstream port corresponding to the second host device of the multiple host devices.

[0043] In some examples, the electronic processor may store data received via the matrix hub from the first host device in the memory of the display device and transmit, via the matrix hub, the data stored in the memory to a second host device of the multiple host devices.

[0044] In some examples, aspects of the technology, including computerized implementations of methods according to the technology, can be implemented as a system, method, apparatus, or article of manufacture using standard programming or engineering techniques to produce software, firmware, hardware, or any combination thereof to control a processor device (e.g., a serial or parallel general purpose or specialized processor chip, a single- or multi-core chip, a microprocessor, a field programmable gate array, any variety of combinations of a control unit, arithmetic logic unit, and processor register, and so on), a computer (e.g., a processor device operatively coupled to a memory), or another electronically operated controller to implement aspects detailed herein. Accordingly, for example, examples of the technology can be implemented as a set of instructions, tangibly embodied on a non-transitory computer-readable media, such that a processor device can implement the instructions based upon reading the instructions from the computer-readable media. Some examples of the technology can include (or utilize) a control device such as, e.g., an automation device, a special purpose or general-purpose computer including various computer hardware, software, firmware, and so on, consistent with the discussion below. As specific examples, a control device can include a processor, a microcontroller, a field-programmable gate array, a programmable logic controller, logic gates etc., and other typical components that are known in the art for implementation of appropriate functionality (e.g., memory, communication systems, power sources, user interfaces and other inputs, etc.).

[0045] Certain operations of methods according to the technology, or of systems executing those methods, can be represented schematically in the figures or otherwise discussed herein. Unless otherwise specified or limited, representation in the figures of particular operations in particular spatial order can not necessarily require those operations to be executed in a particular sequence corresponding to the particular spatial order. Correspondingly, certain operations represented in the figures, or otherwise disclosed herein, can be executed in different orders than are expressly illustrated or described, as appropriate for particular examples of the technology. Further, in some examples, certain operations can be executed in parallel, including by dedicatedparallel processing devices, or separate computing devices configured to interoperate as part of a large system.

[0046] As used herein in the context of computer implementation, unless otherwise specified or limited, the terms “component,” “system,” “module,” “block,” and the like are intended to encompass part or all of computer-related systems that include hardware, software, a combination of hardware and software, or software in execution. For example, a component can be, but is not limited to being, a processor device, a process being executed (or executable) by a processor device, an object, an executable, a thread of execution, a computer program, or a computer. By way of illustration, both an application running on a computer and the computer can be a component. One or more components (or system, module, and so on) can reside within a process or thread of execution, can be localized on one computer, can be distributed between two or more computers or other processor devices, or can be included within another component (or system, module, and so on).

[0047] Also as used herein, unless otherwise limited or defined, “or” indicates a non-exclusive list of components or operations that can be present in any variety of combinations, rather than an exclusive list of components that can be present only as alternatives to each other. For example, a list of “A, B, or C” indicates options of A; B; C; A and B; A and C; B and C; and A, B, and C. Correspondingly, the term “or” as used herein is intended to indicate exclusive alternatives only when preceded by terms of exclusivity, such as, e.g., “either,” “one of,” “only one of,” or “exactly one of.” Further, a list preceded by “one or more” (and variations thereon) and including “or” to separate listed elements indicates options of one or more of any or all of the listed elements. For example, the phrases “one or more of A, B, or C” and “at least one of A, B, or C” indicate options of: one or more A; one or more B; one or more C; one or more A and one or more B; one or more B and one or more C; one or more A and one or more C; and one or more of each of A, B, and C. Similarly, a list preceded by “a plurality of’ (and variations thereon) and including “or” to separate listed elements indicates options of multiple instances of any or all of the listed elements. For example, the phrases “a plurality of A, B, or C” and “two or more of A, B, or C” indicate options of: A and B; B and C; A and C; and A, B, and C. In general, the term “or” as used herein only indicates exclusive alternatives (e g., “one or the other but not both”) when preceded by terms of exclusivity, such as, e.g., “either,” “one of,” “only one of,” or “exactly one of.”

[0048] Although the present technology has been described by referring to preferred examples, workers skilled in the art will recognize that changes can be made in form and detail without departing from the scope of the discussion.

Claims

CLAIMSWhat is claimed is:

1. A display device, comprising: a matrix hub to selectively map each of a plurality of downstream ports to a respective upstream port of a plurality of upstream ports; an electronic processor coupled to the matrix hub, wherein the electronic processor is to: detect a plurality of host devices on the plurality of upstream ports; detect a downstream device on a first downstream port of the plurality of downstream ports; receive a first user input to select a first host device of the plurality of host devices for the downstream device; and in response to the first user input, control the matrix hub to communicatively couple the downstream device on the first downstream port to the first host device on a first upstream port of the plurality of upstream ports.

2. The display device of claim 1, comprising: a display, wherein the electronic processor is to: provide, via the display, a downstream device indication corresponding to the downstream device on the first downstream port; and provide, via the display, a plurality of host device indications corresponding to the plurality of host devices on the plurality of upstream ports, and wherein, to receive the first user input to select the first host device, the electronic processor is to receive the first user input to select a first host device indication of the plurality of host device indications, the first host device indication corresponding to the first host device.

3. The display device of claim 1, comprising: a display, wherein the electronic processor is to:provide a plurality of screens on the display, the plurality of screens corresponding to the plurality of host devices.

4. The display device of claim 1, wherein the matrix hub comprises: a switch, wherein to control the matrix hub to communicatively couple the first host device to the downstream device, the electronic processor is to: electrically connect, via the switch, the first downstream port to the first upstream port corresponding to the first host device.

5. The display device of claim 4, wherein to control the matrix hub to communicatively couple the first host device to the downstream device, the electronic processor is to: close the switch to be electrically connected between the first downstream port of the plurality of downstream ports and the first upstream port of the plurality of upstream ports, the first upstream port corresponding to the first host device; and open the switch to be disconnected between the first downstream port of the plurality of downstream ports and a second upstream port of the plurality of upstream ports, the second upstream port corresponding to a second host device of the plurality of host devices.

6. The display device of claim 5, wherein the matrix hub comprises: a first upstream module coupled, via the first upstream port, to the first host device, the first upstream module comprising a first downstream endpoint; a second upstream module coupled, via the second upstream port, to the second host device, the second upstream module comprising a second downstream endpoint; and a downstream module coupled, via the first downstream port, to the downstream device, the downstream module comprising a first upstream endpoint, wherein to control the matrix hub to communicatively couple the first host device to the downstream device, the electronic processor is to: close the switch to be connected between the first downstream endpoint of the first upstream module and the first upstream endpoint of the downstream module; and open the switch to be disconnected between the second downstream endpoint of the second upstream module and the first upstream endpoint of the downstream module.

7. The display device of claim 1, wherein the electronic processor is to: receive a second user input to select a second host device of the plurality of host devices; and in response to the second user input, control the matrix hub to communicatively couple the second host device to the downstream device.

8. The display device of claim 7, wherein the matrix hub comprises: a switch, and wherein to control the matrix hub communicatively couple the second host device to the downstream device, the electronic processor is to: open the switch to be disconnected between the first downstream port of the plurality of downstream ports and the first upstream port of the plurality of upstream ports, the first upstream port corresponding to the first host device; and close the switch to be connected between the first downstream port to a second upstream port of the plurality of upstream ports, the second upstream port corresponding to the second host device of the plurality of host devices.

9. The display device of claim 1, comprising: a memory, wherein the electronic processor is to: store data received via the matrix hub from the first host device in the memory; and transmit, via the matrix hub, the data stored in the memory to a second host device of the plurality of host devices.

10. A method, comprising: detecting a plurality of host devices on a plurality of upstream ports; detecting a downstream device on a first downstream port of a plurality of downstream ports; receiving a first user input to select a first host device of the plurality of host devices for the downstream device; and in response to the first user input, communicatively coupling the first host device to the downstream device via a matrix hub, the matrix hub selectively mapping each of a plurality of downstream ports to a respective upstream port of a plurality of upstream ports.

11. The method of claim 10, wherein the matrix hub comprises: a switch, wherein the communicatively coupling of the first host device to the downstream device comprises: electrically connecting, via the switch, the first downstream port to a first upstream port corresponding to the first host device.

12. The method of claim 10, wherein the matrix hub comprises: a plurality of switches corresponding to the plurality of upstream ports, and wherein the communicatively coupling of the first host device to the downstream device comprises: closing a first switch of the plurality of switches to be connected between the first downstream port of the plurality of downstream ports and a first upstream port of the plurality of upstream ports, the first upstream port corresponding to the first host device; and opening a second switch to be disconnected between the first downstream port of the plurality of downstream ports and a second upstream port of the plurality of upstream ports, the second upstream port corresponding to a second host device of the plurality of host devices.

13. The method of claim 12, wherein the matrix hub further comprises: a first upstream module coupled, via the first upstream port, to the first host device, the first upstream module comprising a first downstream endpoint; a second upstream module coupled, via the second upstream port, to the second host device, the second upstream module comprising a second downstream endpoint; anda downstream module coupled, via the first downstream port, to the downstream device, the downstream module comprising a first upstream endpoint and a second upstream endpoint, wherein the communicatively coupling of the first host device to the downstream device comprises: closing the first switch to be connected between the first downstream endpoint of the first upstream module and the first upstream endpoint of the downstream module; and opening the second switch to be disconnected between the second downstream endpoint of the first upstream module and the second upstream endpoint of the downstream module.

14. A non-transitory computer-readable medium storing computer-executable code, comprising code for causing a processor to: detect a plurality of host devices on a plurality of upstream ports; detect a downstream device on a first downstream port of a plurality of downstream ports; select a first host device of the plurality of host devices for the downstream device; and in response to the selection, control a switch of a matrix hub to communicatively couple the first host device to the downstream device , the matrix hub selectively mapping each of a plurality of downstream ports to a respective upstream port of a plurality of upstream ports.

15. The non-transitory computer-readable medium of claim 14, wherein the code for causing the processor to receive, via the first downstream port, a downstream device signal from the downstream device; determine a first downstream device indication based on the downstream device signal; receive, via a first upstream port of the plurality of upstream ports, a host device signal from the first host device; determine a first host device indication based on the host device signal; provide the first downstream device indication and the first host device indication on a screen of a display to receive a first user input indicating the selection via the screen of the display; and control the first host device using the downstream device.