2009-03-10

Silicon Labs CP2101 based USB to UART adapter on Mac OS X

I bought some embedded controllers and a USB to TTL-level UART serial converter from Omnima web store. After some googling with the the USB vendor and product id I figured out that the converter was based on Silicon Labs CP2101 chip. I installed Mac OS X drivers from https://www.silabs.com/products/interface/usbtouart/Pages/default.aspx but no luck. The device wouldn't be recognised.

System profiler tells me the product id is 0x10c5 and vendor id 0x10ab (product 4293, vendor 4267 in decimal) but there was no entry for that combination in driver's plist - /System/Library/Extensions/SiLabsUSBDriver.kext/Contents/Info.plist.

The trick was to copypaste and modify one of the sections used to register the driver for product+vendor combinations. Just use the decimal form of product and vendor codes. Rebuild of driver cache had to be triggered by touching /System/Library/Extensions.

http://ciz.fi/~jkj/silab-mac-usb-driver.patch

After patching info.plist and rebuilding driver cache, plugging the device generated a device node in /dev/cu.SLAB_USBtoUART

No comments: