--- components/wifi.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/components/wifi.c b/components/wifi.c index 30b57ab..9ecb8e1 100644 --- a/components/wifi.c +++ b/components/wifi.c _AT_@ -14,7 +14,9 @@ const char * wifi_perc(const char *iface) { - int i, perc; + int i, cur; + float perc; + int total = 70; /* the max of /proc/net/wireless */ char *p, *datastart; char path[PATH_MAX]; char status[5]; _AT_@ -50,9 +52,11 @@ wifi_perc(const char *iface) return NULL; datastart = (datastart+(strlen(iface)+1)); - sscanf(datastart + 1, " %*d %d %*d %*d %*d %*d %*d %*d %*d %*d", &perc); + sscanf(datastart + 1, " %*d %d %*d %*d %*d %*d %*d %*d %*d %*d", &cur); - return bprintf("%d", perc); + perc = (float)cur / total * 100.0; + + return bprintf("%.0f", perc); } const char * -- 2.14.3Received on Tue Oct 24 2017 - 01:20:23 CEST
This archive was generated by hypermail 2.3.0 : Tue Oct 24 2017 - 01:24:20 CEST