Calcolare consumo Arduino

fardox:
Provo a spiegare quello che voglio fare in modo da cercare di risolvere il problema:

Allora, l'attiny una volta inizializzato, deve leggere periodicamente 4/8 secondi un sensore, se viene superata una certa soglia allora l'attiny si deve svegliare e segnalarlo attraverso un led per un certo tot, dopo di chè deve tornare in sleep e prepararsi per un nuovo ciclo.

come penseresti di impostare il tutto?

il problema è che il tutto è gestito da una batteria al litio CR2032, da 250mA circa.

Includi la libreria wdt.h per gestire il watchdog, poi includi la lib sleep.h per gestire gli sleep.
A questo punto scrivi una roba del genere:

#include <avr/wdt.h>
#include <avr/sleep.h>
#include <avr/power.h>

const byte mioPin = xx;

void setup() {
    MCUSR = 0;
    wdt_disable();
    pinMode(mioPin, INPUT);
    set_sleep_mode(SLEEP_MODE_PWR_DOWN);   // setta registri per il modo sleep
    sleep_enable();                        // abilita la sleep all'uso
}

void loop() {
    if (digitalRead(mioPin) == STATO_CHE_VUOI_CONTROLLARE) {
        //.... codice da eseguire...
    }
    wdt_enable(WDTO_8S);
    power_adc_disable();
    power_timer0_disable();
    power_timer1_disable();
    sleep_mode();
    while (1); //inutile, tanto non ci arriverà mai, serve solo al compilatore
}

In questo modo lo risvegli col watchdog.
Ed ora studiati queste pagine perché altrimenti non ti aiuto più :stuck_out_tongue:
http://www.nongnu.org/avr-libc/user-manual/group__avr__watchdog.html
http://www.nongnu.org/avr-libc/user-manual/group__avr__power.html
http://www.nongnu.org/avr-libc/user-manual/group__avr__sleep.html