Condividi tramite


Operazioni multi-SIM MB

Supporto multi-modem multi-executor desktop

Tradizionalmente, i dispositivi Windows non telefonici non sono stati configurati per i modem multi-SIM perché hanno meno vincoli di spazio fisico rispetto ai telefoni. Ciò consente loro di sfruttare veramente più radio attive contemporaneamente anziché avere un modem con più schede SIM come un telefono; tuttavia, a causa dell'aumento di eSIM e scenari nell'azienda, la domanda di supporto multi-SIM-per-modem nei dispositivi non telefonici è aumentata.

La maggior parte dei dispositivi telefonici multi-SIM tipici ha slot dual SIM, ma è limitata a una scheda SIM primaria che supporta i dati mentre l'altra supporta solo le funzionalità vocali. Tale limitazione non esiste nel modello pc non telefonico perché tutte le schede SIM vengono usate per la connessione dati.

Anche se il framework definito in questa specifica può supportare in teoria un numero illimitato di modem e schede SIM, Windows 10, versione 1703 e versioni successive supporta solo lo scenario dual-SIM/single-active (DSSA).

Specifica dell'interfaccia modem NDIS

Lacune di interfaccia e funzionalità esistenti

È possibile supportare funzionalità dual-SIM/dual-active con più modem indipendenti, in cui ogni modem è un dispositivo separato e opera completamente indipendentemente. Tuttavia, questo è esterno all'ambito di questa documentazione, che si concentra invece su un modem miniport WWAN che è in grado di presentare più stack cellulari e simultanei all'host. Questa sezione definisce i vari oggetti e stabilisce la terminologia usata in tutte le documentazioni di MB correlate alla funzionalità multi-SIM.

I progressi nell'hardware hanno portato a dispositivi che possono mantenere registrazioni simultanee con più reti cellulari. In tali dispositivi si presuppone che siano "più istanze dello stack cellulare" in esecuzione in parallelo, ognuna in grado di mantenere la registrazione, monitorare i punti di forza del segnale, eseguire gli handover e ascoltare le pagine in ingresso. Ogni istanza di questo "stack cellulare" verrà definita executor per il resto di questo documento. Ad esempio, in un dispositivo in grado di gestire le registrazioni con due reti contemporaneamente l'hardware modem viene considerato avere due executori.

L'executor è una rappresentazione logica dell'hardware e può infatti essere un singolo transceiver hardware multiplexed. Le specifiche hardware esatte sono considerate dettagli di implementazione del fornitore e sono fuori ambito per questa specifica. Per un driver miniport NDIS, gli execuor vengono esposti come più istanze di una scheda miniport WWAN. Per un modem MBIM, gli executori sono rappresentati da più funzioni MBIM in un dispositivo composito enumerato.

Le due immagini seguenti illustrano la visualizzazione logica di un modem dual SIM. Ogni mostra una possibile combinazione di executor e UICC.

Diagramma che illustra la visualizzazione logica di un modem dual SIM.

Lo stack cellulare all'interno di un executor viene considerato principalmente autonomo, tranne nel caso di un'implementazione del modem Dual Standby in cui l'executor che esegue il traffico (voce e/o dati) può impedire all'altro di mantenere la registrazione.

Il diagramma seguente illustra la visualizzazione logica di un modem dual standby. Il traffico su Executor 0, una chiamata telefonica, causa la perdita della registrazione da parte di Executor 1.

Diagramma che illustra la visualizzazione logica di un modem dual-standby.

Il modello di interfaccia modem di Windows Desktop in NDIS 6.7 non supporta tale architettura perché si basa su diversi presupposti impliciti:

  • Il modello presuppone che all'interno del modem sia presente un singolo executor.
  • Il modello presuppone che sia presente una singola scheda UICC direttamente associata all'hardware del modem.
  • L'UICC viene considerato come se fosse una scheda SIM a singola applicazione.

Al contrario, l'interfaccia RIL (Microsoft Radio Interface Layer) in Windows Mobile espone esplicitamente la molteplicità di questi presupposti. L'interfaccia Mobile Broadband in Windows Mobile espone la possibilità di registrare in modo indipendente tramite miniport separati e presuppone che alcune configurazioni di base del dispositivo siano già state eseguite tramite l'interfaccia RIL. Per fornire funzionalità equivalenti, Windows Desktop deve fornire meccanismi per individuare il numero di execuor e slot, per accedere in modo indipendente agli executor, per definire il mapping tra execuors e slot e per definire le applicazioni all'interno della scheda UICC mappata che ogni executor userà.

