Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.

Pemantauan Channel

Modul ini mencakup fungsi-fungsi untuk fitur pemantauan saluran.

Ringkasan

Fungsi dalam modul ini tersedia saat fitur monitor saluran ( OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE ) diaktifkan.

Pemantauan saluran secara berkala akan memantau semua saluran untuk membantu menentukan saluran yang lebih bersih (saluran dengan sedikit gangguan).

Saat pemantauan saluran aktif, Pemindaian Energi durasi-nol dilakukan, mengumpulkan sampel RSSI tunggal di setiap saluran per interval sampel. Sampel RSSI dibandingkan dengan ambang RSSI yang telah ditentukan sebelumnya. Sebagai indikator kualitas saluran, modul pemantauan saluran memelihara dan memberikan tingkat / persentase rata-rata sampel RSSI yang berada di atas ambang batas dalam (kurang-lebih) jendela sampel tertentu (disebut sebagai hunian saluran).

Fungsi

otChannelMonitorGetChannelOccupancy ( otInstance *aInstance, uint8_t aChannel)
uint16_t
Mendapat hunian saluran saat ini untuk saluran tertentu.
otChannelMonitorGetRssiThreshold ( otInstance *aInstance)
int8_t
Dapatkan pemantauan saluran ambang RSSI dalam dBm.
otChannelMonitorGetSampleCount ( otInstance *aInstance)
uint32_t
Dapatkan pemantauan saluran jumlah total sampel RSSI (per saluran).
otChannelMonitorGetSampleInterval ( otInstance *aInstance)
uint32_t
Dapatkan interval sampel pemantauan saluran dalam milidetik.
otChannelMonitorGetSampleWindow ( otInstance *aInstance)
uint32_t
Dapatkan pemantauan saluran rata-rata panjang jendela sampel (jumlah sampel).
otChannelMonitorIsEnabled ( otInstance *aInstance)
bool
Fungsi ini menunjukkan apakah operasi Pemantauan Saluran diaktifkan dan berjalan.
otChannelMonitorSetEnabled ( otInstance *aInstance, bool aEnabled)
Fungsi ini mengaktifkan / menonaktifkan operasi Pemantauan Saluran.

Fungsi

otChannelMonitorGetChannelOccupancy

uint16_t otChannelMonitorGetChannelOccupancy(
  otInstance *aInstance,
  uint8_t aChannel
)

Mendapat hunian saluran saat ini untuk saluran tertentu.

Nilai hunian saluran mewakili tingkat / persentase rata-rata sampel RSSI yang berada di atas ambang batas RSSI (sampel RSSI "buruk").

Untuk sampel "jendela sampel" pertama, rata-rata dipertahankan sebagai persentase aktual (yaitu, rasio jumlah sampel "buruk" dengan jumlah total sampel). Setelah sampel "jendela", rata-rata menggunakan rata-rata bergerak tertimbang eksponensial. Secara praktis, ini berarti rata-rata mewakili hingga 3 * window sampel terakhir 3 * window dengan bobot tertinggi yang diberikan untuk sampel kSampleWindow terbaru.

Nilai maksimum 0xffff menunjukkan semua sampel RSSI berada di atas ambang RSSI (yaitu 100% sampel "buruk").

Detail
Parameter
[in] aInstance
Penunjuk ke instance OpenThread.
[in] aChannel
Saluran untuk mendapatkan hunian tautan.
Kembali
Hunian saluran saat ini untuk saluran tertentu.

otChannelMonitorGetRssiThreshold

int8_t otChannelMonitorGetRssiThreshold(
  otInstance *aInstance
)

Dapatkan pemantauan saluran ambang RSSI dalam dBm.

Detail
Parameter
[in] aInstance
Penunjuk ke instance OpenThread.
Kembali
Ambang RSSI dalam dBm.

otChannelMonitorGetSampleCount

uint32_t otChannelMonitorGetSampleCount(
  otInstance *aInstance
)

Dapatkan pemantauan saluran jumlah total sampel RSSI (per saluran).

Hitungan menunjukkan jumlah sampel per saluran oleh modul pemantauan saluran sejak dimulai (sejak antarmuka jaringan Thread diaktifkan).

Detail
Parameter
[in] aInstance
Penunjuk ke instance OpenThread.
Kembali
Jumlah total sampel RSSI (per saluran) yang diambil sejauh ini.

otChannelMonitorGetSampleInterval

uint32_t otChannelMonitorGetSampleInterval(
  otInstance *aInstance
)

Dapatkan interval sampel pemantauan saluran dalam milidetik.

Detail
Parameter
[in] aInstance
Penunjuk ke instance OpenThread.
Kembali
Interval sampel monitor saluran dalam milidetik.

otChannelMonitorGetSampleWindow

uint32_t otChannelMonitorGetSampleWindow(
  otInstance *aInstance
)

Dapatkan pemantauan saluran rata-rata panjang jendela sampel (jumlah sampel).

Detail
Parameter
[in] aInstance
Penunjuk ke instance OpenThread.
Kembali
Jendela sampel rata-rata.

otChannelMonitorIsEnabled

bool otChannelMonitorIsEnabled(
  otInstance *aInstance
)

Fungsi ini menunjukkan apakah operasi Pemantauan Saluran diaktifkan dan berjalan.

Detail
Parameter
[in] aInstance
Penunjuk ke instance OpenThread.
Kembali
BENAR jika operasi Pemantauan Saluran diaktifkan, SALAH sebaliknya.

otChannelMonitorSetEnabled

otError otChannelMonitorSetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Fungsi ini mengaktifkan / menonaktifkan operasi Pemantauan Saluran.

Setelah operasi dimulai, semua data yang dikumpulkan sebelumnya akan dihapus. Namun, setelah operasi dinonaktifkan, data yang dikumpulkan sebelumnya masih valid dan dapat dibaca.

Detail
Parameter
[in] aInstance
Penunjuk ke instance OpenThread.
[in] aEnabled
BENAR untuk mengaktifkan / memulai operasi Pemantauan Saluran, SALAH untuk menonaktifkan / menghentikannya.
Kembalikan Nilai
OT_ERROR_NONE
Status Pemantauan Saluran berhasil diubah
OT_ERROR_ALREADY
Pemantauan Saluran sudah dalam keadaan yang sama.