Como adiciono suporte para um dispositivo WWAN ainda sem suporte ao OS X?

1

O grande objetivo da minha empresa é fazer com que minha máquina OS X suporte meu dongle Huawei E1550 sem instalar nenhum driver de terceiros.

O fato é que o AppleWWANSupport * .kext e toda a infraestrutura de WWAN é um dos mais descuidados códigos já criados pela Apple. Percorrendo seu Info.plist, pode-se ver facilmente que eles suportam quase todas as principais marcas de modem celular (exceto ZTE), mas quando você conecta um dongle Huawei que é "suportado", nada acontece - pelo menos o driver do CDC informa que nenhuma configuração válida foi encontrada.

Até agora, modifiquei o CellPhoneHelper.kext / Contents / Info.plist para reconhecer o dongle como um dispositivo WWAN real e adicionei uma seção para ele em / Library / Modem Scripts / WWAN.ccl. Os resultados são:

  • O ícone WWAN aparece na barra de menus quando eu conecto o dongle em
  • Arquivos do dispositivo aparecem para que eu possa falar com o modem
  • O gerenciador de perfis do sistema lista o modem como um dispositivo WWAN e consulta com precisão

O que não funciona:

  • O ícone da WWAN fica parado em "Inicializando ..."
  • Consequentemente, a interface WWAN não aparece e não pode ser configurada

... o que é o ponto de tudo isso.

O Huawei E1550 possui quatro endpoints: um deles é "modem" (0), outro "diagnostics" (1), outro é chamado de "PCUI" (2) e há mais um para dados de voz (5 ). Eu suspeito que eu os atribuo erroneamente e o OS X usa os errados, sendo assim incapaz de ver que o modem funciona, muito menos preparar uma interface.

A porta que aparentemente é "Data" (modem?) responde apenas a comandos e não fornece respostas para, digamos, solicitações USSD. O que está marcado como "Diag" é silencioso, não sei dizer para que serve. A porta "PCUI" aceita os comandos AT, responde a eles e transmite o nível de sinal e outras mensagens de status em intervalos regulares, sem ser consultado por eles.

OS X sabe sobre quatro endpoints que acabam sendo / dev / wwan (dados, modem, muito raramente portas diferentes), / dev / wwanCNTL (controle) e / dev / wwanCMD (comando).

Então, a grande questão é: como combiná-los corretamente?

Outra grande pergunta é: me chame de estúpida, mas qual é a diferença entre uma porta de controle e uma porta de comando no contexto de dispositivos WWAN (GSM / UMTS)?

Além disso, links para folhas de dados e outras informações sobre a Huawei E1550, também conhecida como Huawei Datacard (ven: dev = 0x12d1: 0x1001) são imensamente bem-vindas.

    
por Yaroslav Fedevych 18.04.2012 / 16:07

1 resposta

0

Eu tentei uma abordagem semelhante.

Eu editei /System/Library/Extensions/IOSerialFamily.kext/Contents/PlugIns/AppleWWANSupport.kext/Contents/Info.plist /System/Library/Extensions/CellPhoneHelper.kext/Contents/Info.plist

e obteve resultados semelhantes, mas eu ignorei a seção / Library / Modem Scripts / WWAN.ccl.

Eu acredito que todos os três têm que ser "emparelhados" corretamente, mais eu acho que você ainda precisa do script de modem huawei que é fornecido por eles.

Estou curioso para saber como você reuniu tanta informação sobre as portas e tal. Alguma dica?

Eu uso o meu (e176) com os drivers huawei, mas conecto através da interface de modem regular. O software "Mobile Connect" é uma porcaria e demora uma eternidade para se conectar, mas eu o mantenho quando preciso de informações extras (e o uso para desativar a solicitação de pinagem)

Vou tentar novamente editando todos os arquivos e criando as entradas apropriadas ... mas no pt me pergunto se será de alguma vantagem. Só faria sentido para mim se ele se conectasse muito mais rápido (digamos, menos de 5 segundos), além de talvez oferecer informações adicionais a partir da barra de menus.

BTW, no Ubuntu 12.10, parece funcionar dessa maneira. Há um item de menu e um medidor de intensidade de sinal surpreendentemente semelhantes, sem mencionar que ele se conecta em menos de 3 segundos!

Pesquisando, descobri também que /System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns/AppleUSBMergeNub.kext/Contents/Info.plist tem uma entrada para um "Huawei Mobile", mas o ID do produto e o ID do fornecedor não correspondem ao meu. Eu mudei, mas nada para relatar ainda. Eu tenho que tentar editar os outros arquivos ainda: - (

Eu não entendo, porém, se a Apple tem drivers e uma configuração de framework para modems e telefones, por que, neste caso, a Huawei não "conecta" a ela. Eles desenvolveram uma infraestrutura separada completa para seus dispositivos. Eles não sabem sobre o AppleWWANSupport? ou a Apple os deixou fora disso?

    
por 24.01.2013 / 06:19

Tags