Per altre informazioni sull'architettura cellulare e sulle differenze tra Windows 10 Mobile e Desktop, vedere Architettura e implementazione cellulare.

Oggetti e operazioni principali

La figura seguente mostra un modello astratto di un modem.

Diagramma che mostra la relazione tra modem, executors e slot.

Ogni modem viene identificato da un identificatore univoco globale (GUID) e contiene un set di uno o più executori, ognuno dei quali è in grado di registrare indipendentemente una rete cellulare. Ogni executor ha un indice executor associato, un intero, a partire da 0 per il primo executor. Inoltre, il modem espone uno o più slot che possono contenere schede UICC. Si presuppone che il numero di slot sia maggiore o uguale al numero di executori. Ogni slot ha un indice associato, a partire anche da 0 e uno stato corrente correlato allo stato di alimentazione dello slot e della disponibilità di una scheda nello slot (se presente).

Per mantenere la compatibilità con i modem esistenti, ogni executor opera con informazioni fornite da una scheda UICC in un singolo slot. L'associazione tra executors e slot è definita dal mapping dello slot, che esegue il mapping di ogni executor a uno slot esattamente.

Uno slot può contenere una scheda UICC; ogni scheda contiene una o più applicazioni UICC, ad esempio USIM, CSIM, ISIM o eventualmente altre applicazioni di telefonia e non telefoniche, ad esempio LE APPLICAZIONI PKCS#15 o Global Platform per un elemento sicuro NFC. L'indirizzamento e l'uso di queste singole applicazioni UICC è un argomento per la specifica futura e l'ambito di questa documentazione.

L'interfaccia NDIS di Windows Desktop per il modem è caratterizzata dallo scambio di notifiche OID e NDIS. Nella maggior parte dei casi questi ID vengono indirizzati a singoli executori; Tuttavia, alcuni comandi e notifiche sono con ambito al modem.

