MB SAR-Plattformunterstützung

Übersicht

Specific Absorption Rate (SAR) ist die Fähigkeit, die Leistung des MBB-Funksenders als Reaktion auf die Nähe der MBB-Antenne zum Benutzer zu ändern. Traditionell haben OEMs proprietäre Lösungen für SAR implementiert. Dies erfordert, dass der OEM einen Gerätedienstbefehl implementiert, der entweder nur zwischen dem Benutzermodustreiber (UMDF) und dem Modem identifiziert wird oder die Kernelmoduskomponenten direkt mit dem Modem interagieren müssen. Einige OEMs verfügen möglicherweise sogar über eine Hybridlösung, bei der sie sowohl ÜBER UMDF-Modem- als auch Kernelmodus-Modemkomponenten verfügen. Da das Bewusstsein für Funkstrahlung zugenommen hat, bringt die Standardisierung der Schnittstelle für OEM-Softwarekomponenten, um den SAR-Befehl an das Modem zu übergeben, die folgenden Vorteile:

  1. OEMs können zu Komponenten im Benutzermodus wechseln und das System stabiler machen, da Fehler im Benutzermodus im Vergleich zum Kernelmodus nicht schwerwiegend für das System sind.
  2. Windows bietet eine Plattformstandardschnittstelle und reduziert die proprietäre Implementierung von OEMs.
  3. Dienste auf der Plattform, die SAR nutzen möchten, können die Informationen aus dem Modem abrufen.

Ab Windows 10 Version 1703 unterstützt Windows die Übertragung von SAR-Konfiguration und Modemübertragung status. Windows überlässt die SAR-Geschäftslogik weiterhin IHVs und OEMs, um sie als sich selbst unterscheidenden Faktor zu verwenden, stellt jedoch eine Schnittstelle zur Optimierung der Plattform bereit. Zwei neue NDIS-OIDs und zwei neue MBIM-CIDs wurden definiert, um diese Schnittstelle zu unterstützen. Geräte, die die Betriebssystemunterstützung nutzen möchten, müssen beide Befehle implementieren.

Dieses Feature wird unterstützt, indem zwei neue OIDs und CIDs hinzugefügt werden. Für IHV-Partner, die MBIM implementieren, muss nur die CID-Version unterstützt werden.

Hinweis

In diesem Thema wird die Schnittstelle für IHV-Partner definiert, um die SAR-Plattformunterstützung in ihren Modemgerätetreibern zu implementieren. Informationen zum Anpassen der SAR-Zuordnungstabelle für ein Gerät finden Sie unter Anpassen einer SAR-Zuordnungstabelle (Specific Absorption Rate, SAR).

Flow

Flussdiagramm zur Veranschaulichung des SAR-Vorgangs.

MB-Schnittstellenupdate für DIE SAR-Plattformunterstützung

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 = Microsoft SAR-Steuerelement

UUID = UUID_MS_SARControl

UUID-Wert = 68223D04-9F6C-4E0F-822D-28441FB72340

CID Mindestversion des Betriebssystems
MBIM_CID_MS_SAR_CONFIG Windows 10, Version 1703
MBIM_CID_MS_TRANSMISSION_STATUS Windows 10, Version 1703

MBIM_CID_MS_SAR_CONFIG

Beschreibung

Mit diesem Befehl werden Informationen zum SAR-Rückschaltmodus und -Level eines MB-Geräts festgelegt oder zurückgegeben. Das MB-Gerät muss sofort auf den SAR-Back-Off-Befehl reagieren, indem es die aktuellen Sendeleistungsgrenzwerte überschreibt und sie auf die Sendeantennen anwendet. Wenn die SAR-Konfiguration einer Antenne vom Betriebssystem nicht geändert wurde, sollte die aktuelle Einstellung beibehalten werden. Wenn das Betriebssystem beispielsweise Antenne 1 als SAR-Rücksendindex 1 festlegt, sollte die Konfiguration von Antenne 2 unverändert bleiben.

