MB Multi-SIM-Vorgänge
Desktop-Multimodem-Multi-Executor-Unterstützung
Bisher wurden Windows-Geräte ohne Telefon nicht für Multi-SIM-Modems konfiguriert, da sie weniger physische Platzbeschränkungen als Telefone haben. Dies ermöglicht es ihnen, wirklich mehrere aktive Radios gleichzeitig zu nutzen, anstatt ein Modem mit mehreren SIM-Karten wie ein Telefon zu haben; Aufgrund des Anstiegs von eSIM und Szenarien im Unternehmen ist jedoch die Nachfrage nach Multi-SIM-Pro-Modem-Unterstützung auf Nicht-Telefon-Geräten gestiegen.
Die meisten typischen Multi-SIM-Telefongeräte verfügen über duale SIM-Steckplätze, sind jedoch auf eine primäre SIM-Karte für unterstützende Daten beschränkt, während die andere nur Sprachfunktionen unterstützt. Eine solche Einschränkung gibt es im Nicht-Telefon-PC-Modell nicht, da alle SIM-Karten für die Datenverbindung verwendet werden.
Während das in dieser Spezifikation definierte Framework theoretisch eine unbegrenzte Anzahl von Modems und SIM-Karten unterstützen kann, unterstützt Windows 10 version 1703 und höher nur das DsSA-Szenario (Dual-SIM/Single-Active).
Spezifikation der NDIS-Modemschnittstelle
Vorhandene Schnittstellen- und Featurelücken
Es ist möglich, Dual-SIM/Dual-Active-Funktionalität mit mehreren unabhängigen Modems zu unterstützen, wobei jedes Modem ein separates Gerät ist und vollständig unabhängig arbeitet. Dies liegt jedoch außerhalb des Bereichs dieser Dokumentation, der sich stattdessen auf ein WWAN-Miniportmodem konzentriert, das mehrere und gleichzeitige Mobilfunkstapel für den Host darstellen kann. In diesem Abschnitt werden die verschiedenen Objekte definiert und die Terminologie festgelegt, die in allen MB-Dokumentationen im Zusammenhang mit Multi-SIM-Funktionen verwendet wird.
Fortschritte bei der Hardware haben zu Geräten geführt, die gleichzeitige Registrierungen mit mehreren Mobilfunknetzen verwalten können. Bei solchen Geräten wird davon ausgegangen, dass "mehrere Instanzen des Mobilfunkstapels" parallel ausgeführt werden, die jeweils in der Lage sind, die Registrierung aufrechtzuerhalten, signalstärken zu überwachen, Übergaben durchzuführen und auf eingehende Seiten zu lauschen. Jede instance dieses "Mobilfunkstapels" wird für den Rest dieses Dokuments als Executor bezeichnet. In einem Gerät, das Registrierungen mit zwei Netzwerken gleichzeitig verwalten kann, wird beispielsweise davon ausgegangen, dass die Modemhardware über zwei Executors verfügt.
Der Executor ist eine logische Darstellung der Hardware und kann tatsächlich ein einzelner Hardware-Transceiver sein, der gemultixt wird. Genaue Hardwarespezifikationen werden als Implementierungsdetails des Herstellers betrachtet und liegen außerhalb des Geltungsbereichs dieser Spezifikation. Für einen NDIS-Miniporttreiber werden Executors als mehrere Instanzen eines WWAN-Miniportadapters verfügbar gemacht. Für ein MBIM-Modem werden Executors durch mehrere MBIM-Funktionen auf einem enumerierten zusammengesetzten Gerät dargestellt.
Die folgenden beiden Bilder veranschaulichen die logische Ansicht eines Dual-SIM-Modems. Jedes zeigt eine mögliche Kombination aus Executor und UICC.
Der Mobilfunkstapel innerhalb eines Executors gilt als weitgehend eigenständig, außer im Fall einer Dual Standby-Modemimplementierung, bei der der Executor, der Datenverkehr (Sprache und/oder Daten) durchführt, den anderen an der Aufrechterhaltung der Registrierung hindern kann.
Das folgende Diagramm veranschaulicht die logische Ansicht eines Modems mit dualem Standbymodus. Datenverkehr auf Executor 0, ein Telefonanruf, führt dazu, dass Executor 1 die Registrierung verliert.
Das Windows Desktop-Modemschnittstellenmodell in NDIS 6.7 bietet eine solche Architektur nicht, da es auf mehreren impliziten Annahmen basiert:
- Beim Modell wird davon ausgegangen, dass ein einzelner Executor innerhalb des Modems vorhanden ist.
- Das Modell geht davon aus, dass eine einzelne UICC-Karte direkt mit der Modemhardware verknüpft ist.
- Die UICC wird so behandelt, als ob es sich um eine sim-Karte mit einer einzelnen Anwendung handelt.
Im Gegensatz dazu macht die RIL-Schnittstelle (Microsoft Radio Interface Layer) unter Windows Mobile die Vielzahl dieser Annahmen explizit verfügbar. Die Mobile Broadband-Schnittstelle in Windows Mobile macht die Möglichkeit verfügbar, sich unabhängig über separate Miniports zu registrieren, und geht davon aus, dass eine grundlegende Konfiguration des Geräts bereits über die RIL-Schnittstelle erreicht wurde. Um gleichwertige Funktionen bereitzustellen, muss Windows Desktop Mechanismen bereitstellen, um die Anzahl von Executors und Slots zu ermitteln, unabhängig auf Executors zuzugreifen, die Zuordnung zwischen Executors und Slots zu definieren und die Anwendungen innerhalb der zugeordneten UICC-Karte zu definieren, die jeder Executor verwendet.
Weitere Informationen zur Mobilfunkarchitektur und zu den Unterschieden zwischen Windows 10 Mobile und Desktop finden Sie unter Mobilfunkarchitektur und -implementierung.
Hauptobjekte und Vorgänge
Die folgende Abbildung zeigt ein abstraktes Modell eines Modems.
Jedes Modem wird durch eine GUID (Globally Unique Identifier) identifiziert und enthält einen Satz von einem oder mehreren Executors, von denen jeder eine unabhängige Registrierung in einem Mobilfunknetz ermöglicht. Jeder Executor verfügt über einen zugeordneten Executorindex, eine ganze Zahl, beginnend mit 0 für den ersten Executor. Darüber hinaus macht das Modem einen oder mehrere Steckplätze verfügbar, die UICC-Karten enthalten können. Es wird davon ausgegangen, dass die Anzahl der Slots größer oder gleich der Anzahl der Executors ist. Jeder Slot verfügt über einen zugeordneten Index, der ebenfalls mit 0 beginnt, und einen aktuellen Zustand, der sich auf den Energiezustand des Slots und den Verfügbarkeitszustand eines Karte im Slot (falls vorhanden) bezieht.
Um die Kompatibilität mit vorhandenen Modems zu gewährleisten, arbeitet jeder Executor mit Informationen, die von einer UICC-Karte in einem einzelnen Slot bereitgestellt werden. Die Zuordnung zwischen Executors und Slots wird durch die Slotzuordnung definiert, die jeden Executor genau einem Slot zuordnet.
Ein Slot kann eine UICC-Karte enthalten. Jeder Karte enthält eine oder mehrere UICC-Anwendungen wie USIM, CSIM, ISIM oder möglicherweise andere Telefonie- und Nichttelefonieanwendungen wie PKCS#15- oder Global Platform-Anwendungen für ein sicheres NFC-Element. Die Adressierung und Verwendung dieser einzelnen UICC-Anwendungen ist ein Thema für die zukünftige Spezifikation und außerhalb des Rahmens dieser Dokumentation.
Die Windows Desktop NDIS-Schnittstelle mit dem Modem zeichnet sich durch den Austausch von OIDs und NDIS-Benachrichtigungen aus. In den meisten Fällen werden diese OIDs an einzelne Executors gerichtet; einige Befehle und Benachrichtigungen sind jedoch auf das Modem ausgerichtet.
Bei Nicht-Windows Mobile-Betriebssystemen wird ein Modem mit mehreren Executor-Instanzen als ein Gerät mit mehreren physischen WWAN-Miniportinstanzen angezeigt. Jeder physische Miniport instance stellt einen Executor dar, der die Registrierung als NDIS-instance aufrechterhalten kann. Zur Laufzeit können zusätzliche virtuelle Instanzen erstellt werden, um kontextspezifische Paketdaten- und Gerätedienstsitzungen zu verwalten. Executorspezifische Befehle und Benachrichtigungen werden über den physischen WWAN-Miniport NDIS-instance ausgetauscht, der diesen Executor darstellt. Modemspezifische Befehle (d. h. solche, die nicht executorspezifisch sind) und die entsprechenden Benachrichtigungen können an einen physischen Miniport instance gesendet werden oder von diesen stammen.
Die folgenden beiden Diagramme zeigen den Unterschied bei executorspezifischen Befehlen und Benachrichtigungen (das erste Diagramm), bei denen Befehle und Benachrichtigungen durch denselben Executor durchlaufen und von demselben Executor stammen, und modemspezifischen Befehlen und Benachrichtigungen (das zweite Diagramm), bei denen Befehle jeden Executor durchlaufen können und von jedem Executor stammen.
Alle an einen Miniport instance ausgegebenen OID-Set- oder Abfrageanforderungen werden für das Modem und den Executor ausgeführt, denen der Miniport instance zugeordnet ist. Ebenso gelten alle unerwünschten Benachrichtigungen und unerwünschten Gerätedienstereignisse, die von einem Miniport instance gesendet werden, für das Modem und den Executor, dem der Miniport instance zugeordnet ist. Beispielsweise gibt eine nicht angeforderte NDIS_STATUS_WWAN_REGISTER_STATE oder NDIS_STATUS_WWAN_PACKET_SERVICE Benachrichtigung von einem Miniport die Registrierung (oder den Paketdienststatus) des zugeordneten Modems und des Executors an und steht in keinem Zusammenhang mit dem Zustand anderer Modems oder anderer Executors.
Wenn mehrere Modems und/oder mehrere Executors in einem Gerät vorhanden sind, gibt der diesem Modem und dieser Executorkombination zugeordnete physische Miniportadapter nicht kontextspezifische nicht angeforderte Benachrichtigungen im Zusammenhang mit einer bestimmten Modem- und Executorkombination aus.
Wenn ein Gerät über mehrere Modems und/oder mehrere Executors verfügt, kann der physische Miniportadapter instance, die einer bestimmten Modem- und Executorkombination zugeordnet sind, nicht kontextspezifische OID-Abfrageanforderungen im Zusammenhang mit diesem Modem und Executor empfangen. Der Adapter, der eine solche Abfrageanforderung empfängt, verarbeitet sie gemäß der OID-Definition. Wenn dies vom Miniporttreiber ausgewählt wird, kann diese Abfrageanforderung gleichzeitig mit allen anderen prozessinternen OID-Sätze oder Abfrageanforderungen in jeder instance von Adaptern verarbeitet werden, die diesem Modem und Executor zugeordnet sind. Alle Instanzen eines Miniportadapters, der einem gleichen Modem und Executor zugeordnet ist, melden die gleichen Zustandsinformationen für das Mobilfunkmodem und den Executor (z. B. Funkstromzustand, Registrierungsstatus, Paketdienststatus usw.).
Für ein Gerät, das über mehrere Modems und/oder mehrere Executors verfügt, kann der physische Miniportadapter instance, der einer Modem- und Executorkombination zugeordnet ist, nicht kontextspezifische OID-Setanforderungen empfangen. Der Miniportfahrer hat den Fortschritt eines solchen Antrags nachzuverfolgen. Wenn eine solche Set-Anforderung in einem Adapter ausgeführt wird und noch nicht abgeschlossen wurde, wird ein zweiter solcher Set-Anforderungsversuch (an einen Adapter instance demselben Modem und Executor zugeordnet) in die Warteschlange gestellt und verarbeitet, nachdem die vorherigen Anforderungen abgeschlossen wurden.
Der Windows 10 Desktop-WMBCLASS-Treiber folgt der im vorherigen Absatz beschriebenen Spezifikation, um diese Anforderungs-Racebedingung zu verarbeiten. Wenn die Racebedingung jedoch auf Modemebene auftritt, sollte das Modem die gleiche Anleitung befolgen, um in konflikt stehende geräteweite Befehle für die MBIM-Funktion in die Warteschlange zu stellen, wenn es noch eine andere Funktion verarbeitet, die mit demselben zugrunde liegenden Gerät verknüpft ist.
OIDs für Set- und Abfrageanforderungen
Um die Anzahl der Geräte (Executors) und Slots im Modem sowie die Anzahl gleichzeitig aktiver Executors abzufragen, verwendet der Host OID_WWAN_SYS_CAPS.
Um die Funktion eines Executors abzufragen, verwendet der Host OID_WWAN_DEVICE_CAPS_EX.
Um den Slot zu definieren, der an jeden Executor gebunden ist oder die aktuelle Zuordnung abfragt, verwendet der Host OID_WWAN_DEVICE_SLOT_MAPPINGS.
Um die status eines bestimmten Steckplatzes im Modem abzufragen, verwendet der Host OID_WWAN_SLOT_INFO_STATUS.
Befehle pro Gerät und pro Executor
Durch das Hinzufügen des Executorkonzepts zu Nicht-Windows Mobile-Geräten in Windows 10, Version 1703 und höher, werden OIDs jetzt in zwei Kategorien unterteilt: gerätespezifische OIDs und OIDs pro Executor. In der folgenden Tabelle wird erläutert, welche OIDs in welche Kategorie fallen.
Pro Gerät oder Pro Executor | OID-Name |
---|---|
Pro Gerät | 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 | |
Pro 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 |
Hinweis
OID_WWAN_RADIO_STATE wurde auch für Windows 10 Version 1703 aktualisiert. Weitere Informationen finden Sie unter OID_WWAN_RADIO_STATE.
MBIM-Schnittstellenupdate für Multi-SIM-Vorgänge
Bei Nicht-Windows Mobile-Betriebssystemen wird ein Multi-Executor-Modem als ein zusammengesetztes USB-Gerät mit mehreren MBIM-Funktionen angezeigt. Jede MBIM-Funktion stellt einen Executor dar, der die Registrierung verwalten kann. Executorspezifische Befehle und Benachrichtigungen werden über die MBIM-Funktion ausgetauscht, die diesen Executor darstellt, während modemspezifische Befehle (also solche, die nicht executorspezifisch sind) und die entsprechenden Benachrichtigungen an jede MBIM-Funktion gesendet werden können, die zum selben zugrunde liegenden USB-Verbundgerät gehört.
Alle an eine MBIM-Funktion ausgegebenen CID-Set- oder Abfrageanforderungen werden für das Modem und den Executor ausgeführt, dem der Miniport instance zugeordnet ist. Ebenso gelten alle nicht angeforderten Benachrichtigungen, die von einer MBIM-Funktion gesendet werden, für das Modem und den Executor, dem die MBIM-Funktion zugeordnet ist. Auf die gleiche Weise gelten alle nicht angeforderten Device Service-Ereignisse, die von einem Miniport instance gesendet werden, für das Modem und den Executor, dem die MBIM-Funktion zugeordnet ist. Beispielsweise gibt eine nicht angeforderte MBIM_CID_REGISTER_STATE oder MBIM_CID_PACKET_SERVICE Benachrichtigung von einer MBIM-Funktion nur den Registrierungs- oder Paketdienststatus des zugeordneten Modems/Executors an und steht in keinem Zusammenhang mit dem Zustand anderer Modems oder anderer Executors.
Wenn in einem Gerät mehrere Modems und/oder mehrere Executoren vorhanden sind, müssen nicht kontextspezifische nicht angeforderte Benachrichtigungen im Zusammenhang mit einer bestimmten Modem- und Executorkombination von der MBIM-Funktion ausgegeben werden, die dem oben genannten Modem und Executor zugeordnet ist.
Auf einem Gerät mit mehreren Modems und/oder mehreren Executors können nicht kontextspezifische CID-Abfrageanforderungen im Zusammenhang mit einem bestimmten Modem und Executor an die MBIM-Funktion ausgegeben werden, die dieser Kombination aus Modem und Executor zugeordnet ist. Die Funktion, die eine solche Abfrageanforderung empfängt, verarbeitet sie gemäß der CID-Definition. Wenn dies von der Modemfirmware ausgewählt wird, kann eine solche Abfrageanforderung gleichzeitig mit allen anderen CID-Satz- oder Abfrageanforderungen verarbeitet werden, die von allen MBIM-Funktionen verarbeitet werden, die diesem Modem und Executor zugeordnet sind. Alle MBIM-Funktionen, die demselben Modem zugeordnet sind, müssen die gleichen Zustandsinformationen für dieses Mobilfunkmodem zusätzlich zum Executor melden, den sie darstellen.
Wenn in einem Gerät mehrere Modems und/oder mehrere Executors vorhanden sind, können nicht-executorspezifische CID-Setanforderungen an die MBIM-Funktion ausgegeben werden, die diesem Modem und Executor zugeordnet ist. Das Modem verfolgt den Fortschritt dieser Anträge als Ganzes. Wenn eine solche Setanforderung in einem Adapter ausgeführt wird und noch nicht abgeschlossen wurde, wird ein zweiter Versuch einer solchen Setanforderung (für einen Adapter instance demselben Modem und Executor zugeordnet) in die Warteschlange gestellt und verarbeitet, nachdem die vorherigen Anforderungen abgeschlossen wurden.
Das folgende Diagramm veranschaulicht den Informationsfluss zwischen den Funktionen WWANSVC und MBIM in zwei verschiedenen Modems.
Dieser Abschnitt enthält die ausführlichen Modem- und Executor-CID-Beschreibungen für die definierten Gerätedienste. Die Definitionen verweisen auf die vorhandene öffentliche MBIM1.0-Spezifikation. Ein MBIM-kompatibles Gerät implementiert und meldet den folgenden Gerätedienst, wenn es von CID_MBIM_DEVICE_SERVICES abgefragt wird. Die vorhandenen bekannten Dienste sind in Abschnitt 10.1 der USB NCM MBIM 1.0-Spezifikation definiert. Microsoft erweitert dies, um den folgenden Dienst zu definieren.
Dienstname = Grundlegende Verbindungserweiterungen
UUID = UUID_BASIC_CONNECT_EXTENSIONS
UUID-Wert = 3d01dcc5-fef5-4d05-0d3abef7058e9aaf
Die folgenden CIDs werden für UUID_MS_BasicConnect definiert:
CID | Befehlscode | Mindestversion des Betriebssystems |
---|---|---|
MBIM_CID_MS_SYS_CAPS | 5 | Windows 10, Version 1703 |
MBIM_CID_MS_DEVICE_CAPS_V2 | 6 | Windows 10, Version 1703 |
MBIM_CID_MS_DEVICE_SLOT_MAPPINGS | 7 | Windows 10, Version 1703 |
MBIM_CID_MS_SLOT_INFO_STATUS | 8 | Windows 10, Version 1703 |
Alle Offsets in den folgenden CID-Abschnitten werden am Anfang des InformationBuffer-MBIM_COMMAND_MSG berechnet.
MBIM_CID_MS_SYS_CAPS
Beschreibung
Diese CID ruft Informationen zum Modem ab. Dies kann für jede der MB-Instanzen gesendet werden, die als USB-Funktion verfügbar gemacht werden.
Abfrage
Der InformationBuffer auf MBIM_COMMAND_MSG enthält die Antwortdaten als MBIM_MS_SYS_CAPS_INFO.
Set
Nicht zutreffend
Nicht angefordertes Ereignis
Nicht zutreffend
Parameter
Vorgang | Set | Abfrage | Benachrichtigung |
---|---|---|---|
Get-Help | Nicht verfügbar | Nicht verfügbar | Nicht verfügbar |
Antwort | Nicht verfügbar | MBIM_MS_SYS_CAPS_INFO | Nicht verfügbar |
Datenstrukturen
Abfrage
Der InformationBuffer muss NULL und InformationBufferLength null sein.
Set
Nicht zutreffend
Antwort
Die folgende MBIM_SYS_CAPS_INFO Struktur ist im InformationBuffer zu verwenden.
Offset | Size | Feld | type | Beschreibung |
---|---|---|---|---|
0 | 4 | NumberOfExecutors | UINT32 | Anzahl der MBB-Instanzen, die von diesem Modem gemeldet werden |
4 | 4 | NumberOfSlots | UINT32 | Anzahl der physischen UICC-Slots, die auf diesem Modem verfügbar sind |
8 | 4 | Parallelität | UINT32 | Anzahl von MBB-Instanzen, die gleichzeitig aktiv sein können |
12 | 8 | ModemId | UINT64 | Eindeutiger 64-Bit-Bezeichner für jedes Modem |
Das Feld NumberOfExecutors gibt die Anzahl der Executors an, die vom Modem in seiner aktuellen Konfiguration unterstützt werden. Dies entspricht direkt der Anzahl von "Untertelefon"-Stapeln, die das Modem unterstützt.
Das Feld NumberofSlots gibt die Anzahl der Steckplätze an, die physisch im Modem vorhanden sind. Jeder gemeldete Slot muss in der Lage sein, eine UICC-Karte zu empfangen (die Steckplätze selbst können bei Bedarf eine heterogene Mischung sein – Mini-SIM, Micro-SIM, Nano-SIM oder ein beliebiger Standard gemäß ETSI-Definition). Die Anzahl der Slots muss gleich oder größer als die Anzahl der unterstützten Executors sein. Die "größer als"-Bereitstellung ermöglicht die Verwendung von Nicht-Telefonie-UICC, z. B. für Sicherheit, NFC usw.
Das Parallelitätsfeld gibt die Anzahl der Executors (MBB-Instanzen) an, die gleichzeitig aktiv sein können. Der Bereich muss 1 ≤ Parallelität ≤ NumberOfExecutors sein. Beispielsweise würde ein Dual-Standby-Modem eine Parallelität von 1 aufweisen, während ein dual-aktives Modem eine Parallelität von 2 aufweisen würde.
Das Feld ModemId gibt den eindeutigen 64-Bit-Bezeichner für eine bestimmte Modemhardware an. Ein IHV kann eine eigene Logik implementieren, um einen eindeutigen 64-Bit-Wert für jedes Modem zu generieren. für instance, Hashing einer der IMEI-Zahlen, zufälliges Generieren von 64-Bit-Zahlen usw. Sobald die 64-Bit-ID generiert wurde, sollte sie über Neustarts und SIM-Karte Entfernungen/Einfügungen hinweg beibehalten werden.
Statuscodes
Diese CID verwendet generische Statuscodes (siehe Verwendung von Statuscodes in Abschnitt 9.4.5 des öffentlichen USB MBIM-Standards).
MBIM_CID_MS_DEVICE_CAPS_V2
Beschreibung
Diese CID ruft die Funktionsinformationen im Zusammenhang mit einem Executor ab. Da es sich bei dieser CID um eine Erweiterung der MBIM_CID_DEVICE_CAPS handelt, werden hier nur die Änderungen von MBIM_CID_DEVICE_CAPS, wie in Abschnitt 10.5.1 des öffentlichen USB MBIM-Standards angegeben, dargestellt.
Diese CID ist weiterhin nur abfragegeschützt und gibt als Reaktion auf MBIM_COMMAND_MSG mit dem MBIM-Dienst MSUUID_BASIC_CONNECT und CID MBIM_CID_MS_DEVICE_CAPS_V2 eine MBIM_MS_DEVICE_CAPS_INFO_V2-Struktur zurück.
Parameter
Vorgang | Set | Abfrage | Benachrichtigung |
---|---|---|---|
Befehl | Nicht verfügbar | Nicht verfügbar | Nicht verfügbar |
Antwort | Nicht verfügbar | MBIM_MS_DEVICE_CAPS_INFO_V2 | Nicht verfügbar |
Datenstrukturen
Abfrage
Identisch mit Abschnitt 10.5.1.4 des öffentlichen USB MBIM-Standards.
Set
Nicht zutreffend
Antwort
Die folgende MBIM_DEVICE_CAPS_INFO_V2 Struktur wird im InformationBuffer verwendet. Im Vergleich zur in Abschnitt 10.5.1 des öffentlichen USB MBIM-Standards definierten MBIM_CID_DEVICE_CAPS-Struktur verfügt die folgende Struktur über ein neues Feld namens DeviceIndex. Sofern hier nicht angegeben, gelten hier die Feldbeschreibungen in Tabelle 10-14 des öffentlichen USB MBIM-Standards.
Offset | Size | Feld | type | Beschreibung |
---|---|---|---|---|
0 | 4 | DeviceType | MBIM_DEVICE_TYPE | |
4 | 4 | CellularClass | MBIM_CELLULAR_CLASS | |
8 | 4 | VoiceClass | MBIM_VOICE_CLASS | |
12 | 4 | SimClass | MBIM_SIM_CLASS | Für MBIM-Modems, die diese CID unterstützen, wird SimClass immer als MBIMSimClassSimRemovable gemeldet. |
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 | Der Executorindex. Sie reicht von 0 bis n-1 . Dabei ist n die Anzahl der MBB-Instanzen, die im MBIM-Modem enthalten sind. Sein Wert ist immer konstant und unabhängig von der Enumerationsreihenfolge. |
68 | DataBuffer | DATABUFFER | Der Datenpuffer, der die Member CustomDataClass, DeviceId, FirmwareInfo und HardwareInfo enthält. |
Statuscodes
Diese CID verwendet generische Statuscodes (siehe Verwendung von Statuscodes in Abschnitt 9.4.5 des öffentlichen USB MBIM-Standards).
MBIM_CID_MS_DEVICE_SLOT_MAPPINGS
Beschreibung
Diese CID legt die Geräteslotzuordnungen (also die Executor-Slot-Zuordnungen) fest oder gibt diese zurück.
Abfrage
Der InformationBuffer auf MBIM_COMMAND_MSG wird nicht verwendet. MBIM_MS_DEVICE_SLOT_MAPPING_INFO wird im InformationBuffer von MBIM_COMMAND_DONE zurückgegeben.
Set
Der InformationBuffer von MBIM_COMMAND_MSG enthält MBIM_MS_DEVICE_SLOT_MAPPING_INFO. MBIM_MS_DEVICE_SLOT_MAPPING_INFO wird im InformationBuffer von MBIM_COMMAND_DONE zurückgegeben. Unabhängig davon, ob die Set-CID erfolgreich ist oder fehlschlägt, stellt die in der Antwort enthaltene MBIM_MS_DEVICE_SLOT_MAPPING_INFO die aktuellen Geräteslotzuordnungen dar.
Nicht angeforderte Ereignisse
Nicht zutreffend
Parameter
Vorgang | Set | Abfrage | Benachrichtigung |
---|---|---|---|
Befehl | MBIM_MS_DEVICE_SLOT_MAPPING_INFO | Nicht verfügbar | Nicht verfügbar |
Antwort | MBIM_MS_DEVICE_SLOT_MAPPING_INFO | MBIM_MS_DEVICE_SLOT_MAPPING_INFO | Nicht verfügbar |
Datenstrukturen
Abfrage
Der InformationBuffer muss NULL und InformationBufferLength null sein.
Set
Die folgende MBIM_MS_DEVICE_SLOT_MAPPING_INFO Struktur wird im InformationBuffer verwendet.
Offset | Size | Feld | type | Beschreibung |
---|---|---|---|---|
0 | 4 | MapCount (MC) | UINT32 | Anzahl der Zuordnungen, die immer gleich der Anzahl von Geräten/Executors ist. |
4 | 8 * MC | SlotMapList | OL_PAIR_LIST | Das i-te Paar dieser Liste, wobei (0 <= i <= (MC-1)) den Index des Slots aufzeichnet, der derzeit dem i-ten Gerät/Executor zugeordnet ist. Das erste Element in dem Paar ist ein 4-Byte-Feld mit dem Offset in den DataBuffer, der vom Anfang (Offset 0) dieser MBIM_MS_DEVICE_SLOT_MAPPINGS_INFO-Struktur zu einem UINT32 berechnet wird. Das zweite Element des Paares ist eine Größe von 4 Byte des Datensatzelements. Da der Typ des Slotindexes UINT32 ist, ist das zweite Element im Paar immer 4. |
4 + (8 * MC) | 4 * MC | DataBuffer | DATABUFFER | Der Datenpuffer, der SlotMapList enthält. Da die Größe des Slots 4 Bytes beträgt und der MC gleich der Anzahl der Slotindizes ist, beträgt die Gesamtgröße von DataBuffer 4 * MC. |
Antwort
Die in Set verwendete MBIM_MS_DEVICE_SLOT_MAPPING_INFO wird auch im InformationBuffer für Response verwendet.
Statuscodes
Statuscode | BESCHREIBUNG |
---|---|
MBIM_STATUS_BUSY | Fehler beim Vorgang, weil das Gerät ausgelastet ist. Wenn die Funktion keine expliziten Informationen enthält, um diese Bedingung zu löschen, kann der Host nachfolgende Aktionen der Funktion (z. B. Benachrichtigungen oder Befehlsvervollständigungen) als Hinweis verwenden, um den fehlgeschlagenen Vorgang zu wiederholen. |
MBIM_STATUS_FAILURE | Fehler beim Vorgang (generischer Fehler). |
MBIM_STATUS_VOICE_CALL_IN_PROGRESS | Fehler beim Vorgang, weil ein Sprachanruf ausgeführt wird. |
MBIM_STATUS_INVALID_PARAMETERS | Der Vorgang ist aufgrund ungültiger Parameter fehlgeschlagen (z. B. Slotnummern außerhalb des Bereichs oder duplizierte Werte in der Zuordnung). |
MBIM_CID_MS_SLOT_INFO_STATUS
Beschreibung
Dieser CID ruft eine allgemeine aggregierte status eines angegebenen UICC-Steckplatzes und der darin enthaltenen Karte (falls vorhanden) ab. Es kann auch verwendet werden, um eine unaufgefragte Benachrichtigung zu übermitteln, wenn sich die status eines der Slots ändert.
Abfrage
Der InformationBuffer von MBIM_COMMAND_MSG enthält eine MBIM_MS_SLOT_INFO_REQ-Struktur. Der InformationBuffer der MBIM_COMMAND_DONE-Nachricht enthält eine MBIM_MS_SLOT_INFO-Struktur.
Set
Nicht zutreffend
Nicht angeforderte Ereignisse
Der Event InformationBuffer enthält eine MBIM_MS_SLOT_INFO-Struktur. Die Funktion sendet dieses Ereignis, wenn sich der zusammengesetzte Slot/Karte Zustand ändert.
Parameter
Vorgang | Set | Abfrage | Benachrichtigung |
---|---|---|---|
Get-Help | Nicht verfügbar | MBIM_MS_SLOT_INFO_REQ | Nicht verfügbar |
Antwort | Nicht verfügbar | MBIM_MS_SLOT_INFO | MBIM_MS_SLOT_INFO |
Datenstrukturen
Abfrage
Die folgende MBIM_MS_SLOT_INFO_REQ Struktur ist im InformationBuffer zu verwenden.
Offset | Size | Feld | type | Beschreibung |
---|---|---|---|---|
0 | 4 | SlotIndex | UINT32 | Der Index des abzufragenden Slots. |
Set
Nicht zutreffend
Antwort
Die folgende MBIM_MS_SLOT_INFO Struktur wird im InformationBuffer verwendet.
Offset | Size | Feld | type | Beschreibung |
---|---|---|---|---|
0 | 4 | SlotIndex | UINT32 | Der Index des Slots. |
4 | 4 | State | MBIM_MS_UICC_SLOT_STATE | Der Zustand des Slots und Karte (falls zutreffend). |
Die folgende MBIM_MS_UICCSLOT_STATE-Struktur beschreibt die möglichen Zustände des Slots.
Zustände | Wert | Beschreibung |
---|---|---|
UICCSlotStateUnknown | 0 | Das Modem wird noch initialisiert, sodass der SIM-Slotzustand nicht deterministisch ist. |
UICCSlotStateOffEmpty | 1 | Der UICC-Slot ist ausgeschaltet, und es ist kein Karte vorhanden. Eine Implementierung, die das Vorhandensein eines Karte in einem ausgeschalteten Slot nicht ermitteln kann, meldet ihren Zustand als UICCSlotStateOff. |
UICCSlotStateOff | 2 | Der UICC-Slot ist ausgeschaltet. |
UICCSlotStateEmpty | 3 | Der UICC-Slot ist leer (es ist kein Karte vorhanden). |
UICCSlotStateNotReady | 4 | Der UICC-Slot ist belegt und eingeschaltet, aber der Karte darin ist noch nicht bereit. |
UICCSlotStateActive | 5 | Der UICC-Slot ist belegt, und der darin enthaltene Karte ist bereit. |
UICCSlotStateError | 6 | Der UICC-Slot ist belegt und eingeschaltet, aber der Karte befindet sich in einem Fehlerzustand und kann erst verwendet werden, wenn er das nächste Zurücksetzen erfolgt. |
UICCSlotStateActiveEsim | 7 | Die Karte im Slot ist eine eSIM mit einem aktiven Profil und kann Befehle annehmen. |
UICCSlotStateActiveEsimNoProfiles | 8 | Der Karte im Slot ist eine eSIM ohne Profile (oder aktive Profile) und kann Befehle annehmen. |
MBIM_MS_UICCSLOT_STATE Übergangsleitfaden für Multi-Sim-Geräte
Die Einhaltung der richtigen UICC-Slotzustandsübergänge stellt sicher, dass das Betriebssystem alle Änderungen ordnungsgemäß verarbeitet und dem Benutzer die richtigen Popupbenachrichtigungen anzeigt.
Für die eingesteckte SIM-Popupbenachrichtigung erwartet das Betriebssystem, dass der eingebettete Steckplatz (SIM2/Slot 1) ausgewählt ist und der folgende Zustandsübergang beim Einfügen einer SIM-Karte in den physischen Steckplatz (SIM1/Slot 0) erfolgt.
Mögliche Werte von Slot 0 vor sim-Einfügung | Mögliche Werte von Slot 0 nach dem SIM-Einlegen |
---|---|
UICCSlotStateEmpty | UICCSlotStateActive |
UICCSlotStateOffEmpty |
|
Für die Benachrichtigung zum Entfernen des SIM-Popups erwartet das Betriebssystem, dass der physische Steckplatz (SIM1/Slot 0) mit eingelegter SIM ausgewählt wird und der folgende Zustandsübergang beim Entfernen der SIM aus dem physischen Steckplatz (SIM1/Slot 0) erfolgt.
Mögliche Werte von Slot 0 vor der SIM-Entfernung | Mögliche Werte von Slot 0 nach dem Entfernen der SIM |
---|---|
UICCSlotStateActive | UICCSlotStateEmpty |
|
UICCSlotStateOffEmpty |
Statuscodes
Diese CID verwendet generische Statuscodes (siehe Verwendung von Statuscodes in Abschnitt 9.4.5 des öffentlichen USB MBIM-Standards).
Nicht-NDIS-Zuordnung von MBIM-CIDs pro Executor und Modem
Die meisten MBIM-CIDs ordnen NDIS-OIDs zu oder beziehen sich darauf, aber es gibt einige Befehle, die vom Windows WMB-Klassentreiber verwendet werden und keine NDIS-Entsprechung haben. Dieser Abschnitt bietet Klarheit darüber, ob es sich bei diesen Befehlen um modem- oder executor-pro-Executor handelt.
Pro Gerät oder Pro Executor | CID-Name |
---|---|
Pro Gerät | CID_MBIM_MSEMERGENCYMODE |
CID_MBIM_MSHOSTSHUTDOWN | |
Pro Executor | CID_MBIM_MSIPADDRESSINFO |
CID_MBIM_MSNETWORKIDLEHINT | |
CID_MBIM_MULTICARRIER_CURRENT_CID_LIST |
Dual SIM Single Active
Dual SIM Single Active (DSSA) ist die einzige Form des Multi-SIM-Betriebs, die in Windows 10 vollständig unterstützt wird. DSSA ermöglicht die Verwendung von zwei SIM-Karten mit dem Modem, mit der Einschränkung, dass zu einem bestimmten Zeitpunkt nur eine SIM-Karte aktiv sein kann.
Architektur/Flow
Slot Switch-Verhalten
Wenn DSSA auf dem Gerät unterstützt wird, gibt es einige Szenarien, in denen der Slotwechsel entweder automatisch ausgeführt oder vom Benutzer über Benachrichtigungs-Popups aufgefordert wird.
Out-of-Box Experience (OOBE)
- Während der OOBE kann WwanSvc basierend auf dem Zustand des physischen Slots eine Neuzuordnung des Slots durchführen. Wenn der physische Slot leer ist, wird der eingebettete Slot ausgewählt. Wenn der physische Steckplatz über eine SIM-Karte verfügt, wird der physische Steckplatz ausgewählt.
SIM-Entfernung
- Wenn die SIM-Karte aus dem physischen Slot entfernt wird und der physische Slot der aktuell ausgewählte Slot ist, wird ein Popup angezeigt, in dem der Benutzer gefragt wird, ob er zum eingebetteten Slot wechseln möchte.
- Wenn der Benutzer "Ja" auswählt, wird der Slot gewechselt.
SIM-Einfügung
- Wenn der automatische Wechsel über den Regkey aktiviert ist:
- Wenn die SIM-Karte in den physischen Slot eingefügt wird, während der ausgewählte Slot eingebettet ist, wird der Slot automatisch auf den physischen Slot umgeschaltet, und ein Popup wird angezeigt, das den Benutzer über den Switch informiert.
- Das Popup verfügt über eine Schaltfläche, mit der die Einstellungsseite geöffnet wird.
- Wenn der automatische Wechsel über den Registrierungsschlüssel deaktiviert ist
- Wenn die SIM-Karte in den physischen Slot eingefügt wird, während der ausgewählte Slot eingebettet ist, wird ein Popup mit der Frage angezeigt, ob der Benutzer auf den physischen Slot wechseln möchte.
- Wenn der Benutzer "Ja" auswählt, wird der Slot gewechselt.
Verwenden Sie diesen Registrierungsschlüssel, um den automatischen Wechsel zu konfigurieren. Sie ist standardmäßig nicht vorhanden.
Lage: HKLM\Software\Microsoft\Cellular\MVSettings\DeviceSpecific\CellUX
Schlüssel: EnableAutoSlotSwitch
Typ: REG_DWORD
Wert: 1 | 0 (Standard, deaktiviert)
HLK-Tests (Hardware Lab Kit)
Weitere Informationen finden Sie unter Schritte zum Installieren von HLK.
Stellen Sie in HLK Studio eine Verbindung mit dem Mobilfunkmodemtreiber des Geräts her, und führen Sie den Test aus: Win6_4.MB. GSM. Data.TestSlot. Dieser Test enthält die folgenden vier Tests:
Prüfungsname | BESCHREIBUNG |
---|---|
QuerySlotMapping | Dieser Test überprüft, ob der Test die Devcie-Slotzuordnung erfolgreich abfragen kann. |
SetSlotMapping | Dieser Test überprüft, ob der Test die Geräteslotzuordnung erfolgreich festlegen kann. |
QuerySlotInfo | Dieser Test überprüft, ob der Test Geräteslotinformationen erfolgreich abfragen kann. |
ValidateSlotInfoState | Dieser Test überprüft den UICC-Slotstatus anhand von ReadyInfoState. |
Alternativ können Sie die TestSlot HLK-Testlist von netsh-mbn und netsh-mbn-test-installation ausführen.
netsh mbn test feature=dssa testpath="C:\data\test\bin" taefpath="C:\data\test\bin" param="AccessString=internet"
Diese Datei mit den HLK-Testergebnissen sollte in dem Verzeichnis generiert worden sein, in dem der Befehl "netsh mbn test" ausgeführt wurde: TestSlot.htm
.
Protokollanalyse
- Protokolle können mithilfe der folgenden Anweisungen gesammelt und decodiert werden: MB Collecting Logs
- Öffnen Sie die .txt-Datei im TextAnalysisTool.
- Laden des DSSA-Filters
Hier sehen Sie ein Beispielprotokoll zum Abfragen und Festlegen von Slotzuordnungen:
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)