Per i sistemi operativi non Windows Mobile, viene visualizzato un modem multi-executor come un dispositivo con più istanze di miniport WWAN fisiche. Ogni istanza del miniport fisico rappresenta un executor che può mantenere la registrazione come istanza di NDIS. È possibile creare istanze virtuali aggiuntive in fase di esecuzione per gestire i dati dei pacchetti specifici del contesto e le sessioni del servizio dispositivi. I comandi e le notifiche specifici dell'executor vengono scambiati tramite l'istanza fisica del miniport WWAN che rappresenta tale executor. Comandi specifici del modem (in altre parole, quelli che non sono specifici dell'executor) e le relative notifiche corrispondenti possono essere inviate a o provengono da qualsiasi istanza del miniport fisico.

I due diagrammi seguenti mostrano la differenza tra comandi e notifiche specifici dell'executor (il primo diagramma), dove i comandi e le notifiche passano e provengono dallo stesso executor e dai comandi e notifiche specifici del modem (il secondo diagramma), dove i comandi possono passare da qualsiasi executor e provengono da qualsiasi executor.

Diagramma che visualizza comandi e notifiche specifici dell'executor.

Diagramma che illustra i comandi e le notifiche specifici del modem.

Tutte le richieste di set o query OID rilasciate a un'istanza miniport vengono eseguite sul modem ed executor con cui è associata l'istanza miniport. Analogamente, tutte le notifiche non richieste e gli eventi del servizio dispositivi non richiesti inviati da un'istanza miniport sono applicabili al modem e all'executor con cui è associata l'istanza del miniport. Ad esempio, un NDIS_STATUS_WWAN_REGISTER_STATE non richiesto o una notifica NDIS_STATUS_WWAN_PACKET_SERVICE da un miniport indica la registrazione (o lo stato del servizio pacchetti) del modem associato e dell'executor e non è correlato allo stato di altri modem o di altri executor.

Quando sono presenti più modem e/o più executori in un dispositivo, l'adattatore miniport fisico associato a tale combinazione di modem ed executor genera notifiche non richieste specifiche del contesto correlate a una particolare combinazione di modem ed executor.

Allo stesso modo, se un dispositivo ha più modem e/o più executori, l'istanza dell'adattatore miniport fisico associata a una particolare combinazione di modem ed executor può ricevere richieste di query OID specifiche del contesto correlate a tale modem ed executor. L'adattatore che riceve tale richiesta di query lo elabora in base alla definizione OID. In tal caso scelto dal driver miniport, questa richiesta di query può essere elaborata simultaneamente con qualsiasi altro set di OID in-process o richieste di query in qualsiasi istanza di adattatori associati a tale modem ed executor. Tutte le istanze di un adattatore miniport associato a uno stesso modem ed executor segnalano le stesse informazioni sullo stato per il modem cellulare e l'executor (ad esempio lo stato di alimentazione radio, lo stato del servizio di registrazione, lo stato del servizio pacchetti e così via).

Per un dispositivo con più modem e/o più executori, l'istanza dell'adattatore miniport fisico associata a una combinazione di modem ed executor può ricevere richieste di set OID non specifiche del contesto. Il conducente miniport deve tenere traccia dello stato di avanzamento di tale richiesta. Se una richiesta impostata è in corso in qualsiasi adattatore e non è ancora stata completata, un secondo tentativo di richiesta impostata (a qualsiasi istanza di adattatore associata allo stesso modem ed executor) deve essere accodato ed elaborato dopo il completamento delle richieste precedenti.

Il driver WMBCLASS desktop Windows 10 segue la specifica descritta nel paragrafo precedente per gestire questa condizione di gara di richiesta impostata, ma se la condizione di gara si verifica al livello modem il modem deve seguire le stesse indicazioni per accodare comandi a livello di dispositivo in conflitto sulla funzione MBIM se sta ancora elaborando un'altra funzione collegata allo stesso dispositivo sottostante.

OID per set e richieste di query

Per eseguire query sul numero di dispositivi (executor) e slot nel modem, nonché sul numero di executori che possono essere attivi simultaneamente, l'host usa OID_WWAN_SYS_CAPS.

Per eseguire query sulla funzionalità di un executor, l'host usa OID_WWAN_DEVICE_CAPS_EX.

Per definire lo slot associato a ogni executor o eseguire query sul mapping corrente, l'host usa OID_WWAN_DEVICE_SLOT_MAPPINGS.

Per eseguire una query sullo stato di uno slot specifico sul modem, l'host usa OID_WWAN_SLOT_INFO_STATUS.

Comandi per dispositivo e per executor

Con l'aggiunta del concetto di executor ai dispositivi non Windows Mobile in Windows 10, versione 1703 e versioni successive, gli ID OID sono ora suddivisi in due categorie: per-device OID e per Esecutor OID. La tabella seguente illustra quali OID rientrano in quale categoria.

Per dispositivo o Per-executor Nome OID
Per 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
Per 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

Nota

OID_WWAN_RADIO_STATE è stato aggiornato anche per Windows 10, versione 1703. Per altre informazioni, vedere OID_WWAN_RADIO_STATE.

Aggiornamento dell'interfaccia MBIM per le operazioni multi-SIM

Per i sistemi operativi non Windows Mobile, un modem multi-executor viene visualizzato come un dispositivo composito USB con più funzioni MBIM. Ogni funzione MBIM rappresenta un executor in grado di gestire la registrazione. I comandi e le notifiche specifici dell'executor vengono scambiati tramite la funzione MBIM che rappresenta tale executor, mentre i comandi specifici del modem (ovvero quelli che non sono specifici dell'executor) e le relative notifiche corrispondenti possono essere inviate o provengono da qualsiasi funzione MBIM appartenente allo stesso dispositivo composito USB sottostante.

Tutte le richieste di set o query CID inviate a una funzione MBIM vengono eseguite sul modem e sull'executor a cui è associata l'istanza miniport; analogamente, tutte le notifiche non richieste inviate da una funzione MBIM sono applicabili al modem e all'executor a cui è associata la funzione MBIM. Allo stesso modo, tutti gli eventi del servizio dispositivi non richiesti inviati da un'istanza miniport sono applicabili al modem e all'executor a cui è associata la funzione MBIM. Ad esempio, una notifica di MBIM_CID_REGISTER_STATE o MBIM_CID_PACKET_SERVICE non richiesta da una funzione MBIM indica lo stato di registrazione o di servizio di pacchetto del modem/executor associato e non è correlato allo stato di altri modem o altri executor.

