add recharge control