Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Suporte para Desktop com Multi-Modem e Multi-Executor
Tradicionalmente, dispositivos Windows que não são telefones não foram configurados para modems multi-SIM, porque têm menos restrições de espaço físico do que telefones. Isso permite que eles utilizem plenamente rádios ativos simultâneos ao mesmo tempo, em vez de ter um modem com vários cartões SIM, como um telefone; no entanto, devido ao aumento do eSIM e dos cenários empresariais, a demanda por suporte a múltiplos SIM por modem em dispositivos que não são de telefone aumentou.
A maioria dos dispositivos de telefone com vários SIM típicos tem slots SIM duplos, mas são limitados a um cartão SIM primário que dá suporte a dados, enquanto o outro só dá suporte a recursos de voz. Essa limitação não existe no modelo de computador que não seja de telefone, pois todos os cartões SIM são usados para conexão de dados.
Embora a estrutura definida nessa especificação possa teoricamente dar suporte a um número não associado de modems e cartões SIM, o Windows 10, versão 1703 e posterior dá suporte apenas ao cenário DSSA (dual-SIM/single-active) de ponta a ponta.
Especificação da interface do modem do NDIS
Lacunas e funcionalidades existentes da interface
É possível dar suporte à funcionalidade dual-SIM/dual-active com vários modems independentes, em que cada modem é um dispositivo separado e opera de forma completamente independente. No entanto, isso está fora do escopo dessa documentação, que se concentra em um modem de miniporto WWAN capaz de apresentar várias pilhas de celular simultâneas ao host. Esta seção define os vários objetos e estabelece a terminologia usada em toda a documentação do MB relacionada à funcionalidade de vários SIM.
Avanços no hardware resultaram em dispositivos que podem manter registros simultâneos com várias redes celulares. Nesses dispositivos, supõe-se que haja "várias instâncias da pilha celular" em execução em paralelo, que são capazes de manter o registro, monitorar as intensidades do sinal, realizar transferências e ouvir páginas de entrada. Cada instância dessa "pilha de celular" será conhecida como executora para o restante deste documento. Por exemplo, em um dispositivo capaz de manter registros com duas redes simultaneamente, o hardware do modem é considerado com dois executores.
O executor é uma representação lógica do hardware e pode, de fato, ser um único transceptor de hardware que está sendo multiplexado. As especificações exatas de hardware são consideradas como detalhes de implementação do fornecedor e estão fora do escopo dessa especificação. Para um driver de miniporto NDIS, os executores são expostos como várias instâncias de um adaptador de miniporto WWAN. Para um modem MBIM, os executores são representados por várias funções MBIM em um dispositivo composto enumerado.
As duas imagens a seguir ilustram a exibição lógica de um modem SIM duplo. Cada um mostra uma possível combinação de executor e UICC.
A pilha de celular dentro de um executor é considerada basicamente autocontida, exceto no caso de uma implementação de modem de Espera Dupla em que o executor que conduz o tráfego (voz e/ou dados) pode impedir que o outro mantenha o registro.
O diagrama a seguir ilustra a exibição lógica de um modem de espera duplo. O tráfego causado por uma chamada telefônica no Executor 0 faz com que o Executor 1 perca a registração.
O modelo de interface de modem da Área de Trabalho do Windows no NDIS 6.7 não acomoda essa arquitetura porque se baseia em várias suposições implícitas:
- O modelo pressupõe que haja um único executor dentro do modem.
- O modelo pressupõe que haja um único cartão UICC diretamente associado ao hardware do modem.
- A UICC é tratada como se fosse um cartão SIM de aplicativo único.
Por outro lado, a interface RIL (Microsoft Radio Interface Layer) no Windows Mobile expõe explicitamente a multiplicidade dessas suposições. A interface de Banda Larga Móvel no Windows Mobile expõe a capacidade de se registrar independentemente por meio de miniportos separados e pressupõe que alguma configuração básica do dispositivo já tenha sido realizada por meio da interface RIL. Para fornecer funcionalidade equivalente, o Windows Desktop deve fornecer mecanismos para descobrir o número de executores e slots, acessar executores de forma independente, definir o mapeamento entre executores e slots e definir os aplicativos dentro do cartão UICC mapeado que cada executor usará.
Para obter mais informações sobre a arquitetura de celular e as diferenças entre o Windows 10 Mobile e a Área de Trabalho, consulte a arquitetura e a implementação do celular.
Principais objetos e operações
A figura a seguir mostra um modelo abstrato de um modem.
Cada modem é identificado por um GUID (identificador global exclusivo) e contém um conjunto de um ou mais executores, cada um deles capaz de registrar independentemente em uma rede celular. Cada executor tem um índice de executor associado, um inteiro, começando com 0 para o primeiro executor. Além disso, o modem expõe um ou mais slots que podem conter cartões UICC. Supõe-se que o número de slots seja maior ou igual ao número de executores. Cada slot tem um índice associado, também começando com 0, e um estado atual relacionado ao estado de energia do slot e ao estado de disponibilidade de um cartão no slot (se houver).
Para manter a compatibilidade com modems existentes, cada executor opera com informações fornecidas por um cartão UICC em um único slot. A associação entre executores e slots é definida pelo mapeamento de slots, que mapeia cada executor para exatamente um slot.
Um slot pode conter um cartão UICC; cada cartão contém um ou mais aplicativos UICC, como USIM, CSIM, ISIM ou possivelmente outros aplicativos de telefonia e não telefonia, como aplicativos PKCS#15 ou Global Platform para um elemento seguro de NFC. O endereçamento e o uso desses aplicativos UICC individuais é um tópico para especificação futura e fora do escopo desta documentação.
A interface NDIS da Área de Trabalho do Windows para o modem é caracterizada pela troca de OIDs e notificações NDIS. Na maioria dos casos, esses OIDs são direcionados para executores individuais; no entanto, alguns comandos e notificações têm como escopo o modem.
Para sistemas operacionais não Windows Mobile, um modem de vários executores aparece como um dispositivo com várias instâncias de miniporto WWAN físicas. Cada instância de miniporto físico representa um executor que pode manter o registro como uma instância do NDIS. Instâncias virtuais adicionais podem ser criadas durante o tempo de execução para gerenciar dados de pacotes específicos do contexto e sessões de serviço de dispositivo. Comandos e notificações específicos do executor são trocados por meio da instância física do miniporto WWAN NDIS que representa esse executor. Comandos específicos do modem (em outras palavras, aqueles que não são específicos do executor) e suas notificações correspondentes podem ser enviadas ou provenientes de qualquer instância de miniporto físico.
Os dois diagramas a seguir mostram a diferença em comandos e notificações específicos do executor (o primeiro diagrama), em que os comandos e as notificações passam e vêm do mesmo executor e comandos e notificações específicos do modem (o segundo diagrama), em que os comandos podem passar por qualquer executor e vir de qualquer executor.
Todas as solicitações de consulta ou conjunto de OID emitidas para uma instância de miniporto são executadas no modem e no executor com o qual a instância de miniporto está associada. Da mesma forma, todas as notificações não solicitadas e os eventos não solicitados do Serviço de Dispositivo enviados de uma instância de miniporto são aplicáveis ao modem e ao executor com o qual a instância de miniporto está associada. Por exemplo, uma notificação NDIS_STATUS_WWAN_REGISTER_STATE ou NDIS_STATUS_WWAN_PACKET_SERVICE não solicitada de um miniporto indica o registro (ou o estado do serviço de pacote) do modem associado e o executor somente e não está relacionado ao estado de outros modems ou outros executores.
Quando há vários modems e/ou vários executores em um dispositivo, o adaptador de miniporto físico associado a essa combinação de modem e executor emite notificações não solicitadas específicas de contexto relacionadas a uma combinação específica de modem e executor.
Da mesma forma, se um dispositivo tiver vários modems e/ou vários executores, a instância do adaptador de miniporto físico associada a uma combinação específica de modem e executor poderá receber solicitações de consulta OID não específicas de contexto relacionadas a esse modem e executor. O adaptador que recebe essa solicitação de consulta o processa de acordo com a definição de OID. Se assim for escolhido pelo driver de miniporto, essa solicitação de consulta poderá ser processada simultaneamente com qualquer outro conjunto de OID em processo ou solicitações de consulta em qualquer instância de adaptadores associados a esse modem e executor. Todas as instâncias de um adaptador de miniporto associado a um mesmo modem e executor relatam as mesmas informações de estado para esse modem e executor de celular (como estado de energia de rádio, estado de registro, estado do serviço de pacote etc.).
Para um dispositivo que tem vários modems e/ou vários executores, a instância física do adaptador de miniporto associada a uma combinação de modem e executor pode receber solicitações de definição de OID não específicas de um contexto. O driver de miniporto deve acompanhar o andamento de tal solicitação. Se uma solicitação desse tipo de conjunto estiver em andamento em qualquer adaptador e ainda não tiver sido concluída, uma segunda tentativa de solicitação de conjunto (para qualquer instância de adaptador associada ao mesmo modem e executor) deverá ser enfileirada e processada após a conclusão das solicitações anteriores.
O driver WMBCLASS da área de trabalho do Windows 10 segue a especificação descrita no parágrafo anterior para lidar com essa condição de corrida de solicitação definida, mas se a condição de corrida ocorrer na camada de modem, o modem deverá seguir as mesmas diretrizes para enfileirar comandos conflitantes em todo o dispositivo na função MBIM se ele ainda estiver processando outra função que esteja vinculada ao mesmo dispositivo subjacente.
OIDs para definir e consultar solicitações
Para consultar o número de dispositivos (executores) e slots no modem, bem como o número de executores que podem estar ativos simultaneamente, o host usa OID_WWAN_SYS_CAPS.
Para consultar a funcionalidade de um executor, o host usa OID_WWAN_DEVICE_CAPS_EX.
Para definir o slot associado a cada executor ou consultar o mapeamento atual, o host usa OID_WWAN_DEVICE_SLOT_MAPPINGS.
Para consultar o status de um slot específico no modem, o host usa OID_WWAN_SLOT_INFO_STATUS.
Comandos por dispositivo e por executor
Com a adição do conceito de executor a dispositivos não Windows Mobile no Windows 10, versão 1703 e posterior, os OIDs agora são divididos em duas categorias: OIDs por dispositivo e OIDs por executor. A tabela a seguir explica quais OIDs se enquadram em qual categoria.
| Por dispositivo ou por executor | Nome do OID |
|---|---|
| Por dispositivo | OID_WWAN_DRIVER_CAPS |
| OID_WWAN_ENUMERATE_DEVICE_SERVICE_COMMANDS | |
| OID_WWAN_ENUMERATE_DEVICE_SERVICES | |
| OID_WWAN_PRESHUTDOWN | |
| OID_WWAN_VENDOR_SPECIFIC | |
| OID_WWAN_SYS_CAPS | |
| OID_WWAN_DEVICE_SLOT_MAPPINGS | |
| Por executor | OID_WWAN_AUTH_CHALLENGE |
| OID_WWAN_CONNECT | |
| OID_WWAN_DEVICE_CAPS | |
| OID_WWAN_DEVICE_CAPS_EX | |
| OID_WWAN_DEVICE_SERVICE_COMMAND | |
| OID_WWAN_DEVICE_SERVICE_SESSION | |
| OID_WWAN_DEVICE_SERVICE_SESSION_WRITE | |
| OID_WWAN_DEVICE_SERVICES | |
| OID_WWAN_HOME_PROVIDER | |
| OID_WWAN_NETWORK_IDLE_HINT | |
| OID_WWAN_PACKET_SERVICE | |
| OID_WWAN_PIN | |
| OID_WWAN_PIN_EX | |
| OID_WWAN_PIN_LIST | |
| OID_WWAN_PREFERRED_MULTICARRIER_PROVIDERS | |
| OID_WWAN_PREFERRED_PROVIDERS | |
| OID_WWAN_PROVISIONED_CONTEXTS | |
| OID_WWAN_RADIO_STATE | |
| OID_WWAN_READY_INFO | |
| OID_WWAN_REGISTER_STATE | |
| OID_WWAN_SERVICE_ACTIVATION | |
| OID_WWAN_SIGNAL_STATE | |
| OID_WWAN_SMS_CONFIGURATION | |
| OID_WWAN_SMS_DELETE | |
| OID_WWAN_SMS_READ | |
| OID_WWAN_SMS_SEND | |
| OID_WWAN_SMS_STATUS | |
| OID_WWAN_SUBSCRIBE_DEVICE_SERVICE_EVENTS | |
| OID_WWAN_USSD | |
| OID_WWAN_VISIBLE_PROVIDERS | |
| OID_WWAN_SLOT_INFO_STATUS |
Observação
OID_WWAN_RADIO_STATE foi atualizado para o Windows 10, versão 1703 também. Consulte OID_WWAN_RADIO_STATE para obter mais informações.
Atualização da interface MBIM para operações de vários SIM
Para sistemas operacionais não Windows Mobile, um modem de vários executores aparece como um dispositivo composto USB com várias funções MBIM. Cada função MBIM representa um executor que pode manter o registro. Comandos e notificações específicos do executor são trocados por meio da função MBIM que representa esse executor, enquanto comandos específicos do modem (em outras palavras, aqueles que não são específicos do executor) e suas notificações correspondentes podem ser enviadas ou provenientes de qualquer função MBIM que pertença ao mesmo dispositivo composto USB subjacente.
Todas as solicitações de consulta ou conjunto de CID emitidas para uma função MBIM são executadas no modem e no executor com o qual a instância do miniporto está associada; da mesma forma, todas as notificações não solicitadas enviadas de uma função MBIM são aplicáveis ao modem e ao executor ao qual a função MBIM está associada. Da mesma forma, todos os eventos não solicitados do Serviço de Dispositivo enviados de uma instância de miniporto são aplicáveis ao modem e ao executor com o qual a função MBIM está associada. Por exemplo, uma notificação MBIM_CID_REGISTER_STATE ou MBIM_CID_PACKET_SERVICE não solicitada de uma função MBIM indica o estado do serviço de registro ou pacote somente do modem/executor associado e não está relacionado ao estado de outros modems ou outros executores.
Quando houver vários modems e/ou vários executores em um dispositivo, notificações não solicitadas específicas de contexto relacionadas a um determinado modem e uma combinação de executor devem ser emitidas da função MBIM associada ao modem e executor mencionados acima.
Em um dispositivo com vários modems e/ou vários executores, solicitações de consulta CID não específicas de contexto relacionadas a um determinado modem e executor podem ser emitidas para a função MBIM associada a essa combinação de modem e executor. A função que recebe essa solicitação de consulta deve processá-la de acordo com a definição de CID. Se assim for escolhido pelo firmware de modem, essa solicitação de consulta poderá ser processada simultaneamente com qualquer outro conjunto de CID ou solicitações de consulta sendo processadas por quaisquer funções MBIM associadas a esse modem e executor. Todas as funções MBIM associadas ao mesmo modem devem relatar as mesmas informações de estado para esse modem celular, além do executor que eles representam.
Quando há vários modems e/ou vários executores em um dispositivo, solicitações de conjunto CID não específicas para um executor podem ser emitidas para a função MBIM associada a esse modem e a esse executor. O modem deve acompanhar o progresso dessas solicitações como um todo. Se uma solicitação desse tipo de conjunto estiver em andamento em qualquer adaptador e ainda não tiver sido concluída, uma segunda tentativa de solicitação de conjunto (para qualquer instância de adaptador associada ao mesmo modem e executor) deverá ser enfileirada e processada após a conclusão das solicitações anteriores.
O diagrama a seguir ilustra o fluxo de informações entre as funções WWANSVC e MBIM em dois modems diferentes.
Esta seção contém as descrições detalhadas de CID em todo o modem e para cada executor para os serviços de dispositivo definidos. As definições fazem referência à especificação do MBIM1.0 público existente. Um dispositivo compatível com MBIM implementa e relata o seguinte serviço de dispositivo quando consultado por CID_MBIM_DEVICE_SERVICES. Os serviços conhecidos existentes são definidos na seção 10.1 da especificação USB NCM MBIM 1.0. A Microsoft estende isso para definir o serviço a seguir.
Nome do Serviço = Extensões básicas de conexão
UUID = UUID_BASIC_CONNECT_EXTENSIONS
Valor UUID = 3d01dcc5-fef5-4d05-0d3abef7058e9aaf
Os seguintes CIDs são definidos para UUID_MS_BasicConnect:
| CID | Código de comando | Versão mínima do sistema operacional |
|---|---|---|
| MBIM_CID_MS_SYS_CAPS | 5 | Windows 10, versão 1703 |
| MBIM_CID_MS_DEVICE_CAPS_V2 | 6 | Windows 10, versão 1703 |
| MBIM_CID_MS_DEVICE_SLOT_MAPPINGS | 7 | Windows 10, versão 1703 |
| MBIM_CID_MS_SLOT_INFO_STATUS | oito | Windows 10, versão 1703 |
Todos os deslocamentos nas seções CID a seguir são calculados desde o início do MBIM_COMMAND_MSG do InformationBuffer.
MBIM_CID_MS_SYS_CAPS
Descrição
Esse CID recupera informações sobre o modem. Isso pode ser enviado em qualquer uma das instâncias MB expostas como função USB.
Consulta
O InformationBuffer em MBIM_COMMAND_MSG contém os dados de resposta como MBIM_MS_SYS_CAPS_INFO.
Conjunto
Não aplicável.
Evento não solicitado
Não aplicável.
Parâmetros
| Operação | Conjunto | Consulta | Notificação |
|---|---|---|---|
| Comando | Não aplicável | Não aplicável | Não aplicável |
| Resposta | Não aplicável | MBIM_MS_SYS_CAPS_INFO | Não aplicável |
Estruturas de dados
Consulta
O InformationBuffer será nulo e InformationBufferLength será zero.
Conjunto
Não aplicável.
Resposta
A estrutura de MBIM_SYS_CAPS_INFO a seguir deve ser usada no InformationBuffer.
| Offset | Tamanho | Campo | Tipo | Descrição |
|---|---|---|---|---|
| 0 | 4 | NúmeroDeExecutores | UINT32 | Número de instâncias MBB relatadas por esse modem |
| 4 | 4 | NúmeroDeSlots | UINT32 | Número de slots UICC físicos disponíveis neste modem |
| oito | 4 | Concorrência | UINT32 | Número de instâncias MBB que podem estar ativas simultaneamente |
| 12 | oito | ModemId | UINT64 | Identificador exclusivo de 64 bits para cada modem |
O campo NumberOfExecutors indica o número de executores compatíveis com o modem em sua configuração atual. Isso se refere diretamente ao número de pilhas de "sub-phone" que o modem suporta.
O campo NumberofSlots indica o número de slots que estão fisicamente presentes no modem. Cada slot relatado deve ser capaz de receber um cartão UICC (os slots em si podem ser uma mistura heterogênea, se necessário – mini SIM, micro SIM, nano SIM ou qualquer padrão, conforme definido pelo ETSI). O número de slots deve ser igual ou maior que o número de executores suportados. A função de 'maior que' permite o uso de UICC não destinados à telefonia, como por exemplo para segurança, NFC, etc.
O campo Simultaneidade indica o número de executores (instâncias MBB) que podem estar ativos ao mesmo tempo. O intervalo deve ser 1 ≤ Concorrência ≤ NumberOfExecutors. Por exemplo, um modem dual-standby teria uma simultaneidade de 1, enquanto um modem dual-active teria uma simultaneidade de 2.
O campo ModemId indica o identificador exclusivo de 64 bits para um determinado hardware de modem. Um IHV pode implementar sua própria lógica para gerar um valor exclusivo de 64 bits para cada modem; por exemplo, hash de um dos números IMEI, gerando aleatoriamente números de 64 bits etc. Depois que a ID de 64 bits for gerada, ela deverá persistir entre reinicializações e remoções/inserções de cartão SIM.
Códigos de status
Esse CID usa códigos de status genéricos (consulte Uso de códigos de status na Seção 9.4.5 do padrão USB MBIM público).
MBIM_CID_MS_DEVICE_CAPS_V2
Descrição
Esse CID recupera as informações de capacidade relacionadas a um executor. Como esse CID é uma extensão de MBIM_CID_DEVICE_CAPS, somente as alterações de MBIM_CID_DEVICE_CAPS conforme indicado na Seção 10.5.1 do padrão USB MBIM público são apresentadas aqui.
Esse CID continua a ser somente consulta e retornará uma estrutura MBIM_MS_DEVICE_CAPS_INFO_V2 em resposta a MBIM_COMMAND_MSG com o serviço MBIM MSUUID_BASIC_CONNECT e CID MBIM_CID_MS_DEVICE_CAPS_V2.
Parâmetros
| Operação | Conjunto | Consulta | Notificação |
|---|---|---|---|
| Comando | Não aplicável | Não aplicável | Não aplicável |
| Resposta | Não aplicável | MBIM_MS_DEVICE_CAPS_INFO_V2 | Não aplicável |
Estruturas de dados
Consulta
O mesmo que a Seção 10.5.1.4 do padrão USB MBIM público.
Conjunto
Não aplicável.
Resposta
A estrutura de MBIM_DEVICE_CAPS_INFO_V2 a seguir deve ser usada no InformationBuffer. Em comparação com a estrutura de MBIM_CID_DEVICE_CAPS definida na seção 10.5.1 do padrão USB MBIM público, a estrutura a seguir tem um novo campo chamado DeviceIndex. A menos que indicado aqui, as descrições de campo na Tabela 10-14 do padrão USB MBIM público se aplicam aqui.
| Offset | Tamanho | Campo | Tipo | Descrição |
|---|---|---|---|---|
| 0 | 4 | Tipo de Dispositivo | MBIM_DEVICE_TYPE | |
| 4 | 4 | CellularClass | MBIM_CELLULAR_CLASS | |
| oito | 4 | VoiceClass | MBIM_VOICE_CLASS | |
| 12 | 4 | SimClass | MBIM_SIM_CLASS | Para modems MBIM que dão suporte a esse CID, SimClass sempre será relatado como MBIMSimClassSimRemovable. |
| 16 | 4 | DataClass | MBIM_DATA_CLASS | |
| 20 | 4 | SmsCaps | MBIM_SMS_CAPS | |
| 24 | 4 | ControlCaps | MBIM_CTRL_CAPS | |
| 28 | 4 | MaxSessions | UINT32 | |
| 32 | 4 | CustomDataClassOffset | OFFSET | |
| 36 | 4 | CustomDataClassSize | TAMANHO(0..22) | |
| 40 | 4 | DeviceIdOffset | OFFSET | |
| 44 | 4 | DeviceIdSize | TAMANHO(0..26) | |
| 48 | 4 | FirmwareInfoOffset | OFFSET | |
| 52 | 4 | FirmwareInfoSize | TAMANHO(0..60) | |
| 56 | 4 | HardwareInfoOffset | OFFSET | |
| 60 | 4 | HardwareInfoSize | TAMANHO(0..60) | |
| 64 | 4 | Índice do Executor | UINT32 | O índice do executor. Ele varia de 0 a n-1 , em que n é o número de instâncias MBB contidas no modem MBIM. Seu valor é sempre constante e independente da ordem de enumeração. |
| 68 | Buffer de Dados | buffer de dados | O buffer de dados que contém CustomDataClass, DeviceId, FirmwareInfo e HardwareInfo como membros. |
Códigos de status
Esse CID usa códigos de status genéricos (consulte Uso de códigos de status na Seção 9.4.5 do padrão USB MBIM público).
MBIM_CID_MS_DEVICE_SLOT_MAPPINGS
Descrição
Este CID define ou retorna os mapeamentos de slots do dispositivo (ou seja, os mapeamentos de slots do executor).
Consulta
O InformationBuffer no MBIM_COMMAND_MSG não é usado. MBIM_MS_DEVICE_SLOT_MAPPING_INFO é retornado no InformationBuffer de MBIM_COMMAND_DONE.
Conjunto
O InformationBuffer de MBIM_COMMAND_MSG contém MBIM_MS_DEVICE_SLOT_MAPPING_INFO. MBIM_MS_DEVICE_SLOT_MAPPING_INFO é retornado no InformationBuffer de MBIM_COMMAND_DONE. Independentemente de a configuração de CID ter êxito ou falhar, o MBIM_MS_DEVICE_SLOT_MAPPING_INFO contido na resposta representa os mapeamentos atuais de slot de dispositivo.
Eventos não solicitados
Não aplicável.
Parâmetros
| Operação | Conjunto | Consulta | Notificação |
|---|---|---|---|
| Comando | MBIM_MS_DEVICE_SLOT_MAPPING_INFO | Não aplicável | Não aplicável |
| Resposta | MBIM_MS_DEVICE_SLOT_MAPPING_INFO | MBIM_MS_DEVICE_SLOT_MAPPING_INFO | Não aplicável |
Estruturas de dados
Consulta
O InformationBuffer será nulo e InformationBufferLength será zero.
Conjunto
A estrutura de MBIM_MS_DEVICE_SLOT_MAPPING_INFO a seguir deve ser usada no InformationBuffer.
| Offset | Tamanho | Campo | Tipo | Descrição |
|---|---|---|---|---|
| 0 | 4 | MapCount (MC) | UINT32 | Número de mapeamentos, que é sempre igual ao número de dispositivos/executores. |
| 4 | 8 * MC | SlotMapList | OL_PAIR_LIST | O par i-th desta lista, em que (0 <= i <= (MC-1)) registra o índice do slot que está mapeado no momento para o dispositivo/executor i-th . O primeiro elemento no par é um campo de 4 bytes com o deslocamento no DataBuffer, calculado a partir do início (deslocamento 0) desta estrutura MBIM_MS_DEVICE_SLOT_MAPPINGS_INFO, até um UINT32. O segundo elemento do par é o tamanho de 4 bytes do elemento de registro. Como o tipo do índice de slot é UINT32, o segundo elemento no par é sempre 4. |
| 4 + (8 * MC) | 4 * MC | Buffer de Dados | buffer de dados | O buffer de dados que contém SlotMapList. Como o tamanho do slot é de 4 bytes e MC é igual ao número de índices de slot, o tamanho total do DataBuffer é 4 * MC. |
Resposta
O MBIM_MS_DEVICE_SLOT_MAPPING_INFO usado em Set também é usado no InformationBuffer for Response.
Códigos de status
| Código de status | Descrição |
|---|---|
| MBIM_STATUS_BUSY | A operação falhou porque o dispositivo está ocupado. Na ausência de qualquer informação explícita da função para resolver essa condição, o host pode usar ações subsequentes pela função (por exemplo, notificações ou completação de comandos) como uma indicação para tentar novamente a operação com falha. |
| MBIM_STATUS_FAILURE | A operação falhou (uma falha genérica). |
| MBIM_STATUS_VOICE_CALL_IN_PROGRESS | A operação falhou porque uma chamada de voz está em andamento. |
| MBIM_STATUS_PARAMETROS_INVALIDOS | A operação falhou devido a parâmetros inválidos (por exemplo, números de slot fora do intervalo ou valores duplicados no mapeamento). |
MBIM_CID_MS_SLOT_INFO_STATUS
Descrição
Esse CID recupera um status agregado de alto nível de um slot UICC especificado e o cartão dentro dele (se houver). Ele também pode ser usado para fornecer uma notificação não solicitada quando o status de um dos slots é alterado.
Consulta
O InformationBuffer de MBIM_COMMAND_MSG contém uma estrutura MBIM_MS_SLOT_INFO_REQ. O InformationBuffer da mensagem MBIM_COMMAND_DONE contém uma estrutura MBIM_MS_SLOT_INFO.
Conjunto
Não aplicável.
Eventos não solicitados
O InformationBuffer de Eventos contém uma estrutura MBIM_MS_SLOT_INFO. A função envia esse evento caso o estado de slot/cartão composto seja alterado.
Parâmetros
| Operação | Conjunto | Consulta | Notificação |
|---|---|---|---|
| Comando | Não aplicável | MBIM_MS_SLOT_INFO_REQ | Não aplicável |
| Resposta | Não aplicável | MBIM_MS_SLOT_INFO | MBIM_MS_SLOT_INFO |
Estruturas de dados
Consulta
A estrutura de MBIM_MS_SLOT_INFO_REQ a seguir deve ser usada no InformationBuffer.
| Offset | Tamanho | Campo | Tipo | Descrição |
|---|---|---|---|---|
| 0 | 4 | SlotIndex | UINT32 | O índice do slot a ser consultado. |
Conjunto
Não aplicável.
Resposta
A estrutura de MBIM_MS_SLOT_INFO a seguir deve ser usada no InformationBuffer.
| Offset | Tamanho | Campo | Tipo | Descrição |
|---|---|---|---|---|
| 0 | 4 | SlotIndex | UINT32 | O índice do slot. |
| 4 | 4 | Estado | MBIM_MS_UICC_SLOT_STATE | O estado do slot e do cartão (se aplicável). |
A estrutura de MBIM_MS_UICCSLOT_STATE a seguir descreve os possíveis estados do slot.
| Estados | Valor | Descrição |
|---|---|---|
| UICCSlotStateUnknown | 0 | O modem ainda está em processo de inicialização para que o estado do slot sim não seja determinístico. |
| UICCSlotStateOffEmpty | 1 | O slot UICC está desligado e nenhum cartão está presente. Uma implementação que não consegue determinar a presença de um cartão em um slot que é desligado relata seu estado como UICCSlotStateOff. |
| UICCSlotStateOff | 2 | O slot UICC está desligado. |
| UICCSlotStateEmpty | 3 | O slot UICC está vazio (não há cartão nele). |
| UICCSlotStateNotReady (EstadoDoSlotUICCNãoPronto) | 4 | O slot UICC está ocupado e ativado, mas o cartão dentro dele ainda não está pronto. |
| UICCSlotStateActive | 5 | O slot UICC está ocupado e o cartão dentro dele está pronto. |
| UICCSlotStateError | 6 | O slot UICC está ocupado e ativado, mas o cartão está em um estado de erro e não pode ser usado até a próxima redefinição. |
| UICCSlotStateActiveEsim | 7 | O cartão no slot é um eSIM com um perfil ativo e está pronto para aceitar comandos. |
| UICCSlotStateActiveEsimNoProfiles | oito | O cartão no slot é um eSIM sem perfis (ou sem perfis ativos) e está pronto para aceitar comandos. |
MBIM_MS_UICCSLOT_STATE diretrizes de transição para dispositivos multi-sim
A aderência às transições corretas do estado do slot UICC garante que o sistema operacional manipule todas as alterações corretamente e exiba as notificações corretas ao usuário.
Para a notificação toast SIM inserido, o sistema operacional espera que o slot embutido (SIM2/Slot 1) seja selecionado e que a seguinte transição de estado ocorra após a inserção de um SIM no slot físico (SIM1/Slot 0).
| Valores possíveis do Slot 0 antes da inserção do SIM | Valores possíveis do Slot 0 após a inserção do SIM |
|---|---|
| UICCSlotStateEmpty | UICCSlotStateActive |
| UICCSlotStateOffEmpty |
|
Para a notificação de brinde SIM removido, espera-se que o slot físico (SIM1/Slot 0) seja selecionado com um SIM inserido e que a seguinte transição de estado ocorra após a remoção do SIM do slot físico (SIM1/Slot 0).
| Valores possíveis do Slot 0 antes da remoção do SIM | Valores possíveis do Slot 0 após a remoção do SIM |
|---|---|
| UICCSlotStateActive | UICCSlotStateEmpty |
|
UICCSlotStateOffEmpty |
Códigos de status
Esse CID usa códigos de status genéricos (consulte Uso de códigos de status na Seção 9.4.5 do padrão USB MBIM público).
Mapeamento não NDIS de CIDs MBIM por executor e por modem
A maioria dos CIDs do MBIM mapeia ou se relaciona com OIDs do NDIS, mas há alguns comandos que são usados pelo driver de classe WMB do Windows que não têm um equivalente do NDIS. Esta seção fornece clareza sobre se esses comandos são por modem ou por executor.
| Por dispositivo ou por executor | Nome do CID |
|---|---|
| Por dispositivo | CID_MBIM_MSEMERGENCYMODE |
| CID_MBIM_MSHOSTSHUTDOWN | |
| Por executor | CID_MBIM_MSIPADDRESSINFO |
| CID_MBIM_MSNETWORKIDLEHINT | |
| CID_MBIM_MULTICARRIER_CURRENT_CID_LIST |
Dual SIM, Ativo Único
O DSSA (dual SIM single active) é a única forma de operação multi-SIM que tem suporte total no Windows 10. A DSSA permite que dois cartões SIM sejam usados com o modem, com a restrição de que apenas um SIM possa estar ativo a qualquer momento.
Arquitetura/fluxo
Comportamento do comutador de slot
Se houver suporte para DSSA no dispositivo, há alguns cenários em que a troca de slot é executada automaticamente ou solicitada pelo usuário por meio de notificações toast.
Experiência "Out-of-Box" (OOBE)
- Durante o OOBE, o WwanSvc pode executar um novo mapa de slot com base no estado do slot físico. Se o slot físico estiver vazio, o slot embutido será selecionado. Se o slot físico tiver um SIM, o slot físico será selecionado.
Remoção do SIM
- Se o SIM for removido do slot físico e o slot físico for o slot selecionado no momento, um aviso será exibido perguntando ao usuário se ele deseja alternar para o slot embutido.
- Se o usuário selecionar "Sim", o slot será trocado.
Inserção de SIM
- Se a comutação automática estiver habilitada via chave de registro (regkey):
- Se o SIM for inserido no slot físico enquanto o slot selecionado for o embutido, o slot será automaticamente alternado para o slot físico e uma notificação será exibida informando o usuário sobre a mudança.
- A torradeira tem um botão que abre a página de configurações.
- Se a comutação automática estiver desabilitada via regkey
- Se o SIM for inserido no slot físico enquanto o slot selecionado estiver configurado como embutido, uma notificação será exibida perguntando se o usuário deseja mudar para o slot físico.
- Se o usuário selecionar "Sim", o slot será alternado.
Use esta chave de registro para configurar a alternância automática. Ele não existe por padrão.
Localização: HKLM\Software\Microsoft\Cellular\MVSettings\DeviceSpecific\CellUX
Chave: EnableAutoSlotSwitch
Tipo: REG_DWORD
Valor: 1 | 0 (padrão, desabilitado)
Testes do Kit de Laboratório de Hardware (HLK)
Consulte as etapas para instalar o HLK.
No HLK Studio, conecte-se ao driver de modem celular do dispositivo e execute o teste: Win6_4.MB. GSM. Data.TestSlot. Este teste contém os quatro testes a seguir:
| Nome do teste | Descrição |
|---|---|
| QuerySlotMapping | Esse teste verifica se o teste pode consultar com êxito o mapeamento de slot do dispositivo. |
| SetSlotMapping | Este teste verifica se é possível definir com êxito o mapeamento de slot do dispositivo. |
| QuerySlotInfo | Este teste verifica se é possível consultar com êxito as informações do slot do dispositivo. |
| ValidateSlotInfoState | Esse teste valida o estado do Slot UICC em comparação com o estado de ReadyInfoState. |
Como alternativa, você pode executar a lista de testes testSlot HLK por netsh-mbn e netsh-mbn-test-installation.
netsh mbn test feature=dssa testpath="C:\data\test\bin" taefpath="C:\data\test\bin" param="AccessString=internet"
Este arquivo mostrando os resultados do teste HLK deve ter sido gerado no diretório do qual o comando 'netsh mbn test' foi executado de: TestSlot.htm.
Análise de Log
- Os logs podem ser coletados e decodificados usando estas instruções: MB Coletando logs
- Abra o arquivo .txt no TextAnalysisTool
- Carregar o filtro DSSA
Aqui está um registro de exemplo para consultar e configurar mapeamentos de slots:
1619 [5]6C6C.0824::01/09/2020-10:57:17.118 [WwanDimCommon]QUERY OID_WWAN_DEVICE_CAPS_EX (e01012e), RequestId 11, Status 340001
1673 [5]6C6C.0824::01/09/2020-10:57:17.118 [WwanDimCommon]QUERY OID_WWAN_SYS_CAPS (e01012d), RequestId 21, Status 340001
2488 [5]6C6C.2738::01/09/2020-10:57:17.120 [WwanDimCommon] StatusCode : NDIS_STATUS_WWAN_DEVICE_CAPS_EX (0x4004103f)
2520 [5]6C6C.2738::01/09/2020-10:57:17.120 [WwanDimCommon] SSERVICE_CAPS_MULTI_SIM : Supported
2669 [2]6C6C.2738::01/09/2020-10:57:17.121 [WwanDimCommon] StatusCode : NDIS_STATUS_WWAN_SYS_CAPS_INFO (0x4004102c)
2679 [2]6C6C.2738::01/09/2020-10:57:17.121 [WwanDimCommon] NumberOfExecutors 0x1
2680 [2]6C6C.2738::01/09/2020-10:57:17.121 [WwanDimCommon] NumberOfSlots 0x2
3497 [5]6C6C.0824::01/09/2020-10:57:17.125 [WwanDimCommon]QUERY OID_WWAN_SLOT_INFO_STATUS (e010130), RequestId 42, Status 340001
3502 [5]6C6C.0824::01/09/2020-10:57:17.125 [WwanDimCommon] Slot Index : 0
3531 [5]6C6C.0824::01/09/2020-10:57:17.126 [WwanDimCommon]QUERY OID_WWAN_SLOT_INFO_STATUS (e010130), RequestId 32, Status 340001
3536 [5]6C6C.0824::01/09/2020-10:57:17.126 [WwanDimCommon] Slot Index : 1
6356 [4]6C6C.2738::01/09/2020-10:57:17.133 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
6890 [4]6C6C.2738::01/09/2020-10:57:17.134 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
6912 [4]6C6C.2738::01/09/2020-10:57:17.134 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
6926 [4]6C6C.2738::01/09/2020-10:57:17.134 [WwanDimCommon] StatusCode : NDIS_STATUS_WWAN_SLOT_INFO (0x4004102e)
6934 [4]6C6C.2738::01/09/2020-10:57:17.134 [WwanDimCommon] SlotIndex : 0x0
6935 [4]6C6C.2738::01/09/2020-10:57:17.134 [WwanDimCommon] SlotState : WwanUiccSlotStateActive (0x5)
6955 [4]6C6C.2738::01/09/2020-10:57:17.134 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
7060 [7]6C6C.2738::01/09/2020-10:57:17.135 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
7100 [6]6C6C.2738::01/09/2020-10:57:17.135 [WwanDimCommon] StatusCode : NDIS_STATUS_WWAN_SLOT_INFO (0x4004102e)
7108 [6]6C6C.2738::01/09/2020-10:57:17.135 [WwanDimCommon] SlotIndex : 0x1
7109 [6]6C6C.2738::01/09/2020-10:57:17.135 [WwanDimCommon] SlotState : WwanUiccSlotStateActiveEsimNoProfile (0x8)
7140 [6]6C6C.2738::01/09/2020-10:57:17.135 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
7177 [6]6C6C.2738::01/09/2020-10:57:17.135 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
8424 [4]6C6C.2738::01/09/2020-10:57:17.137 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
10616 [6]6C6C.2738::01/09/2020-10:57:17.145 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
12731 [4]6C6C.2738::01/09/2020-10:57:17.149 [WwanDimCommon]QUERY OID_WWAN_SYS_SLOTMAPPINGS (e01012f), RequestId 1e1, Status 340001
12991 [2]6C6C.2738::01/09/2020-10:57:17.150 [WwanDimCommon] StatusCode : NDIS_STATUS_WWAN_DEVICE_SLOT_MAPPING_INFO (0x4004102d)
13003 [2]6C6C.2738::01/09/2020-10:57:17.150 [WwanDimCommon] Executor Index 0 is mapped to Uicc Slot Index 0
123489 [4]6C6C.2738::01/09/2020-10:57:24.048 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
128251 [2]6C6C.2738::01/09/2020-10:57:24.064 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
128317 [2]6C6C.2738::01/09/2020-10:57:24.064 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
128407 [7]6C6C.2738::01/09/2020-10:57:24.064 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
128445 [7]6C6C.2738::01/09/2020-10:57:24.065 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
129265 [5]6C6C.2738::01/09/2020-10:57:24.067 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
129292 [5]6C6C.2738::01/09/2020-10:57:24.067 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
130122 [7]6C6C.2738::01/09/2020-10:57:24.069 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
155583 [2]6C6C.2738::01/09/2020-10:57:26.637 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
159010 [7]6C6C.2738::01/09/2020-10:57:26.644 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
159034 [7]6C6C.2738::01/09/2020-10:57:26.644 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
161963 [7]6C6C.2738::01/09/2020-10:57:26.655 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
161986 [7]6C6C.2738::01/09/2020-10:57:26.655 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
162110 [2]6C6C.2738::01/09/2020-10:57:26.655 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
162355 [4]6C6C.2738::01/09/2020-10:57:26.656 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
162381 [6]6C6C.2738::01/09/2020-10:57:26.656 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
162441 [4]6C6C.2738::01/09/2020-10:57:26.656 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
194294 [6]6C6C.2738::01/09/2020-10:57:28.722 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
200029 [0]6C6C.2738::01/09/2020-10:57:28.738 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
200131 [4]6C6C.2738::01/09/2020-10:57:28.738 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
200354 [7]6C6C.2738::01/09/2020-10:57:28.739 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
200671 [6]6C6C.2738::01/09/2020-10:57:28.739 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
200729 [7]6C6C.2738::01/09/2020-10:57:28.739 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
200864 [1]6C6C.2738::01/09/2020-10:57:28.740 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
201464 [0]6C6C.2738::01/09/2020-10:57:28.741 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
265128 [1]6C6C.2218::01/09/2020-10:57:32.150 [WwanDimCommon]SET OID_WWAN_SYS_SLOTMAPPINGS (e01012f), RequestId a6, Len 10, Status 340001
265133 [1]6C6C.2218::01/09/2020-10:57:32.150 [WwanDimCommon] SlotMapListHeader.ElementType : 0xe
265134 [1]6C6C.2218::01/09/2020-10:57:32.150 [WwanDimCommon] SlotMapListHeader.ElementCount : 0x1
265135 [1]6C6C.2218::01/09/2020-10:57:32.150 [WwanDimCommon] Executor Index 0 is mapped to Uicc Slot Index 1
265523 [6]6C6C.2738::01/09/2020-10:57:32.152 [WwanDimCommon] ReadyState : WwanReadyStateOff (0x0)
270760 [5]6C6C.2738::01/09/2020-10:57:32.171 [WwanDimCommon] StatusCode : NDIS_STATUS_WWAN_DEVICE_SLOT_MAPPING_INFO (0x4004102d)
270770 [5]6C6C.2738::01/09/2020-10:57:32.171 [WwanDimCommon] Executor Index 0 is mapped to Uicc Slot Index 1
270799 [5]6C6C.2738::01/09/2020-10:57:32.171 [WwanDimCommon] StatusCode : NDIS_STATUS_WWAN_SLOT_INFO (0x4004102e)
270807 [5]6C6C.2738::01/09/2020-10:57:32.171 [WwanDimCommon] SlotIndex : 0x0
270808 [5]6C6C.2738::01/09/2020-10:57:32.171 [WwanDimCommon] SlotState : WwanUiccSlotStateEmpty (0x3)
270827 [5]6C6C.2738::01/09/2020-10:57:32.171 [WwanDimCommon] ReadyState : WwanReadyStateFailure (0x4)
271044 [5]6C6C.2738::01/09/2020-10:57:32.172 [WwanDimCommon] ReadyState : WwanReadyStateFailure (0x4)
271089 [5]6C6C.2738::01/09/2020-10:57:32.172 [WwanDimCommon] ReadyState : WwanReadyStateFailure (0x4)
271130 [5]6C6C.2738::01/09/2020-10:57:32.172 [WwanDimCommon] ReadyState : WwanReadyStateSimNotInserted (0x2)
274729 [7]6C6C.2738::01/09/2020-10:57:32.188 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
283027 [6]6C6C.2738::01/09/2020-10:57:32.211 [WwanDimCommon] ReadyState : WwanReadyStateSimNotInserted (0x2)
323130 [5]6C6C.2738::01/09/2020-10:57:32.352 [WwanDimCommon] ReadyState : WwanReadyStateNoEsimProfile (0x7)
403200 [0]6C6C.2738::01/09/2020-10:57:33.748 [WwanDimCommon] StatusCode : NDIS_STATUS_WWAN_SLOT_INFO (0x4004102e)
403208 [0]6C6C.2738::01/09/2020-10:57:33.748 [WwanDimCommon] SlotIndex : 0x0
403209 [0]6C6C.2738::01/09/2020-10:57:33.748 [WwanDimCommon] SlotState : WwanUiccSlotStateActive (0x5)
407008 [5]6C6C.33A8::01/09/2020-10:57:40.355 [WwanDimCommon]SET OID_WWAN_SYS_SLOTMAPPINGS (e01012f), RequestId 18f, Len 10, Status 340001
407015 [5]6C6C.33A8::01/09/2020-10:57:40.355 [WwanDimCommon] SlotMapListHeader.ElementType : 0xe
407017 [5]6C6C.33A8::01/09/2020-10:57:40.355 [WwanDimCommon] SlotMapListHeader.ElementCount : 0x1
407018 [5]6C6C.33A8::01/09/2020-10:57:40.355 [WwanDimCommon] Executor Index 0 is mapped to Uicc Slot Index 0
407079 [4]6C6C.2738::01/09/2020-10:57:40.355 [WwanDimCommon] ReadyState : WwanReadyStateOff (0x0)
409570 [2]6C6C.2738::01/09/2020-10:57:40.371 [WwanDimCommon] StatusCode : NDIS_STATUS_WWAN_DEVICE_SLOT_MAPPING_INFO (0x4004102d)
409580 [2]6C6C.2738::01/09/2020-10:57:40.371 [WwanDimCommon] Executor Index 0 is mapped to Uicc Slot Index 0
409591 [5]6C6C.2738::01/09/2020-10:57:40.371 [WwanDimCommon] StatusCode : NDIS_STATUS_WWAN_SLOT_INFO (0x4004102e)
409600 [5]6C6C.2738::01/09/2020-10:57:40.371 [WwanDimCommon] SlotIndex : 0x1
409601 [5]6C6C.2738::01/09/2020-10:57:40.371 [WwanDimCommon] SlotState : WwanUiccSlotStateEmpty (0x3)
411302 [7]6C6C.2738::01/09/2020-10:57:40.385 [WwanDimCommon] ReadyState : WwanReadyStateSimNotInserted (0x2)
416851 [4]6C6C.2738::01/09/2020-10:57:40.510 [WwanDimCommon] StatusCode : NDIS_STATUS_WWAN_SLOT_INFO (0x4004102e)
416859 [4]6C6C.2738::01/09/2020-10:57:40.510 [WwanDimCommon] SlotIndex : 0x1
416860 [4]6C6C.2738::01/09/2020-10:57:40.510 [WwanDimCommon] SlotState : WwanUiccSlotStateActiveEsimNoProfile (0x8)
418613 [0]6C6C.2738::01/09/2020-10:57:42.632 [WwanDimCommon] ReadyState : WwanReadyStateOff (0x0)
434410 [4]6C6C.2738::01/09/2020-10:57:44.558 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
443914 [7]6C6C.2738::01/09/2020-10:57:44.593 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)
529138 [4]6C6C.2738::01/09/2020-10:57:45.270 [WwanDimCommon] ReadyState : WwanReadyStateInitialized (0x1)