Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
14,000 hints and counting!

10.4: Share a serial port with Windows on Parallels Other Hardware
The Problem (as I faced it): I have need to use a serial port to connect my MacBook to my amateur radio equipment. The USB/serial port adapter that I have chosen is the Keyspan USA-19HS. There are both Mac OS and Windows programs applicable to my needs; however, they differ in their purpose, and thus I need the Windows environment to supplement my Mac-based operations.

Initially, I had set my Mac to use Boot Camp to provide the Windows XP environment. This was necessary because the Keyspan driver under Mac OS would not release the serial port adapter to Windows under Parallels, and I did not want to have to remove the drivers from Mac OS each time that I wanted Windows to use the serial port. Rebooting to the other environment was the solution that I came up with; until I read about SerialClient.

The Solution: SerialClient is a Mac application that (in my own words, which may not be technically accurate) takes the serial port away from the Mac OS and links it to Parallels for use by Windows applications running under Parallels. I'll not pretend that I know the intimate details of how this works, but keep reading to learn how to make it work.

After installing SerialClient, launch Parallels and access the configuration editor (under the File menu: Edit Configuration). Note that if you have your Windows Virtual Machine set to AutoStart, you'll need to shut the VM down in order to access the configuration editor.

Select Serial Port in the configuration page's Resource column. If it doesn't appear on the list, use the Add button at the bottom of the window to add a serial port. Proceed to set the parameters as follows:

Select "enabled" (checked), select "Connect at startup" (checked).

Select "Use socket"; Socket Name: /tmp/serial; Select "Server" in the popup.

You may now start your Virtual Machine.

Connect the USB/serial adapter to your Mac and to the relevant peripheral equipment. This physical connection may occur at any time prior to this point. The Mac OS drivers for the Keyspan must be in place so that the Mac OS and Mac applications (such as SerialClient) can sense and communicate with the adapter.

Back in the Mac OS, run the SerialClient program and set it to the following parameters:

stream path: /tmp/serial
Serial port: USA19xxxxx (select from the serial ports in the drop down menu)

Set other parameters as may be appropriate to the hardware with which you plan to interconnect. For example:

9600-8-N-1 (Hardware RTS/CTS) -- these characteristics are dictated by the outboard equipment with which you are interconnecting.

Finally, click Connect. The button should switch to "Disconnect" and hold.

I suggest that you Save your SerialClient configuration, or else you'll have to re-input it each time you use it. Since I am a frequent user of a particular SerialClient configuration, I have the file represented in my Dock (the file, not the application.)

In Windows, launch the application that will communicate with the equipment. Ensure that the application is addressing the appropriate serial port and that any other associated parameters are correct. Assuming that I've not missed anything nor made an error in the preceding, and that you have also not made an error, you should have the communications that you sought.

Final Note: Thanks to Steve, NI5V for this post, which helped me greatly.
  • Currently 2.00 / 5
  You rated: 2 / 5 (7 votes cast)

10.4: Share a serial port with Windows on Parallels | 5 comments | Create New Account
Click here to return to the '10.4: Share a serial port with Windows on Parallels' hint
The following comments are owned by whoever posted them. This site is not responsible for what they say.
10.4: Share a serial port with Windows on Parallels
Authored by: bucweat on Jan 12, '07 08:51:41AM

Actually, its not that hard to get the Mac to release the serial device hardware so you can use it, assuming it uses a kernel extension (kext). All you have to do is unload the kext. This doesn not delete it, it just doesn't use it any more. All you have to do (and this may not be easy in some cases) is find the kext file that represents the serial driver (I actually examined the installer package and found the .kext file that was installed by it).

For example, to turn off the serial driver:

sudo kextunload -v /System/Library/Extensions/FTDIUSBSerialDriver.kext
kextstat | grep SerialDriver

Once that is done, then you can select the serial device in the USB menu of Parallels and it should grab it just fine.

To turn the serial device driver back on (you should release the device from Parallels and pull it out):

sudo kextload -v /System/Library/Extensions/FTDIUSBSerialDriver.kext
kextstat | grep SerialDriver

Now reinsert the serial device and the Mac should grab it.

I'm not saying that you shouldn't use the info in the original hint...this is just another option. Again your milage will vary by which device you're using. I can't remember the specific one that I have right now and I don't have it with me. Hope that helps someone.

[ Reply to This | # ]
10.4: Share a serial port with Windows on Parallels
Authored by: halberstadt on Jan 12, '07 10:42:06AM

Not only does Serial Client provide a convenient way to pipe a physical serial port to Parallels, it also can do the same with a Bluetooth device (e.g. a Bluetooth GPS receiver). After setting up the Bluetooth port under Mac OSX, including the definition of a serial port, the rest of the setup is similar to what was described.

[ Reply to This | # ]
10.4: Share a serial port with Windows on Parallels
Authored by: gr8tfly on Jan 12, '07 11:49:32AM

I'm in same situation as author. For me, it's easier to just use SerialClient, since I have another application that uses the same port in OS-X (when I'm not using the Windows app...). (rather than the unload/load KEXT)

To make launching the correct configuration of SerialClient easier, I made a simple Automator action to launch open SerialClient with the proper configuration, then launch Parallels. Only thing I need to do it click "Connect" in SerialClient, after Parallels launches.

[ Reply to This | # ]
10.4: Share a serial port with Windows on Parallels
Authored by: copetti on Jan 19, '12 11:17:28AM

Good afternoon

I am looking for SerialClient utility to download, but I can't find.

Do you have the installer in you HD?

Could you sent it to me?

Thank you

[ Reply to This | # ]
10.4: Share a serial port with Windows on Parallels
Authored by: kentompkins3 on May 04, '08 01:28:30PM

I tried this suggestion with 10.5.2 and the latest build of Parallels and it didn't work. I'm trying to connect a Windows/serial program to an amateur radio. I've installed the Windows drivers for the USB --> Serial cable, etc. but still can't get it to work.

I think, as a result, EchoMac does not work now on the Mac side. It did work before I used SerialClient and doesn't now. Is it possible that SerialClient has set something that affects the EchoMac program? EchoMac is a ham radio program on the Mac that allows connections to a repeater.

I'm baffled why using Parallels with a USB --> Serial adapter creates so many problems and whether using SerialClient has done something to my Internet ports?

ken tompkins

[ Reply to This | # ]