如何在 OS X 中新增對尚未支援的 WWAN 設備的支援?

如何在 OS X 中新增對尚未支援的 WWAN 設備的支援?

我的大目標是讓我的 OS X 機器支援我的華為 E1550 dongle,而無需安裝任何第 3 方驅動程式。

事實上,AppleWWANSupport*.kext 和整個 WWAN 基礎設施是 Apple 編寫的最草率的程式碼之一。瀏覽他們的Info.plist,人們可以很容易地看到他們的目標是支持幾乎所有主要的蜂窩調製解調器品牌(可能除了中興通訊),但是當你插入“支持”的華為適配器時,什麼也沒有發生-至少CDC 驅動程式告訴沒有找到有效的配置。

到目前為止,我修改了 CellPhoneHelper.kext/Contents/Info.plist 以將加密狗識別為實際的 WWAN 設備,並將其新增至 /Library/Modem Scripts/WWAN.ccl 中。結果是:

  • 當我插入加密狗時,WWAN 圖示出現在功能表列中
  • 設備文件出現,這樣我就可以實際與數據機通話
  • 系統分析器將數據機列為 WWAN 設備並準確查詢

什麼不起作用:

  • WWAN 圖示停留在「正在初始化...」位置
  • 因此,WWAN 介面不會出現且無法配置

……這就是這一切的重點。

華為 E1550 有四個端點:其中一個是「數據機」(0),另一個是「診斷」(1),還有一個稱為「PCUI」(2),還有一個用於語音資料(5)。我懷疑我錯誤分配了它們,OS X 使用了錯誤的,因此無法看到調製解調器是否工作,更不用說準備介面了。

顯然是“數據”(調製解調器?)的連接埠僅響應命令,而不提供對 USSD 請求等的回應。標示「Diag」的那個是沉默的,我實在說不出它是做什麼用的。 「PCUI」連接埠接受 AT 命令,對其進行回應並定期輸出訊號電平和其他狀態訊息,而無需輪詢它們。

OS X 知道四個端點,最終是 /dev/wwan(資料、調變解調器、很少有不同的連接埠)、/dev/wwanCNTL(控制)和 /dev/wwanCMD(指令)。

所以最大的問題是,如何正確匹配它們?

另一個大問題是,你可以說我很愚蠢,但是在 WWAN (GSM/UMTS) 設備中,控制連接埠和命令連接埠有什麼區別?

此外,非常歡迎有關華為 E1550 又名華為 Datacard (ven:dev = 0x12d1:0x1001) 的資料表和其他此類資訊的連結。

答案1

我嘗試過類似的方法。

我已經編輯了 /System/Library/Extensions/IOSerialFamily.kext/Contents/PlugIns/AppleWWANSupport.kext/Contents/Info.plist /System/Library/Extensions/CellPhoneHelper.kext/Contents/Info.plistents/Info.plistents/Info.plist

並且得到了類似的結果,但我忽略了 /Library/Modem Scripts/WWAN.ccl 部分。

我相信這三者必須正確“配對”,而且我認為您仍然需要它們提供的華為調製解調器腳本。

我很好奇你是如何收集這麼多有關端口等的信息的。有小費嗎?

我將我的(e176)與華為驅動程式一起使用,但透過常規調變解調器介面進行連接。 「行動連線」軟體很糟糕,需要永遠連接,但當我需要額外資訊時我會保留它(並用它來停用 pin 請求!)

我將再次嘗試編輯所有文件並創建適當的條目......但最終我想知道它是否會有任何優勢。只有連線速度更快(例如,少於 5 秒)並且可能從功能表列提供額外資訊時,這對我才有意義。

順便說一句,在 ubuntu 12.10 中,它似乎以這種方式工作。有一個驚人相似的選單項目和訊號強度計,更不用說它在不到 3 秒的時間內建立連接!

搜尋周圍我還發現 /System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns/AppleUSBMergeNub.kext/Contents/Info.plist 有一個「Huawei Mobile」條目,但產品 ID 和供應商 ID 不匹配礦。我已經改變了,但還沒有什麼好報告的。我必須嘗試編輯其他文件:-(

但我不明白,如果蘋果有調製解調器和手機的驅動程式和框架設置,為什麼在這種情況下華為不「插入」它。他們為其設備開發了一個完整的獨立基礎設施。難道他們不知道 AppleWWANSupport 嗎?還是蘋果把他們排除在外了?

相關內容