Bagikan melalui


Dukungan MBIMEx 2.0 – 5G NSA

Karena spesifikasi errata MBIM 1.0 tidak memiliki mekanisme untuk mengubah CID yang ada dengan payload baru atau yang dimodifikasi, Windows 10, versi 1903 memperkenalkan MBIM 1.0 Extension 2.0 untuk memperluas antarmuka untuk mendukung 5G.

Skema penerapan versi

Catatan

Di bagian ini, istilah versi MBIMEx mengacu pada nomor rilis Ekstensi MBIM.

Host mempelajari versi MBIMEx perangkat melalui dua cara:

  1. DESKRIPTOR FUNGSI YANG DIPERLUAS MBIM.
  2. Pesan MBM_CID_VERSION opsional, jika perangkat mendukungnya dan menyatakan dukungan untuk itu.

Jika keduanya berbeda, versi yang lebih tinggi menentukan versi MBIMEx selama perangkat tetap dijumlahkan ke host. Versi MBIMEx yang lebih tinggi disebut sebagai versi MBIMEx yang diumumkan perangkat. Versi MBIMEx yang diumumkan perangkat dapat lebih rendah dari versi MBIMEx aslinya, yang merupakan versi MBIMEx tertinggi yang didukung perangkat. Perangkat dapat mempelajari versi MBIMEx host secara eksplisit hanya melalui pesan MBIM_CID_VERSION.

Dalam rilis apa pun, host selalu meminta perangkat untuk layanan dan CID yang didukung menggunakan MBIM_CID_DEVICE_SERVICES di awal urutan inisialisasi perangkat.

Jika perangkat mendukung MBIM_CID_VERSION dan mengiklankan dukungannya dalam respons kueri MBIM_CID_DEVICE_SERVICES, host yang tidak memahami MBIM_CID_VERSION atau memiliki versi MBIMEx yang lebih rendah dari 2.0 akan mengabaikannya. Sementara itu, host yang memahami MBIM_CID_VERSION dan memiliki versi MBIMEx asli 2.0 atau lebih tinggi mengirim pesan MBIM_CID_VERSION ke perangkat dengan versi MBIMEx asli host, dan CID adalah CID pertama yang dikirim ke perangkat setelah menerima respons MBIM_CID_DEVICE_SERVICES.

Jika CID pertama yang diterima perangkat dari host setelah merespons kueri MBIM_CID_DEVICE_SERVICES MBIM_CID_VERSION, perangkat mengetahui versi MBIMEx host.

Jika CID pertama yang diterima perangkat dari host setelah merespons kueri MBIM_CID_DEVICE_SERVICES adalah CID lain, maka perangkat mengasumsikan bahwa versi MBIMEx asli host adalah 1.0.

Diagram yang menunjukkan OS tanpa dukungan MBIM_CID_VERSION dan versi MBIMEx tertinggi yang didukung modem adalah 3.0.

Jika perangkat tidak mendukung MBIM_CID_VERSION, perangkat tidak akan merespons kueri MBIM_CID_DEVICE_SERVICES dengan MBIM_CID_VERSION. Oleh karena itu host tidak akan mengirim pesan MBIM_CID_VERSION dan mengasumsikan bahwa versi MBIMEx asli perangkat adalah 1.0.

Diagram memperlihatkan OS dengan MBIMEx tertinggi versi 3.0 dan modem tanpa dukungan MBIM_CID_VERSION.

Fitur-bijaksana, versi MBIMEx yang lebih tinggi adalah superset dari semua versi MBIMEx yang lebih rendah. Host mendukung semua perangkat dengan versi MBIMEx yang diumumkan pada atau di bawah versi MBIMEx asli host. Jika versi MBIMEx yang diumumkan perangkat lebih tinggi dari versi MBIMEx asli host, host tidak diharapkan mendukung perangkat dan perilaku host yang tepat dalam situasi ini tidak terdefinis.

Perangkat yang ingin bekerja dengan host yang lebih lama awalnya harus mengiklankan MBIMEx versi 1.0 atau versi MBIMEx host terendah yang perangkatnya dimaksudkan untuk bekerja dalam deskriptor fungsi yang diperluas MBIM.

Jika host mengirim MBIM_CID_VERSION dengan versi MBIMEx yang lebih tinggi daripada perangkat yang awalnya diiklankan, maka perangkat harus menunjukkan versi MBIMEx yang lebih tinggi dalam respons MBIM_CID_VERSION hingga versi MBIMEx asli host yang lebih kecil dan versi MBIMEx asli perangkat.

Diagram yang mengilustrasikan OS dengan versi MBIMEx yang lebih rendah daripada versi modem yang didukung tertinggi.

Diagram yang mengilustrasikan OS dengan versi MBIMEx yang lebih tinggi daripada versi modem yang didukung tertinggi.

Catatan

