2011/08/12
Mac で Planex URS-03 (USB-Serial 変換アダプタ) を利用する
Planex URS-03 もメイカーは Mac 用のドライバを提供していないが、
利用しているチップセットのメイカー (Prolific Technology Inc. 社) の
Web サイト
から Mac 用のドライバをダウンロードしてインストールした上で、
ドライバの Info.plist ファイルに URS-03 の
Vendor ID と Product ID を登録する事で正しく利用できる様になる。
URS-03 の場合は /dev/tty.usbserial という
デバイスとして認識されるので、
このデバイスを利用して通信する事ができる様になる。
URS-03 の Vendor ID と Product ID はアダプタを接続した状態で、
以下のコマンドを実行して
# /usr/sbin/ioreg -l | lessX code がインストールされている場合は /Developer/Applications/Utilities/USB Prober.app を実行して
URS-03 の Vendor ID は 1367(10)、 Product ID は 8200(10) なので、 Info.plist の内容を以下の様に修正する。
1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 3<plist version="1.0"> 4 <dict> 5 <key>CFBundleDevelopmentRegion</key> 6 <string>English</string> 7 <key>CFBundleExecutable</key> 8 <string>ProlificUsbSerial</string> 9 <key>CFBundleGetInfoString</key> 10 <string>ProlificUsbSerial v2.2.0, Copyright 2006 Prolific Technology Inc.</string> 11 <key>CFBundleIdentifier</key> 12 <string>com.prolific.driver.PL2303</string> 13 <key>CFBundleInfoDictionaryVersion</key> 14 <string>6.0</string> 15 <key>CFBundleName</key> 16 <string>Mac OS X Driver for Prolific USB-to-Serial Bridge Device</string> 17 <key>CFBundlePackageType</key> 18 <string>KEXT</string> 19 <key>CFBundleShortVersionString</key> 20 <string>2.2.0</string> 21 <key>CFBundleSignature</key> 22 <string>????</string> 23 <key>CFBundleVersion</key> 24 <string>2.0.0</string> 25 <key>IOKitPersonalities</key> 26 <dict> 27 <key>067B_2303</key> 28 <dict> 29 <key>CFBundleIdentifier</key> 30 <string>com.prolific.driver.PL2303</string> 31 <key>IOClass</key> 32 <string>com_prolific_driver_PL2303</string> 33 <key>IOProviderClass</key> 34 <string>IOUSBInterface</string> 35 <key>bConfigurationValue</key> 36 <integer>1</integer> 37 <key>bInterfaceNumber</key> 38 <integer>0</integer> 39 <key>idProduct</key> 40 <integer>8200</integer> <!-- 変更 --> 41 <key>idVendor</key> 42 <integer>1367</integer> <!-- 変更 --> 43 </dict> 44 </dict> 45 <key>OSBundleLibraries</key> 46 <dict> 47 <key>com.apple.iokit.IOSerialFamily</key> 48 <string>1.0.4</string> 49 <key>com.apple.iokit.IOUSBFamily</key> 50 <string>1.8</string> 51 <key>com.apple.kpi.iokit</key> 52 <string>10.0.0</string> 53 <key>com.apple.kpi.libkern</key> 54 <string>10.0.0</string> 55 <key>com.apple.kpi.mach</key> 56 <string>10.0.0</string> 57 </dict> 58 </dict> 59</plist>これで kextload (8) を実行してドライバをロードすると URS-03 が無事に利用可能となる。
ただし、本来サポート対象のものを無理矢理利用しようとしているので、 URS-03 を接続した際にカーネルモジュールを自動でロードできない。 そこで 起動時に任意のコマンドを実行する 機能で起動時にカーネルモジュールをロードする設定を追加すると URS-03 を接続するだけで利用可能になる。