Es wird erwartet, dass Geräte, die diesen Befehl unterstützen, Abfrage implementieren, damit sie Geräteinformationen für das Betriebssystem und seine Clients bereitstellen. Für den Befehl Set muss zwischen dem IHV und dem OEM definiert werden, welcher Wert der einzelnen Felder akzeptabel ist. Die typische Erwartung ist, dass der SAR-Back off-Index für alle Antennen als Mindestbaseline konfigurierbar ist. Wenn eine Set-Anforderung mit Feldern gesendet wird, die vom Gerät nicht unterstützt werden, muss MBIM_STATUS_INVALID_PARAMETERS als status-Code zurückgegeben werden.

Nach jeder Abfrage- oder Set-Antwort sollte das Modem eine MBIM_MS_SAR_CONFIG Struktur zurückgeben, die Informationen für alle Antennen auf dem Gerät enthält, das Mobile Broadband zugeordnet ist.

Abfrage

Der InformationBuffer auf MBIM_COMMAND_MSG wird nicht verwendet. MBIM_MS_SAR_CONFIG wird im InformationBuffer von MBIM_COMMAND_DONE zurückgegeben.

Set

Der InformationBuffer auf MBIM_COMMAND_MSG enthält eine MBIM_MS_SAR_CONFIG. MBIM_MS_SAR_CONFIG wird im InformationBuffer von MBIM_COMMAND_DONE zurückgegeben.

Nicht angeforderte Ereignisse

Nicht zutreffend

Parameter

Vorgang Set Abfrage Benachrichtigung
Befehl MBIM_MS_SET_SAR_CONFIG Nicht verfügbar Nicht verfügbar
Antwort MBIM_MS_SAR_CONFIG MBIM_MS_SAR_CONFIG Nicht verfügbar

Datenstrukturen

Abfrage

Der InformationBuffer muss NULL und InformationBufferLength null sein.

Set

Die folgende MBIM_MS_SET_SAR_CONFIG Struktur wird im InformationBuffer verwendet.

Offset Size Feld type Beschreibung
0 4 SARMode MBIM_MS_SAR_CONTROL_MODE Weitere Informationen finden Sie in der Tabelle MBIM_MS_SAR_CONTROL_MODE.
4 4 SARBackOffStatus MBIM_MS_SAR_BACKOFF_STATE Weitere Informationen finden Sie in der Tabelle MBIM_MS_SAR_BACKOFF_STATE. Wenn MBIM_MS_SAR_CONTROL_MODE auf Gerätesteuerung festgelegt ist, kann das Betriebssystem dieses Feld nicht festlegen.
8 4 ElementCount (EC) UINT32 Anzahl der MBIM_MS_SAR_CONFIG Strukturen, die im DataBuffer folgen.
12 8 * EC SARConfigStatusRefList OL_PAIR_LIST Das erste Element des Paares ist ein 4-Byte-Offset, der vom Anfang (Offset 0) dieser MBIM_MS_SET_SAR_CONFIG-Struktur zu einer MBIM_MS_SAR_CONFIG_STATE-Struktur berechnet wird. Weitere Informationen finden Sie in der Tabelle MBIM_MS_SAR_CONFIG_STATE. Das zweite Element des Paars ist eine 4-Byte-Größe eines Zeigers auf die entsprechende MBIM_MS_SAR_CONFIG_STATE-Struktur.
12 + (8 * EG) DataBuffer DATABUFFER Array von MBIM_MS_SAR_CONFIG_STATE-Strukturen.

Die folgenden Strukturen werden in der vorherigen Tabelle verwendet.

MBIM_MS_SAR_CONTROL_MODE gibt an, wie der SAR-Back off-Mechanismus gesteuert wird.

type Wert Beschreibung
MBIMMsSARControlModeDevice 0 Der SAR-Rückstaumechanismus wird direkt vom Modemgerät gesteuert.
MBIMMsSARControlModeOS 1 Der SAR-Back off-Mechanismus wird vom Betriebssystem gesteuert und verwaltet.