Misalnya, perangkat mendukung MBIMEx versi 2.0, tetapi dimaksudkan untuk bekerja dengan versi OS yang lebih lama yang tidak mendukung MBIMEx 2.0. Perangkat awalnya mengiklankan MBIMEx versi 1.0 di deskriptor USB dan mengiklankan dukungan untuk MBIM_CID_VERSION opsional. Saat dimasukkan ke host yang menjalankan Windows 10, versi 1803, host tidak memahami MBIM_CID_VERSION dan tidak mengirim MBIM_CID_VERSION ke perangkat. Untuk host, versi MBIMEx perangkat adalah 1.0. Host terus mengirim CID lain dalam urutan inisialisasi. Setelah menerima CID selain MBIM_CID_VERSION, perangkat tahu bahwa host mendukung MBIMEx versi 1.0. Kedua belah pihak melanjutkan agar sesuai dengan MBIMEx versi 1.0. Kemudian, ketika perangkat yang sama dimasukkan ke host yang berjalan Windows 10, versi 1903 dengan versi MBIMEx asli 2.0, host mengirim MBIM_CID_VERSION ke perangkat untuk memberi tahu bahwa versi MBIMEx asli host adalah 2.0. Perangkat mengirim MBIM_CID_VERSION kembali sebagai respons dengan MBIMEx versi 2.0 yang diumumkan perangkat. Dari sana, kedua belah pihak melanjutkan untuk menyesuaikan dengan MBIMEx versi 2.0.

Tabel berikut menunjukkan matriks kompatibilitas dengan tiga host hipotetis dan tiga perangkat hipotetis, masing-masing dengan versi MBIMEx aslinya yang dinyatakan. Perangkat mengiklankan MBIMEx versi 1.0 pada awalnya di deskriptor USB. Matriks menunjukkan bagaimana masing-masing perangkat ber perilaku dengan masing-masing host.

Perangkat (di bawah) / Host (kanan) Windows 10, versi 1809 atau yang lebih lama (MBIMEx asli versi 1.0) Windows 10, versi 1903 dan yang lebih baru (MBIMEx versi 2.0)
Perangkat 4G

MBIMEx asli versi 1.0

Perangkat awalnya mengiklankan MBIMEx 1.0. Tidak ada pertukaran MBIM_CID_VERSION. Perangkat dan host yang kompatibel. Bekerja secara default dengan MBIMEx versi 1.0. Perangkat awalnya mengiklankan MBIMEx 1.0. Tidak ada pertukaran MBIM_CID_VERSION. Host bekerja dengan perangkat menggunakan MBIMEx 1.0.
Perangkat NSA 5G

MBIMEx asli versi 2.0

Perangkat awalnya mengiklankan MBIMEx 1.0. Tidak ada pertukaran MBIM_CID_VERSION. Perangkat tahu bahwa host memiliki MBIMEx 1.0 dan melanjutkan dengan MBIMEx 1.0. Perangkat awalnya mengiklankan MBIMEx 1.0. Host mengirim MBIM_CID_VERSION untuk menginformasikan perangkat bahwa host mendukung MBIMEx 2.0. Perangkat merespons dengan MBIMEx 2.0. Kedua belah pihak melanjutkan dengan MBIMEx 2.0.

Tabel berikut mencantumkan semua CID yang sudah ada yang dimodifikasi di MBIMEx versi 2.0, dan payload yang dimodifikasi. Semua payload tanpamentasi dalam CID ini dan semua CID lain yang tidak disebutkan dalam tabel dibawa dari MBIMEx versi 1.0 dan tetap tidak berubah.

CID Payload
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

Layanan MBIM

Nama layanan UUID Nilai UUID
Ekstensi Konektivitas IP Dasar Microsoft UUID_BASIC_CONNECT_EXTENSIONS 3D01DCC5-FEF5-4D05-9D3A-BEF7058E9AAF

MBIM_CID_VERSION

Untuk driver MBB yang mendukung ekstensi Microsoft MBIM 2.0 atau lebih tinggi, MBIM_CID_VERSION adalah perintah wajib untuk bertukar informasi versi MBIM antara host dan perangkat. Untuk perangkat di pasar dengan driver yang tidak mengenali CID ini, host akan mengasumsikan dan memberikan kompatibilitas mundur.

Host mengirimkan perintah ini sebagai kueri jika didukung oleh perangkat. Kueri berisi nomor rilis MBIM dan nomor rilis Ekstensi MBIM yang saat ini didukung host.

Di sisi perangkat, perangkat menyesuaikan nomor rilis MBIM yang diumumkan dan nomor rilis Ekstensi MBIM berdasarkan aturan yang ditentukan dalam skema penerapan versi, lalu mengirimkannya dalam respons ke host.

Perintah ini ditentukan di bawah layanan Ekstensi Basic Connect .

CID Kode perintah UUID
MBIM_CID_VERSION 15 3d01dcc5-fef5-4d05-0d3abef7058e9aaf

Parameter

Operasi Set Kueri Pemberitahuan
Perintah Tidak berlaku MBIM_VERSION_INFO Tidak berlaku
Respons Tidak berlaku MBIM_VERSION_INFO Tidak berlaku

Kueri

Menginformasikan perangkat nomor rilis MBIM asli host dan nomor rilis Ekstensi MBIM. InformationBuffer berisi struktur MBIM_VERSION_INFO berikut.

