Virtual communication port bridge supporting usb host-to-host transfer

By using a USB bridge device to emulate a physical USB port as a virtual communication port, the problem of data transmission in host-to-host mode is solved, enabling convenient and efficient data transmission between different operating system platforms, simplifying software development and improving transmission speed.

CN122132344APending Publication Date: 2026-06-02PROLIFIC TECH INC

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
PROLIFIC TECH INC
Filing Date
2018-03-20
Publication Date
2026-06-02

AI Technical Summary

Technical Problem

Existing technologies struggle to achieve efficient and convenient host-to-host data transmission, especially as the data transmission needs of mobile devices have not been met after they have transitioned from devices to hosts.

Method used

Using a USB bridge device, the physical USB port is emulated as a virtual communication port through a microcontroller and host-to-host functional circuit, and host-to-host data transmission is realized by using the built-in CDC-ACM driver, supporting data transmission of multi-functional composite devices.

Benefits of technology

It enables convenient data transfer between different operating system platforms, simplifies software development, improves transmission speed, reduces dependence on additional drivers, and supports the application of multi-functional virtual communication ports.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122132344A_ABST
    Figure CN122132344A_ABST
Patent Text Reader

Abstract

The USB bridge includes a first USB port coupled to a first USB host, a second USB port coupled to a second USB host, a microcontroller coupled to the first and second USB ports, the microcontroller communicating with the first and second USB hosts through the first and second USB ports to enable the first and second USB hosts to emulate individual USB ports of the first host and the second host as a plurality of virtual communication ports, and a host-to-host function circuit coupled to the microcontroller, the host-to-host function circuit configured to implement a host-to-host transfer function using the USB ports emulated as the virtual communication ports.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of the following invention patent application: Application No.: 201810229670.9, Application Date: March 20, 2018, Invention Title: Virtual Communication Port Bridge Supporting USB Host-to-Host Transmission. Technical Field

[0002] This invention relates to a virtual communication port device bridge that supports USB host-to-host data transfer. Background Technology

[0003] A Universal Asynchronous Receiver / Transmitter (UART) is an asynchronous transmitter that converts data between serial and parallel transmission. UART is an early, simple transmission interface. Because of its relatively simple communication protocol, UART software development is relatively easy.

[0004] Universal Serial Bus (USB) technology supports hot-swapping and plug-and-play, making it easy for desktop computers and laptops to connect peripherals with USB interfaces.

[0005] In the past, when a mobile device was connected to a host (laptop, desktop computer, or car system) via USB, the mobile device was treated as a device (i.e., a slave device).

[0006] However, with the increasing prevalence of mobile devices (such as smartphones) and their growing hardware capabilities, mobile devices have transformed from devices into hosts. Therefore, host-to-host data transfer is becoming the trend. Meeting user demands for host-to-host data transfer has thus become one of the industry's key areas of focus. Summary of the Invention

[0007] According to one embodiment of this application, a USB bridge is proposed, comprising: a first USB port coupled to a first USB host; a second USB port coupled to a second USB host; a microcontroller coupled to the first and second USB ports, the microcontroller communicating with the first USB host and the second USB host through the first and second USB ports, so that the first USB host and the second USB host can simulate individual USB ports on the first host and individual USB ports on the second host as multiple virtual communication ports; and a host-to-host functional circuit coupled to the microcontroller, the host-to-host functional circuit being configured to realize host-to-host transmission function by simulating the USB ports as virtual communication ports.

[0008] According to one embodiment of this application, a USB bridge is proposed, comprising: a first USB port coupled to a first USB host; a second USB port coupled to a second USB host; a microcontroller coupled to the first USB port and the second USB port, configured to emulate the first USB port and the second USB port as virtual communication ports for host recognition, and to enable the first USB host and the second USB host to use their host-side USB ports as the virtual communication ports for data read and write using their built-in Communication Device Class (CDC) - Abstract Control Model (ACM) drivers; and a host-to-host functional circuit coupled to the microcontroller, configured to realize host-to-host transmission between the two USB hosts via the virtual communication ports; wherein the USB bridge can provide multiple functions as a composite device, wherein the multiple functions provided by the composite device include two or more virtual communication ports for the two USB hosts to communicate simultaneously or separately. Attached Figure Description

[0009] To provide a better understanding of the above and other aspects of this application, specific embodiments are described below in conjunction with the accompanying drawings:

[0010] Figure 1 A schematic diagram of a system according to an embodiment of this application is shown.

[0011] Figure 2 This is a functional block diagram of a USB bridge according to an embodiment of the present application. Detailed Implementation