Quando sono presenti più modem e/o più executor in un dispositivo, le notifiche non richieste specifiche del contesto correlate a una particolare combinazione di modem ed executor devono essere rilasciate dalla funzione MBIM associata al modem e all'executor menzionato.

In un dispositivo con più modem e/o più executor, le richieste di query CID non specifiche del contesto correlate a un modem e un executor specifico possono essere rilasciate alla funzione MBIM associata a tale combinazione di modem ed executor. La funzione che riceve tale richiesta di query lo elabora in base alla definizione CID. In tal caso, scelta dal firmware del modem, tale richiesta di query può essere elaborata simultaneamente con qualsiasi altro set CID o richieste di query elaborate da qualsiasi funzione MBIM associata a tale modem ed executor. Tutte le funzioni MBIM associate allo stesso modem segnalano le stesse informazioni sullo stato del modem cellulare oltre all'executor rappresentato.

Quando sono presenti più modem e/o più executor in un dispositivo, è possibile che vengano inviate richieste di set CID non specifiche dell'executor alla funzione MBIM associata a tale modem ed executor. Il modem deve tenere traccia dello stato di avanzamento di tali richieste nel suo complesso. Se una richiesta di questo set è in corso in qualsiasi adattatore e non è ancora stata completata, un secondo tentativo di richiesta set di questo tipo (a qualsiasi istanza di adattatore associata allo stesso modem ed executor) verrà accodato ed elaborato dopo il completamento delle richieste precedenti.

Il diagramma seguente illustra il flusso di informazioni tra le funzioni WWANSVC e MBIM in due modem diversi.

Diagramma della struttura del modem con funzioni MBIM.

Questa sezione contiene le descrizioni CID dettagliate a livello di modem e per executor per i servizi di dispositivo definiti. Le definizioni fanno riferimento alla specifica MBIM1.0 pubblica esistente. Un dispositivo conforme a MBIM implementa e segnala il servizio dispositivo seguente quando viene eseguita una query da CID_MBIM_DEVICE_SERVICES. I servizi noti esistenti sono definiti nella sezione 10.1 della specifica USB NCM MBIM 1.0. Microsoft estende questa opzione per definire il servizio seguente.

Nome servizio = Estensioni di connessione di base

UUID = UUID_BASIC_CONNECT_EXTENSIONS

Valore UUID = 3d01dcc5-fef5-4d05-0d3abef7058e9aaf

Per UUID_MS_BasicConnect vengono definiti i CID seguenti:

CID Codice dei comandi Versione minima del sistema operativo
MBIM_CID_MS_SYS_CAPS 5 Windows 10 versione 1703
MBIM_CID_MS_DEVICE_CAPS_V2 6 Windows 10 versione 1703
MBIM_CID_MS_DEVICE_SLOT_MAPPINGS 7 Windows 10 versione 1703
MBIM_CID_MS_SLOT_INFO_STATUS 8 Windows 10 versione 1703

Tutti gli offset nelle sezioni CID seguenti vengono calcolati a partire dall'inizio del MBIM_COMMAND_MSG InformationBuffer.

MBIM_CID_MS_SYS_CAPS

Descrizione

Questo CID recupera informazioni sul modem. Può essere inviato in una qualsiasi delle istanze MB esposte come funzione USB.

Query

InformationBuffer in MBIM_COMMAND_MSG contiene i dati di risposta come MBIM_MS_SYS_CAPS_INFO.

Set

Non applicabile.

Evento non richiesto

Non applicabile.

Parametri

Operazione Set Query Notifica
Comando Non applicabile Non applicabile Non applicabile
Risposta Non applicabile MBIM_MS_SYS_CAPS_INFO Non applicabile

strutture di dati

Query

InformationBuffer deve essere null e InformationBufferLength sarà zero.

Set

Non applicabile.

Risposta

La struttura di MBIM_SYS_CAPS_INFO seguente deve essere utilizzata in InformationBuffer.

Offset Dimensione Campo Tipo Descrizione
0 4 NumberOfExecutors UINT32 Numero di istanze MBB segnalate da questo modem
4 4 NumberOfSlots UINT32 Numero di slot UICC fisici disponibili in questo modem
8 4 Concorrenza UINT32 Numero di istanze MBB che possono essere attive simultaneamente
12 8 ModemId UINT64 Identificatore univoco a 64 bit per ogni modem

