In case your USB to Serial is not working, you can try the following steps find and solve the problem.
Alternatively, you can use the command line to list all USB devices connected to your mac:
agito:~ jeroen$ ioreg -p IOUSB
+-o Root
+-o Root Hub Simulation Simulation@14000000
+-o BRCM20702 Hub@14300000
| +-o Bluetooth USB Host Controller@14330000
+-o IOUSBHostDevice@14100000
| +-o HP LaserJet Professional P1102w@14120000
| +-o IOUSBHostDevice@14140000
| +-o Keyboard Hub@14110000
| +-o Apple Keyboard@14112000
| +-o Mad Catz R.A.T.3 Mouse@14111000
+-o IOUSBHostDevice@14500000
| +-o IOUSBHostDevice@14540000
+-o USB2.0-Serial@14200000``
This check is not dependent on any driver, and only verifies if OS X recognizes the device at USB level. If the device doesn’t show up, it is either a broken cable or broken chip.
Make sure you use a fully wired micro-USB cable!
Since the introduction of micro-USB, some USB cables are not fully wired. You might have a charge-only cable. In that case the device will never work. You can check it, when you connect the device via this cable it will never pop-up in the lists above.
To check which drivers are installed, run the following command in the terminal application:
sudo find /System/Library/Extensions/ /Library/Extensions/ -o -name osx-cp2102.kext -name osx-pl2303.kext -o -name osx-ch341.kext -o -name usbserial.kext -name usb.kext -o -name ProlificUsbSerial.kext -o -name ch34xsigned.kext
This commands detects installed drivers. It is necessary to have admin
rights, so the sudo command is necessary. Alternatively you can list the
directories /Library/Extensions
and /System/Library/Extensions
,
and search for the installed kexts.
/Library/Extensions/osx-ch341.kext
/Library/Extensions/osx-pl2303.kext
/Library/Extensions/osx-cp2102.kext
For OS X 10.8 and earlier
/System/Library/Extensions/osx-ch341.kext
/System/Library/Extensions/osx-pl2303.kext
When no conflicting drivers are installed, the output on OS X 10.9+ should look like:
In case you have found conflicting drivers, like the ProlificUsbSerial.kext (Prolific) or usb.kext (Winchiphead), you should remove them. Execute the following steps in the terminal:
cd /<_path_where_conflicting_driver_is_located_>/
sudo kextunload ./<name>.kext
sudo rm -rf <name>.kext
The kextunload command may fail if the driver is not loaded. It may be necessary to reboot the mac to be sure the kexts are not loaded into the kernel.
Next step is to check if the driver is loaded. Connect your USB to
serial cable to your mac and execute the following command in Terminal:
sudo kextstat | grep repleo
If you don’t see a driver, please make sure it is loaded by using the commands:
cd /library/extensions/
sudo kextload ./<name>.kext
Alternatively, rebooting your mac will also load the drivers. If you
don’t see the driver, it is possible you don’t own a supported device,
or the driver is not loaded properly. Try to load the driver with the
verbose command: sudo kextutil -v 6 ./<name of kext>.kext
in the directory
/library/extensions
, inspect the output of sudo dmesg
and
contact us via support@mac-usb-serial.com for further assistance.
Since OS X High Sierra, you need to explicitly allow the drivers in the Security & Privacy pane of System Preferences. You will get a dialog System Extension Blocked during installation, which alerts you to approve the driver.
In case the sudo kextutil -v 6 ./<name of kext>.kext
command shows the line:
Kext rejected due to system policy: <OSKext 0x7fc4b9d32d10 [0x7fffb095e5b0]>{ URL =
"file:///Library/StagedExtensions/Library/Extensions/osx-ch341.kext/", ID = "nl.repleo.osx-ch341" }
You still need to approve the driver. This approval UI is only present in the Security & Privacy preferences pane for 30 minutes after the alert. The gatekeeper pane in System Preferences looks like:
Our Team Identifier for the gatekeeper is: C3V2MXS8TG (BJA Electronics). When you have approved the driver, you might need to reboot your machine. Click with a normal mouse, without emulating software. Apple is strict on this.
Until you approved the KEXT, future load attempts will cause the approval button in the Security & Privacy pane to reappear but will not trigger another user alert. You can trigger it by these commands:
sudo spctl --add --label "Repleo"
sudo spctl --enable --label "Repleo"
You can verify the driver is allowed by:
sudo spctl --list |grep "Repleo"
2721[Repleo] P0 allow execute [/Library/Extensions/osx-ch341.kext]
In case this doesnot work, you can try to trigger the gatekeeper by loading the driver via kextutil, or rebooting your mac.
When the kext is loaded properly, it should instantiate the .cu and .tty handles. You can verify this using the terminal with the following to commands:
sudo dmesg | grep repleo
ls /dev | grep Repleo
The last test is to verify the driver is really able to send and/or receive data. Connect the RxD and TxD pin of the RS-233 connector, this will create a loopback. Any character transmitted from your Mac should also be echoed into the terminal. Use a simple tool like CoolTerm to verify if data is transmitted.
In case no data is received, it is important that is not a hardware failure. Please test the setup using Windows or Linux to ensure the hardware is operating correctly. If the hardware is not the problem, you can contact us for assistance.
Please include all the steps you did to determine the cause of the problem.