Low Power Configuration: Difference between revisions

From AnalysIR WiKi
Jump to navigation Jump to search
(Created page with "We have designed the reference firmware to operate in an extremely low power mode when idle. In Power_Down mode, the device typically uses less than 1uAmp of current, which m...")
 
mNo edit summary
Line 15: Line 15:
The external I2C EEPROM and IR receivers are typically powered via GPIO pins and are typically powered off when not in use. The user is responsible for powering these on when used.
The external I2C EEPROM and IR receivers are typically powered via GPIO pins and are typically powered off when not in use. The user is responsible for powering these on when used.


The low power operations are generally implemented in the following files/functiond:
The low power operations are generally implemented in the following files and functions:
* KIR-MISC-functions.ino => initPins
* KIR-MISC-functions.ino => initPins
* KIR-MISC-functions.ino => initLowPowerSleep
* KIR-MISC-functions.ino => initLowPowerSleep
* KIR-MISC-functions.ino => goToSleep
* KIR-MISC-functions.ino => goToSleep

Revision as of 08:18, 5 October 2019

We have designed the reference firmware to operate in an extremely low power mode when idle.

In Power_Down mode, the device typically uses less than 1uAmp of current, which means batteries could last up to several years. Depending on level of usage, we expect battery life to be from 1 to 2 years or more.

The firmware, also checks whether the device is being powered from a USBserial adapter(5V) or 2xAAA batteries. For 5V, the system runs at 16MHz and does not enter sleep mode. For battery operation, the system defaults to running at 8MHz and automatically goes to sleep after sending any outstanding IR signals.

On start-up, any unused peripherals are disabled to reduce power and when entering PWR_Down mode (sleep/standby) all other active peripherals are disabled. the sytem is awoken by a pin change interrupt on any of the remote's buttons.

In debug mode, the UART peripheral is re-enabled on wake-up as it is required to print debug information to serial.

Most users, should leave all of low power operations as is. Any future improvements will be made available for use.

Advanced users can try to implement even lower power operation and are welcome to contribute any improvements to the code base.

The external I2C EEPROM and IR receivers are typically powered via GPIO pins and are typically powered off when not in use. The user is responsible for powering these on when used.

The low power operations are generally implemented in the following files and functions:

  • KIR-MISC-functions.ino => initPins
  • KIR-MISC-functions.ino => initLowPowerSleep
  • KIR-MISC-functions.ino => goToSleep