Offset Ukuran Bidang Jenis Deskripsi
0 2 bcdMBIMVersion UINT16 Nomor rilis MBIM pengirim dalam BCD, dengan titik desimal tersirat antara bit 7 dan 8. Contohnya,0x0100 == 1.00 == 1.0. Ini adalah konstanta little-endian, sehingga byte 0x00, kemudian 0x01.
2 2 bcdMBIMExtendedVersion UINT16 Nomor rilis Ekstensi MBIM pengirim dalam BCD, dengan titik desimal tersirat antara bit 7 dan 8. Contohnya,0x0100 == 1.00 == 1.0. Ini adalah konstanta little-endian, sehingga byte 0x00, kemudian 0x01.

Set

Tidak dapat diterapkan.

Respons

InformationBuffer di MBIM_COMMAND_DONE berisi struktur MBIM_VERSION_INFO.

Peristiwa yang Tidak Diminta

Tidak dapat diterapkan.

Kode Status

CID ini hanya menggunakan kode status generik yang ditentukan dalam Bagian 9.4.5 dari revisi spesifikasi MBIM 1.0.

MBIM_CID_MS_DEVICE_CAPS_V2

CID ini sama dengan yang didefinisikan pada operasi Multi-SIM MB, yang merupakan ekstensi MBIM_CID_MS_DEVICE_CAPS seperti yang didefinisikan dalam Bagian 10.5.1 dari revisi spesifikasi MBIM 1.0. Untuk rilis Ekstensi MBIM 2.0, ada kelas data baru yang ditentukan dalam tabel MBIM_DATA_CLASS yang memungkinkan perangkat melaporkan kemampuan 5G-nya. MBIMDataClass5G_NSA menunjukkan bahwa perangkat mendukung 5G Non-mandiri (NSA), yang ditentukan dalam 3GPP TS 37.340, dan MBIMDataClass5G_SA menunjukkan bahwa perangkat mendukung 5G Standalone (SA), juga ditentukan dalam 3GPP TS 37.340.

Jika perangkat mendukung kedua kelas data baru, kedua bit akan diatur.

MBIM_DATA_CLASS

Jenis Mask
MBIMDataClassNone 0h
MBIMDataClassGPRS 1h
MBIMDataClassEDGE 2h
MBIMDataClassUMTS 4 jam
MBIMDataClassHSDPA 8h
MBIMDataClassHSUPA 10h
MBIMDataClassLTE 20h
MBIMDataClass5G_NSA 40h
MBIMDataClass5G_SA 80h
Dicadangkan 100h-8000h
MBIMDataClass1XRTT 10000h
MBIMDataClass1XEVDO 20000h
MBIMDataClass1XEVDORevA 40000h
MBIMDataClass1XEVDV 80000h
MBIMDataClass3XRTT 100000h
MBIMDataClass1XEVDORevB 200000h
MBIMDataClassUMB 400000h
Dicadangkan 800000-40000000h
MBIMDataClassCustom 800000000h

MBIM_CID_REGISTER_STATE

Perintah ini adalah ekstensi untuk cid MBIM_CID_REGISTER_STATE yang sudah ditentukan dalam revisi spesifikasi MBIM 1.0. Ekstensi ini menambahkan anggota baru yang disebut PreferredDataClasses untuk struktur respons.

Parameter

Operasi Set Kueri Pemberitahuan
Perintah MBIM_SET_REGISTRATION_STATE Kosong Tidak berlaku
Respons MBIM_REGISTRATION_STATE_INFO_V2 MBIM_REGISTRATION_STATE_INFO_V2 MBIM_REGISTRATION_STATE_INFO_V2

Kueri

InformationBuffer null dan InformationBufferLength adalah nol.

Set

Mengatur status pendaftaran. Informasinya sama seperti yang dijelaskan dalam revisi spesifikasi MBIM 1.0.

Respons

InformationBuffer di MBIM_COMMAND_DONE berisi struktur MBIM_REGISTRATION_STATE_INFO_V2 berikut. Dibandingkan dengan struktur MBIM_REGISTRATION_STATE_INFO yang ditentukan dalam Bagian 10.5.10.6 dari revisi spesifikasi MBIM 1.0, struktur berikut memiliki bidang PreferredDataClasses baru. Kecuali dinyatakan di sini, deskripsi bidang dalam tabel 10-55 dari revisi spesifikasi MBIM 1.0 berlaku untuk struktur ini.

MBIM_REGISTRATION_STATE_INFO_V2

Offset Ukuran Bidang Jenis Deskripsi
0 4 NwError UINT32 Kesalahan khusus jaringan. Tabel 10-44 dalam revisi spesifikasi MBIM 1.0 dokumen kode penyebab untuk NwError.
4 4 RegisterState MBIM_REGISTER_STATE Lihat Tabel 10-46 dalam revisi spesifikasi MBIM 1.0.
8 4 RegisterMode MBIM_REGISTER_MODE Lihat Tabel 10-47 dalam revisi spesifikasi MBIM 1.0.
12 4 AvailableDataClass UINT32 Bitmap nilai dalam MBIM_DATA_CLASS yang mewakili kelas data yang didukung pada jaringan terdaftar, untuk sel tempat perangkat terdaftar.

Nilai ini diatur ke MBIMDataClassNone jika RegisterState bukan MBIMRegisterStateHome, MBIMRegisterStateRoaming, atau MBIMRegisterStatePartner.

16 4 CurrentCellularClass MBIM_CELLULAR_CLASS Menunjukkan kelas seluler saat ini yang digunakan untuk fungsi multi-mode. Lihat Tabel 10-8 dalam revisi spesifikasi MBIM 1.0 untuk informasi selengkapnya.

