Wineskin Support Forum Help

Forums » Wineskin Support Forum » USB to Serial Port define a COM port

USB to Serial Port define a COM port

I am trying to run a Windows Application that searches for a COM port before starting. If it doesn't find a COM port it shuts down immediately. When I run it using Wineskin this happens. Fine. I have a USB/Serial Adaptor hooking my Mac to the device that this software controls. I want to tell Wineskin to link the USB/Serial device to what the program will recognize as COM1. In Wine they say to use winecfg and link it this way: http://www.winehq.org/docs/wineusr-guide/misc-things-to-configure(external link) . Is something like this possible on a Mac and in in Wineskin?


the dosdevices folder is in the wrapper at Contents/Resources

You can use winecfg or manually enter them like your link says using Terminal...

cd {drag and drop the dosdevices folder from Finder here, then press enter}
ln -s /dev/ttyS0 com1

but that would be for an actual serial port, not one working through USB.

Pretty much any normal Wine info you find should work fine in Wineskin.

I'm not really sure if its possible to link up a com port through a USB converter that it can see on Mac OS X.


First off, let me just say that this Wineskin project is amazing. I am a Windows developer that knows nothing of Mac, and after just minutes of using Wineskin i was up and running.  Truely amazing work.


Back to the issue at hand...

I write software that works with USB hardware.  They technically aren't "usb" so much as they are emulated serial ports over usb using FTDI.

So, I found this post and actually got it working with a USB device connected to the Mac.

Just linking the hardware to the dosdevices worked like a charm.

If you are using an FTDI device, make sure to download/install the FTDI VCP drivers for Mac... This will install the serial ports in your /dev/ directory.

I just ran ls -l /dev/ and found the device.  Since the device is a Virtual COM port, there were two entries:



I tried the TTY device first with nothing but freezing, then tried the CU device and it worked.

To link, i just ran from within the dosdevices directory: ln -s /dev/cu.usbserial-A7007dV5 com1

- I am only posting this to let people know what I did to get it to work -

Now, since I am not familiar with Mac, and you folks are, I have a problem.

I have to send *a lot* of data to these USB periphials, I can only send a few KB before it stops accepting data — then the machine just sits there waiting for more data to be sent, while my program is waiting for WriteFile() to finish.

It looks like some buffer is getting full somewhere and just not allowing data to be written to it anymore.

Does anyone here know that if this is a limitation from WINE?  Or if I am not doing something in the software side of things, or hardware side of things?

Any hints or ideas I might try would be super helpful.

Thanks, everyone!


hmmm... thats a bit over my head, I've never really messed with ports, USB or otherwise with Wine and XQuartz, so all the code in WineskinX11 and Wineskin Engines are stock.  Have you tried several Wine versions, older and newer?

Not sure if it is related to your problem:

http://bugs.winehq.org/show_bug.cgi?id=8783(external link)

Thanks for the suggestions...

I have figured it out!

The issue was that i was sending data way too fast.

I was sending thousands of 15 byte commands every millisecond. I guess it couldn't keep up.

So now i just either pause between each send, or build up a buffer of commands and send them all down the pipe at once.

Works wonderfully.

I hope this post helps other people who are having the same issues as I

Being able to use "Windows Only" hardware on a Mac is wonderful.  And it woudn't have been possible without the Wineskin project (there was no way i was going to have my users go through the trouble of installing wine and all the stuff that comes along with it)



Post new message

Attach file Maximum size: 10.00 Mb
Post new reply

Show posts: