diff --git a/frontend/ui/device.lua b/frontend/ui/device.lua index 2704f04fb..e7210ff14 100644 --- a/frontend/ui/device.lua +++ b/frontend/ui/device.lua @@ -1,3 +1,4 @@ +local AndroidPowerd = require("ui/device/androidpowerd") local KindlePowerD = require("ui/device/kindlepowerd") local KoboPowerD = require("ui/device/kobopowerd") local BasePowerD = require("ui/device/basepowerd") @@ -259,6 +260,8 @@ function Device:getPowerDevice() self.powerd = KindlePowerD:new{model = model} elseif self:isKobo() then self.powerd = KoboPowerD:new() + elseif self.isAndroid then + self.powerd = AndroidPowerd:new() else -- emulated FrontLight self.powerd = BasePowerD:new() end diff --git a/frontend/ui/device/androidpowerd.lua b/frontend/ui/device/androidpowerd.lua new file mode 100644 index 000000000..518ba545c --- /dev/null +++ b/frontend/ui/device/androidpowerd.lua @@ -0,0 +1,26 @@ +local BasePowerD = require("ui/device/basepowerd") + +local AndroidPowerD = BasePowerD:new{ + batt_capacity_file = "/sys/class/power_supply/battery/capacity", + is_charging_file = "/sys/class/power_supply/battery/charging_enabled", + battCapacity = nil, + is_charging = nil, +} + +function AndroidPowerD:init() +end + +function AndroidPowerD:setIntensityHW() +end + +function AndroidPowerD:getCapacityHW() + self.battCapacity = self:read_int_file(self.batt_capacity_file) + return self.battCapacity +end + +function AndroidPowerD:isChargingHW() + self.is_charging = self:read_int_file(self.is_charging_file) + return self.is_charging == 1 +end + +return AndroidPowerD