Untuk fungsi mode tunggal, ini sama dengan kelas seluler yang dilaporkan dalam MBIM_CID_DEVICE_CAPS. Untuk fungsi multi-mode, transisi dari CDMA ke GSM atau sebaliknya ditunjukkan dengan CurrentCellularClass yang diperbarui.

20 4 ProviderIdOffset OFFSET Offset dalam byte, dihitung dari awal struktur ini, ke string numerik (0-9) yang disebut ProviderId yang mewakili identitas penyedia jaringan.

Untuk jaringan berbasis GSM, string ini adalah perangkaian Kode Negara Seluler (MCC) tiga digit dan Kode Jaringan Seluler (MNC) dua atau tiga digit. Operator berbasis GSM mungkin memiliki lebih dari satu MNC, dan karenanya lebih dari satu ProviderId.

Untuk jaringan berbasis CDMA, string ini adalah ID Sistem (SID) lima digit. Umumnya, operator berbasis CDMA memiliki lebih dari satu SID. Biasanya, operator memiliki satu SID untuk setiap pasar yang biasanya dibagi secara geografis dalam suatu negara berdasarkan peraturan, seperti Area Statistik Metropolitan (MSA) di Amerika Serikat. Perangkat berbasis CDMA harus menentukan MBIM_CDMA_DEFAULT_PROVIDER_ID jika informasi ini tidak tersedia.

Saat memproses permintaan kueri dan status pendaftaran dalam mode pendaftaran otomatis, anggota ini berisi ID penyedia yang saat ini dikaitkan dengan perangkat (jika berlaku). Ketika status pendaftaran dalam mode pendaftaran manual, anggota ini berisi ID penyedia tempat perangkat diminta untuk mendaftar (bahkan jika penyedia tidak tersedia).

Saat memproses permintaan yang ditetapkan dan status pendaftaran dalam mode manual, ini berisi ID penyedia yang dipilih oleh host untuk mendaftarkan perangkat. Ketika status pendaftaran dalam mode register otomatis, parameter ini diabaikan.

Penyedia CDMA 1xRTT harus diatur ke MBIM_CDMA_DEFAULT_PROVIDER_ID jika ID penyedia tidak tersedia.

24 4 ProviderIdSize SIZE(0..12) Ukuran, dalam byte, untuk ProviderId.
28 4 ProviderNameOffset OFFSET Offset dalam byte, dihitung dari awal struktur ini, ke string yang disebut ProviderName yang mewakili nama penyedia jaringan. Anggota ini terbatas pada, paling banyak, MBIM_PROVIDERNAME_LEN karakter.

Untuk jaringan berbasis GSM, jika Presentasi Inisial Negara dan Nama Jaringan Seluler Pilihan (PCCI&N) lebih panjang dari dua puluh karakter, perangkat harus menyingkat nama jaringan.

Anggota ini diabaikan ketika host menetapkan daftar penyedia pilihan. Perangkat harus menentukan string NULL untuk perangkat yang tidak memiliki informasi ini.

32 4 ProviderNameSize SIZE(0..40) Ukuran, dalam byte, untuk ProviderName.
36 4 RoamingTextOffset OFFSET Offset dalam byte, dihitung dari awal struktur ini, ke string yang disebut RoamingText untuk memberi tahu pengguna bahwa perangkat menjelajah. Anggota ini terbatas pada, paling banyak, 63 karakter. Teks ini harus memberikan informasi tambahan kepada pengguna ketika status pendaftaran adalah MBIMRegisterStatePartner atau MBIMRegisterStateRoaming. Anggota ini bersifat opsional.
40 4 RoamingTextSize SIZE(0..126) Ukurannya, dalam byte, untuk RoamingText.
44 4 RegistrationFlag MBIM_REGISTRATION_FLAGS Bendera diatur per Tabel 10-48 dalam revisi spesifikasi MBIM 1.0.
48 4 PreferredDataClass UINT32 Bitmap nilai dalam MBIM_DATA_CLASS yang mewakili kelas data yang diaktifkan pada perangkat. Perangkat hanya dapat beroperasi menggunakan kelas data yang diaktifkan.
Dinamis 4 DataBuffer DATABUFFER Buffer data yang berisi ProviderId, ProviderName, dan RoamingText.

Peristiwa yang Tidak Diminta

Pemberitahuan berisi struktur MBIM_REGISTRATION_STATE_INFO_V2.

Kode Status

CID ini hanya menggunakan kode status generik yang ditentukan dalam Bagian 9.4.5 dari revisi spesifikasi MBIM 1.0.

MBIM_CID_PACKET_SERVICE

Perintah ini adalah ekstensi untuk MBIM_CID_PACKET_SERVICE yang ada yang ditentukan dalam revisi spesifikasi MBIM 1.0.

Ekstensi ini menambahkan anggota baru yang disebut FrequencyRange untuk struktur respons dan mengganti nama anggota HighestAvailableDataClass menjadi CurrentDataClass untuk mengklarifikasi tujuannya.

CurrentDataClass menunjukkan Teknologi Akses Radio (RAT) tempat perangkat saat ini terdaftar. Ini berisi satu nilai dari MBIM_DATA_CLASS.