[0012] The technical terms used in this specification refer to those commonly used in the field. Where this specification provides explanations or definitions for certain terms, the interpretation of those terms shall be based on the explanations or definitions provided in this specification. Each embodiment of this disclosure has one or more technical features. Where feasible, those skilled in the art may selectively implement some or all of the technical features in any embodiment, or selectively combine some or all of the technical features in these embodiments.

[0013] Please refer to the following: Figure 1 . Figure 1 This is a schematic diagram illustrating a system according to an embodiment of this application. For example... Figure 1 As shown, the first USB host 110 communicates with the second USB host 130 through a USB bridge 120 with virtual communication port functionality. Host-to-host communication is achieved between the first USB host 110 and the second USB host 130 via the USB bridge 120. The first USB host 110 and the second USB host 130 each have USB ports 115 and 135, respectively. Through USB ports 115 and 135, the first USB host 110 and the second USB host 130 can communicate with the USB bridge 120 with virtual communication port functionality. The first USB host 110 can simulate USB port 115 as a corresponding first virtual communication port 117; while the second USB host 130 can simulate USB port 135 as a corresponding second virtual communication port 137.

[0014] Please refer to the following: Figure 2 , Figure 2 To illustrate a functional block diagram of a USB bridge according to an embodiment of this application, the USB bridge 120 with virtual communication port functionality includes at least: USB ports 210 and 220, a microcontroller (MCU) 230, and host-to-host functionality circuitry 240.

[0015] USB ports 210 and 220 are respectively coupled to the first USB host 110 and the second USB host 130.

[0016] Microcontroller 230 is coupled to USB ports 210 and 220, and host-to-host functionality circuitry 240. Microcontroller 230 can communicate with the first USB host 110 and the second USB host 130 via USB ports 210 and 220. Microcontroller 230 emulates the USB ports 210 and 220 (which are physical USB interfaces) of the USB bridge 120, which has virtual communication port functionality, as virtual communication ports, corresponding to the first virtual communication port 117 of the first USB host 110 and the second virtual communication port 137 of the second USB host 130, respectively. Through the first virtual communication port 117 of the first USB host 110, the USB bridge 120, and the second virtual communication port 137 of the second USB host 130, the first USB host 110 can communicate with the second USB host 130, thus establishing a communication connection between the two hosts. In this embodiment, the application software of the first USB host 110 and the second USB host 130 only needs to perform read and write operations on the virtual communication ports, making software processing easier. In this embodiment, both the first USB host 110 and the second USB host 130 have built-in Communication Device Class (CDC) - Abstract Control Model (ACM) drivers. CDC-ACM drivers are standard drivers already built into different operating systems (such as Windows, macOS, Linux, and Android). Therefore, in this embodiment, when both the first USB host 110 and the second USB host 130 have built-in standard CDC-ACM drivers, they are compatible with different operating systems, making data transfer between different operating systems easier and simpler. That is, if the OS systems of the first USB host 110 and the second USB host 130 both have built-in CDC-ACM drivers, when the corresponding USB virtual communication port type devices are connected to the first USB host 110 and the second USB host 130, the built-in CDC-ACM drivers of the OS systems of the first USB host 110 and the second USB host 130 can simulate the USB ports 115 and 135 of the first USB host 110 and the second USB host 130 as virtual communication ports 117 and 137. In this way, the application software can perform read and write operations on the virtual communication ports.

[0017] The details of how the microcontroller 230 emulates the USB ports 210 and 220 (which are physical USB interfaces) of the USB bridge 120, which has virtual communication port functionality, as virtual communication ports are not particularly limited here. Furthermore, the details of how the first USB host 110 communicates with the second USB host 130 via the first virtual communication port 117 of the first USB host 110, the USB bridge 120, and the second virtual communication port 137 of the second USB host 130 to complete the communication connection between the two hosts are not particularly limited here. Moreover, the details of how the application software of the first USB host 110 and the second USB host 130 performs read and write operations on the virtual communication ports are also not particularly limited here.

[0018] The host-to-host functional circuit 240 is coupled to the microcontroller 230, and the host-to-host functional circuit 240 is used to implement the host-to-host transmission function. The details and physical architecture of the host-to-host functional circuit 240 are not particularly limited here.

[0019] The first USB host 110 can transmit data to the host-to-host function circuit 240 via USB port 210. Then, the host-to-host function circuit 240 transmits the data from the first USB host 110 to the second USB host 130 via USB port 220. In some cases, the data from the first USB host 110 can be sent to the second USB host 130 without processing by the microcontroller 230; however, in other cases, the data from the first USB host 110 needs to be processed by the microcontroller 230 before being sent to the second USB host 130.

