Cdc Serial Usb Drivers For Mac

USB CDC Driver for Windows The Zebra CDC driver conforms to the Microsoft Windows Driver Model (WDM) and is certified by Windows Hardware Quality Labs (WHQL) for installation on 32 and 64bit Windows 7 and Windows 8.1 PCs when a Zebra Scanner must be used in USB CDC host mode. There’s a new terminal app called Serial available on the Mac App Store that works with the Plugable USB-serial adapter without requiring any drivers. I wrote it to make serial ports easier to work with on the Mac.

Active3 years, 3 months ago

We have an embedded device that connects to the PC via USB, and it has multiple virtual serial ports (CDC-ACM).

We have this working on Windows. On the embedded device, we have multiple CDC-ACM interfaces. The USB descriptors declare it as a composite device (class=0xEF, sub-class=2, protocol=1), and it has an 'Interface Association Descriptor' for each virtual serial port. On Windows, we use an INF file that installs usbser.sys for each CDC-ACM control interface (MI_00, MI_02, etc).

However, as we've found, this method doesn't seem to work for Mac. I've found that I can get it to work for the Mac and Linux, by changing it to a 'Communications' class (class=2, sub-class=0, protocol=0), and removing the IADs. (For Linux, testing with Ubuntu, I found that this worked with the Ubuntu Linux kernel 2.6.35-28 or newer. With earlier kernels, only the first serial port worked.) But then, this method doesn't work for Windows.

What method can be used to make a USB device with multiple virtual serial ports, that works on Windows, Mac, and Linux? I think I'd prefer a solution that uses the CDC-ACM standard as much as possible, and avoids the write-your-own-drivers option as much as possible.

Craig McQueen
ForCraig McQueenCraig McQueen
28.4k25 gold badges102 silver badges158 bronze badges
Samsung usb drivers for mac

3 Answers

The one way I can think of off top of my head would be the device presents itself as an USB hub with multiple separate single-serial-port devices attached to it. This isn't pretty but very bulletproof.

Usb Drivers For Mac Os X

7,6068 gold badges58 silver badges93 bronze badges

As Apple's drivers don't support composite CDC devices, I'd suggest either making your device reconfigure somehow and making your alternate descriptors plain CDC, or sticking with the composite and using a third party driver (my company makes CDC ACM drivers for OS X which will probably support your device).

It may also be possible to force the issue with a codeless kext.

29.5k5 gold badges60 silver badges91 bronze badges

One solution that I've found, which I think could work (subject to further testing on Windows):

Make the device enumerate in the way that works for the Mac:

  • Make it 'Communications' class (class=2, sub-class=0, protocol=0), not composite device.
  • Remove the IADs.

The device should 'just work' on Mac and recent Linux, in this configuration. (For Linux, testing with Ubuntu, I found that this worked with the Ubuntu Linux kernel 2.6.35-28 or newer. With earlier kernels, only the first serial port worked.)

Then, for Windows, modify the INF file for the device, to explicitly load the composite device driver usbccgp.sys. I'm a novice with Windows INF files, but here are the relevant snippets from what I could figure out so far:

Presonus Audiobox Usb Drivers For Mac


With the INF file explicitly loading the usbccgp.sys driver, both USB serial ports worked for me on Windows XP SP3 32-bit.

I have done only limited testing so far, so I'd be interested to hear how well this works, or not, for others.

Mac Usb Serial Driver

Craig McQueenCraig McQueen
28.4k25 gold badges102 silver badges158 bronze badges

Not the answer you're looking for? Browse other questions tagged embeddedusbserial-port or ask your own question.

The easiest way to go about installing our Plugable USB to Serial adapter is by starting with the device.

  • If you want to verify that the adapter and the driver were installed properly click here

Connect the device to the Mac. Once connected click on the Apple icon and on ‘About This Mac’
Click on ‘More Info…’
Click on ‘USB’ on the left and on the ‘USB-Serial Controller D’
If all is well you should be seeing something like this:
Time to get the driver! Fire up Safari and browse to and scroll down to Mac.
Click on the ‘PL2303 MacOSX10.6 dmg’, the Safari Downloads window should come up:
Double click on the md_PL23-3_MacOSX10
Now double click on the PL2303_1.4.0.dmg to mount the image
Now double click on the PL2303_1.4.0 to start the installation
Once the installer comes up click ‘Continue’ to proceed.
Then ‘Select a Destination’ click on your desired drive and click ‘Continue’ to move forward
Now just click ‘Install’ to continue.
You may be asked of your username and password – enter them and click ‘OK’
You’ll get a warning about restarting the computer after the installation is complete. This is normal, click ‘Continue Installation‘.
Installing should start (takes a couple of minutes to complete)
When it’s done you should see this:
Click on ‘Restart’ to reboot the Mac.

After you restart, check that everything has installed OK.
On the Mac there are two methods to determine this:

Method 1:
Click on ‘Applications’
Click on ‘Utilities’
Click on ‘Terminal’
kextstat grep prolific
ioreg -c IOSerialBSDClient grep usb
Your results should be very close to this:
Method 2:
Click on ‘System Preferences’
Click on ‘Network’
Now click on the ‘+’ sign on the bottom left, and then on the ‘Select the interface and enter a name for the new Service’ click on ‘Interface’ – you should be seeing the ‘USB-Serial Controller D’ there.

This will create a “Network” interface for a modem or serial port. Because it’s a serial port, it’ll say “Not Configured” and that’s normal:

From the “Advanced” button you can change default settings (usually not needed). And this won’t change the “Not Configured” message – that’s still ok.

Now finally, you need an application which will talk to the serial port. On Mac, the file which maps to the port is /dev/cu.usbserial. If you have a null modem cable and a terminal program on the other side, the Mac actually has a built-in terminal program called “screen” that you can use to test the connection.

Once that is up and connected (and if the serial ports are set to the same baud rate and paramters), you can type on either side and see the characters come across.

Usb Driver For Mac


USB Serial on the Mac is a real melding of the very new and very old. If you have any trouble, just visit to see existing FAQs for Plugable’s USB Serial adapter.

Where to Buy

[amtap amazon:asin=B00425S1H8]
Comments are closed.