Virtual Serial Port
Virtual Serial Ports Emulator is designed to solve compatibility issues with older applications and help you create and use several serial ports at the same time, without having to install.
The Internet of Things (IoT) makes extensive use of serial ports to enable communication between the devices that are involved in a typical IoT implementation. Embedded devices also often employ serial communication as their method of data transfer. Developing hardware and software applications for these scenarios demands the use of a serial interface on your development machine.
- Virtual Serial Port Concentrator (vSPC) aggregates traffic from multiple serial ports onto one management console. It behaves similarly as physical serial port concentrators. Using a vSPC also allows network connections to a virtual machine's serial ports to migrate seamlessly when the virtual machine is migrated using vMotion.
- Freeware virtual com port driver and Rs232/Rs485/Rs422 serial ports null-modem cable emulator.
A major impediment to your efforts may well be the computer you are using as your development platform. The bleeding-edge laptop that you are using to write your code probably did not come equipped with serial ports, as is the case with most modern computers. This can bring development, testing, and debugging work to a halt. Virtual COM Ports offer a solution which enables any Windows machine to emulate physical serial interfaces.
Virtual Serial Port Driver is an easy to use and stable virtual serial port tool that will enable developers to fully test and debug their code before requiring time on physical testing devices.
We are going to demonstrate how to use this practical software tool with two examples. We will be using Virtual Serial Port 9.0 standard edition for this demonstration.
- ♦ The first example will simply create a communication connection through two chat windows.
- ♦ In the second example, we will emulate the sending and receiving of data from an embedded device.
We will be using C# Visual Studio as our development platform. Before delving into the details of our examples we must download and install the software to create COM port pairs.
After installation, start the program:
Click on Add Pair
That’s all there is to it. You now have a pair of virtual serial ports named COM1 and COM2.
Connecting Visual Studio chat windows via Virtual Port
The chat example we will use is based on one found at the Microsoft SerialPort Class (System.IO.Ports) page. A Visual Studio solution which has all of the code needed to run these examples can be found on GitHub as ComPort. This code needs to be run in two instances of Visual Studio simultaneously to give us two chat windows with which to work.
- Set the Chat project as the Start-up project in both Visual Studio instances.
- Start the program on the first Visual Studio instance. You will be presented with some questions which you should leave blank by pressing ENTER. When you are asked for a name, supply one of your choice. In this demonstration, the name Joe is used.
- Start the second Visual Studio instance and follow the same procedure with the exception of selecting COM2 as the port to be used. Continue leaving the other entries blank until it’s time to select a name. We have used Doe as the second name in this example.
- Done! You have now connected Joe and Doe who can chat through the virtual serial ports created by Virtual COM Port Driver.
This example just scratches the surface of the possibilities that virtual ports can provide. Our next example will demonstrate enacting communication between your system and a serial device.
Connecting to Serial Devices with Virtual Ports
This example will entail using a virtual port to send data and receiving that data on the other half of the pair of virtual ports. There are many development scenarios where this type of flexibility can be indispensable when faced with the absence of physical serial ports.
Virtual Serial Port Open Source
- This time we will set the Visual Studio start-up project to be Emulator in one instance and DataReceiver in the other one.
- Start the Emulator program. Nothing should happen.
- Start DataReceiver in the second instance and you will see that the Emulator program is sending x, y, and z data and it is being captured by the DataReceiver program.
Virtual Serial Port Emulator also allows you to see the amount of data sent and received through each virtual port.
Virtual Serial Port Driver provides a powerful tool that allows you to develop and test serial applications without the need for a real serial device or interface.
At Eltima Software, we have developed a comprehensive solution that eliminates the need for physical COM ports in order to engage in serial communication. Virtual Serial Port Driver (VSPD) enables you to create unlimited pairs of virtual serial interfaces on any Windows computer. The virtual interfaces fully emulate a physical port to allow compatibility with any serial applications. It is a valuable addition to a serial developer’s software toolbox.
Virtual Serial Port Driver
Version 9.0.572 (4th Aug, 2017) Release notes
Category: CommunicationApplication
All virtual COM ports work and behave exactly like real ones, emulating all their settings. You can create as many virtual port pairs as you want, so there will be no serial ports shortage and no additional hardware crowding your desk.
Moreover, Eltima virtual serial port technology can be fully integrated into your own software (DLL, ActiveX or Core level usage).
Serial port splitting
Virtual Serial Port Driver PRO allows splitting physical serial ports (e.g. COM 1) into several virtual communication ports (COM2, COM3, COM4, etc.) which appear in the system as exact copies of a hardware serial interface. Also, the software offers the sharing of hardware serial ports among multiple applications. Several serial apps will be able to access the same COM port and a device plugged into it.Joining COM ports
The software solution will help you link several real COM ports to one virtual serial port. Connected to this virtual COM port, a serial application will receive data from all joined real COM ports simultaneously. Simply put, with this advanced feature, you’ll be able to redirect data from several devices to one application.Creating bundle connections
This unique option offered by the software PRO version lets you create and manage complex bundles of serial ports. That means serial data can be transmitted in and out by an unlimited number of physical and virtual COM interfaces. Received by a COM port of the ‘IN’ side, serial data will be redirected to every COM port at the ‘OUT’ side of a bundle and vice versa.
Above that, setting Main Port for each side of a bundle (In/Out), facilitates the process of managing hardware control lines.
Switching ports automatically
In case your application is designed to work with a limited number of ports, you can use Switcher, a special feature of Virtual Serial Port Driver PRO. With this option, you can join several physical ports into one virtual (optionally, you can give the same name to all of the ports), and create a switcher to this virtual COM port in the required app.
Whenever your program will require a serial port connection, the switcher will detect a non-occupied COM port in the list of joined ports and offer it to the app. This way, your program will automatically talk to any free serial port as though it were always the same port.
Merging COM ports
The new advanced feature of Virtual Serial Port Driver PRO lets you add any number of physical and virtual COM ports to a single serial port bundle not divided into ‘IN’ and ‘OUT’ sides. Everything sent to one port will be replicated to all the other real and virtual RS232 ports of the bundle. Thanks to this feature, every device/application gets the ability to exchange data with multiple devices/applications simultaneously.
Create any number of virtual COM ports
Complete real ports settings emulation
Manage all signal lines
Virtual Serial Port Linux
Compare STANDARD and PRO versions
# | Feature | Standard | Pro |
---|---|---|---|
1 | Creating an unlimited number of virtual serial port pairs | ||
2 | Full emulation of real COM port settings and hardware control lines | ||
3 | Splitting one COM port (physical or virtual) into several virtual ones | ||
4 | Merging an unlimited number of physical or virtual serial ports into one virtual COM port | ||
5 | Creating complex port bundles | ||
6 | Ability to delete ports already opened by other applications | ||
7 | High speed of data transfer from/to a virtual serial port | ||
8 | Ability to forward serial traffic from one real port to another real or virtual RS232 port | ||
9 | Strict baudrate emulation | ||
10 | Availability of different virtual null-modem schemes: standard/ loopback/ custom | ||
11 | Ability to assign a virtual serial port with a custom name, including names already used by real ports | ||
12 | Virtual RS232 port software and all of its internal drivers are digitally signed | ||
13 | Support for Windows kernel driver technology (WDM, WMI, Power Management, PnP, etc.) | ||
14 | Virtual RS232 ports support for hyper-threading and VMware | ||
15 | Possibility to set read and write rights for every RS232 port | ||
16 | Saving data on usage of ports by applications in ‘Activity log’ | ||
17 | Ability to customize the parameters of connections to a real serial port (baudrate, parity, flow-control, databits, and stopbits) | ||
18 | No need to reboot a computer after software installation, creation and reconfiguration of virtual serial ports | ||
19 | Automatic re-creation of ports on system reboot (prior to user logon) | ||
20 | Ability to change names of virtual COM ports created by VSPD and displayed in the Device Manager | ||
21 | Full support of HandFlow control (Hardware and Xon/Xoff) | ||
22 | Sharing one real COM port among multiple applications at a time | ||
23 | Ability to merge several serial ports into a single bundle |
Kenneth Floyd, Embedded Systems Software Developer
Lucy Williams, Application Integration Engineer
Patrick Reynolds, Computer Laboratory Technician
- 5
We are using VSPD for testing out Geographic Information System software connectivity with a virtual GPS (software simulation). The GPS emulator is simulating the output we normally receive from a GPS navigator.
Submit your email address to get a link for quick download on your desktop and get started!