[0020] Similarly, the second USB host 130 can transmit data to the host-to-host function circuit 240 via USB port 220. Then, the host-to-host function circuit 240 transmits the data from the second USB host 130 to the first USB host 110 via USB port 220. In some cases, the data from the second USB host 130 can be sent to the first USB host 110 without processing by the microcontroller 230; however, in other cases, the data from the second USB host 130 needs to be processed by the microcontroller 230 before being sent to the first USB host 110.

[0021] Furthermore, in the above embodiments of this application, the simulated USB port used to realize host-to-host transmission function as a virtual communication port function is not limited to a single function, but can also be used to realize the multi-function of a composite device, which is also within the spirit and scope of this application.

[0022] In the embodiments described above, the host-to-host transmission mode, coupled with the simpler and easier-to-use UART protocol communication interface, makes it easier to develop related peripheral software or systems. By emulating the USB port as a virtual communication port and host-to-host functional circuit, data transmission can be performed between two USB hosts, which is very convenient and simple for developers.

[0023] Furthermore, in the above embodiments of this application, the first and second USB hosts 110 and 130 support the standard CDC-ACM category. Therefore, the first and second USB hosts 110 and 130 do not need to install additional purpose-specific drivers, which is very convenient and simple for developers.

[0024] In addition, in other possible embodiments of this application, the first and second USB hosts 110 and 130 may also support the installation mode of virtual communication port drivers developed by third parties (that is, the first and second USB hosts 110 and 130 may also install virtual communication port drivers developed by third parties), which is very convenient and simple for developers.

[0025] Furthermore, in the prior art, if a physical RS232 UART transceiver circuit is used, the overall transmission speed will be limited by the transmission speed of the physical RS232 UART transceiver circuit (approximately 12 Mb / s), which is insufficient for current applications. Conversely, in the embodiments of this application, since data transmission is performed using a USB interface, the data transmission speed is limited by the USB data transmission speed, which is much higher than the UART transmission speed.

[0026] The embodiments described above utilize the widespread availability of USB and the ease of use of the UART specification. For multiple hosts that have USB host functionality and support UART, the use of a USB interface UART communication port can easily meet the requirement of data transfer between multiple hosts running different OS (operating system) platforms.

[0027] In summary, although the present invention has been disclosed above with reference to embodiments, it is not intended to limit the invention. Those skilled in the art can make various modifications and refinements without departing from the spirit and scope of the invention. Therefore, the scope of protection of the present invention should be determined by the scope defined in the appended claims.

[0028] List of reference numerals

[0029] 110 First USB Host

[0030] 120 USB bridge with virtual communication port function

[0031] 130 Second USB Host

[0032] Virtual communication ports 117 and 137

[0033] 115, 135 USB ports

[0034] 240 Host-to-host functional circuit

[0035] 210, 220 USB ports

[0036] 230 microcontroller

Claims

1. A USB bridge, comprising: A first USB port, coupled to a first USB host; A second USB port, coupled to a second USB host; A microcontroller, coupled to the first USB port and the second USB port, is configured to emulate the first USB port and the second USB port as virtual communication ports for host recognition, and to enable the first USB host and the second USB host to use their host-side USB ports as the virtual communication ports for data read and write operations using their built-in Communication Device Class (CDC) - Abstract Control Model (ACM) drivers; and A host-to-host functional circuit, coupled to the microcontroller, is used to enable host-to-host data transfer between two USB hosts via the virtual communication port; wherein the USB bridge can serve as a composite device providing multiple functions. The composite device provides multiple functions, including two or more virtual communication ports for the two USB hosts to communicate simultaneously or separately.

2. The USB bridge as described in claim 1, wherein, The application software performs data read and write operations through the virtual communication port.

3. The USB bridge as described in claim 1, wherein, One or two hosts can install third-party developed virtual communication port drivers to participate in communication.

4. The USB bridge as described in claim 1, wherein, Data transmitted from the first USB host is transferred to the second USB host by the host's host function circuitry without being processed by the microcontroller.

5. The USB bridge as described in claim 1, wherein, Data transmitted from the first USB host is processed by the microcontroller and then transferred by the host to the host function circuitry to the second USB host.

6. The USB bridge as described in claim 1, wherein, The operating systems of the first USB host and the second USB host are different.

7. The USB bridge as described in claim 1, wherein, The first USB host and the second USB host have the same operating system.