8 Replies Latest reply on Oct 3, 2009 3:45 AM by testell

    Using virtual serial ports between two machines?

    gv3 Lurker

      Hi,

       

      I am attempting to use Fusion in the same what that I use Workstation, in that I have two VMs connected over their serial ports, one for console and one for serial debug.  I cannot seem to get this to work with Fusion.  What am I missing?

       

      Best,

      George

        • 1. Re: Using virtual serial ports between two machines?
          gv3 Lurker

          OK, so it turns out that though the UI does not support the pipe and client/server settings for serial ports, the vmx file does.  I now have this on the client side:

           

          serial0.present = "TRUE"

          serial0.fileType = "pipe"

          serial0.pipe.endPoint = "client"

          serial0.yieldOnMsrRead = "TRUE"

           

          serial0.startConnected = "TRUE"

           

          serial0.fileName = "/Volumes/Virtual Machines/VMware/Serial/devbox_com1"

           

          and this on the server side:

           

          serial0.present = "TRUE"

          serial0.fileType = "pipe"

          serial0.yieldOnMsrRead = "TRUE"

           

          serial0.startConnected = "TRUE"

           

          serial0.fileName = "/Volumes/Virtual Machines/VMware/Serial/devbox_com1"

           

          and all is happy.

           

          Best,

          George

          • 2. Re: Using virtual serial ports between two machines?
            hawbaker Novice

            about the file, devbox_com1:

             

            what kind of file is it ? is it within a VM package or outside ?  How do I have to create it ?

             

            Message was edited by:

                    hawbaker

            • 3. Re: Using virtual serial ports between two machines?
              RDPetruska Guru
              vExpertUser Moderators

              It should be an ASCII text file on your host - in exactly the path spelled out.

              • 4. Re: Using virtual serial ports between two machines?
                sharris595 Novice

                Hi!

                 

                I'm trying to use serial ports to communicate between XP VMs running under VMWare Fusion on MAC OS/X.  I created the file as specified here (though I don't have the /Volumes/Virtual Machines/VMWare paths I see here-is there something I'm missing?  I just created a plain text file on my Mac to handle the traffic, and I set the attributes to be all read-write.  I edited my VMWare images to have the same settings as specified here, although Fusion complains that these are non-standard and unsupported settings.  Anyone get Hyperterminal to work between VMWare images?  I set the baud rate to the same, and no hardware flow control on the serial ports.  The default support for serial ports in Fusion is just for files, but I wasn't able to map both images to the same file to share serial port communication, for example.  Any thoughts on how one might get this to work?  Thanks!

                 

                Best,

                 

                Steve

                • 5. Re: Using virtual serial ports between two machines?
                  WoodyZ Guru

                  Have a look at: VMware Fusion menu > Help > VMware Fusion Help > Managing Virtual Machines > Adding and Configuring a Serial Port

                  • 6. Re: Using virtual serial ports between two machines?
                    sharris595 Novice

                     

                    Hi-

                     

                     

                    I see that the VMware Fusion help only allows serial ports on the Mac to be actual files.  When I try to specify two VMs using the same file, I get a message from the VM that starts second that the file already exists, and asks whether it should append or overwrite the original file.  Does this mean that communicating via serial ports for VMs is not possible?  Would writing a quick shell script to read and echo the output of one file into another file work if I mapped each VM to a serial port to a different file, and used this shell script to communicate between them?

                     

                     

                     

                     

                     

                    Thanks!

                     

                     

                     

                     

                     

                    Steve

                     

                     

                     

                     

                     

                    • 7. Re: Using virtual serial ports between two machines?
                      WoodyZ Guru

                      Using the information in in the post above (http://communities.vmware.com/message/748577#748577) I had no problem establishing open communication between two XP Virtual Machines, so it does work.

                      • 8. Re: Using virtual serial ports between two machines?
                        testell Lurker

                        Got this working as well. Using Fusion to debug a WinXP vm from another WinXP vm.

                         

                        On the machine running WinDbg I added the following lines to the .vmx file. Serial0 was already setup for thinprint so I'm using serial1.

                         

                        serial1.present = "TRUE"

                        serial1.fileType = "pipe"

                        serial1.yieldOnMsrRead = "TRUE"

                        serial1.startConnected = "TRUE"

                        serial1.fileName = "/tmp/dev_com"

                        serial1.pipe.endPoint = "client"

                         

                        On the target machine I added the following lines to the .vmx file.

                         

                        serial0.present = "TRUE"

                        serial0.fileType = "pipe"

                        serial0.yieldOnMsrRead = "TRUE"

                        serial0.startConnected = "TRUE"

                        serial0.fileName = "/tmp/dev_com"

                         

                        Then started up the target vm, edited the boot.ini file to add "/debugport=COM1 /baudrate=115200".

                        Now start up the windbg vm, launch WinDbg, then File | Kernel Debug. Selection serial, COM2, check the box for reconnect.

                         

                        Restart the target vm. Should see output in the WinDbg command window and "Debugee is running..."

                         

                        Thanks!