FrequencyRange menunjukkan rentang frekuensi yang saat ini digunakan perangkat. Ini hanya valid jika bidang CurrentDataClass menunjukkan bahwa bit MBIMDataClass5G_NSA atau MBIMDataClass5G_SA diatur.

Parameter

Operasi Set Kueri Pemberitahuan
Perintah MBIM_SET_PACKET_SERVICE Kosong Tidak berlaku
Respons MBIM_PACKET_SERVICE_INFO_V2 MBIM_PACKET_SERVICE_INFO_V2 MBIM_PACKET_SERVICE_INFO_V2

Kueri

InformationBuffer null dan InformationBufferLength adalah nol.

Set

Informasi untuk perintah yang ditetapkan dijelaskan dalam revisi spesifikasi MBIM 1.0.

Respons

InformationBuffer di MBIM_COMMAND_DONE berisi struktur MBIM_PACKET_SERVICE_INFO_V2. Dibandingkan dengan struktur MBIM_PACKET_SERVICE_INFO yang ditentukan dalam Bagian 10.5.10.6 dari revisi spesifikasi MBIM 1.0, struktur baru ini memiliki bidang CurrentDataClass dan FrequencyRange . Kecuali dinyatakan di sini, deskripsi bidang dalam Tabel 10-55 dari revisi spesifikasi MBIM 1.0 berlaku di sini.

MBIM_PACKET_SERVICE_INFO_V2

Offset Ukuran Bidang Jenis Deskripsi
0 4 NwError UINT32 Kesalahan khusus jaringan. Tabel 10-44 dalam revisi spesifikasi MBIM 1.0 mendokumen kode penyebab untuk NwError.
4 4 PacketServiceState MBIM_PACKET_SERVICE_STATE Lihat Tabel 10-53 dalam revisi spesifikasi MBIM 1.0.
8 4 CurrentDataClass MBIM_DATA_CLASS Kelas data saat ini di sel saat ini, ditentukan sesuai dengan MBIM_DATA_CLASS. Fungsi harus mengatur anggota ini ke MBIMDataClassNone jika fungsi tidak dalam status layanan paket yang terpasang. Kecuali untuk HSPA (dengan kata lain, HSUPA dan HSDPA) dan 5G DC, fungsi menetapkan anggota ini ke satu nilai MBIM_DATA_CLASS. Untuk layanan data HSPA, fungsi menentukan bitwise ATAU MBIMDataClass HSDPA dan MBIMDataClassHSUPA. Untuk sel yang mendukung HSDPA tetapi bukan HSUPA, hanya HSDPA yang ditunjukkan (menyiratkan kelas data UMTS untuk data uplink). Setiap kali kelas data saat ini berubah, fungsi mengirim pemberitahuan yang menunjukkan nilai baru CurrentDataClass.
12 8 UplinkSpeed UINT64 Berisi laju bit uplink, dalam bit per detik.
20 8 DownlinkSpeed UINT64 Berisi laju bit downlink, dalam bit per detik.
38 4 FrequencyRange MBIM_FREQUENCY_RANGE Bitmask nilai dalam MBIM_FREQUENCY_RANGE yang mewakili rentang frekuensi yang saat ini digunakan perangkat. Ini hanya valid jika CurrentDataClass MBIMDataClass5G_NSA atau MBIMDataClass5G_SA.

MBIM_FREQUENCY_RANGE

Enumerasi berikut digunakan sebagai nilai dalam struktur MBIM_PACKET_SERVICE_INFO_V2 sebelumnya.

Jenis Nilai Deskripsi
MBIMFrequencyRangeUnknown 0 Jika jenis sistem bukan 5G.
MBIMFrequencyRange1 1 Rentang frekuensi 1 (FR1) dalam 3GPP TS 38.101-1 (Sub-6G).
MBIMFrequencyRange2 2 FR2 dalam 3GPP TS 38.101-2 (mmWave).
MBIMFrequencyRange1AndRange2 3 Jika operator FR1 dan FR2 tersambung.

Peristiwa yang Tidak Diminta

Pemberitahuan berisi struktur MBIM_PACKET_SERVICE_INFO_V2.

Kode Status

CID ini hanya menggunakan kode status generik yang ditentukan dalam Bagian 9.4.5 dari revisi spesifikasi MBIM 1.0.

MBIM_CID_SIGNAL_STATE

CID ini adalah ekstensi untuk MBIM_CID_SIGNAL_STATE, memperkenalkan RSRP dan SNR untuk kriteria status sinyal. Ekstensi baru ini hanya valid jika perangkat menunjukkan dukungan Ekstensi MBIM versi 2.0. Ekstensi ini wajib jika modem mendukung kelas data MBIMDataClass5G_(N)SA.

Bidang RSRP dan SNR hanya valid jika SystemType yang sesuai adalah MGBIMDataClassLTE atau MBIMDataClass5G_(N)SA. JIKA modem melaporkan RSRP dan/atau SNR, maka bidang RSSI akan diatur ke nilai 99.

Jika SystemType yang sesuai adalah MBIMDataClass5G_(N)SA, bidang RSRP bersifat wajib dan bidang SNR bersifat opsional. Jika SystemType yang sesuai adalah MBIMDataClassLTE, bidang RSRP dan SNR bersifat opsional dan bidang RSSI dapat digunakan sebagai gantinya. Dalam hal ini, bidang RSRP dan SNR dapat dihilangkan dengan menetapkan nilai nol (0) untuk anggota RsrpSnrOffset dan RsrpSnrSize .