Il campo NumberOfExecutors indica il numero di execuor supportati dal modem nella relativa configurazione corrente. Questo esegue direttamente il mapping al numero di stack 'sub-phone' del modem.

Il campo NumberofSlots indica il numero di slot presenti fisicamente sul modem. Ogni slot segnalato deve essere in grado di ricevere una scheda UICC (gli slot stessi possono essere una combinazione eterogenea se necessario – mini SIM, micro SIM, nano SIM o qualsiasi standard definito da ETSI). Il numero di slot deve essere uguale o maggiore del numero di executor supportati. Il provisioning "maggiore di" consente l'uso di UICC non telefoniche, ad esempio per la sicurezza, NFC e così via.

Il campo Concorrenza indica il numero di execuor (istanze MBB) che possono essere attive contemporaneamente. L'intervallo deve essere 1 ≤ concorrenza ≤ NumberOfExecutors. Ad esempio, un modem dual-standby avrà una concorrenza di 1 mentre un modem dual-active avrà una concorrenza di 2

Il campo ModemId indica l'identificatore univoco a 64 bit per un determinato hardware modem. Un IHV può implementare la propria logica per generare un valore univoco a 64 bit per ogni modem; ad esempio, hashing di uno dei numeri IMEI, generazione casuale di numeri a 64 bit e così via. Dopo aver generato l'ID a 64 bit, deve essere persistente tra i riavvii e le rimozione/inserimenti della scheda SIM.

Codici di stato

Questo CID usa codici di stato generici (vedere Uso dei codici di stato nella sezione 9.4.5 dello standard USB MBIM pubblico).

MBIM_CID_MS_DEVICE_CAPS_V2

Descrizione

Questo CID recupera le informazioni sulle funzionalità correlate a un executor. Poiché questo CID è un'estensione di MBIM_CID_DEVICE_CAPS, vengono presentate qui solo le modifiche apportate dalla MBIM_CID_DEVICE_CAPS, come indicato nella sezione 10.5.1 dello standard USB MBIM pubblico.

Questo CID continua a essere query-only e restituirà una struttura di MBIM_MS_DEVICE_CAPS_INFO_V2 in risposta a MBIM_COMMAND_MSG con il servizio MBIM MSUUID_BASIC_CONNECT e ciD MBIM_CID_MS_DEVICE_CAPS_V2.

Parametri

Operazione Set Query Notifica
Comando Non applicabile Non applicabile Non applicabile
Risposta Non applicabile MBIM_MS_DEVICE_CAPS_INFO_V2 Non applicabile

strutture di dati

Query

Uguale alla sezione 10.5.1.4 dello standard USB MBIM pubblico.

Set

Non applicabile.

Risposta

La struttura di MBIM_DEVICE_CAPS_INFO_V2 seguente deve essere usata in InformationBuffer. Rispetto alla struttura MBIM_CID_DEVICE_CAPS definita nella sezione 10.5.1 dello standard USB MBIM pubblico, la struttura seguente ha un nuovo campo denominato DeviceIndex. A meno che non sia indicato qui, le descrizioni dei campi nella tabella 10-14 dello standard USB MBIM pubblico si applicano qui.

Offset Dimensione Campo Tipo Descrizione
0 4 DeviceType MBIM_DEVICE_TYPE
4 4 CellularClass MBIM_CELLULAR_CLASS
8 4 VoiceClass MBIM_VOICE_CLASS
12 4 SimClass MBIM_SIM_CLASS Per i modem MBIM che supportano questo CID, SimClass verrà sempre segnalato come 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 SIZE(0..22)
40 4 DeviceIdOffset OFFSET
44 4 DeviceIdSize SIZE(0..26)
48 4 FirmwareInfoOffset OFFSET
52 4 FirmwareInfoSize SIZE(0..60)
56 4 HardwareInfoOffset OFFSET
60 4 HardwareInfoSize SIZE(0..60)
64 4 ExecutorIndex UINT32 Indice dell'executor. È compreso tra 0 e n-1 , dove n è il numero di istanze MBB contenute nel modem MBIM. Il valore è sempre costante e indipendente dall'ordine di enumerazione.
68 DataBuffer DATABUFFER Buffer di dati contenente i membri CustomDataClass, DeviceId, FirmwareInfo e HardwareInfo.