MBIM_MS_SAR_BACKOFF_STATE beschreibt den Zustand der SAR-Rückschaltung.

type Wert Beschreibung
MBIMMsSARBackOffStatusDisabled 0 SAR-Rückstau ist im Modem deaktiviert.
MBIMMsSARBackOffStatusEnabled 1 SAR-Rückschaltung ist im Modem aktiviert.

MBIM_MS_SAR_CONFIG_STATE beschreibt die möglichen Zustände für den SAR-Backoff für die Antennen.

Offset Size Feld type Beschreibung
0 4 SARAntennaIndex UINT32 Ein Antennenindex, der dem Feld SARBackOffIndex in dieser Tabelle entspricht. Sie entspricht der Antennennummer und bleibt der OEM-Implementierung überlassen, um jede Antenne auf dem Gerät zu indizieren. Jeder Index ist für diesen Wert gültig. Wenn dieser Wert in einem Set-Befehl auf 0xFFFFFFFF festgelegt ist, sollte sarBackOffIndex auf alle Antennen angewendet werden. Wenn dieser Wert als Antwort auf 0xFFFFFFFF festgelegt ist, gibt dies an, dass SARBackOffIndex auf alle Antennen angewendet wird.
4 4 SARBAckOffIndex UINT32 Ein Back off-Index, der der back off-Tabelle entspricht, die vom OEM- oder Modemanbieter definiert wird. Die Tabelle enthält einzelne Bänder und zugeordnete Back off-Parameter.

Antwort

Die folgende MBIM_MS_SAR_CONFIG Struktur wird im InformationBuffer verwendet. MBIM_MS_SAR_CONFIG gibt die Konfiguration für SAR an.

Offset Size Feld type Beschreibung
0 4 SARMode MBIM_MS_SAR_MODE Weitere Informationen finden Sie in der Tabelle MBIM_MS_SAR_CONTROL_MODE.
4 4 SARBackOffStatus MBIM_MS_SAR_BACKOFF_STATE Weitere Informationen finden Sie in der Tabelle MBIM_MS_SAR_BACKOFF_STATE.
8 4 SARWifiIntegration MBIM_MS_SAR_ WIFI_HARDWARE_INTEGRATION Weitere Informationen finden Sie in der Tabelle MBIM_MS_SAR_HARDWARE_WIFI_INTEGRATION. Dies impliziert, dass die Wi-Fi des Geräts und die Mobilfunk-SAR auf der Hardwareebene integriert sind und das Gerät die SAR-Steuerung für beide Funkgeräte automatisch anpasst.
12 4 ElementCount (EC) UINT32 Anzahl der MBIM_MS_SAR_CONFIG_STATE Strukturen, die im DataBuffer folgen.
16 8 * EG SARConfigStatusRefList OL_PAIR_LIST Das erste Element des Paars ist ein 4-Byte-Offset, der vom Anfang (Offset 0) dieser MBIM_MS_SAR_CONFIG-Struktur bis zu einer MBIM_MS_SAR_CONFIG_STATE-Struktur berechnet wird. Weitere Informationen finden Sie in der Tabelle MBIM_MS_SAR_CONFIG_STATE. Das zweite Element des Paars ist eine 4-Byte-Größe eines Zeigers auf die entsprechende MBIM_MS_SAR_CONFIG_STATE-Struktur.
16 + (8 * EG) DataBuffer DATABUFFER Array von MBIM_MS_SAR_CONFIG_STATE-Strukturen.

Die folgende MBIM_MS_SAR_HARDWARE_WIFI_INTEGRATION-Struktur wird in der vorherigen Tabelle verwendet. Sie gibt an, ob Wi-Fi und Mobilfunk auf Hardwareebene integriert sind.

