When using continuous conversions, the controller provides new data every one second. The driver is using continuous conversions when there's external power available, but switches to one-shot conversions when it's not. One-shot conversion is triggered every time a property that requires ADC is being read, which can trigger several conversions one after another. This turns out to be especially problematic when the battery is too hot, as the controller sends an interrupt after ADC, which triggers the driver to read all properties, which in turn causes several more ADC conversions, taxing the system with unnecessary load.
To solve these issues, throttle triggering ADC to one second, making it behave similarly to continuous conversions done by the controller.
Signed-off-by: Sebastian Krzyszkowiak email@example.com