Parameter

Operasi Set Kueri Pemberitahuan
Perintah MBIM_SET_SIGNAL_STATE Kosong Tidak berlaku
Respons MBIM_SIGNAL_STATE_INFO_V2 MBIM_SIGNAL_STATE_INFO_V2 MBIM_SIGNAL_STATE_INFO_V2

Kueri

InformationBuffer null dan InformationBufferLength adalah nol.

Set

Informasi untuk perintah yang ditetapkan dijelaskan dalam revisi spesifikasi MBIM 1.0.

Respons

InformationBuffer di MBIM_COMMAND_DONE berisi struktur MBIM_SIGNAL_STATE_INFO_V2 berikut.

MBIM_SIGNAL_STATE_INFO_V2

Offset Ukuran Bidang Jenis Deskripsi
0 4 Rssi UINT32 Lihat Tabel 10.58 dalam revisi spesifikasi MBIM 1.0.
4 4 ErrorRate UINT32 Lihat Tabel 10.58 dalam revisi spesifikasi MBIM 1.0.
8 4 SignalStrengthInterval UINT32 Interval pelaporan, dalam hitungan detik.
12 4 RssiThreshold UINT32 Perbedaan nilai berkode RSSI yang memicu laporan. Gunakan 0xFFFFFFFF jika ini tidak masalah.
16 4 ErrorRateThreshold UINT32 Perbedaan nilai berkode ErrorRate yang memicu laporan. Gunakan 0xFFFFFFFF jika ini tidak masalah.
20 4 RsrpSnrOffset OFFSET Offset dalam byte, dihitung dari awal struktur ini, ke buffer yang berisi info sinyal RSRP dan SNR. Anggota ini bisa NULL ketika tidak ada info sinyal RSRP dan SNR yang tersedia.
24 4 RsrpSnrSize UKURAN Ukuran, dalam byte, dari buffer yang berisi info sinyal RSRP dan SNR dalam format struktur MBIM_RSRP_SNR_INFO.
4 DataBuffer DATABUFFER Struktur MBIM_RSRP_SNR.

MBIM_RSRP_SNR

Struktur MBIM_RSRP_SNR berikut digunakan dalam DataBuffer dari struktur MBIM_SIGNAL_STATE_INFO_V2.

Offset Ukuran Bidang Jenis Deskripsi
0 4 ElementCount UINT32 Jumlah entri RSRP_SNR yang mengikuti elemen ini.
4 4 DataBuffer DATABUFFER Array rekaman RSRP_SNR, masing-masing ditentukan sebagai struktur MBIM_RSRP_SNR_INFO.

MBIM_RSRP_SNR_INFO

Array struktur MBIM_RSRP_SNR_INFO berikut digunakan dalam DataBuffer dari struktur MBIM_RSRP_SNR.

Offset Ukuran> Bidang Jenis Deskripsi
0 4 RSRP UINT32
Nilai RSRP dalam dBm Nilai berkode (min = 0, maks = 126)
Kurang dari -156 0
Kurang dari -155 1
... ...
Kurang dari -138 18
... ...
Kurang dari -45 111
... ...
Kurang dari -31 125
-31 atau lebih besar 126
Tidak diketahui atau tidak terdeteksi 127
4 4 SNR UINT32
Nilai SNR dalam dB Nilai berkode (min = 0, maks = 127)
Kurang dari -23 0
Kurang dari -22,5 1
Kurang dari -22 2
Kurang dari -21,5 3
... ...
Kurang dari 39,5 125
Kurang dari 40 126
40 atau lebih besar 127
Tidak diketahui atau tidak terdeteksi 128
8 4 RSRPThreshold UINT32 Menentukan ambang antara nilai RSRP lama (di-cache) dan nilai RSRP yang baru dihitung. Jika perbedaan absolut lebih besar dari nilai ambang batas, perangkat memicu peristiwa yang tidak diminta. Unitnya adalah 1 dBm. Jika diatur ke nol, gunakan perilaku default dalam fungsi perangkat. Jika diatur ke 0xFFFFFFFF, jangan gunakan ini untuk memicu peristiwa. Jika nilai ambang yang diberikan tidak didukung oleh perangkat, nilai ambang batas maksimum yang didukungnya akan ditampilkan.
12 4 SNRThreshold UINT32 Menentukan ambang antara nilai SNR lama (di-cache) dan nilai SNR yang baru dihitung. Jika perbedaan absolut lebih besar dari nilai ambang batas, perangkat memicu peristiwa yang tidak diminta. Unitnya adalah 1 dB. Jika diatur ke nol, gunakan perilaku default dalam fungsi perangkat. Jika diatur ke 0xFFFFFFFF, jangan gunakan ini untuk memicu peristiwa. Jika ambang batas yang diberikan tidak didukung oleh perangkat, ambang batas maksimum yang didukungnya akan ditampilkan.
16 4 SystemType MBIM_DATA_CLASS Menunjukkan jenis sistem yang informasi status sinyalnya valid. Anggota ini adalah bitmask dari satu jenis seperti yang didefinisikan dalam MBIM_DATA_CLASS.

