Difference between revisions of "Com0com"

From ReactOS Wiki
Jump to: navigation, search
m
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[http://com0com.sourceforge.net/ com0com] is a free utility to create virtual serial port pairs which can be used to capture the debug output of ReactOS and direct it to a terminal program.
+
[http://com0com.sourceforge.net/ com0com] is a free utility to create virtual serial port pairs that can be used to capture the debug output of ReactOS and direct it to a terminal program.
  
 
Useful terminal programs that are able to get this output include:
 
Useful terminal programs that are able to get this output include:
Line 8: Line 8:
 
* [http://www.hw-group.com/products/hercules/index_en.html Hercules]
 
* [http://www.hw-group.com/products/hercules/index_en.html Hercules]
 
* [[ReactOSDbg]]
 
* [[ReactOSDbg]]
 +
* [https://www.eltima.com/products/vspdxp/ Virtual COM Port]
 +
=== Setup ===
  
=== Setup ===
+
Get [http://sourceforge.net/project/showfiles.php?group_id=129551 com0com] and install it.
  
Get [http://sourceforge.net/project/showfiles.php?group_id=129551 com0com] and install it. It will automatically install a pair of virtual COM ports "CNCA0" and "CNCB0" that are linked by a virtual null modem cable.
+
{{Warning| For '''x64 versions''' of Windows (Vista, 7, 8+) a '''signed driver''' is required. The last com0com driver version signed available on SourceForge is the 2.2.2.0. A signed version of the latest com0com driver version 3.0.0.0 can be found at [https://code.google.com/archive/p/powersdr-iq/downloads powersdr-iq/downloads] (files: setup_com0com_W7_x86_signed.exe and setup_com0com_W7_x64_signed.exe).}}
  
You can optionally change the names and edit the settings with the gui setup tool (setupg.exe). In this example they are named COM4 and COM5.
+
It will automatically install a pair of virtual COM ports "CNCA0" and "CNCB0" that are linked by a virtual null-modem cable.
 +
You can optionally change the names and edit the settings with the GUI setup tool (setupg.exe). In this example, they are named COM3 and COM4.
 +
[[File:Setupg reactos.png|thumb|center|Setupg page]]
  
 
IMPORTANT: After that, click on Apply. Windows will detect "new hardware", click on Next and let Windows find and install the "com0com serial emulator" hardware.
 
IMPORTANT: After that, click on Apply. Windows will detect "new hardware", click on Next and let Windows find and install the "com0com serial emulator" hardware.
Line 20: Line 24:
  
 
=== Connecting the virtual machine and terminal application ===
 
=== Connecting the virtual machine and terminal application ===
Connect the Virtual Machine to your first virtual port ("COM4") and the terminal application to the second ("COM5").
+
Connect the Virtual Machine to your first virtual port ("COM4") and the terminal application to the second ("COM3").
 +
 
 +
In the below example we connect the virtual machine to virtual port COM4 and putty to Virtual Port COM3.
 +
[[File:Vbox reactos.png|thumb|center]]
 +
[[File:Putty reactos.png|thumb|center]]
  
 
The properties of the serial port (usually specified in the virtual machine), like the baud rate, are not important.
 
The properties of the serial port (usually specified in the virtual machine), like the baud rate, are not important.
Instead, be sure to select "NO FLOW CONTROL", because otherwise the terminal app won't receive any characters.
+
Instead, be sure to select "NO FLOW CONTROL", because otherwise, the terminal app won't receive any characters.
  
=== What does com0com do? ===
 
[[File:Com0com sys.png]]
 
  
The virtual machine shows a COM1 port to ReactOS which is used for sending debug messages.
 
  
The virtual machine maps this port to a virtual port visible to the host operating system.
+
=== What does com0com do? ===
 +
[[File:Com0com sys.png|center]]
  
com0com emulates a null modem cable between the vm and the terminal application.
+
The virtual machine shows a COM1 port to ReactOS which is used for sending debug messages. The virtual machine maps this port to a virtual port visible to the host operating system.com0com emulates a null modem cable between the VM and the terminal application. For reference, the COM4 in the picture represents COM4 and COM5 represents COM3.
 
[[Category:Tutorial]]
 
[[Category:Tutorial]]

Latest revision as of 07:11, 1 February 2020

com0com is a free utility to create virtual serial port pairs that can be used to capture the debug output of ReactOS and direct it to a terminal program.

Useful terminal programs that are able to get this output include:

Setup

Get com0com and install it.

Icon speedy deletion.png Warning: For x64 versions of Windows (Vista, 7, 8+) a signed driver is required. The last com0com driver version signed available on SourceForge is the 2.2.2.0. A signed version of the latest com0com driver version 3.0.0.0 can be found at powersdr-iq/downloads (files: setup_com0com_W7_x86_signed.exe and setup_com0com_W7_x64_signed.exe).


It will automatically install a pair of virtual COM ports "CNCA0" and "CNCB0" that are linked by a virtual null-modem cable. You can optionally change the names and edit the settings with the GUI setup tool (setupg.exe). In this example, they are named COM3 and COM4.

Setupg page

IMPORTANT: After that, click on Apply. Windows will detect "new hardware", click on Next and let Windows find and install the "com0com serial emulator" hardware.

You are done.

Connecting the virtual machine and terminal application

Connect the Virtual Machine to your first virtual port ("COM4") and the terminal application to the second ("COM3").

In the below example we connect the virtual machine to virtual port COM4 and putty to Virtual Port COM3.

Vbox reactos.png
Putty reactos.png

The properties of the serial port (usually specified in the virtual machine), like the baud rate, are not important. Instead, be sure to select "NO FLOW CONTROL", because otherwise, the terminal app won't receive any characters.


What does com0com do?

Com0com sys.png

The virtual machine shows a COM1 port to ReactOS which is used for sending debug messages. The virtual machine maps this port to a virtual port visible to the host operating system.com0com emulates a null modem cable between the VM and the terminal application. For reference, the COM4 in the picture represents COM4 and COM5 represents COM3.