Codici di stato

Questo CID usa codici di stato generici (vedere Uso dei codici di stato nella sezione 9.4.5 dello standard USB MBIM pubblico).

MBIM_CID_MS_DEVICE_SLOT_MAPPINGS

Descrizione

Questo CID imposta o restituisce i mapping dello slot del dispositivo (in altre parole i mapping dello slot executor).

Query

InformationBuffer su MBIM_COMMAND_MSG non viene usato. MBIM_MS_DEVICE_SLOT_MAPPING_INFO viene restituito nel MBIM_COMMAND_DONE InformationBuffer.

Set

InformationBuffer di MBIM_COMMAND_MSG contiene MBIM_MS_DEVICE_SLOT_MAPPING_INFO. MBIM_MS_DEVICE_SLOT_MAPPING_INFO viene restituito nel MBIM_COMMAND_DONE InformationBuffer. Indipendentemente dal fatto che set CID abbia esito positivo o negativo, il MBIM_MS_DEVICE_SLOT_MAPPING_INFO contenuto nella risposta rappresenta i mapping correnti dello slot del dispositivo.

Eventi non richiesti

Non applicabile.

Parametri

Operazione Set Query Notifica
Comando MBIM_MS_DEVICE_SLOT_MAPPING_INFO Non applicabile Non applicabile
Risposta MBIM_MS_DEVICE_SLOT_MAPPING_INFO MBIM_MS_DEVICE_SLOT_MAPPING_INFO Non applicabile

strutture di dati

Query

InformationBuffer deve essere null e InformationBufferLength sarà zero.

Set

La struttura di MBIM_MS_DEVICE_SLOT_MAPPING_INFO seguente deve essere usata in InformationBuffer.

Offset Dimensione Campo Tipo Descrizione
0 4 MapCount (MC) UINT32 Numero di mapping, che è sempre uguale al numero di dispositivi/executori.
4 8 * MC SlotMapList OL_PAIR_LIST La coppia i-th di questo elenco, dove (0 <= i <= (MC-1)) registra l'indice dello slot attualmente mappato al dispositivo i-th /executor. Il primo elemento della coppia è un campo a 4 byte con Offset in DataBuffer, calcolato dall'inizio (offset 0) di questa struttura MBIM_MS_DEVICE_SLOT_MAPPINGS_INFO a un oggetto UINT32. Il secondo elemento della coppia è una dimensione di 4 byte dell'elemento record. Poiché il tipo dell'indice slot è UINT32, il secondo elemento nella coppia è sempre 4.
4 + (8 * MC) 4 * MC DataBuffer DATABUFFER Buffer di dati contenente SlotMapList. Poiché le dimensioni dello slot sono 4 byte e MC è uguale al numero di indici slot, la dimensione totale di DataBuffer è 4 * MC.
Risposta

La MBIM_MS_DEVICE_SLOT_MAPPING_INFO usata in Set viene usata anche in InformationBuffer for Response.

Codici di stato

Codice di stato Descrizione
MBIM_STATUS_BUSY L'operazione non è riuscita perché il dispositivo è occupato. In assenza di informazioni esplicite dalla funzione per cancellare questa condizione, l'host può usare le azioni successive dalla funzione (ad esempio notifiche o completamenti del comando) come suggerimento per ritentare l'operazione non riuscita.
MBIM_STATUS_FAILURE L'operazione non è riuscita (errore generico).
MBIM_STATUS_VOICE_CALL_IN_PROGRESS L'operazione non è riuscita perché è in corso una chiamata vocale.
MBIM_STATUS_INVALID_PARAMETERS L'operazione non è riuscita a causa di parametri non validi, ad esempio numeri di slot non compresi nell'intervallo o valori duplicati nel mapping.

MBIM_CID_MS_SLOT_INFO_STATUS

Descrizione

Questo CID recupera uno stato aggregato di alto livello di uno slot UICC specificato e la scheda all'interno di esso (se presente). Può anche essere usato per recapitare una notifica non richiesta quando lo stato di uno degli slot cambia.

Query

InformationBuffer di MBIM_COMMAND_MSG contiene una struttura MBIM_MS_SLOT_INFO_REQ. InformationBuffer del messaggio di MBIM_COMMAND_DONE contiene una struttura MBIM_MS_SLOT_INFO.

Set

Non applicabile.

