32 kHz RTC für sparsamen Schlaf

Entwicklung und Bau von Hardware aller Art, die im HM-Umfeld eingesetzt werden kann

Moderator: Co-Administratoren

Antworten
stan23
Beiträge: 522
Registriert: 13.12.2016, 21:14
Wohnort: Altmühltal
Kontaktdaten:

32 kHz RTC für sparsamen Schlaf

Beitrag von stan23 » 25.05.2019, 17:35

Hi,
hat schon mal jemand ein Setup mit einem 32 kHz Quarz für sehr stromsparenden Schlaf gebaut?

Soweit ich das verstehe, müssen die Fuses trotzdem auf "interner Oszillator" stehen, denn die CPU soll ja trotzdem mit 8 MHz laufen.

Ich habe alle sysclock durch rtc ersetzt, sowie ein

Code: Alles auswählen

rtc.init()

gemacht und den Schlafbefehl durch

Code: Alles auswählen

    hal.activity.savePower<SleepRTC>(hal);
ersetzt.

Dennoch wacht mein Gerät erst nach rund 1,5 Stunden statt 2 Minuten auf.

Irgendeine Idee?
Viele Grüße
Marco

RaspberryMatic
~60 Geräte (HM, HmIP, HMW, HBW, AskSin)

TomMajor
Beiträge: 282
Registriert: 30.08.2017, 23:25
Kontaktdaten:

Re: 32 kHz RTC für sparsamen Schlaf

Beitrag von TomMajor » 25.05.2019, 19:44

ja, ich habe das beim HB-UNI-Sensor1 konfigurierbar gemacht, funktioniert auch.
Deine Annahme zu den Fuses ist korrekt.
Hier schalte ich zwischen Sysclock/Rtc um
https://github.com/TomMajor/SmartHome/b ... r1.ino#L54
Könntest alle Stellen die diese defines benutzen mit deinem sketch vergleichen ob irgendwo was fehlt/anders ist.
Viele Grüße,
Tom

stan23
Beiträge: 522
Registriert: 13.12.2016, 21:14
Wohnort: Altmühltal
Kontaktdaten:

Re: 32 kHz RTC für sparsamen Schlaf

Beitrag von stan23 » 25.05.2019, 21:05

Danke, auf den ersten Blick habe ich die #defines ähnlich, aber die seconds2ticks übersehen.
Das erklärt auch warum es so lange dauert...
Viele Grüße
Marco

RaspberryMatic
~60 Geräte (HM, HmIP, HMW, HBW, AskSin)

papa
Beiträge: 287
Registriert: 22.05.2018, 10:23

Re: 32 kHz RTC für sparsamen Schlaf

Beitrag von papa » 25.05.2019, 23:22

Die RTC tickt nur im Sekunden-Takt. Die Sysclock hat normalerweise 100 Ticks per Second. Das ist durch

Code: Alles auswählen

#define TICKS_PER_SECOND 100UL
in AlarmClock.h festgelegt.
Anfragen zur AskSin++ werden nur im Forum beantwortet

Antworten

Zurück zu „Hardwareentwicklung und Selbstbau von Aktoren und Sensoren“