Letztes Jahr hatte ich mir in der unwirtlichen Jahreszeit eine Eieruhr gebastelt. Ich hatte keine und wenn, hätte sie bestimmt in der Küche gestanden. Ich brauche aber einen Timer, der mich während der Anheizphase eines älteren Stückholzbrenners einer kombinierten Öl/Holz Zentralheizung an das manuelle Unterbinden der Anheizluftzufuhr und auch an das Nachlegen von Brenngut nach dem Anzünden erinnert. Während der Wartezeiten vergesse ich oft die Zeit und verliere mich in Fernsehen, Internet oder Bascom programmieren, was meist nicht in der Küche statt findet. Ergebnis ist dann ein nicht optimales Anheizen bzw Überheizen des Holzofens Smartphone oder andere integrierte Lösungen waren mir zu umständlich in der Bedienung.

Für den Timerselbstbau kam also ist eine 10440 LiIon Zelle zusammen mit ATtiny44A, 74HC595, einer 7seg Anzeige mit 4 Ziffer und Doppelpunkt in der Mitte, vier Tastern, paar Transistoren und Widerständen zum Multiplexen und einem Piezosummer (1kHz Resonanz) in ein ausgdientes DSL-Splittergehäuse. Programmieren und Akku Aufladen geht über einen 6-poligen Westernstecker Anschluß. Realisierung ist verschönerungsbedürftig aber gut gebrauchsfähig.



Auf einen Ein-/Ausschalter habe ich verzichtet. Der Timer ist im inaktiven Zustand im Sleep und verbraucht dann unter 1µA Strom. So wenig, daß ich dem Wert der eigenen Messung nicht traue. Hatte da zu Beginn sogar Probleme, da ein Transistor für die Ziffernansteuerung auf der, ich glaube es war die Kollektor Emitter Strecke, im nicht angesteuerten Zustand einen Durchlaßwiderstand im MOhm Bereich hatte. Bei den anderen drei ließ sich nur ein "unendlich" hoher Widerstand feststellen. Das Multiplexen war mit dem Mackentransistor OK, trieb aber den Sleepstrom der Schaltung in die Höhe.

Aufgeweckt wird der Timer durch einen Pin Change Interrupt (oder ist es ein mit Dioden auf einen Level Interrupt Pin zusammengeführter Level Interrupt?) mit einen Druck auf irgendeine Taste. Durch die beschränkte Anzahl der I/O Pins des ATtiny44A werden die Tasten nach Methode des Azuros erkannt (Messung mit ADC von Widerstandsspannungsteiler, deren Wert durch die Tasten verändert wird). Ich glaube ich habe damals (letztes Jahr) die Schaltung etwas modifiziert um den Ruhestrom auf Null zu bringen.

4 Pins des ATtiny44A für Multiplexansteuerung der Ziffern, 3 Pins zur Ansteuerung des 74HC595, der die Segmente der Anzeige versorgt. 2 Pins für den Summer, der an seinen Anschlüssen wegen der Lautstärke mit wechselnder Polarit betrieben wird. Ein Pin für den Tastenwiderstandsspannungsteiler. Schon sind 10 der 11 freien I/Os des ATtiny44A belegt. Keine Tiefentladungsschutzschaltung für die 10440 Zelle aber Spannungsüberwachung durch Messung der Vcc gegen die interne Referenz des Tiny44. Bei Unterschreitung eines Grenzwertes wird das im Display angezeigt und es ist vor Laden des Akkus keine Nutzung als Timer mehr möglich. Zusammen mit der niedrigen Ruhestromaufnahme sollte die Akkuzelle bis zur nächsten Nutzung, schlimmstenfalls einen Sommer bis zum nächsten Aufladen im Herbst zur Heizperiode halten. Läuft der Timer nicht, kann die gemessene Spannung im Display angezeigt werden.

Funktionen:
#Eingestellt wird die Ablaufzeit des Timers mit drei Tasten. Die vierte rote Taste ist für Start/Stop, Alarm aus, Akku Spannung und Rückstellung des Timers.

