0
我想知道我怎麼能確定基於2個值WiFi的質量:無線上網的質量
Signal strength measured in dBm: e.g.: -51 dBm
Signal To Noise Ratio e.g. 70/70
我從我的系統中的這些值,但要顯示在我的用戶有wifi品質圖標接口,所以我應該使用某種公式將這些值轉換爲百分比。
我想知道我怎麼能確定基於2個值WiFi的質量:無線上網的質量
Signal strength measured in dBm: e.g.: -51 dBm
Signal To Noise Ratio e.g. 70/70
我從我的系統中的這些值,但要顯示在我的用戶有wifi品質圖標接口,所以我應該使用某種公式將這些值轉換爲百分比。
好吧,所以我現在想通了。對於那些有同樣問題的人,這就是我所做的。
guint32
nm_ap_utils_level_to_quality (gint val)
{
if (val < 0) {
/* Assume dBm already; rough conversion: best = -40, worst = -100 */
val = abs (CLAMP (val, -100, -40) + 40); /* normalize to 0 */
val = 100 - (int) ((100.0 * (double) val)/60.0);
} else if (val > 110 && val < 256) {
/* assume old-style WEXT 8-bit unsigned signal level */
val -= 256; /* subtract 256 to convert to dBm */
val = abs (CLAMP (val, -100, -40) + 40); /* normalize to 0 */
val = 100 - (int) ((100.0 * (double) val)/60.0);
} else {
/* Assume signal is a "quality" percentage */
val = CLAMP (val, 0, 100);
}
g_assert (val >= 0);
return (guint32) val;
}