Project

General

Profile

RTSystemsCablesAndMavericks » History » Version 9

Jens Jensen, 08/08/2014 05:57 PM

1 1 Jens Jensen
h1. RTSystemsCablesAndMavericks
2
3
RTSystems usb cables are a branded (i.e., customized) FTDI cable. They simply have different USB Vendor (VID) and Product IDs (PID) from generic FTDI USB adapters.
4
5
Apple OSX 10.9.x aka Mavericks now has a built in FTDI Driver, com.apple.driver.AppleUSBFTDI.
6
However, it does not load by default because it does not recognized the custom VID/PID combos that RTSystems cables use.
7
8 2 Jens Jensen
Many folks have been simply loading the FTDI OEM driver, com.FTDI.driver.FTDIUSBSerialDriver (2.2.18), and this works, but I have been able to reproduce a nasty hang when uploading from chirp to some Yaesu radios, e.g., VX-6.
9
10
The workaround is to disable the OEM driver, and modify and load the Apple FTDI driver.
11
12
Warning you take all responsibility for mucking with your system files. Know what you are doing and how to undo it before you proceed. We do not take any responsibility for issues arising from this.
13
14
Also, if you do not have any issues with your RTSystems FTDI cables, Chirp, Mavericks, and the FTDI OEM driver, then don't bother with this procedure. 
15
16
This is a workaround only for people who have been having these issues.
17 1 Jens Jensen
18
19
h2. Steps
20
21 4 Jens Jensen
* stop using and unplug all FTDI usb adapters
22 1 Jens Jensen
23 4 Jens Jensen
* unload existing FTDI OEM driver (if applicable):
24 5 Jens Jensen
 @
25 1 Jens Jensen
sudo kextunload -b com.FTDI.driver.FTDIUSBSerialDriver
26 5 Jens Jensen
 @
27 1 Jens Jensen
28 4 Jens Jensen
* Disable FTDI OEM driver (if applicable):
29 1 Jens Jensen
@
30
sudo mv -v /System/Library/Extensions/FTDIUSBSerialDriver.kext/ /System/Library/Extensions/FTDIUSBSerialDriver.kext_disabled
31
@
32
33 4 Jens Jensen
* check to see that there are no FTDI drivers loaded:
34 1 Jens Jensen
@
35
kextstat |grep -i ftdi
36
@
37
(should not show anything)
38
39 4 Jens Jensen
* Add RTSystems VID/PIDs to Apple FTDI driver:
40 1 Jens Jensen
@
41
sudo nano /System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns/AppleUSBFTDI.kext/Contents/Info.plist
42
@
43 7 Jens Jensen
  
44 8 Jens Jensen
  
45 6 Jens Jensen
  add following to *IOKitPersonalities* section:
46 1 Jens Jensen
@          <key>AppleUSBFTDI-RTSystems</key>
47
               <dict>
48
                       <key>CFBundleIdentifier</key>
49
                       <string>com.apple.driver.AppleUSBFTDI</string>
50
                       <key>IOClass</key>
51
                       <string>AppleUSBFTDI</string>
52
                       <key>IOProviderClass</key>
53
                       <string>IOUSBInterface</string>
54
                       <key>InputBuffers</key>
55
                       <integer>8</integer>
56
                       <key>OutputBuffers</key>
57
                       <integer>16</integer>
58
                       <key>bConfigurationValue</key>
59
                       <integer>1</integer>
60
                       <key>bInterfaceNumber</key>
61
                       <integer>0</integer>
62
                       <key>idProduct</key>
63
                       <integer>0x9000</integer>
64
                       <key>idProductMask</key>
65
                       <integer>0x9000</integer>
66
                       <key>idVendor</key>
67
                       <integer>0x2100</integer>
68
               </dict>
69
@
70
               
71
72
73 4 Jens Jensen
* plug in your rtsystems ftdi usb adapter
74 1 Jens Jensen
75 4 Jens Jensen
* Force load of Apple FTDI driver:
76 1 Jens Jensen
@
77
sudo kextload -b com.apple.driver.AppleUSBFTDI
78
@
79
80 4 Jens Jensen
* verify Apple FTDI driver is loaded:
81 1 Jens Jensen
@
82
hackpro:~ jens$ kextstat |grep -i ftdi
83
  129    0 0xffffff7f826d0000 0x7000     0x7000     com.apple.driver.AppleUSBFTDI (1.0.1b3) <77 36 5 4 3>
84
hackpro:~ jens$ 
85
@
86
87 4 Jens Jensen
* Verify Apple FTDI device node is created:
88 1 Jens Jensen
@
89
ls -l /dev/cu.usbserial-*
90
@
91
92 9 Jens Jensen
  *good result*: should list a device file
93
  *bad result*: "no such file or directory"
94 1 Jens Jensen
95 3 Jens Jensen
*you should now be able to use your adapter*
96 1 Jens Jensen
97
h3. Note
98
99
*You may need to repeat these steps if Apple updates FTDI driver (such as in a Combo Update aka Minor update release)*