type Wert Beschreibung
MBIMMsSARWifiHardwareIntegrated 0 Wi-Fi und Mobilfunkmodem SAR ist in das Gerät integriert.
MBIMMsSARWifiHardwareNotIntegrated 1 Wi-Fi- und Mobilfunkmodem-SAR ist nicht in das Gerät integriert.

Benachrichtigung

Nicht zutreffend

Statuscodes

Fehlercode Beschreibung
MBIM_STATUS_SUCCESS Die Anforderung wurde erfolgreich verarbeitet.
MBIM_STATUS_BUSY Das Gerät ist derzeit ausgelastet.
MBIM_STATUS_FAILURE Fehler bei der Anforderung.
MBIM_STATUS_NO_DEVICE_SUPPORT Dieser Befehl wird vom Gerät nicht unterstützt.
MBIM_STATUS_INVALID_PARAMETERS Der Vorgang ist aufgrund ungültiger Parameter fehlgeschlagen.
MBIM_STATUS_OPERATION_NOT_ALLOWED Der Vorgang ist fehlgeschlagen, weil der Vorgang nicht zulässig ist.

MBIM_CID_MS_TRANSMISSION_STATUS

Beschreibung

Dieser Befehl wird verwendet, um die Benachrichtigung über das Modem beim Übertragungszustand zu aktivieren oder zu deaktivieren. Es handelt sich um einen Pro-Executor-Befehl, da jeder Executor einen anderen Kanalübertragungsstatus haben kann. Beispielsweise kann ein Dual-SIM-Modem ein Modem mit LTE und das andere auf GSM haben. Gleichzeitig kann es verwendet werden, um die Übertragung status des Modems bereitzustellen. Diese Benachrichtigung kann für Clients verwendet werden, die daran interessiert sind, ob das Modem Daten überträgt oder nicht. Das Modem sollte bei jedem Start oder Ende des TX-Datenverkehrs eine Benachrichtigung bereitstellen. Wenn der TX-Zyklus zu klein ist und nicht in Echtzeit für den Host bereitgestellt werden kann, kann der TX-Zustand für eine festgelegte Zeit mit einem Hysterese-Timer als aktiv gehalten werden, bevor er eine Aktualisierung des Zustands sendet. Beispielsweise kann es sein, dass ein kurzer TX-Burst aufgetreten ist und das Modem die Start- und Endbenachrichtigung nicht rechtzeitig bereitstellen konnte. Das Modem sollte eine Benachrichtigung senden, wenn der TX-Datenverkehr beginnt, und sollte seinen TX-Datenverkehr während des Hysterese-Timers weiterhin überwachen. Wenn innerhalb des Zeitrahmens des Zeitgebers kein TX-Datenverkehr mehr generiert wurde, sollte gemeldet werden, dass der TX-Datenverkehr beendet wurde.

Dies ist sehr nützlich in Szenarien, in denen sowohl Wi-Fi als auch LTE verbunden sind. Wenn sich sowohl LTE als auch Wi-Fi in einem Übertragungszustand befinden und die Nähe erkannt wurde, ist möglicherweise Wi-Fi Zurückschalten erforderlich. Wenn LTE sich nicht im Übertragungszustand befindet, aber Wi-Fi, ist möglicherweise keine Wi-Fi Rückschaltung erforderlich. Dies gilt für allgemeine WLAN-/LTE-Verbindungen und mobile Hot Spot-Szenarien.

Der Wi-Fi Mechanismus und Befehl zum Zurücksetzen liegt außerhalb des Gültigkeitsbereichs dieser Spezifikation.

OEMs, die diesen Befehl verwenden, sollten sich der potenziellen Auswirkungen auf die Leistung bewusst sein, da das Modem jederzeit übertragungsbezogene Benachrichtigungen sendet, einschließlich reduzierter Leistungszustände. Das Betriebssystem lässt standardmäßig nicht zu, dass diese Benachrichtigung den AP während des modernen Standbymodus aktiviert, um die Energieleistung zu verbessern.

Abfrage

