Shan could you try something like; Code: lshal|grep charge and Code: lshal|grep battery and tell us the outputs. I'd like to compare them to a working unit and see if the booleans are equivalent.
lshal|grep charge
lshal|grep battery