Adding COM Ports manually in Wine

If COM33 (the default for USB/Serial cables and radios with internal USB/Serial) doesn’t work for you, we will need a COM1 port for rig control or TNC access.

First we need to find out what our USB/Serial controller cable is named. Install the driver for your cable. Plug the cable in and bring up a terminal (Terminal app can be found in Applications/Utilities).

ls /dev

This command lists the contents of the “dev” directory. Scroll up and look for the name of the USB cable. Some common names are:

tty.SLAB_USBtoUART

tty.usbeserial

tty.ftdi_usbserial

cu.usbserial

It WILL start with either tty or cu …so if you can’t find them in the long list, try the command:

ls /dev/cu*  or   ls /dev/tty*

Highlight the name and copy it (we will paste it in the next step)

Next check which version of Crossover for Mac you have. Only follow the directions below (A or B) that pertain to your version!

A] For Crossover 17 and newer: Latest versions of Crossover (Wine) use a different COM Port scheme. The old method won’t work and our COM Port will get erased on every restart – so this is the new method.

Go into the Crossover window, select your bottle on the left and pull down the “Bottle” drop-down menu from the top of the screen. Select “Run Command…”

In the window that pops up, type regedit and hit the RETURN key. A Windows Registry Editor screen will open. Clicking the + icons, open up HKEY_LOCAL_MACHINE and SOFTWARE and WINE folders. Highlight the “Wine” folder and pull down that window’s “Edit” menu. Select NEW>KEY

This should create a new folder in the directory structure under “Wine”. Rename it “Ports” without the quotation marks. Now Highlight “Ports” and pull down EDIT>NEW>STRING VALUE. This one will have the name of COM1 and the value of the path we found to your USB Cable.

So Name will say COM1 and Value Data will be /dev/[pasted name]

Just to be clear, paste in the name of the device we copied above and don’t leave the brackets – replace the whole bold part above. Click OK and go back to the pulldown menu and select REGISTRY>EXIT.

B] For Crossover 16 and earlier: This command will make a symlink (aka, an alias or shortcut) for COM1 in the dosdevices folder, which points to the USB device – usually ttyUSB0 on linux, for Mac see below:

Copy the name and paste below and use your user login name and bottle name in the bolded text (replacing the brackets):

ln -s /dev/[pasted name] /Users/[user name]/Library/Application\ Support/CrossOver/Bottles/[bottle name]/dosdevices/com1

Just to be clear, the entire bold part of the line above including the brackets will become the name you copied, and there will be a space between the last letter of the name you paste and “/Users/[user name]/Library/Application\ Support/CrossOver/Bottles/[bottle name]/dosdevices/com1” Once you hit the ENTER or RETURN key, that should link the device to the new virtual COM port.

Now add the COM port to the windows registry (this will make it appear in pull-down menus in RMS Express and other Windows programs running in that bottle).

sudo nano /Users/[user name]/Library/Application\ Support/CrossOver/Bottles/[bottle name]/system.reg

After “#arch-win32”, add the following lines (using the arrows keys to place the cursor where you want to copy/paste this) , save and exit.

[Hardware\Devicemap\Serialcomm] 1131331688

“COM1″=”COM1”

NOTE: If you need more than one COM port for different control cables, just repeat the process with COM2, COM3, etc.

To save these changes, hit the CONTROL and X keys, then tap Y and then tap ENTER.