Der InformationBuffer auf MBIM_COMMAND_MSG wird nicht verwendet. MBIM_MS_TRANSMISSION_STATUS_INFO wird im InformationBuffer von MBIM_COMMAND_DONE zurückgegeben.

Set

Der InformationBuffer auf MBIM_COMMAND_MSG enthält MBIM_MS_SET_TRANSMISSION_STATUS. MBIM_MS_TRANSMISSION_STATUS_INFO wird im InformationBuffer von MBIM_COMMAND_DONE zurückgegeben.

Nicht angeforderte Ereignisse

Nicht angeforderte Ereignisse enthalten MBIM_MS_TRANSMISSION_STATUS_INFO und werden gesendet, wenn eine Änderung an den aktiven Over-the-Air-Kanälen (OTA) erfolgt. Wenn ein Modem beispielsweise mit dem Hochladen von Paketdaten begonnen hat, müsste es uplink-Kanäle einrichten, wenn es den Netzwerkdatenkanal verwendet, um Nutzlasten hochladen zu können. Dies würde auslösen, dass die Benachrichtigung für das Betriebssystem bereitgestellt wird.

Parameter

Vorgang Set Abfrage Benachrichtigung
Befehl MBIM_MS_SET_TRANSMISSION_STATUS Nicht zutreffend Nicht verfügbar
Antwort MBIM_MS_TRANSMISSION_STATUS_INFO MBIM_MS_TRANSMISSION_STATUS_INFO MBIM_MS_TRANSMISSION_STATUS_INFO

Datenstrukturen

Abfrage

Der InformationBuffer auf MBIM_COMMAND_MSG wird nicht verwendet. MBIM_MS_TRANSMISSION_STATUS_INFO wird im InformationBuffer von MBIM_COMMAND_DONE zurückgegeben.

Set

Die folgende MBIM_MS_SET_TRANSMISSION_STATUS Struktur wird im InformationBuffer verwendet.

Offset Size Feld type Beschreibung
0 4 ChannelNotification MBIM_MS_TRANSMISSION_STATUS_NOTIFICATION Weitere Informationen finden Sie in der Tabelle MBIM_MS_TRANSMISSION_STATUS_NOTIFICATION.
4 4 HysteresisTimer UINT32 Hystereseindikator, der vom Modem verwendet wird, um zu bestimmen, wann mbIMMsTransmissionStateInactive an den Host gesendet werden soll. Dieser Wert ist der Timer, den das Modem als kontinuierliche Aktivität ohne Übertragung sieht, bevor es einen OFF-Indikator an den Host sendet. Dieser Timer sollte in Sekunden zwischen 1 Sekunde und 5 Sekunden festgelegt werden.

Die folgende MBIM_MS_TRANSMISSION_STATUS_NOTIFICATION-Struktur wird in der obigen Tabelle verwendet. Es gibt an, ob die Modemkanalübertragung deaktiviert oder aktiviert ist.

type Wert Beschreibung
MBIMMsTransmissionNotificationDisabled 0 Modemkanalübertragung status Benachrichtigung deaktiviert.
MBIMMsTransmissionNotificationEnabled 1 Modemkanalübertragung status Benachrichtigung aktiviert.

Antwort

Die folgende MBIM_MS_TRANSMISSION_STATUS_INFO-Struktur wird für die Antwort verwendet.

Offset Size Feld type Beschreibung
0 4 ChannelNotification MBIM_MS_TRANSMISSION_STATUS_NOTIFICATION Weitere Informationen finden Sie in der Tabelle MBIM_MS_TRANSMISSION_STATUS_NOTIFICATION.
4 4 TransmissionStatus MBIM_MS_TRANSMISSION_STATUS Weitere Informationen finden Sie in der Tabelle MBIM_MS_TRANSMISSION_STATUS. Dies gibt an, ob das Modem alle 5 Sekunden TX-Datenverkehr aufweist.
8 4 HysteresisTimer UINT32 Hystereseindikator, der vom Modem verwendet wird, um zu bestimmen, wann mbIMMsTransmissionStateInactive an den Host gesendet werden soll. Dieser Wert ist der Timer, den das Modem als kontinuierliche Aktivität ohne Übertragung sieht, bevor es einen OFF-Indikator an den Host sendet. Dieser Timer sollte in Sekunden zwischen 1 Sekunde und 5 Sekunden festgelegt werden.