Eventi non richiesti

Event InformationBuffer contiene una struttura MBIM_MS_SLOT_INFO. La funzione invia questo evento nel caso in cui lo stato dello slot/scheda composito cambi.

Parametri

Operazione Set Query Notifica
Comando Non applicabile MBIM_MS_SLOT_INFO_REQ Non applicabile
Risposta Non applicabile MBIM_MS_SLOT_INFO MBIM_MS_SLOT_INFO

strutture di dati

Query

La struttura di MBIM_MS_SLOT_INFO_REQ seguente deve essere utilizzata in InformationBuffer.

Offset Dimensione Campo Tipo Descrizione
0 4 SlotIndex UINT32 Indice dello slot su cui eseguire una query.
Set

Non applicabile.

Risposta

La struttura di MBIM_MS_SLOT_INFO seguente deve essere utilizzata in InformationBuffer.

Offset Dimensione Campo Tipo Descrizione
0 4 SlotIndex UINT32 Indice dello slot.
4 4 State MBIM_MS_UICC_SLOT_STATE Stato dello slot e della scheda (se applicabile).

Nella struttura di MBIM_MS_UICCSLOT_STATE seguente vengono descritti i possibili stati dello slot.

Stati Valore Descrizione
UICCSlotStateUnknown 0 Il modem è ancora in fase di inizializzazione in modo che lo stato dello slot SIM non sia deterministico.
UICCSlotStateOffEmpty 1 Lo slot UICC è spento e non è presente alcuna scheda. Un'implementazione che non è in grado di determinare la presenza di una scheda in uno slot spento ne segnala lo stato come UICCSlotStateOff.
UICCSlotStateOff 2 Lo slot UICC è spento.
UICCSlotStateEmpty 3 Lo slot UICC è vuoto (non è presente alcuna scheda).
UICCSlotStateNotReady 4 Lo slot UICC è occupato e acceso, ma la scheda all'interno non è ancora pronta.
UICCSlotStateActive 5 Lo slot UICC è occupato e la scheda all'interno è pronta.
UICCSlotStateError 6 Lo slot UICC è occupato e acceso, ma la scheda è in stato di errore e non può essere usata fino a quando non viene reimpostata successivamente.
UICCSlotStateActiveEsim 7 La scheda nello slot è un'eSIM con un profilo attivo ed è pronta per accettare i comandi.
UICCSlotStateActiveEsimNoProfiles 8 La scheda nello slot è un'eSIM senza profili (o senza profili attivi) ed è pronta per accettare i comandi.
MBIM_MS_UICCSLOT_STATE indicazioni sulla transizione per dispositivi multi-sim

La conformità alle transizioni di stato dello slot UICC corrette garantisce che il sistema operativo gestisca correttamente tutte le modifiche e visualizzi le notifiche di tipo avviso popup corrette all'utente.

Per la notifica di tipo avviso popup inserito dalla SIM , il sistema operativo prevede che lo slot incorporato (SIM2/Slot 1) sia selezionato e che venga eseguita la transizione di stato seguente all'inserimento di una SIM nello slot fisico (SIM1/Slot 0).

Valori possibili dello slot 0 prima dell'inserimento sim Valori possibili dello slot 0 dopo l'inserimento sim
UICCSlotStateEmpty UICCSlotStateActive
UICCSlotStateOffEmpty
  • UICCSlotStateActiveEsim
  • UICCSlotStateActiveEsimNoProfile

Per la notifica di tipo avviso popup rimosso dalla SIM , il sistema operativo prevede che lo slot fisico (SIM1/Slot 0) sia selezionato con una SIM inserita e che venga eseguita la transizione dello stato seguente al momento della rimozione della SIM dallo slot fisico (SIM1/Slot 0).

Valori possibili dello slot 0 prima della rimozione della SIM Valori possibili dello slot 0 dopo la rimozione della SIM
UICCSlotStateActive UICCSlotStateEmpty
  • UICCSlotStateActiveEsim
  • UICCSlotStateActiveEsimNoProfile
UICCSlotStateOffEmpty

Codici di stato

Questo CID usa codici di stato generici (vedere Uso dei codici di stato nella sezione 9.4.5 dello standard USB MBIM pubblico).

Mapping non NDIS di CID per executor e MBIM per modem

