From 8c8d2925a5e108f4909f4ac06f95efc638fe950e Mon Sep 17 00:00:00 2001 From: Stefan Wagner Date: Tue, 22 Mar 2016 15:55:55 +0100 Subject: [PATCH] Fix for #177 Suggestion to calculate watt for battery. Not sure about the time_rat, was it correct before? --- widgets/bat.lua | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/widgets/bat.lua b/widgets/bat.lua index 56bba23..22584db 100644 --- a/widgets/bat.lua +++ b/widgets/bat.lua @@ -63,14 +63,8 @@ local function worker(args) if present == "1" then - local rate = tonumber(first_line(bstr .. "/power_now")) - local current_now = false - - if not rate then - rate = tonumber(first_line(bstr .. "/current_now")) - current_now = true - end - + local ratep = tonumber(first_line(bstr .. "/power_now")) + local ratec = tonumber(first_line(bstr .. "/current_now")) local ratev = tonumber(first_line(bstr .. "/voltage_now")) local rem = tonumber(first_line(bstr .. "/energy_now") or @@ -85,10 +79,10 @@ local function worker(args) local time_rat = 0 if bat_now.status == "Charging" then - time_rat = (tot - rem) / rate + time_rat = (tot - rem) / (ratep or ratec) elseif bat_now.status == "Discharging" then - time_rat = rem / rate + time_rat = rem / (ratep or ratec) end local hrs = math.floor(time_rat) @@ -109,10 +103,10 @@ local function worker(args) bat_now.perc = "0" end - if current_now then - bat_now.watt = string.format("%.2fW", (rate * ratev) / 1e12) + if ratep then + bat_now.watt = string.format("%.2fW", ratep) else - bat_now.watt = string.format("%.2fW", rate) + bat_now.watt = string.format("%.2fW", (ratev * ratec) / 1e12) end end -- 2.39.2