2011-02-08

Elecom社製USB-シリアル変換ケーブル(UC-SGT)をMac OS X 10.6で使う

Emacs関連のポストが続いたり、Mac Book Proを買って浮かれポンチなポストをしたりしていますが、本業はインフラよりのネットワークエンジニアだったりします。で、本業で使うかどうかは別として、シリアルケーブルはネットワークエンジニアの嗜みとして使えるようにしておくべきでしょう、というポストです。

まず、僕が所有しているUSB-シリアル変換ケーブルはElecom社のUC-SGTという製品です。こいつは自分がM1の時に買ったので、かれこれ8年くらいの付き合いです。

Elecom社のサイトではWindows向けのドライバは提供されていますが、Mac向けのドライバは提供されていません。ただし、UC-SGTはProlific社のPL2303というチップを積んでいて、Prolific社のサイトではMac向けのドライバが提供されています。

というわけで、Prolific社製のドライバをUC-SGTでも使えるように導入してみます。

まず、何はなくとも本家からドライバをダウンロードして、インストールします。インストール直後にUC-SGTを挿してもMac君は認識してくれません。Mac君に認識してもらうためには /System/Library/Extensions/ProlificUsbSerial.kext/Contents/Info.plist というファイルを編集する必要があります。編集する内容は下記のとおりです。

--- /System/Library/Extensions/ProlificUsbSerial.kext/Contents/Info.plist.orig 2010-03-25 16:47:26.000000000 +0900
+++ /System/Library/Extensions/ProlificUsbSerial.kext/Contents/Info.plist 2010-12-25 23:22:35.000000000 +0900
@@ -24,7 +24,7 @@
2.0.0
IOKitPersonalities

- 067B_2303
+ 056E_5003

CFBundleIdentifier
com.prolific.driver.PL2303
@@ -37,9 +37,9 @@
bInterfaceNumber
0
idProduct
- 8963
+ 20483
idVendor
- 1659
+ 1390


OSBundleLibraries
ようするに、ベンダーIDとプロダクトIDをUC-SGTにあわせる感じです。

あとは、念のため ProlificUsbSerial.kext を再読込みさせておきます。

% sudo kextunload /System/Library/Extensions/ProlificUsbSerial.kext
% sudo kextload /System/Library/Extensions/ProlificUsbSerial.kext


これで、UC-SGTを挿すと /dev/tty.usbserial として使えるようになります。あとはそのあたりに転がっているシリアルコンソールを持つ箱に挿して遊んでください。

ちなみに、ドライバをアンインストールするには以下のようにすると良いハズです。

% kextunload /System/Library/Extension/ProlificUSBSrial.kext
% sudo rm -fr /System/Library/Extension/ProlificUSBSrial.kext
% sudo rm -fr /private/var/db/receipts/com.prolific.driver.PL2303.bom
% sudo rm -fr /private/var/db/receipts/com.prolific.driver.PL2303.plist

mac os xだったらbrowse-url-browser-functionはopenでしょう

ということで、以下の設定を適当なところに追加して幸せになりました。

(setq browse-url-browser-function 'browse-url-generic)
(setq browse-url-generic-program
(if (file-exists-p "/usr/bin/open")
"/usr/bin/open"))