Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Dado que la especificación de errata MBIM 1.0 carece de un mecanismo para cambiar los CID existentes con cargas útiles nuevas o modificadas, Windows 10, versión 1903, introduce la Extensión 2.0 de MBIM 1.0 para ampliar la interfaz y admitir 5G.
Esquema de control de versiones
Nota:
En esta sección, el término versión MBIMEx hace referencia al número de versión de extensiones de MBIM.
El host aprende la versión MBIMEx de un dispositivo de dos maneras:
- DESCRIPTOR FUNCIONAL EXTENDIDO DE MBIM.
- El mensaje opcional MBM_CID_VERSION, si el dispositivo lo admite y declara compatibilidad con él.
Si estos dos son diferentes, la versión superior dicta la versión MBIMEx mientras el dispositivo permanece enumerado en el host. La versión de MBIMEx superior se conoce como la versión mbIMEx anunciada del dispositivo. La versión MBIMEx anunciada de un dispositivo puede ser inferior a su versión nativa de MBIMEx, que es la versión MBIMEx más alta que admite el dispositivo. Los dispositivos pueden aprender explícitamente la versión MBIMEx del host a través del mensaje MBIM_CID_VERSION.
En cualquier lanzamiento, el host siempre interroga al dispositivo acerca de los servicios y CIDs compatibles mediante MBIM_CID_DEVICE_SERVICES al principio de la secuencia de inicialización del dispositivo.
Si un dispositivo admite MBIM_CID_VERSION y anuncia su compatibilidad en la respuesta de consulta de MBIM_CID_DEVICE_SERVICES, un host que no entiende MBIM_CID_VERSION o tiene una versión mbIMEx inferior a la 2.0 la omite. Mientras tanto, un host que comprende MBIM_CID_VERSION y tiene una versión nativa de MBIMEx de 2.0 o superior envía un mensaje MBIM_CID_VERSION al dispositivo con la versión nativa de MBIMEx del host, y el CID es el primer CID que se envía al dispositivo tras recibir la respuesta MBIM_CID_DEVICE_SERVICES.
Si el primer CID que recibe el dispositivo del host después de responder a la consulta MBIM_CID_DEVICE_SERVICES es MBIM_CID_VERSION, el dispositivo conoce la versión MBIMEx del host.
Si el primer CID que recibe el dispositivo del host después de responder a la consulta MBIM_CID_DEVICE_SERVICES es cualquier otro CID, el dispositivo asume que la versión nativa de MBIMEx del host es 1.0.
Si el dispositivo no admite MBIM_CID_VERSION, no responderá a la consulta de MBIM_CID_DEVICE_SERVICES con MBIM_CID_VERSION. Por lo tanto, el host no enviará un mensaje de MBIM_CID_VERSION y supone que la versión nativa de MBIMEx del dispositivo es 1.0.
En cuanto a características, una versión mbIMEx superior es un superconjunto de todas las versiones de MBIMEx inferiores. Un host admite todos los dispositivos con una versión MBIMEx anunciada igual o inferior a la versión nativa de MBIMEx del host. Si la versión MBIMEx anunciada de un dispositivo es superior a la versión de MBIMEx nativa de un host, no se espera que el host admita el dispositivo y el comportamiento exacto del host en esta situación no está definido.
Un dispositivo que pretende trabajar con hosts anteriores debe anunciar inicialmente MBIMEx versión 1.0 o la versión MBIMEx de host más baja con la que el dispositivo está pensado para funcionar en un descriptor funcional extendido de MBIM.
Si el host envía MBIM_CID_VERSION con una versión de MBIMEx superior a la anunciada inicialmente por el dispositivo, entonces el dispositivo debería indicar una versión MBIMEx superior en la respuesta MBIM_CID_VERSION, hasta el menor valor entre la versión MBIMEx nativa del host y la versión MBIMEx nativa del dispositivo.
Nota:
Por ejemplo, un dispositivo admite MBIMEx versión 2.0, pero está pensado para trabajar con versiones anteriores del sistema operativo que no admiten MBIMEx 2.0. El dispositivo anuncia inicialmente MBIMEx versión 1.0 en los descriptores USB y anuncia compatibilidad con el MBIM_CID_VERSION opcional. Cuando se inserta en un host que ejecuta Windows 10, versión 1803, el host no entiende MBIM_CID_VERSION y no envía MBIM_CID_VERSION al dispositivo. Para el host, la versión MBIMEx del dispositivo es 1.0. El host sigue enviando otros CIDs en la secuencia de inicialización. Al recibir CID que no sean MBIM_CID_VERSION, el dispositivo sabe que el host admite MBIMEx versión 1.0. Ambas partes se ajustan a la versión 1.0 de MBIMEx. Más adelante, cuando el mismo dispositivo se inserta en un host que ejecuta Windows 10, versión 1903 con una versión mbIMEx nativa de 2.0, el host envía MBIM_CID_VERSION al dispositivo para informar de que la versión nativa de MBIMEx del host es 2.0. El dispositivo envía MBIM_CID_VERSION de nuevo en respuesta con la versión 2.0 anunciada del dispositivo MBIMEx. Desde allí, ambos lados avanzan para conformarse con MBIMEx versión 2.0.
En la tabla siguiente se muestra una matriz de compatibilidad con tres hosts hipotéticos y tres dispositivos hipotéticos, cada uno con su versión mbIMEx nativa indicada. Los dispositivos anuncian MBIMEx versión 1.0 inicialmente en el descriptor USB. La matriz muestra cómo se comporta cada uno de los dispositivos con cada uno de los hosts.
| Dispositivo (a continuación) / Host (derecha) | Windows 10, versión 1809 o anterior (MBIMEx nativa versión 1.0) | Windows 10, versión 1903 y posteriores (MBIMEx versión 2.0) |
|---|---|---|
| Dispositivo 4G MBIMEx nativa versión 1.0 |
El dispositivo anuncia inicialmente MBIMEx 1.0. No intercambio de MBIM_CID_VERSION. Dispositivo y host compatibles. Funciona de forma predeterminada con MBIMEx versión 1.0. | El dispositivo anuncia inicialmente MBIMEx 1.0. No intercambio de MBIM_CID_VERSION. El host funciona con el dispositivo mediante MBIMEx 1.0. |
| Dispositivo NSA 5G MBIMEx nativo, versión 2.0 |
El dispositivo anuncia inicialmente MBIMEx 1.0. No intercambio de MBIM_CID_VERSION. El dispositivo sabe que el host tiene MBIMEx 1.0 y continúa con MBIMEx 1.0. | El dispositivo anuncia inicialmente MBIMEx 1.0. Host envía MBIM_CID_VERSION para informar al dispositivo de que el host admite MBIMEx 2.0. El dispositivo responde con MBIMEx 2.0. Ambos lados continúan con MBIMEx 2.0. |
En la tabla siguiente se enumeran todos los CID existentes que se modifican en MBIMEx versión 2.0 y sus cargas modificadas. Todas las cargas no mencionadas en estos CID y todos los demás CID que no se mencionan en la tabla se trasladan desde la versión 1.0 de MBIMEx y permanecen sin cambios.
| CID | Carga |
|---|---|
| MBIM_CID_REGISTER_STATE | MBIM_REGISTRATION_STATE_INFO_V2 |
| MBIM_CID_PACKET_SERVICE | MBIM_PACKET_SERVICE_INFO_V2 |
| MBIM_CID_SIGNAL_STATE | MBIM_SIGNAL_STATE_INFO_V2 |
Servicio MBIM
| Nombre del servicio | Identificador Único Universal (UUID) | Valor UUID |
|---|---|---|
| Extensiones básicas de conectividad IP de Microsoft | UUID_BASIC_CONNECT_EXTENSIONS | 3D01DCC5-FEF5-4D05-9D3A-BEF7058E9AAF |
MBIM_CID_VERSION
Para los controladores MBB que admiten la extensión 2.0 o posterior de MBIM, MBIM_CID_VERSION es un comando obligatorio para intercambiar información de versión de MBIM entre el host y el dispositivo. En el caso de los dispositivos en el mercado con controladores que no reconocen este CID, el host supondrá y proporcionará compatibilidad retroactiva.
El host envía este comando como una consulta si es compatible con el dispositivo. La consulta contiene el número de versión de MBIM y el número de versión de extensiones de MBIM que admite actualmente el host.
En el lado del dispositivo, el dispositivo ajusta el número de versión de MBIM anunciado y el número de versión de extensiones de MBIM en función de las reglas definidas en el esquema de control de versiones y, a continuación, los envía en la respuesta al host.
Este comando se define en el servicio Basic Connect Extensions .
| CID | Código de comando | Identificador Único Universal (UUID) |
|---|---|---|
| MBIM_CID_VERSION | 15 | 3d01dcc5-fef5-4d05-0d3abef7058e9aaf |
Parámetros
| Operación | Establecer | Consulta | Notificación |
|---|---|---|---|
| Comando | No aplicable | MBIM_VERSION_INFO | No aplicable |
| Respuesta | No aplicable | MBIM_VERSION_INFO | No aplicable |
Consulta
Informa al dispositivo del número de versión nativo de MBIM del host y del número de versión de Extensiones de MBIM. InformationBuffer contiene la siguiente estructura MBIM_VERSION_INFO.
| Offset | Tamaño | Campo | Tipo | Descripción |
|---|---|---|---|---|
| 0 | 2 | bcdMBIMVersion | UINT16 | Número de versión de MBIM del remitente en BCD, con un separador decimal implícito entre bits 7 y 8. Por ejemplo: 0x0100 == 1.00 == 1.0. Se trata de una constante little-endian, por lo que los bytes son 0x00 y luego 0x01. |
| 2 | 2 | bcdMBIMExtendedVersion | UINT16 | Número de versión de extensiones MBIM del remitente en BCD, con un separador decimal implícito entre bits 7 y 8. Por ejemplo: 0x0100 == 1.00 == 1.0. Se trata de una constante little-endian, por lo que los bytes son 0x00 y luego 0x01. |
Establecer
No aplicable.
Respuesta
El "InformationBuffer" en MBIM_COMMAND_DONE contiene una estructura MBIM_VERSION_INFO.
Eventos no solicitados
No aplicable.
Códigos de estado
Este CID solo usa códigos de estado genéricos definidos en la sección 9.4.5 de la revisión 1.0 de la especificación MBIM.
MBIM_CID_MS_DEVICE_CAPS_V2
Este CID es el mismo definido en las operaciones de MB Multi-SIM, que a su vez es una extensión de MBIM_CID_MS_DEVICE_CAPS según lo definido en la sección 10.5.1 de la revisión 1.0 de la especificación MBIM. Para MBIM Extensions release 2.0, hay nuevas clases de datos definidas en la tabla MBIM_DATA_CLASS que permiten al dispositivo notificar sus funcionalidades 5G. MBIMDataClass5G_NSA indica que el dispositivo admite 5G no independiente (NSA), definido en 3GPP TS 37.340 y MBIMDataClass5G_SA indica que el dispositivo admite 5G Independiente (SA), también definido en 3GPP TS 37.340.
Si el dispositivo admite ambas clases de datos nuevas, se establecerán ambos bits.
MBIM_DATA_CLASS
| Tipos | Máscara |
|---|---|
| MBIMDataClassNone | 0h |
| MBIMDataClassGPRS | 1 h |
| MBIMDataClassEDGE | 2h |
| MBIMDataClassUMTS | 4h |
| MBIMDataClassHSDPA | 8h |
| MBIMDataClassHSUPA | 10h |
| MBIMDataClassLTE | 20h |
| MBIMDataClass5G_NSA | 40h |
| MBIMDataClass5G_SA | 80h |
| Reservado | 100h-8000h |
| MBIMDataClass1XRTT | 10000 h |
| MBIMDataClass1XEVDO | 20000 h |
| MBIMDataClass1XEVDORevA | 40000 horas |
| MBIMDataClass1XEVDV | 80,000 horas |
| MBIMDataClass3XRTT | 100000h |
| MBIMDataClass1XEVDORevB | 200000 horas |
| MBIMDataClassUMB | 400000 h |
| Reservado | 800000-40000000h |
| MBIMDataClassCustom | 80000000h |
MBIM_CID_REGISTER_STATE
Este comando es una extensión para la MBIM_CID_REGISTER_STATE CID ya definida en la revisión 1.0 de la especificación MBIM. Esta extensión agrega un nuevo miembro llamado PreferredDataClasses para la estructura de respuesta.
Parámetros
| Operación | Establecer | Consulta | Notificación |
|---|---|---|---|
| Comando | MBIM_SET_REGISTRATION_STATE | Empty | No aplicable |
| Respuesta | MBIM_REGISTRATION_STATE_INFO_V2 | MBIM_REGISTRATION_STATE_INFO_V2 | MBIM_REGISTRATION_STATE_INFO_V2 |
Consulta
InformationBuffer es null y InformationBufferLength es cero.
Establecer
Establece el estado de registro. La información es la misma que se describe en la revisión 1.0 de la especificación MBIM.
Respuesta
El InformationBuffer en MBIM_COMMAND_DONE contiene la siguiente estructura MBIM_REGISTRATION_STATE_INFO_V2. En comparación con la estructura MBIM_REGISTRATION_STATE_INFO definida en la sección 10.5.10.6 de la revisión 1.0 de la especificación MBIM, la estructura siguiente tiene un nuevo campo PreferredDataClasses . A menos que se indique aquí, las descripciones de campo de la tabla 10-55 de la revisión 1.0 de la especificación MBIM se aplican a esta estructura.
MBIM_REGISTRATION_STATE_INFO_V2
| Offset | Tamaño | Campo | Tipo | Descripción |
|---|---|---|---|---|
| 0 | 4 | NwError | UINT32 | Un error específico de la red. La tabla 10-44 de la revisión 1.0 de la especificación MBIM documenta los códigos de causa de NwError. |
| 4 | 4 | RegisterState | MBIM_REGISTER_STATE | Vea la tabla 10-46 en la revisión 1.0 de la especificación MBIM. |
| 8 | 4 | RegisterMode | MBIM_REGISTER_MODE | Consulte la tabla 10-47 en la revisión 1.0 de la especificación MBIM. |
| 12 | 4 | AvailableDataClass | UINT32 | Mapa de bits de los valores de MBIM_DATA_CLASS que representa las clases de datos admitidas en la red registrada, para la celda en la que se registra el dispositivo. Este valor se establece en MBIMDataClassNone si RegisterState no es MBIMRegisterStateHome, MBIMRegisterStateRoaming o MBIMRegisterStatePartner. |
| 16 | 4 | CurrentCellularClass | MBIM_CELLULAR_CLASS | Indica la clase celular actual utilizada para una función multimodo. Consulte la tabla 10-8 de la revisión 1.0 de la especificación MBIM para obtener más información. Para una función de modo único, esto es lo mismo que la clase de telefonía móvil notificada en MBIM_CID_DEVICE_CAPS. Para las funciones multimodo, se indica una transición de CDMA a GSM o viceversa con un CurrentCellularClass actualizado. |
| 20 | 4 | ProviderIdOffset | OFFSET | El desplazamiento en bytes, calculado desde el principio de esta estructura, hasta una cadena de caracteres numéricos (0-9) llamada ProviderId que representa la identidad del proveedor de red. Para las redes basadas en GSM, esta cadena es una concatenación de un código de país móvil de tres dígitos (MCC) y un código de red móvil de dos o tres dígitos (MNC). Los operadores basados en GSM pueden tener más de un MNC y, por tanto, más de un ProviderId. Para las redes basadas en CDMA, esta cadena es un identificador del sistema de cinco dígitos (SID). Por lo general, un operador basado en CDMA tiene más de un SID. Normalmente, un operador tiene un SID para cada mercado que normalmente se divide geográficamente dentro de una nación por normativas, como áreas estadísticas metropolitanas (MSA) en los Estados Unidos. Los dispositivos basados en CDMA deben especificar MBIM_CDMA_DEFAULT_PROVIDER_ID si esta información no está disponible. Al procesar una solicitud de consulta y el estado de registro está en modo de registro automático, este miembro contiene el identificador de proveedor con el que el dispositivo está asociado actualmente (si procede). Cuando el estado de registro está en modo de registro manual, este miembro contiene el identificador de proveedor al que se solicita que se registre el dispositivo (incluso si el proveedor no está disponible). Al procesar una solicitud establecida y el estado de registro está en modo manual, contiene el identificador de proveedor seleccionado por el host con el que registrar el dispositivo. Cuando el estado de registro está en modo de registro automático, se omite este parámetro. Si el identificador del proveedor no está disponible, los proveedores CDMA 1xRTT deben configurarse en MBIM_CDMA_DEFAULT_PROVIDER_ID. |
| veinticuatro | 4 | TamañoDelIdDelProveedor | TAMAÑO(0..12) | Tamaño, en bytes, para ProviderId. |
| 28 | 4 | ProviderNameOffset | OFFSET | El desplazamiento en bytes, calculado desde el principio de esta estructura, a una cadena llamada ProviderName que representa el nombre del proveedor de red. Este miembro está limitado a, como máximo, MBIM_PROVIDERNAME_LEN caracteres. Para las redes basadas en GSM, si la presentación preferida de iniciales de país y nombre de red móvil (PCCI&N) tiene más de veinte caracteres, el dispositivo debe abreviar el nombre de red. Este miembro se omite cuando el host establece la lista de proveedores preferidos. Los dispositivos deben especificar una cadena NULL para los dispositivos que no tengan esta información. |
| 32 | 4 | TamañoNombreProveedor | TAMAÑO(0..40) | Tamaño, en bytes, para ProviderName. |
| 36 | 4 | RoamingTextOffset | OFFSET | Desplazamiento en bytes, calculado desde el principio de esta estructura, a una cadena denominada RoamingText para informar a un usuario de que el dispositivo está en itinerancia. Este miembro está limitado a, como máximo, 63 caracteres. Este texto debe proporcionar información adicional al usuario cuando el estado de registro sea MBIMRegisterStatePartner o MBIMRegisterStateRoaming. Este miembro es opcional. |
| 40 | 4 | Tamaño de texto en itinerancia | SIZE(0..126) | Tamaño, en bytes, para RoamingText. |
| 44 | 4 | Indicador de Registro | MBIM_REGISTRATION_FLAGS | Indicadores establecidos según la tabla 10-48 en la revisión 1.0 de la especificación MBIM. |
| 48 | 4 | PreferredDataClass | UINT32 | Mapa de bits de los valores de MBIM_DATA_CLASS que representan las clases de datos habilitadas en el dispositivo. El dispositivo solo puede funcionar con las clases de datos habilitadas. |
| Dinámico | 4 | Búfer de Datos | DATABUFFER | Búfer de datos que contiene ProviderId, ProviderName y RoamingText. |
Eventos no solicitados
Las notificaciones contienen una estructura MBIM_REGISTRATION_STATE_INFO_V2.
Códigos de estado
Este CID solo usa códigos de estado genéricos definidos en la sección 9.4.5 de la revisión 1.0 de la especificación MBIM.
MBIM_CID_PACKET_SERVICE
Este comando es una extensión para el MBIM_CID_PACKET_SERVICE existente definido en la revisión 1.0 de la especificación MBIM.
Esta extensión agrega un nuevo miembro llamado FrequencyRange para la estructura de respuesta y ha cambiado el nombre del miembro HighestAvailableDataClass a CurrentDataClass para aclarar su propósito.
CurrentDataClass indica la tecnología de acceso radio (RAT) con la que el dispositivo está registrado actualmente. Contiene un valor único de MBIM_DATA_CLASS.
FrequencyRange indica el intervalo de frecuencia que el dispositivo está usando actualmente. Esto solo es válido si el campo CurrentDataClass indica que el bit MBIMDataClass5G_NSA o MBIMDataClass5G_SA está activado.
Parámetros
| Operación | Establecer | Consulta | Notificación |
|---|---|---|---|
| Comando | MBIM_SET_PACKET_SERVICE | Empty | No aplicable |
| Respuesta | MBIM_PACKET_SERVICE_INFO_V2 | MBIM_PACKET_SERVICE_INFO_V2 | MBIM_PACKET_SERVICE_INFO_V2 |
Consulta
InformationBuffer es null y InformationBufferLength es cero.
Establecer
La información de los comandos set se describe en la revisión 1.0 de la especificación MBIM.
Respuesta
InformationBuffer de MBIM_COMMAND_DONE contiene una estructura MBIM_PACKET_SERVICE_INFO_V2. En comparación con la estructura de MBIM_PACKET_SERVICE_INFO definida en la sección 10.5.10.6 de la revisión 1.0 de la especificación MBIM, esta nueva estructura tiene los campos CurrentDataClass y FrequencyRange . A menos que se indique aquí, las descripciones de campo de la tabla 10-55 de la revisión 1.0 de la especificación MBIM se aplican aquí.
MBIM_PACKET_SERVICE_INFO_V2
| Offset | Tamaño | Campo | Tipo | Descripción |
|---|---|---|---|---|
| 0 | 4 | NwError | UINT32 | Un error específico de la red. La tabla 10-44 de la revisión 1.0 de la especificación MBIM documenta los códigos de causa de NwError. |
| 4 | 4 | EstadoDelServicioDePaquetes | MBIM_ESTADO_DEL_SERVICIO_DE_PAQUETES | Consulte la tabla 10-53 en la revisión 1.0 de la especificación MBIM. |
| 8 | 4 | CurrentDataClass | MBIM_DATA_CLASS | La clase de datos actual de la celda actual, especificada según MBIM_DATA_CLASS. Las funciones deben establecer este miembro en MBIMDataClassNone si la función no está en el estado del servicio de paquetes adjunto. Excepto para HSPA (en otras palabras, HSUPA y HSDPA) y 5G DC, la función establece este miembro en un solo valor de MBIM_DATA_CLASS. Para los servicios de datos HSPA, las funciones especifican un OR bit a bit de MBIMDataClass HSDPA y MBIMDataClassHSUPA. En el caso de celdas que admiten HSDPA pero no HSUPA, solo se indica HSDPA (lo que implica la clase de datos UMTS para enlace ascendente). Cada vez que cambia la clase de datos actual, las funciones envían una notificación que indica el nuevo valor de CurrentDataClass. |
| 12 | 8 | Velocidad de subida | UINT64 | Contiene la tasa de bits de enlace ascendente, en bits por segundo. |
| 20 | 8 | Velocidad de descarga | UINT64 | Contiene la velocidad de bits de vínculo inferior, en bits por segundo. |
| 38 | 4 | FrequencyRange | MBIM_FREQUENCY_RANGE | Máscara de bits de valores en MBIM_FREQUENCY_RANGE que representa los rangos de frecuencia que el dispositivo está utilizando actualmente. Esto solo es válido si CurrentDataClass es MBIMDataClass5G_NSA o MBIMDataClass5G_SA. |
MBIM_FREQUENCY_RANGE
La enumeración siguiente se usa como un valor en la estructura de MBIM_PACKET_SERVICE_INFO_V2 anterior.
| Tipo | Importancia | Descripción |
|---|---|---|
| MBIMFrequencyRangeUnknown | 0 | Si el tipo del sistema no es 5G. |
| MBIMFrequencyRange1 | 1 | Rango de frecuencia 1 (FR1) en 3GPP TS 38.101-1 (Sub-6G). |
| MBIMFrequencyRange2 | 2 | FR2 en 3GPP TS 38.101-2 (mmWave). |
| Rango de Frecuencia MBIM1 y Rango2 | 3 | Si están conectados los portadores FR1 y FR2. |
Eventos no solicitados
Las notificaciones contienen una estructura de MBIM_PACKET_SERVICE_INFO_V2.
Códigos de estado
Este CID solo usa códigos de estado genéricos definidos en la sección 9.4.5 de la revisión 1.0 de la especificación MBIM.
MBIM_CID_SIGNAL_STATE
Este CID es una extensión para MBIM_CID_SIGNAL_STATE, introduciendo RSRP y SNR para los criterios de estado de señal. Esta nueva extensión solo es válida si el dispositivo indica la compatibilidad de MBIM Extensions versión 2.0. Esta extensión es obligatoria si el módem admite clases de datos MBIMDataClass5G_(N)SA.
Los campos RSRP y SNR solo son válidos si el SystemType correspondiente es MGBIMDataClassLTE o MBIMDataClass5G_(N)SA. SI el módem informa de RSRP o SNR, el campo RSSI se establecerá en un valor de 99.
Si systemType correspondiente es MBIMDataClass5G_(N)SA, el campo RSRP es obligatorio y el campo SNR es opcional. Si el systemType correspondiente es MBIMDataClassLTE, los campos RSRP y SNR son opcionales y el campo RSSI se puede usar en su lugar. En este caso, los campos RSRP y SNR se pueden omitir estableciendo un valor cero (0) para los miembros RsrpSnrOffset y RsrpSnrSize .
Parámetros
| Operación | Establecer | Consulta | Notificación |
|---|---|---|---|
| Comando | MBIM_SET_SIGNAL_STATE | Empty | No aplicable |
| Respuesta | MBIM_SIGNAL_STATE_INFO_V2 | MBIM_SIGNAL_STATE_INFO_V2 | MBIM_SIGNAL_STATE_INFO_V2 |
Consulta
InformationBuffer es null y InformationBufferLength es cero.
Establecer
La información de los comandos set se describe en la revisión 1.0 de la especificación MBIM.
Respuesta
El InformationBuffer en MBIM_COMMAND_DONE contiene la siguiente estructura MBIM_SIGNAL_STATE_INFO_V2.
MBIM_SIGNAL_STATE_INFO_V2
| Offset | Tamaño | Campo | Tipo | Descripción |
|---|---|---|---|---|
| 0 | 4 | RSSI | UINT32 | Consulte la tabla 10.58 en la revisión 1.0 de la especificación MBIM. |
| 4 | 4 | Tasa de error | UINT32 | Consulte la tabla 10.58 en la revisión 1.0 de la especificación MBIM. |
| 8 | 4 | IntervaloDeIntensidadDeSeñal | UINT32 | Intervalo de informes, en segundos. |
| 12 | 4 | Umbral de RSSI | UINT32 | La diferencia en los valores codificados RSSI que desencadena un informe. Use 0xFFFFFFFF si esto no importa. |
| 16 | 4 | ErrorRateThreshold | UINT32 | La diferencia en los valores codificados de ErrorRate que desencadenan un informe. Use 0xFFFFFFFF si esto no importa. |
| 20 | 4 | RsrpSnrOffset | OFFSET | Desplazamiento en bytes, calculado desde el inicio de esta estructura, hasta el búfer que contiene información de señalización de RSRP y SNR. Este miembro puede ser NULL cuando no hay ninguna información de señalización de RSRP y SNR disponible. |
| veinticuatro | 4 | RsrpSnrSize | TAMAÑO | Tamaño, en bytes, del búfer que contiene la información de señalización de RSRP y SNR en el formato de una estructura de MBIM_RSRP_SNR_INFO. |
| 4 | Búfer de Datos | DATABUFFER | Estructura MBIM_RSRP_SNR. |
MBIM_RSRP_SNR
La siguiente estructura MBIM_RSRP_SNR se usa en DataBuffer de una estructura de MBIM_SIGNAL_STATE_INFO_V2.
| Offset | Tamaño | Campo | Tipo | Descripción |
|---|---|---|---|---|
| 0 | 4 | ElementCount | UINT32 | Cantidad de las entradas RSRP_SNR que siguen a este elemento. |
| 4 | 4 | Búfer de Datos | DATABUFFER | Matriz de registros RSRP_SNR, cada uno especificado como una estructura MBIM_RSRP_SNR_INFO. |
MBIM_RSRP_SNR_INFO
Una matriz de las estructuras MBIM_RSRP_SNR_INFO siguientes se utiliza en el DataBuffer de una estructura MBIM_RSRP_SNR.
| Offset | Tamaño> | Campo | Tipo | Descripción | ||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 4 | RSRP | UINT32 |
|
||||||||||||||||||||||
| 4 | 4 | SNR | UINT32 |
|
||||||||||||||||||||||
| 8 | 4 | Umbral de RSRP | UINT32 | Define el umbral entre el valor de RSRP anterior (almacenado en caché) y el valor de RSRP recién calculado. Si la diferencia absoluta es mayor que el valor de umbral, el dispositivo desencadena un evento no solicitado. La unidad es 1 dBm. Si se establece en cero, use el comportamiento predeterminado en la función del dispositivo. Si se establece en 0xFFFFFFFF, no lo use para desencadenar el evento. Si el dispositivo no admite el valor de umbral especificado, devuelve el valor de umbral máximo que admite. | ||||||||||||||||||||||
| 12 | 4 | Umbral de SNR | UINT32 | Define el umbral entre el valor de SNR anterior (almacenado en caché) y el valor de SNR recién calculado. Si la diferencia absoluta es mayor que el valor de umbral, el dispositivo desencadena un evento no solicitado. La unidad es 1 dB. Si se establece en cero, use el comportamiento predeterminado en la función del dispositivo. Si se establece en 0xFFFFFFFF, no lo use para desencadenar el evento. Si el dispositivo no admite el umbral especificado, devuelve el valor de umbral máximo que admite. | ||||||||||||||||||||||
| 16 | 4 | TipoDeSistema | MBIM_DATA_CLASS | Indica el tipo de sistema para el que la información de estado de señal es válida. Este miembro es un bitmask de un tipo tal como se define en MBIM_DATA_CLASS. |
Eventos no solicitados
Las notificaciones contienen una estructura de MBIM_SIGNAL_STATE_INFO_V2.
Códigos de estado
Este CID solo usa códigos de estado genéricos definidos en la sección 9.4.5 de la revisión 1.0 de la especificación MBIM.
Cálculo de la barra de señal LTE
El sistema operativo procesará la configuración del Registro para los cálculos de intensidad de señal en el orden siguiente:
Dataclass es CDMA (o su variante) o TDSCDMA
- Si existe una tabla de asignación de barras de señal heredada en "per_iccid", use esta configuración.
- De lo contrario, si existe una tabla de asignación de barras de señal heredada en "per_device", use esta configuración.
- En caso contrario, use la tabla de asignación de barras de señal predeterminada en el código.
Dataclass es GSM o WCDMA
- Si existe una tabla de asignación de barras de señal específicas de la tecnología GSM o WCDMA en "per_iccid", use esta configuración.
- De lo contrario, si existe una tabla de asignación de barras de señal específicas de tecnología GSM o WCDMA en "per_device", use esta configuración.
- De lo contrario, si existe una tabla de asignación de barras de señal heredada en "per_iccid", use esta configuración.
- De lo contrario, si existe una tabla de asignación de barras de señal heredada en "per_device", use esta configuración.
- En caso contrario, use la tabla de asignación de barras de señal predeterminada en el código.
- RSSI >= 17; 5 barras
- RSSI >= 12; 4 barras
- RSSI >= 7; 3 barras
- RSSI >= 4; 2 barras
- RSSI >= 2; 1 barras
- de lo contrario; 0 barras
Dataclass es LTE y el módem notifica RSRP.
- Si existe una tabla de asignación de barras de señal específicas de tecnología LTE para RSRP en "per_iccid", use esta configuración.
- De lo contrario, si existe una tabla de asignación de barras de señal específicas para la tecnología LTE en relación con el RSRP bajo «per_device», utilice esta configuración.
- De lo contrario, use la tabla de asignación de barras de señal LTE RSRP predeterminada en el código.
Nota:
Si EnableLTESnrReporting está habilitado, pero no hay una tabla SNR para LTE o informes de SNR por el módem, solo se usa RSRP. De lo contrario, el mejor RSRP o SNR se convierte en barras de señal.
Dataclass es LTE y RSSI lo notifica el módem.
- Si existe una tabla de asignación de barras de señal específicas de tecnología LTE en "per_iccid", use esta configuración.
- De lo contrario, si existe una tabla de asignación de barras de señal específicas de tecnología LTE en "per_device", use esta configuración.
- De lo contrario, si existe una tabla de asignación de barras de señal heredada en "per_iccid", use esta configuración.
- De lo contrario, si existe una tabla de asignación de barras de señal heredada en "per_device", use esta configuración.
- En caso contrario, use la tabla de asignación de barras de señal predeterminada en el código.
Dataclass es NR
- Si existe una tabla de asignación de indicadores de señal específicos de tecnología NR para RSRP en "per_iccid", utilice esta configuración.
- De lo contrario, si existe una tabla de correspondencia de barras de señal específica para tecnología NR en RSRP bajo "per_device", utilice esta configuración.
- En caso contrario, use la tabla de asignación de barras de señal de NR RSRP predeterminada en el código.
Nota:
Si EnableNRSnrReporting está habilitado, pero no hay ninguna tabla SNR para los informes de NR o SNR del módem, solo se usa RSRP. De lo contrario, el mejor RSRP o SNR se convierte en barras de señal.
Dataclass es NSA
- Si EnableLTEReportingOnNSA no está establecido o se establece en 0:
- Siga el flujo de Dataclass NR.
- Si EnableLTEReportingOnNSA está establecido en 1:
- Siga los flujos Dataclass LTE (RSRP o RSSI).
- Si EnableLTEReportingOnNSA está establecido en 2:
- Si FrequencyRange es FR1, siga los flujos Dataclass LTE (RSRP o RSSI).
- Si FrequencyRange es <> FR1, siga el flujo NR de Dataclass.
- Si EnableLTEReportingOnNSA está establecido en 3:
- Si FrequencyRange es FR2, siga los flujos Dataclass LTE (RSRP o RSSI).
- Si FrequencyRange es <> FR2, siga el flujo de NR de la clase Dataclass.
- Si EnableLTEReportingOnNSA está establecido en 4:
- Calcule la barra de señal mediante los flujos LTE y NR.
- Seleccione el más fuerte.
Nota:
Si el módem no notifica la señal LTE en 1-5, se utiliza la señal NR. Si no se usa la señal NR, se aplica la señal LTE.
Personalizaciones COSA para el cálculo de SignalBar
HabilitarInformeLTESobreNSA
0 = "Usar señal 5G"
1 = "Usar señal LTE"
2 = "Usar señal LTE si se acampa en el intervalo de frecuencia 5G 1"
3 = "Usar señal LTE si se acampa en el intervalo de frecuencia 5G 2"
4 = "Usar la señal más fuerte de LTE y 5G"
HabilitarNRSnrReporting
0 = "Usar solo RSRP"
1 = "Usar RSRP y SNR"
EnableLTESnrReporting:
0 = "Usar solo RSRP"
1 = "Usar RSRP y SNR"
Cellular/PerDevice/SignalBarMappingTable/SignalForBars/<SignalBar>
Modifique el valor mínimo de intensidad de señal correspondiente al número de barras que se van a mostrar. La configuración específica de la tecnología tiene prioridad. Cada barra debe tener un mapeo de intensidad de señal válido para que esta configuración surta efecto.
Cellular/PorDispositivo/TablaDeAsignaciónDeBarrasDeSeñal/SeñalParaBarras/GERAN/<BarraDeSeñal>
Modifique el valor mínimo de intensidad de señal correspondiente al número de barras que se mostrarán cuando el dispositivo está acampado en GSM. Cada cantidad de barras debe tener un mapeo de intensidad de señal válido para que esta configuración surta efecto.
Cellular/PerDevice/SignalBarMappingTable/SignalForBars/WCDMA/<SignalBar>
Modifique el valor mínimo de intensidad de señal correspondiente al número de barras que se mostrarán cuando el dispositivo esté conectado a WCDMA. Cada número de barras debe tener una asignación de intensidad de señal válida para que esta configuración surta efecto.
Cellular/PerDevice/SignalBarMappingTable/SignalForBars/LTE/<SignalBar>
Modifique el valor mínimo de intensidad de señal correspondiente al número de barras que se van a mostrar cuando el dispositivo está acampado en LTE. Cada número de barras debe tener una asignación de intensidad de señal válida para que esta configuración surta efecto.
Cellular/PerDevice/SignalBarMappingTable/SignalForBars/LTERSRP/<SignalBar>
Modifique el valor mínimo de intensidad de la señal correspondiente al número de barras que se van a mostrar, cuando el dispositivo está acampado en LTE. Cada número de barras debe tener una asignación de intensidad de señal válida para que esta configuración surta efecto.
Cellular/PerDevice/SignalBarMappingTable/SignalForBars/LTERSSNR/<SignalBar>
Modifique el valor mínimo de intensidad de señal correspondiente al número de barras que se van a mostrar cuando el dispositivo está acampado en LTE. Se usa cuando EnableLTESnrReporting está establecido en 1. Para que esta configuración surta efecto, cada número de barras debe estar asociado con una asignación válida de intensidad de señal.
Cellular/PerDevice/SignalBarMappingTable/SignalForBars/NRRSRP/<SignalBar>
Modifique el valor mínimo de la potencia de la señal correspondiente al número de barras que se mostrarán cuando el dispositivo esté conectado a 5G. Cada número de barras debe tener una asignación de intensidad de señal válida para que esta configuración surta efecto.
Cellular/PerDevice/SignalBarMappingTable/SignalForBars/NRRSSNR/<SignalBar>
Modifique el valor de la intensidad de señal mínima correspondiente al número de barras que se mostrarán cuando el dispositivo esté conectado a 5G. Se usa cuando EnableNRSnrReporting está establecido en 1. Cada número de barras debe tener un mapeo válido de la intensidad de la señal para que esta configuración surta efecto.
<SignalBar> puede ser de 1 a 5 valores.
Si el OEM/MO no puede configurar correctamente la tabla de asignación para RSSI o está incompleta, use la asignación predeterminada:
| RSSI | Barras mostradas |
|---|---|
| [0,1] | 0 |
| [2,3] | 1 |
| [4,6] | 2 |
| [7,11] | 3 |
| [12,16] | 4 |
| [17,31] | 5 |
Si el OEM/MO no puede configurar correctamente la tabla de asignación para RSRP o está incompleta, use la asignación predeterminada:
| RSRP | Barras mostradas |
|---|---|
| [0,16] | 0 |
| [17,41] | 1 |
| [42,51] | 2 |
| [52,61] | 3 |
| [62,71] | 4 |
| [72,126] | 5 |
Si el OEM/MO no logra configurar correctamente la tabla de asignación para SNR o está incompleta, use la asignación predeterminada:
| SNR | Barras en pantalla |
|---|---|
| [0,18] | 0 |
| [19,38] | 1 |
| [39,46] | 2 |
| [47,53] | 3 |
| [54,72] | 4 |
| [73,127] | 5 |