updated battery polling method