Peristiwa yang Tidak Diminta

Pemberitahuan berisi struktur MBIM_SIGNAL_STATE_INFO_V2.

Kode Status

CID ini hanya menggunakan kode status generik yang ditentukan dalam Bagian 9.4.5 dari revisi spesifikasi MBIM 1.0.

Perhitungan bilah sinyal LTE

Diagram yang mengilustrasikan proses perhitungan bilah sinyal LTE.

OS akan memproses pengaturan registri untuk perhitungan kekuatan sinyal dalam urutan berikut:

Dataclass adalah CDMA (atau variannya) atau TDSCDMA

  1. Jika tabel pemetaan bilah sinyal warisan ada di bawah "per_iccid", gunakan pengaturan ini.
  2. Jika tidak, jika tabel pemetaan bilah sinyal warisan ada di bawah "per_device", gunakan pengaturan ini.
  3. Jika tidak, gunakan tabel pemetaan bilah sinyal default dalam kode.

Klasifikasi data adalah GSM atau WCDMA

  1. Jika tabel pemetaan bilah sinyal khusus teknologi GSM atau WCDMA ada di bawah "per_iccid", gunakan pengaturan ini.
  2. Jika tidak, jika tabel pemetaan bilah sinyal khusus teknologi GSM atau WCDMA ada di bawah "per_device", gunakan pengaturan ini.
  3. Jika tidak, jika tabel pemetaan bilah sinyal warisan ada di bawah "per_iccid", gunakan pengaturan ini.
  4. Jika tidak, jika tabel pemetaan bilah sinyal warisan ada di bawah "per_device", gunakan pengaturan ini.
  5. Jika tidak, gunakan tabel pemetaan bilah sinyal default dalam kode.
    1. RSSI >= 17; 5 bilah
    2. RSSI >= 12; 4 batang
    3. RSSI >= 7; 3 bilah
    4. RSSI >= 4; 2 bilah
    5. RSSI >= 2; 1 bilah
    6. Lain; 0 batang

Dataclass adalah LTE dan RSRP dilaporkan oleh modem

  1. Jika tabel pemetaan bilah sinyal khusus teknologi LTE untuk RSRP ada di bawah "per_iccid", gunakan pengaturan ini.
  2. Jika tidak, jika tabel pemetaan bilah sinyal khusus teknologi LTE untuk RSRP ada di bawah "per_device", gunakan pengaturan ini.
  3. Jika tidak, gunakan tabel pemetaan bilah sinyal LTE RSRP default dalam kode.

Catatan

Jika EnableLTESnrReporting diaktifkan tetapi tidak ada tabel SNR untuk pelaporan LTE atau SNR oleh modem, hanya RSRP yang digunakan. Jika tidak, semakin baik RSRP atau SNR dikonversi ke bilah sinyal.

Dataclass adalah LTE dan RSSI dilaporkan oleh modem

  1. Jika tabel pemetaan bilah sinyal khusus teknologi LTE ada di bawah "per_iccid", gunakan pengaturan ini.
  2. Jika tidak, jika tabel pemetaan bilah sinyal khusus teknologi LTE ada di bawah "per_device", gunakan pengaturan ini.
  3. Jika tidak, jika tabel pemetaan bilah sinyal warisan ada di bawah "per_iccid", gunakan pengaturan ini.
  4. Jika tidak, jika tabel pemetaan bilah sinyal warisan ada di bawah "per_device", gunakan pengaturan ini.
  5. Jika tidak, gunakan tabel pemetaan bilah sinyal default dalam kode.

Dataclass adalah NR

  1. Jika tabel pemetaan bilah sinyal khusus teknologi NR untuk RSRP ada di bawah "per_iccid", gunakan pengaturan ini.
  2. Jika tidak, jika tabel pemetaan bilah sinyal khusus teknologi NR untuk RSRP ada di bawah "per_device", gunakan pengaturan ini.
  3. Jika tidak, gunakan tabel pemetaan bilah sinyal NR RSRP default dalam kode.

Catatan

Jika EnableNRSnrReporting diaktifkan, tetapi tidak ada tabel SNR untuk pelaporan NR atau SNR oleh modem, hanya RSRP yang digunakan. Jika tidak, semakin baik RSRP atau SNR dikonversi ke bilah sinyal.

Dataclass adalah NSA

  1. Jika EnableLTEReportingOnNSA tidak diatur atau diatur ke 0:
    1. Ikuti alur NR Dataclass.
  2. Jika EnableLTEReportingOnNSA diatur ke 1:
    1. Ikuti aliran LTE Dataclass (RSRP atau RSSI).
  3. Jika EnableLTEReportingOnNSA diatur ke 2:
    1. Jika FrequencyRange adalah FR1, ikuti aliran LTE Dataclass (RSRP atau RSSI).
    2. Jika FrequencyRange adalah <> FR1, ikuti alur NR Dataclass.
  4. Jika EnableLTEReportingOnNSA diatur ke 3:
    1. Jika FrequencyRange adalah FR2, ikuti aliran LTE Dataclass (RSRP atau RSSI).
    2. Jika FrequencyRange adalah <> FR2, ikuti alur NR Dataclass.
  5. Jika EnableLTEReportingOnNSA diatur ke 4:
    1. Hitung bilah sinyal menggunakan alur LTE dan NR.
    2. Pilih yang terkuat.