#Druck auf irgendeine der vier Tasten schaltet den Timer ein. 00:00 erscheint in der Anzeige.

#Kurzer Druck auf die rote Start/Stop Taste zeigt bei nicht laufendem Timer und 00:00 in der Anzeige die aktuelle Akku Spannung mit zB 3.70 in der Anzeige.

#Kurzer Druck auf Taste 1 erhöht die Startzeit des Timers um eine Minute, Taste 2 um fünf Minuten und für mein Ei ffrisch aus dem Kühlschrank ist Taste 3, die um 8 Minuten erhöht. Live in der Anzeige zu beobachten.

#Langer Druck auf eine der drei Tasten dekrementiert die Ablaufzeit um 1, 5 oder 8 Minuten. Natürlich auch live in der Anzeige zu kontrollieren.

#Maximale Ablaufzeit sind 90:00 Minuten. Keine negative Ablaufzeit durch manuelles Dekrementieren (Ablaufzeit geht dann nur bis 0 Minuten und verbleibende Sekunden).

#Gestartet wird durch kurzen Druck auf rote Taste. Oder auch durch Warten nach Einstellung der Ablaufzeit. Timer zählt etwa 10 Sekunden nach Einstellung von alleine runter.

#Runterzählen kann durch kurzen Druck auf rote Taste angehalten und wieder weiterlaufen gelassen werden. Stoppen auch nur für ca. 15 Sekunden bis Timer wieder selbstständig aktiv wird.

#Runtergezählt wird im Sekundentakt, was live in der Anzeige angezeigt wird. Mit den Einstelltasten kann die aktuelle Ablaufzeit jederzeit manipuliert werden.

#Beim Runterzählen wird nach ein paar Sekunden die Anzeige auf Stromsparen geschaltet. Nur noch der obere Punkt des Doppelpunktes blinkt im Sekundentakt. Ein paar Sekunden vor Erreichen von 00:00 und im negativen Bereich wird die Anzeige selbständg wieder komplett aktiviert.

#Im Stromsparmodus der Anzeige schaltet ein Tastendruck die Anzeige auch kurz ein um verbleibende Ablaufzeit zu kontrollieren und/oder zu verändern.

#Bei Erreichen von 00:00 der Summeralarm eingeschaltet. Tönt im Sekundentakt und Anzeige blinkt auch im Sekundentakt. Timer zählt nun bis zu 5 Minuten lang in den negativen Bereich zB bis -4:59 falls er nicht vorher zurück gesetzt wird.

#Während des Summeralarms kann der Alarm durch kurzen oder langen Druck auf rote Start/Stoptaste abgeschaltet werden. Timer zählt aber weiter im negativen Bereich.

#Timer schaltet 5 Minuten nach Ablaufzeit (also 5 min im negativen Bereich) und einer hübschen, zufällig durch Programmierfehler entstandene und dann modifizierten Melodei alles ab und geht in den Sleep.

#Langer Druck der roten Taste setzt den Timer zurück und die Anzeige auf 00:00. Aber nicht im negativen Bereich. Da wird erst der Summeralarm abgeschaltet.

#Nach Rücksetzen ist verkürzte Zeit bis zur Melodei und Sleep aktiviert.

Hatte versucht die Abhängigkeit der Frequenz des internen Oszillators und damit die Ablaufzeitgenauigkeit des Timers von der nicht stabilisierten Versorgungsspannung zu kompensieren. Ist aber der Größe des Programmspeichers und der Codebegrenzung der Bascom Demo Version auf 4k zum Opfer gefallen. Ebenso fehlen weitere Features, die mir beim Gebrauch der Eieruhr noch einfielen. Egal, die etwas ungenaue Ablaufzeit konnte ich aus dem Ei noch nicht herausschmecken und weitere Features sind mittlerweile nicht mehr wichtig oder in Vergessenheit geraten.

Gruß
Searcher