2015/04/12

ExpressCard/34-USB 3.0 on Mac OS X Yosemite

前言


我有一臺配置了 ExpressCard/34 插槽的 MacBook Pro,這種機型似乎在2012 年之後就消失了,因為 Apple 總是想引領風潮,一邊試新東西,一邊放棄他們認為的舊東西。這個事實讓我非常頭痛,因為想要升級電腦硬體就變得代價更高了。但不管怎麼說,我對升級電腦部分硬體的興趣比整臺換新要大許多,加上還未有這臺筆電處理不了的高級要求,所以目前還是樂在其中地使用著貨齡將達九年,依然老驥伏櫪的同時也堪稱老當益壯的『舊貨』。

由於我有許多電腦週邊設備,但又不想用原來的 USB 孔衍生出更多的 USB 孔,只想要物盡其用地用掉 ExpressCard/34 插槽,也不想加裝其他電源,因此冒險購買並使用 ExpressCard 轉 USB 3.0 的擴充卡來用。貨是登昌恆的 Upteck UTE222 USB 3.0 隱形擴充卡,在光華商場紐頓電子的店鋪購買到,個人感覺有點貴,但比起我設想過的其他方案似乎又好多了。旁邊的優仕蘋果專賣店小伙對 ExpressCard-USB 擴充卡似乎非常陌生;燦坤和順發,一個一邊說没賣,一邊用欣賞恐龍時代生物的眼光看著我,另一個說没現貨;至於其他光華新天地賣鋪也都没有這種東西。爬了網路後看到一些論壇上的網友在2010年就提到一堆內建 Windows 系統的筆電,大多没有 ExpressCard 擴充槽的存在了。想來,在2015年被看做是恐龍也是能理解的一件事。但是我心理上無法接受啊。

登昌恆只提供了給 Windows 系統的 drivers,而網路上其他廠牌大多也是 Windows-only 的 drivers。幸好有人製作了 GenericUSBXHCI.kext,號稱是大多數 ExpressCard/34-USB3.0 擴充卡的通用 driver,其中還有給 Mac OS X Yosemite 的版本。雖然使用轉接卡的網友們大多使用2009年到2011年的 MacBook Pro 電腦,但我懷著僥倖的心思想著,2007年的應該也適用吧。印象中,很多程式都能向下相容以前的硬體裝置。




電腦


下圖是關於我電腦的基本資料:

系統資訊總覽

首先試著插入 UTE222 卡,在安裝 GenericUSBXHCI.kext 之前,先不重啟系統,這時無論插上什麼 USB 裝置都没有作用。我也曾簡單地重開機,但 Mac OS X 依然不認識 UTE222。在 System Report 的 PCI 項目中,driver 部分顯示的是 No。一直到我依照國外網友的作法操作之後,才顯示了 Yes

參考下圖:


系統硬體描述

我不確定自己電腦上 ExpressCard/34 的 Bus Interface 是 PCI 還是 PCIe,但我猜想,以 Apple 一直想為天下先的性格,或許、應該、可能、大概是 PCIe 吧。
==
20150413 補充說明:
之前眼殘,没看到 System Report 下有關 ExpressCard 的說明。它顯示 Link Speed 是 1.5 GT/s,經查 Wiki 發現,這是 PCIe 1.x 版本的理論傳輸速度。所以它是 PCIe 介面無誤。
==


安裝 driver


GenericUSBXHCI.kext 的安裝和調校,主要參考以下三個網站:
  1. http://www.spaceman.ca/blog/?p=288
這是將 kext 檔下載後移動到適當位置。檔案在 http://genericusbxhci.sourceforge.net 可以得到。
  1. https://renetroost.wordpress.com/about/rebuild-cache-yosemite/
這和 1. 的資訊類似,不過我是重新開機後進入 Single User Mode,rebuilt cache 並更動 kext 的權限值。在最後一步,想要 loading kext 檔時,系統說不認識 load 指令,冏!想到在 1. 的做法中,最後也没有『load』的步驟,所以我也不再尋求安裝 load 指令的作法。
  1. http://superuser.com/questions/830327/how-to-get-expresscard-34-usb3-working-on-yosemite-apple-mac-os-x-10-10-via-1-o
這是參考討論串中二樓網友 ashp 的回覆,在重開機後進入 Recovery Mode 操作。但似乎有些小問題,例如 kextcache 的部分指令過期了。另外有些檔案或目錄不存在,我也不清楚是否要另外建立空目錄,於是在胡亂操作後,就重開機進入一般使用狀態。

在以上不曉得哪個步驟生效的情況下,我發現 System Report 中 driver 顯示已安裝。但個人猜測其實只要按照參考網頁 2 的作法,rebuilt kext cache,再變更 GenericUSBXHCI.kext 的權限就好了。

結果


試用的結果是:
  1. 插入 USB flash disk,可以正常讀取內容。
  2. ASUS 外接光碟機可以正常運作。
  3. 華為 USB 無線網卡 (HuaWei E177) 可以正常使用。
  4. Apple 有線鍵盤(加數字)不能使用,即便加上 USB 輔助電源線也没用;私以為是 Apple 產品本身的問題。
    20150430補注:今天重開機後,不曉得是怎麼一回事,有可能是重新插拔了幾個 USB 裝置,Apple 有線鍵盤連上 ExpressCard-USB 擴充卡竟然能用了!
  5. 外接硬碟要加裝 USB 輔助電源線才會運作。這個外接硬碟,我用 Firewire 400 或 800 都不需要另外接電源。老實說,我原以為 ExpressCard/34-USB 3.0 擴充卡也不用外接電源的。這真是個不小的遺憾啊。
  6. 接了 Wacom 的 BAMBOO CTH-470/S0-C,一切正常,也不需要輔助電源的幫忙。
國外網友果然給力,讓 UTE222 在我的電腦上用得很歡快。至於經由 UTE222 的裝置,其讀寫速度如何,我没測試。另外,UTE222 上的 chipset 是否是國外論壇提到的某些特殊產品,我也没深究。但以目前簡單幾個指令就能使用的狀況來看,應該不是特別難搞的那些。

沒有留言:

張貼留言

逢廣告文必砍!