La maggior parte dei CID MBIM è mappata o correlata agli ID NDIS, ma esistono alcuni comandi usati dal driver di classe WMB di Windows che non hanno una controparte NDIS. In questa sezione viene fornita chiarezza sul fatto che tali comandi siano per modem o per executor.

Per dispositivo o per executor Nome CID
Per dispositivo CID_MBIM_MSEMERGENCYMODE
CID_MBIM_MSHOSTSHUTDOWN
Per executor CID_MBIM_MSIPADDRESSINFO
CID_MBIM_MSNETWORKIDLEHINT
CID_MBIM_MULTICARRIER_CURRENT_CID_LIST

Doppio SIM Single Active

Doppia SIM singola attiva (DSSA) è l'unica forma di operazione multi-SIM completamente supportata in Windows 10. DSSA consente l'uso di due schede SIM con il modem, con la restrizione che una sola SIM può essere attiva in qualsiasi momento.

Architettura/flusso

Diagramma che mostra il flusso DSSA.

Comportamento del commutatore slot

Se DSSA è supportato nel dispositivo, esistono alcuni scenari in cui l'opzione slot viene eseguita automaticamente o richiesta dall'utente tramite avvisi popup di notifica.

Esperienza guidata

  • Durante la configurazione guidata, WwanSvc può eseguire un nuovo mapping dello slot in base allo stato dello slot fisico. Se lo slot fisico è vuoto, viene selezionato lo slot incorporato. Se lo slot fisico ha una SIM, viene selezionato lo slot fisico.

Rimozione sim

  • Se la SIM viene rimossa dallo slot fisico e lo slot fisico è lo slot attualmente selezionato, viene visualizzato un avviso popup che chiede all'utente se desidera passare allo slot incorporato.
  • Se l'utente seleziona "Sì", lo slot viene commutato.

Diagramma di flusso che illustra il processo di rimozione della SIM.

INSERIMENTO SIM

  • Se l'opzione automatica è abilitata tramite regkey:
    • Se la SIM viene inserita nello slot fisico mentre lo slot selezionato è incorporato, lo slot viene automaticamente passato allo slot fisico e viene visualizzato un avviso popup che informa l'utente del commutatore.
    • L'avviso popup ha un pulsante che apre la pagina delle impostazioni.
  • Se il commutatore automatico è disabilitato tramite regkey
    • Se la SIM viene inserita nello slot fisico mentre lo slot selezionato è incorporato, viene visualizzato un avviso popup che chiede se l'utente desidera passare allo slot fisico.
    • Se l'utente seleziona "Sì", lo slot viene commutato.

Usare questa chiave del Registro di sistema per configurare l'opzione automatica. Non esiste per impostazione predefinita.

Posizione: HKLM\Software\Microsoft\Cellular\MVSettings\DeviceSpecific\CellUX
Chiave: EnableAutoSlotSwitch
Tipo: REG_DWORD
Valore: 1 | 0 (impostazione predefinita, disabilitata)

Diagramma di flusso che illustra il processo di inserimento SIM.

Test di Hardware Lab Kit (HLK)

Vedere Passaggi per l'installazione di HLK.

In HLK Studio connettersi al driver modem cellulare del dispositivo ed eseguire il test: Win6_4.MB. GSM. Data.TestSlot. Questo test contiene i quattro test seguenti:

Nome test Descrizione
QuerySlotMapping Questo test verifica che il test possa eseguire correttamente una query sul mapping dello slot devcie.
SetSlotMapping Questo test verifica che il test possa impostare correttamente il mapping dello slot del dispositivo.
QuerySlotInfo Questo test verifica che il test possa eseguire correttamente query sulle informazioni sullo slot del dispositivo.
ValidateSlotInfoState Questo test convalida lo stato dello slot UICC rispetto a ReadyInfoState.

In alternativa, è possibile eseguire l'elenco di test TestSlot HLK da 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"

Questo file che mostra i risultati del test HLK dovrebbe essere stato generato nella directory da cui è stato eseguito il comando 'netsh mbn test': TestSlot.htm.

Analisi dei log

  1. I log possono essere raccolti e decodificati seguendo queste istruzioni: MB Raccolta di log
  2. Aprire il file .txt in TextAnalysisTool
  3. Caricare il filtro DSSA

Di seguito è riportato un log di esempio per l'esecuzione di query e l'impostazione dei mapping degli slot:

  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)