Die folgende MBIM_MS_TRANSMISSION_STATUS-Struktur wird in der vorherigen Tabelle verwendet. Es gibt an, ob das Modem alle 5 Sekunden TX-Datenverkehr hat.

type Wert Beschreibung
MBIMMsTransmissionStateInactive 0 Das Modem überträgt daten nicht aktiv ohne kontinuierlichen Übertragungsablauf für den letzten HysteresisTimer-Wert.
MBIMMsTransmissionStateActive 1 Das Modem überträgt aktiv Daten.

Benachrichtigung

Weitere Informationen finden Sie in der Tabelle MBIM_MS_TRANSMISSION_STATUS_INFO.

Statuscodes

Fehlercode Beschreibung
MBIM_STATUS_SUCCESS Die Anforderung wurde erfolgreich verarbeitet.
MBIM_STATUS_BUSY Das Gerät ist derzeit ausgelastet.
MBIM_STATUS_FAILURE Fehler bei der Anforderung.
MBIM_STATUS_NO_DEVICE_SUPPORT Dieser Befehl wird vom Gerät nicht unterstützt.
MBIM_STATUS_INVALID_PARAMETERS Der Vorgang ist aufgrund ungültiger Parameter fehlgeschlagen.
MBIM_STATUS_OPERATION_NOT_ALLOWED Der Vorgang ist fehlgeschlagen, weil der Vorgang nicht zulässig ist.

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.TestSAR.

Dieser Test enthält die folgenden Tests:

Testname Beschreibung
QuerySarConfig Dieser Test überprüft, ob der Test SAR-Konfigurationen erfolgreich abfragen kann.
SetSarConfig Dieser Test überprüft, ob der Test SAR-Konfigurationen erfolgreich festlegen kann.
QuerySarTransmissionStatus Dieser Test überprüft, ob der Test die SAR-Übertragung erfolgreich status abfragen kann.
SetSarTransmissionStatus Dieser Test überprüft, ob der Test die SAR-Übertragung erfolgreich status festlegen kann.

WinRT-API

MobileBroadbandSarManager

Protokollanalyse

Protokolle können mithilfe der folgenden Anweisungen gesammelt und decodiert werden: MB Collecting Logs.

Wichtige Anbieter und entsprechende Schlüsselwörter

Microsoft-Windows-WWAN-SVC-EVENTS (3cb40aaa-1145-4fb8-b27b-7e30f0454316)

Schlüsselwörter zum Filtern:

  1. SarConfig
  2. CWwanSar::OnNdisNotification
  3. LoadSemiStaticOEMSARTable
  4. AttemptAutoConfigureSAR
  5. PreCheckSemiStaticOEMSARTable
  6. WwanIntfOpcodeSarConfig
  7. WwanIntfOpcodeSarTransmissionStatus
  8. WwanMsmEventTypeSarConfig
  9. WwanMsmEventTypeSarTransmissionStatus

MobileBroadband WinRT WPP (56dd9c57-06cc-48ba-b123-876a6495ba13)

Schlüsselwörter zum Filtern: MobileBroadbandSarManager

WwanProtDIM (3a07e1ba-3a6b-49bf-8056-c105b54dd7fb)

Schlüsselwörter zum Filtern:

  1. NDIS_WWAN_SAR_CONFIG_INFO
  2. SarMode
  3. NDIS_WWAN_SAR_TRANSMISSION_STATUS_INFO
  4. HysteresisTimer

Weitere Informationen

Anpassen einer SAR-Zuordnungstabelle (Spezifische Absorptionsrate)