Catatan

Jika sinyal LTE tidak dilaporkan oleh modem dalam 1-5, sinyal NR digunakan. Jika sinyal NR tidak digunakan, sinyal LTE diterapkan.

Kustomisasi COSA untuk perhitungan SignalBar

EnableLTEReportingOnNSA:

0 = "Gunakan sinyal 5G"

1 = "Gunakan sinyal LTE"

2 = "Gunakan sinyal LTE jika dikemah pada rentang frekuensi 5G 1"

3 = "Gunakan sinyal LTE jika dikemah pada rentang frekuensi 5G 2"

4 = "Gunakan sinyal terkuat LTE dan 5G"

EnableNRSnrReporting:

0 = "Gunakan hanya RSRP"

1 = "Gunakan RSRP dan SNR"

EnableLTESnrReporting:

0 = "Gunakan hanya RSRP"

1 = "Gunakan RSRP dan SNR"

Cellular/PerDevice/SignalBarMappingTable/SignalForBars/<SignalBar>

Ubah nilai kekuatan sinyal minimum yang sesuai dengan jumlah bilah yang akan ditampilkan. Pengaturan khusus teknologi lebih diutamakan. Setiap jumlah bilah harus memiliki pemetaan kekuatan sinyal yang valid agar pengaturan ini berlaku.

Cellular/PerDevice/SignalBarMappingTable/SignalForBars/GERAN/<SignalBar>

Ubah nilai kekuatan sinyal minimum yang sesuai dengan jumlah bilah yang akan ditampilkan saat perangkat dikemah pada GSM. Setiap jumlah bilah harus memiliki pemetaan kekuatan sinyal yang valid agar pengaturan ini berlaku.

Cellular/PerDevice/SignalBarMappingTable/SignalForBars/WCDMA/<SignalBar>

Ubah nilai kekuatan sinyal minimum yang sesuai dengan jumlah bilah yang akan ditampilkan saat perangkat dikemah di WCDMA. Setiap jumlah bilah harus memiliki pemetaan kekuatan sinyal yang valid agar pengaturan ini berlaku.

Cellular/PerDevice/SignalBarMappingTable/SignalForBars/LTE/<SignalBar>

Ubah nilai kekuatan sinyal minimum yang sesuai dengan jumlah bilah yang akan ditampilkan saat perangkat dikemah di LTE. Setiap jumlah bilah harus memiliki pemetaan kekuatan sinyal yang valid agar pengaturan ini berlaku.

Cellular/PerDevice/SignalBarMappingTable/SignalForBars/LTERSRP/<SignalBar>

Ubah nilai kekuatan sinyal minimum yang sesuai dengan jumlah bilah yang akan ditampilkan, saat perangkat dikemah di LTE. Setiap jumlah bilah harus memiliki pemetaan kekuatan sinyal yang valid agar pengaturan ini berlaku.

Cellular/PerDevice/SignalBarMappingTable/SignalForBars/LTERSSNR/<SignalBar>

Ubah nilai kekuatan sinyal minimum yang sesuai dengan jumlah bilah yang akan ditampilkan saat perangkat dikemah di LTE. Digunakan saat EnableLTESnrReporting diatur ke 1. Setiap jumlah bilah harus memiliki pemetaan kekuatan sinyal yang valid agar pengaturan ini berlaku.

Cellular/PerDevice/SignalBarMappingTable/SignalForBars/NRRSRP/<SignalBar>

Ubah nilai kekuatan sinyal minimum yang sesuai dengan jumlah bilah yang akan ditampilkan saat perangkat dikemah pada 5G. Setiap jumlah bilah harus memiliki pemetaan kekuatan sinyal yang valid agar pengaturan ini berlaku.

Cellular/PerDevice/SignalBarMappingTable/SignalForBars/NRRSSNR/<SignalBar>

Ubah nilai kekuatan sinyal minimum yang sesuai dengan jumlah bilah yang akan ditampilkan saat perangkat dikemah pada 5G. Digunakan saat EnableNRSnrReporting diatur ke 1. Setiap jumlah bilah harus memiliki pemetaan kekuatan sinyal yang valid agar pengaturan ini berlaku.

<SignalBar> dapat berupa 1-5 nilai.

Jika OEM/MO gagal mengonfigurasi tabel pemetaan untuk RSSI dengan benar atau tidak lengkap, gunakan pemetaan default:

RSSI Bilah Ditampilkan
[0,1] 0
[2,3] 1
[4,6] 2
[7,11] 3
[12,16] 4
[17,31] 5

Jika OEM/MO gagal mengonfigurasi tabel pemetaan untuk RSRP dengan benar atau tidak lengkap, gunakan pemetaan default:

RSRP Bilah Ditampilkan
[0,16] 0
[17,41] 1
[42,51] 2
[52,61] 3
[62,71] 4
[72,126] 5

Jika OEM/MO gagal mengonfigurasi tabel pemetaan untuk SNR dengan benar atau tidak lengkap, gunakan pemetaan default:

SNR Bilah Ditampilkan
[0,18] 0
[19,38] 1
[39,46] 2
[47,53] 3
[54,72] 4
[73,127] 5