Word Clock Variante 1

Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Wechseln zu: Navigation, Suche

Überblick

WordClock

Links zum Hauptartikel [1], zur Variante 2 [2] zum langen Thread [3] mit dem hier alles angefangen hat und zum Original [4], das alle hier inspiriert hat.

[1] Word Clock
[2] Word Clock Variante 2
[3] Beitrag: Brauche Hilfe beim Bau einer Uhr
[4] http://www.clocktwo.com


Elektronik

  • Atmega168
  • 8Mhz (interner Osc.)
  • 24-Bit-Schieberegister an SPI für 24 Wörter
  • 4 Output-Pins für Minutenanzeige
  • 4 weitere GPOS - für allgemeine Zwecke
  • RGB-Steuerung über PWM gegen GND, d.h. 32x3-Matrix

Schaltung

Schaltbild V1.0
TSOP17xx in V1.1
Rx/Tx in V1.1

Das Schaltbild ist für die Prototypen-Platine als auch für die endgültige Version 1.0 (schmale Platine) identisch. Lediglich der Pullup-Widerstand R7 am DCF-Anschluss ist weggefallen und ab Version 0.9 der Software auch nicht mehr beim Prototypen nötig.

Bei der ab August erhätlichen Platinen-Version 1.1 gibt es ein paar kleine Änderungen:

  • Die Tiefpass-Schaltung für den TSOP17xx ist nun korrekt geschaltet. Die Abweichung sieht man rechts im Zusatzschaltbild.
  • Der Verbinder K9 (UART-Anschluss für Debug-Zwecke) hat zwei zusätzliche Pins erhalten, siehe Zusatzschaltbild rechts.

Eine größere Sammelbestellung wurde im Januar 2010 organisiert, mittlerweile ist die 4. Sammelbestellung (Platinenversion 1.1) im Gange (02_2010), siehe auch Sammelbestellung der Platine.

Hier die zugehörige Schaltung V1.0 als PDF: Media:wordclock-schmal.pdf



Sammelbestellung der Platine

Eine neue Sammelbestellung wurde am 14.01.2011 gestartet. Die Sammelbestellung läuft bis 30.01.2011.

Wer an der Sammelbestellung teilnehmen möchte, kann sich bei mir (Benutzer ukw) per PN melden.

Kosten pro Platine: 10 EUR zzgl. Versand von 1,50 bei bis zu 4 Stück. Bei mehr als 4 Stück beträgt der Versand 3,00 EUR.

Beispiele:

  • 1 Platine: 10 EUR + 1,50 Versand: 11,50 EUR
  • 2 Platinen: 20 EUR + 1,50 Versand: 21,50 EUR
  • ...
  • 5 Platinen: 50 EUR + 3,00 Versand: 53,00 EUR

Parallel zu dieser Sammelbestellung gibt es noch eine neue (kleinere) Sammelbestellung für passende Frontplatten, siehe auch:

Sammelbestellung Frontplatten

Beim Versand zusammen mit den Frontplatten entfallen natürlich die Versandkosten für die Platinen.

Selbstverständlich weist diese Platinen-Version nicht den Kurzschluss auf, den die ersten 20 Prototypen-Platinen hatten. Die Platine ist wesentlich schmaler als der Prototyp, Maße sind: 146mm x 35,6mm.

Historie:

  • Ende 2009: Vorabbestellung des Prototyps in kleinerer Auflage: 20 Stück (für die Entwickler)
  • Januar 2010: Erste große Sammelbestellung der endgültigen WordClock-Platine V1.0. Auflage: 200 Stück.
  • Februar 2010: Zweite große Sammelbestellung der V1.0. Auflage: 100 Stück.
  • April 2010: Dritte große Sammelbestellung der V1.0. Auflage: 100 Stück.
  • Juli 2010: Vierte Sammelbestellung der V1.1. Auflage: 100 Stück.
  • Oktober 2010: Fünfte Sammelbestellung der V1.1. Auflage: 100 Stück.
  • Januar 2011: Sechste Sammelbestellung der V1.1.

Reichelt Warenkorb Mono-Variante

Da selbst bei der Mono-Variante der ATmega 88 langsam mehr als eng wird, wurde dieser Warenkorb auch auf den ATmega 168 umgestellt.

Eine vollständige Liste zur Bestellung der nötigen Bauteile ist bei Reichelt abgelegt: Warenkorb-Mono.


Reichelt Warenkorb RGB-Variante

Für die RBG-Version wird der ATmega 168 benötigt. Einen angepassten Warenkorb ist wieder bei Reichelt hinterlegt: Warenkorb-RGB.

Die TSOP 17XX sind abgekündigt und bei Reichelt nicht lieferbar. Der lieferbare Ersatztyp heißt: SFH5110-XX. Unterschiedliche Pinbelegung beachten!

Alternativ zum SFH5110-XX kann man auch den pinkompatiblen Nachfolger des TSOP1736 bei segor.de bestellen. Der Nachfolger heisst TSOP31236, siehe auch Beitrag im WordClock-Thread.


Aktuell ist auch der DS 1307 (Real Time Clock I²C) wieder lieferbar (Stand: 07.06.2010)

Der ATMega168 ist wieder verfügbar! (09.10.10)

der Uhrenquarz ist wieder lieferbar (12.09.10)


Diese Liste bezieht sich sowohl auf den Prototypen als auf die endgültige (schmalere) Version.


Bestückung

Hier eine kurze Beschreibung zur Bestückung:

Prototyp:

Bestückte Platine (Prototyp)
  • Links: Anschluss für stehende Lithium-Knopfbatterie CR2032 (die drei abgebildeten Stifte sind natürlich nicht notwendig, die Batterie wird direkt eingelötet)
  • Unten links: Anschluss für DCF77-Modul und für Testzwecke RX & TX
  • Oben Mitte: TSOP17XX/SFH5110 für Infrarot-Empfang
  • Oben links und rechts: Wannenstecker für insg. 32 Ausgabekanäle: OUT0-OUT23 (für die Wörter), OUTL1-OUTL4 (für die Minuten) und OUTG1-OUTG4 (für General-Purpose-Ausgabezwecke - noch nicht definiert)
  • Rechts: Anschlussklemmen für Versorgungsspannung 7-20V und die drei PWM-Kanäle Rot, Grün und Blau

Endgültige Version 1.0 (schmale Ausführung):

Bestückte Platine (Version 1.0)
Bestückte Platine (Version 1.1)
  • Oben Mitte: Anschluss für stehende Lithium-Knopfbatterie CR2032 (die drei abgebildeten Stifte sind natürlich nicht notwendig, die Batterie wird direkt eingelötet)
  • Unten 3-polige Stiftleiste: Anschluss für DCF77-Modul
  • Unten 2-polige Stiftleiste: RX & TX (für Testzwecke)
  • Unten rechts: TSOP17XX/SFH5110 für Infrarot-Empfang
  • Darüber: 2-polige Stiftleiste für LDR (Helligkeitsmessung)
  • Oben links und rechts: Wannenstecker für insg. 32 Ausgabekanäle: OUT0-OUT23 (für die Wörter), OUTL1-OUTL4 (für die Minuten) und OUTG1-OUTG4 (für General-Purpose-Ausgabezwecke)
  • Rechts: Anschlussklemmen für Versorgungsspannung 7-20V und die drei PWM-Kanäle Rot, Grün und Blau.

Endgültige Version 1.1 (schmale Ausführung):

  • Wie 1.0, jedoch hat der Verbinder K9 (UART-Anschlüsse Rx/Tx für Debug-Zwecke) zwei zusätzliche Pins erhalten, siehe abweichendes Bestückungsbild rechts. Belegung von links nach rechts: Vcc / GND / RX / TX
Rx/Tx in V1.1

Achtung: die Reihenfolge der Schraubklemmen-Anschlüsse hat sich bei der endgültigen gegenüber der Prototyp-Version geändert, siehe weiter unten!

Der IR-Empfänger TSOP17XX/SFH5110 muss hinter einem nicht benutzten Buchstaben angebracht werden. Deshalb braucht man ihn nicht unbedingt auf die Platine löten, sondern kann ihn auch über ein 3-poliges Kabel mit der Platine verbinden. In diesem Fall sollte der Kondensator C2 nicht auf die Platine, sondern direkt am TSOP17XX/SFH5110 (C2 Minus an Pin 1, C2 Plus an Pin 2) angelötet werden. Bei Verwendung eines SFH5110 Pinbelegung beachten!

Da die Routine zur automatischen Helligkeitsregelung noch nicht ausgetestet ist, sollte man den Widerstand R6 (Pulldown für LDR) zunächst noch nicht bestücken, bis klar ist, welcher Wert der optimale für den gewählten LDR ist.


Bestückungsaufdruck der Prototyp-Platine

FOLGENDES GILT NUR FÜR DEN PROTOTYPEN:

Durch einen Fehler in der Target3001-Bibliothek hat die Prototypen-Platine einen Fehler, der aber leicht behebbar ist: Die Einstecklöcher für die 3 MOSFETs IRLU2905 besitzen auf der Unterseite keine Lötpunkte. Daher müssen die IRLUs an die oben liegenden Lötpunkte festgelötet werden. Auf der unteren Seite bilden die Bohrlöcher leider einen Kurzschluss mit der unten liegenden Massefläche.

Deshalb müssen vorher(!) die Löcher für die IRLU-Beinchen mit einem spitzen Gegenstand auf der Unterseite von dem Kurzschluss mit der unteren Massefläche befreit werden. Dazu geht man folgendermaßen vor:

Anschlüsse der Prototyp-Platine

Spitzen Gegenstand (z. B. Teppichmesser, Spitze einer kleinen Kneifzange) von unten(!) ins Loch stecken und zwei- bis dreimal dreimal im Bohrloch drehen, damit die Verbindung der unteren Massefläche zur Durchkontaktierung unterbrochen wird. Anschließend mit dem Ohmmeter prüfen, ob der Kurzschluss behoben ist. Insgesamt sind es 6 Löcher, die so behandelt werden müssen, diese betreffen jeweils die Pins 1 und 2 der drei IRLU-MOSFETs. Pin3 muss nicht bearbeitet werden, da hier sowieso die Masse angeschlossen werden muss, siehe auch das nächste Bild unten.

Ist der Kurzschluss zur unteren Massefläche behoben, sollte man die IRLU-Beinchen trotzdem nicht durch das Bohrloch stecken, sondern:

  • Beinchen kürzen, vielleicht die Enden (wegen der Stabilität) 2mm umbiegen
  • Oben in SMD-Manier anlöten.

Im rechts stehenden Bild sind nicht nur die Lage der Anschlüsse verdeutlicht, sondern auch die Bohrlöcher für die IRLU-MOSFETs rot umkringelt, welche man von der Unterseite(!) her "behandeln" muss. Beim Prototypen müssen die IRLUs so angelötet werden, dass das Metall zur Schraubklemme zeigt.


Bestückung und Anschlüsse der Version 1.0:

Bestückungsaufdruck der Version 1.0 (schmale Platine)
Bestückungsaufdruck der Version 1.1 (schmale Platine)
Bestückung: Orientierung der IRLUs beachten!
Anschlüsse V1.0
Anschlüsse V1.1

WICHTIG für die Version 1.0:

Der oberste IRLU2905 muss anders herum eingelötet werden (Metall Richtung Spannungsregler) als die beiden unteren (Metall Richtung Schraubklemme). Siehe auch Foto rechts.

Die Reihenfolge der Schraubklemmen-Anschlüsse hat sich gegenüber dem Prototypen geändert, bitte unbedingt die Reihenfolge beachten!

Möchte man einfarbige LEDs verwenden und auf die RGB-Steuerung verzichten, schließt man einfach zwei der drei RGB-PWM-Kanäle nicht an und verwendet stattdessen nur PWMR zur PWM-Steuerung. Die 2 zu PWMG und PWMB gehörenden IRLUs und die angeschlossenen 4 Widerstände am Gate der IRLUs kann man dann auch weglassen.

Bestückungsliste:

Diese Liste bezieht sich sowohl auf den Prototypen als auch auf die endgültige (schmalere) Version.

Name                Wert
C1,C3,C4,C6,C8,C9   100NF
C10,C11,C12,C13     100NF
C2                  4,7µF
C5,C7               47µF
D1                  1N4001
IC1                 ATMEGA88
IC2                 7805
IC3                 TSOP17XX/SFH5110
IC4,IC5,IC6         74HCT595N
IC7                 DS1307
IC8,IC9,IC10,IC11   UDN2981A
K4                  Wannenstecker 10
K7,K8               Wannenstecker16
K6                  LDR
KL1                 KLEMME5POL
Q1                  32,768KHz
R1,R6,R8,R10,R12    10K (R6 für LDR evtl.noch nicht bestücken)
R7                  10K, entfällt!
R2                  100
R3,R4               4K7
R5,R9,R11           82
T1,T2,T3            IRLU2905

Anmerkung zu C2 und R2:

Die Version 1.0 der Platine hat einen Fehler: Der Kondensator C2 ist nicht direkt über dem TSOP17xx (an Pin 1 und Pin 2) angebracht sondern über VCC und Pin 2, wodurch der eigentlich gewünschte Tiefpass nicht existiert. Da man in den meisten Fällen den TSOP sowieso über ein Kabel (verlängert) anbringen wird, sollte der Kondensator C2 direkt an den TSOP angelötet werden - und nicht auf der Platine. Dann ist das gewünschte Tiefpass-Verhalten wieder gegeben. Die Praxis hat aber gezeigt, dass der fehlende Tiefpass keinen merklichen Unterschied bringt. Die Reichweite zur IR-Fernbedienung kann (ohne Hindernis wie einen Diffusor) durchaus 10 Meter betragen.

Bei der Platinen-Version 1.1 ist der Tiefpass korrekt beschaltet. Aber auch hier gilt: Soll der TSOP17XX/SFH5110 über ein längeres Kabel entfernt von der Platine angebracht werden, sollte man den Kondensator C2 nicht in die Platine löten, sondern direkt am Empfänger anbringen (Achtung: TSOP17XX und SFH5110 haben unterschiedliche Pinbelegung).


FAQ zur Bestückung

Bestückung: Orientierung der IRLUs (ganz rechts) beachten!
Q: Wie herum müssen die IRLUs eingelötet werden?
A: Beim Prototypen: Alle drei mit der Metallseite zur Schraubklemme hin, Pin1
   ist also immer "oben".
   Bei V1.0 (schmale Version): Der oberste kommt mit der Metallseite nach
   links (Richtung Spannungsregler), Pin 1 ist hier der untere. Die anderen
   beiden IRLUs werden mit der Metallseite Richtung Schraubklemme eingelötet,
   siehe auch Foto rechts. Hier ist jeweils Pin 1 der obere.
Q: Welche ICs sollte ich sockeln?
A: Wenn durch einen versehentlichen Kurzschluss bei der Freiluftverdrahtung der
   LEDs ein UDN2981 abfackelt, ist das ägerlich. Daher sollte man zumindest
   die UDNs und den ATMega sockeln. Besser ist es natürlich, alle zu sockeln.
Q: Bei dem ATMega und der RTC ist nicht ersichtlich, wie herum sie eingebaut
   werden müssen?
A: Doch, kann man sehen: Der Lötpunkt von Pin1 ist immer rechteckig, die
   anderen sind oval. Das gilt übrigens für fast alle Bauteile, auch die Wannen.
Q: Ich möchte oben statt der abgebildeten zwei 2x8-poligen Stiftleisten 16-polige
   Wannenstecker nehmen. Wie herum kommen dann die oberen Wannen drauf?
A: Mit der Kerbe nach unten, sieht man auch am rechteckigen Lötpunkt - und
   auch auf dem Foto rechts.
Q: Kann ich auf die Batterie verzichten, weil ich DCF77 einsetze bzw. nach
   einem Stromausfall die Uhr per Fernbedienung selbst neu stellen möchte?
A: Wenn man keine Batterie einsetzt, sollte man VBat der RTC DS1307 mit GND
   verbinden. Das geht am einfachsten an den auf der Platine vorgesehenen
   Batterieanschlüssen: einfach K1 (Bat+) und K3 (Bat-) mit einem Stück Draht
   überbrücken. Übrigens: die Batterie hält lt. Datenblatt des DS1307
   10 Jahre, es ist also durchaus sinnvoll, diese auch zu bestücken.
Q: Der Infrarot-Empfänger TSOP17XX ist abgekündigt. Gibt es dazu eine Alternative?
A: Als Ersatz kann man den SFH5110-XX nehmen. Bis auf die unterschiedliche
   Pinbelegung ist er für die Zwecke des Projekts kompatibel.
Q: Kann ich (aus Kostengründen) auch einfarbige LEDs verwenden?
A: Ja, einfach zwei der drei RGB-PWM-Kanäle nicht anschließen und nur PWMR (für Rot) benutzen.
   Die 2 zu PWMG und PWMB gehörenden IRLUs und die angeschlossenen 4 Widerstände am Gate der IRLUs
   kann man dann auch weglassen.

Anschluss eines DCF77-Moduls

Der Anschluss eines DCF77-Moduls ist optional. Wird ein DCF77-Modul angeschlossen, kann mittels einer LED der DCF77-Empfang angezeigt werden. Die LED blinkt dann im Sekundenrhytmus und zeigt direkt die empfangenen DCF77-Impulse. Der Empfang wird kurze Zeit nach dem Einschalten aktiviert bzw. jede Stunde wiederholt.

Die DCF77-LED kann folgendermaßen angeschlossen werden:

TODO

Bei Anschluss des DCF77-Moduls von Reichelt ist folgendes zu beachten:

  • Prototyp-Platine: Der Pull-Up-Widerstand R7 darf nicht eingelötet werden. Grund: Das Reichelt-Modul hat keinen Open-Collector-Ausgang, sondern einen sehr schwachen Ausgang, welcher durch den Pullup-Widerstand permanent auf High gezogen wird.
  • Es sollte direkt auf den Lötaugen des Reichelt-DCF77-Moduls ein Abblock-Kondensator von 100nF zwischen den Pins +UB und GND aufgelötet werden
  • Der Eingang PON muss offen bleiben - entgegen den (falschen) Angaben im Reichelt Datenblatt!
  • Das DCF77-Modul von Reichelt braucht eine Synchronisierungszeit von mindestens 10 Sekunden. Erst dann arbeitet der Empfänger.

Beim Anschluss des Conrad-Moduls ArtNr. 641138 ist folgendes zu beachten:

  • Es muss der nicht-invertierte Open-Collector-Ausgang Pin 3 als Signal an die WordClock angeschlossen werden.

Ab Software-Version 0.9 darf der Pullupwiderstand R7 auf der Prototyp-Platine generell nicht mehr eingelötet werden. Daher ist er auch in der endgültigen Platinen-Version entfallen.

Ein Max232 der zur Kontrolle angeschlossen ist, kann den DCF Empfang stören. Ohne Max232 verbessert sich der Empfang deutlich.

Da einige berichtet haben, dass der DCF-Empfang bei den Reichelt-Modulen oftmals gestört ist, hier ein Tipp von Carsten Wille, wie man den Empfang durch Hinzufügen weniger Bauteile wesentlich verbessern kann: Beitrag: Brauche Hilfe beim Bau einer Uhr


Anschluss der LEDs

Zuordnung der Kanäle

Anschlüsse der Wannenstecker

Folgende Tabelle enthält die Zuordnung der Wörter zu den Pins der Wannenstecker. Die Bezeichnungen der Pins entsprechen dem Schaltplan. Zu beachten ist, dass die Reihenfolge der Wörter nichts mit der Anordnung auf der Frontplatte zu tun hat.

Zuordnung Pins
Anschluss Pin Frontplatte deutsch 2-sprachig Frontplatte deutsch 3-sprachig Frontplatte Englisch
OUT0 K7-08 ES IST ZW IT IS
OUT1 K7-07 FÜNF (Minuten) EI FIVE (Minuten)
OUT2 K7-06 ZEHN (Minuten) N TEN (Minuten)
OUT3 K7-05 VOR (Minuten) S QUARTER
OUT4 K7-04 DREI (Minuten) IEBEN TWENTY (Minuten)
OUT5 K7-03 VIERTEL DREI HALF
OUT6 K7-02 NACH VIER TO
OUT7 K7-01 VOR FÜNF PAST
OUT8 K7-16 HALB SECHS ONE
OUT9 K7-15 S ACHT TWO
OUT10 K7-14 EIN NEUN THREE
OUT11 K7-13 ZWEI ZEHN FOUR
OUT12 K7-12 DREI ELF FIVE
OUT13 K7-11 VIER ZWÖLF SIX
OUT14 K7-10 FÜNF ES IST SEVEN
OUT15 K7-09 SECHS UHR EIGHT
OUT16 K8-08 SIEBEN FÜNF (Minuten) NINE
OUT17 K8-07 ACHT ZEHN (Minuten) TEN
OUT18 K8-06 NEUN ZWANZIG (Minuten) ELEVEN
OUT19 K8-05 ZEHN DREI (Minuten) TWELVE
OUT20 K8-04 ELF VIERTEL (Minuten) O CLOCK
OUT21 K8-03 ZWÖLF NACH unverbunden
OUT22 K8-02 UHR VOR unverbunden
OUT23 K8-01 unverbunden HALB unverbunden
OUTL1 K8-09 min1 min1 min1
OUTL2 K8-10 min2 min2 min2
OUTL3 K8-11 min3 min3 min3
OUTL4 K8-12 min4 min4 min4
OUTG1 K8-13 Ambilight (opt.) Ambilight (opt.) Ambilight (opt.)
OUTG2 K8-14 unverbunden unverbunden unverbunden
OUTG3 K8-15 unverbunden unverbunden unverbunden
OUTG4 K8-16 dcf Empfang dcf Empfang dcf Empfang

-

Beschaltungsvarianten der LEDs

Da die Schaltung genügend Power hat, um eine Unmenge an RGB-LEDs zu treiben, gibt es folgende Möglichkeiten, die auch mixbar sind:

1. Pro Wort für jeden Buchstaben eine RGB-LED (mit gemeinsamer Anode) in Parallelschaltung (natürlich mit geeignetem Vorwiderstand pro LED)

Prinzip (am Beispiel des Wortes "VIER"):

        /---|>|----| R1R |---- PWMR
     +--|---|>|----| R1G |---- PWMG     "V"
     |  \---|>|----| R1B |---- PWMB
     |
     |  /---|>|----| R2R |---- PWMR
     +--|---|>|----| R2G |---- PWMG     "I"
     |  \---|>|----| R2B |---- PWMB
OUTx-+
     |  /---|>|----| R3R |---- PWMR
     +--|---|>|----| R3G |---- PWMG     "E"
     |  \---|>|----| R3B |---- PWMB
     |
     |  /---|>|----| R4R |---- PWMR
     +--|---|>|----| R4G |---- PWMG     "R"
        \---|>|----| R4B |---- PWMB


2. Pro Wort für jeden Buchstaben eine RGB-LED in Reihenschaltung (mit nur 1 Vorwiderstand für die ganze Reihe, bzw. 3 wegen RGB). Das geht aber nur, wenn die RGB-LEDs unabhängige Anoden und Kathoden haben (ja, die gibt es).

Prinzip:

                        "V"    "I"    "E"    "R"
        /----| R1R |----|>|----|>|----|>|----|>|---- PWMR
OUTx --+-----| R1G |----|>|----|>|----|>|----|>|---- PWMG
        \----| R1B |----|>|----|>|----|>|----|>|---- PWMB

Theoretisch könnte man solche Streifen als Platine herstellen, welche man dann immer auf die gewünschte Länge kürzt, als 1, 2, 3 ... 7 Buchstaben.

Bei Verwendung von einfarbigen LEDs vereinfachen sich die Prinzip-Schaltungen wie folgt:

1. Parallelschaltung, eine LED pro Buchstabe im Wort:

      /----|>|----| R1 |---- PWMR     "V"
     +-----|>|----| R2 |---- PWMR     "I"
OUTx-+
     +-----|>|----| R3 |---- PWMR     "E"
      \----|>|----| R4 |---- PWMR     "R"


2. Reihenschaltung, eine LED pro Buchstabe im Wort:

                   "V"    "I"    "E"    "R"
OUTx ----| R1 |----|>|----|>|----|>|----|>|---- PWMR


Zum Berechnen der Vorwiderstände kann z. B. dieser Rechner verwendet werden: Vorwiderstands-Rechner oder Vorwiderstands-Rechner mit Unterstützung für Reihenschaltung

Damit die LEDs selbst nicht sichtbar sind, benötigt man hinter den transparenten Buchstaben einen Diffusor. Im einfachsten Fall kann das eine weiße Schicht Farbe sein.


Streifenplatinen & LEDs

Streifenplatinen

Die Platine hat ein Maß von 314 x 12 mm und ist auf die Word-Clock-Front-Varianten A und B (also 450mm x 450mm) ausgelegt.

Der Abstand der einzelnen LEDs beträgt 28.1mm

Die Streifenplatine wird so ausschauen: (Version 8 vom 06.März 2010)

Streifenplatine für SMD RGB LEDs Version 8

Erster Streifen bestückt

Erste Streifenplatine bestückt.
Weitere Beispiel-Photos der bestückten Streifenplatinen sind hier zu finden.

Ausschnitt vergrößert dargestellt:

Aussschnitt

Datenblatt der LED mit Bestückungsinfos: Datei:SMD RGB PLCC-6 datasheet3.pdf

Hier ist die Bestückung aller Streifen schematisch detailliert gezeigt: [ http://www.mikrocontroller.net/topic/156661?goto=1671369#1671369 Beitrag] und Bestückungsübersicht


Technische Daten der SMD RGB PLCC-6 LEDs

Spezifikation

  • Source Material: InGaN
  • Emitting Colour: SMD SMT 5050 RGB
  • LENS Type: Water clear
  • Reverse Voltage: 5.0 V
  • Viewing Angle: 140 degree
  • Lead Soldering Temp: 260°C for 5 seconds

Absolute Maximum Rating (Ta = 250C)

PARAMETER Symbol RED GREEN BLUE UNITS
Power Dissipation PO 80 95 85 mW
DC Current IF 20 20 20 mA
Peak Forward Current IFP 100 100 100 mA
Reverse Voltage VR 5 5 5 V
Operating Temperature Topr -25 to +85 °C
Storage Temperature Tstg -40 to +85 °C

Electro-optical Characteristics (Ta = 250C)

PARAMETER SYMBOL CONDITIONS MIN. TYP. MAX. UNIT
Forward Voltage (B) VF IF = 20mA 3.4 3.6 3.8 V
Forward Voltage (G) VF IF = 20mA 3.4 3.6 3.8 V
Forward Voltage (R) VF IF = 20mA 1.9 2.1 2.5 V
Dominant Wavelength (B) lD IF = 20mA 465 470 475 nm
Dominant Wavelength (G) lD IF = 20mA 515 520 525 nm
Dominant Wavelength (R) lD IF = 20mA 625 630 635 nm

Pin / Farbzuordnung:

  • R: Pin 1 - 6
  • G: Pin 2 - 5
  • B: Pin 3 - 4

Plcc6 smd RGB.JPG


Widerstandswerte für die LED Streifen

Berechnet sind die Widerstände für eine Spannungsversorgung von 15V. Ein solches Netzteil gibt es zB bei Pollin oder auch bei Reichelt.

....Widerstände E12.... ....Widerstände E24....
Streifen Wort LEDs Rot Grün Blau Rot Grün Blau Anschluss
1 ES 2 560 470 470 510 360 360 OUT14
1 K
1 IST 3 470 220 220 390 200 200 OUT14
1 L
1 FÜNF 4 330 33 33 300 27 33 OUT16
2 ZEHN 4 330 33 33 300 27 33 OUT17
2 ZWAN 4 330 33 33 300 27 33 OUT18
2 ZIG 3 470 220 220 390 200 200 OUT18
3 DREI 4 330 33 33 300 27 33 OUT19
3 VIER 4 330 33 33 300 27 33 OUT20
3 TEL 3 470 220 220 390 200 200 OUT20
4 TG
4 NACH 4 330 33 33 300 27 33 OUT21
4 VOR 3 470 220 220 390 200 200 OUT22
4 JM
5 HALB 4 330 33 33 300 27 33 OUT23
5 Q
5 ZWÖ 3 470 220 220 390 200 200 OUT13
5 LF 2 560 470 470 510 360 360 OUT13
5 P
6 ZW 2 560 470 470 510 360 360 OUT0
6 EI 2 560 470 470 510 360 360 OUT1
6 N 1 680 560 560 620 560 560 OUT2
6 S 1 680 560 560 620 560 560 OUT3
6 IEB 3 470 220 220 390 200 200 OUT4
6 EN 2 560 470 470 510 360 360 OUT4
7 K
7 DREI 4 330 33 33 300 27 33 OUT5
7 RH
7 FÜNF 4 330 33 33 300 27 33 OUT7
8 ELF 3 470 220 220 390 200 200 OUT12
8 NEUN 4 330 33 33 300 27 33 OUT10
8 VIER 4 330 33 33 300 27 33 OUT6
9 W
9 ACHT 4 330 33 33 300 27 33 OUT9
9 ZEHN 4 330 33 33 300 27 33 OUT11
9 RS
10 B
10 SEC 3 470 220 220 390 200 200 OUT8
10 HS 2 560 470 470 510 360 360 OUT8
10 FM
10 UHR 3 470 220 220 390 200 200 OUT15

Es werden somit folgende Widerstände aus der E24 Reihe benötigt:

  • 13x 27 Ohm
  • 13x 33 Ohm
  • 18x 200 Ohm
  • 13x 300 Ohm
  • 12x 360 Ohm
  • 9x 390 Ohm
  • 6x 510 Ohm
  • 4x 560 Ohm
  • 2x 620 Ohm

Sammelbestellung

Es wurden Sammelbestellungen für Streifenplatinen, RGB-LED's und zugehörige SMD Widerstände angeboten.

Die Preise der letzten Sammelbestellungen können als Richtwerte genommen werden:

Paket 1: LED Paket (100 SMD RGB LEDs) ca. 35,00 EUR
Paket 2: Platinen Paket (11 Streifenplatinen) ca. 11,00 EUR
Paket 3: Komplettpaket (Paket1 + Paket2 + 155 SMD Widerstände) ca. 50,00 EUR
Paket 4: Ambilightpaket (4 Streifen + 32 LEDs + 45 Widerstände) ca. 16,00 EUR
Paket 5: Luxuspaket (Komplettpaket + Ambilightpaket) ca. 66,00 EUR
Paket 6: Eine SMD RGB LED einzeln ca. 0,35 EUR
Paket 7: Eine Streifenplatine einzeln ca. 1,00 EUR

Als Versandkosten kommen noch ca. 5,20 EUR (.de) bzw. ca. 9,00 EUR (.at / .ch) dazu.

Wer sich die Bauteile selbst besorgen möchte, kann diese Reichelt Warenkörbe verwenden:
pro WordClock: https://secure.reichelt.de/?;ACTION=20;LA=5010;AWKID=292199;PROVID=2084
zusätzlich fürs Ambilight: https://secure.reichelt.de/?;ACTION=20;LA=5010;AWKID=292202;PROVID=2084
LEDs gibt es zB bei LED-Tech: http://www.led-tech.de/de/Leuchtdioden/SMD-LEDs/Samsung-Ultrabright-SMD-3-Chip-LT-1325_1_2.html

Die 5te Sammelbestellung ist 'closed' (29.11.2010) Weitere Infos bekommen alle von [matsch]
Es wird eine 6te Sammelbestellung geben. Zur Zeit werden Interessenten von [matsch] in einer vorläufigen Liste erfasst (Stand 25.01.2011). Die 6te Sammelbestellung wird frühestens starten, wenn die 5te Sammelbestellung zu 100% abgeschlossen ist (ca. Mitte Februar).

Historie:

  • erste Sammelbestellung
    • 22.Februar bis 09.April 2010
    • 20.000 LEDs, 26.195 Widerstände und 2.100 Streifenplatinen
  • zweite Sammelbestellung
    • 12.April bis 23.Mai 2010
    • 10.000 LEDs, 13.400 Widerstände und 900 Streifenplatinen
  • dritte Sammelbestellung
    • 27.Mai bis 29.Juni 2010
    • 7.000 LEDs, 11.600 Widerstände und 800 Streifenplatinen
  • vierte Sammelbestellung
    • 30.Juni bis 17.Sep 2010
    • 6.300 LEDs, 7.905 Widerstände und 931 Streifenplatinen
  • fünfte Sammelbestellung
    • 21.Oktober 2010 bis 28. November 2010
    • 11.000 LED's, 18.500 Widerstände, 1300 Streifenplatinen

Software

Module

DCF77

Zur Programmierung siehe den Artikel DCF77-Funkwecker mit AVR. Im Abschnitt Programmierung ist das Funksignal dokumentiert, zusammen mit einem Beispiel (Bitstrom und Bedeutung).

Codebeispiel siehe Codesammlung DCF 77.

Softwareentwickler: Torsten Giese (wawibu)


Automatische Helligkeitsregelung

Die Helligkeit des Displays wird über einen LDR (z.B. LDR 07 von Reichelt) gesteuert.

Softwareentwickler: Rene H. (promeus)


Uhrzeit

Die Zeit wird von einer batteriegepufferten Maxim DS1307 Echtzeituhr (RTC), die über I2C mit dem Microcontroller verbunden ist, zur Verfügung gestellt.

Softwareentwickler: Frank M. (ukw)


IR

Es werden folgende Infrarot-Protokolle unterstützt:

Protokoll Hersteller
SIRCS Sony
NEC NEC, Yamaha, Canon, Tevion, Harman/Kardon, Hitachi, JVC, Pioneer, Toshiba, Xoro, Orion, NoName und viele weitere japanische Hersteller.
SAMSUNG Samsung
SAMSUNG32 Samsung
MATSUSHITA Matsushita
KASEIKYO Panasonic, Technics, Denon und andere japanische Hersteller, welche Mitglied der "Japan's Association for Electric Home Application" sind.
RECS80 Philips, Nokia, Thomson, Nordmende, Telefunken, Saba
RECS80EXT Philips, Technisat, Thomson, Nordmende, Telefunken, Saba
RC5 Philips und andere europäische Hersteller
DENON Denon
RC6 Philips und andere europäische Hersteller
APPLE Apple
NUBERT Nubert, z.B. Subwoofer System
B&O Bang & Olufsen (erst ab Version 1.0)
GRUNDIG Grundig (erst ab Version 1.0)
NOKIA Nokia, z.B. D-Box (erst ab Version 1.0)

Über die automatische Erkennung des Protokolls werden die nötigen Tastatur-Befehl-Bits aus den Infrarot-Daten extrahiert - ohne Kenntnis, welche Tasten da eigentlich tatsächlich gedrückt wurden. So eine Tabelle würde den Speicher des µCs sprengen. Deshalb passiert die Zuordnung der Tasten zu WordClock-Befehlen in einer kleinen Anlernprozedur, die einmal nach dem ersten Bootvorgang ausgeführt werden muss.

Mittlerweile gibt es einen eigenen Artikel zum Infrarot-Fernbedienungsdecoder, siehe IRMP

Softwareentwickler: Frank M. (ukw)


PWM

Die PWM steuert die 3 RGB Kanäle. Damit ist freie Farbenwahl möglich.

Softwareentwickler: Frank M. (ukw)


Display

Das Display wird nicht als 10x11 Matrix sondern wortweise angesteuert. Da die LEDs RGB-LEDs sind ergibt sich daraus für die 24 Wortteile und die 4 Minutenpunkte eine 28x3-Matrix.

Die Farben sind kein Muss, in der Minimalbeschaltung können auch einfarbige LEDs zum Einsatz kommen.

Softwareentwickler: Vlad Tepesch (vlad_tepesch)

Struktur

Die display.h ist quasi die Basisklasse. Dort ist definiert, welche Schnitsstellen eine Uhr anbieten muss. Einige front-unabhängige Sachen sind hier bereits implementiert.

Von ihr abgeleitet ist die display_tix und die display_wc, wo entweder der gesamte Rest implementiert ist (TIX) oder wo weitere Ableitungen existieren (WC).

Die display_wc implementiert die Teile die alle WC-Varianten gemeinsam haben. Von ihr sind quasi die verschiedenen WC-Frontplatten abgeleitet.

Die display_wc_xxx implentieren die Eigenheiten der speziellen Version, was neben ein paar Defines nur das Mapping Zeit → Ausgabemuster (display_getTimeState) ist und das Handling der Modus-Taste ist.

Hinzufügen eigener WC-Frontplattenlayouts

Prinzipiell sind folgende Schritte notwendig:

  1. Kopieren und Umbenennen einer display_wc_xxx-Datei, die der eigenen Konfiguration am nächsten kommt (englisch, wenn nur eine Sprache, oder ger3 bei mehreren)
  2. in main.h define hinzufügen
  3. in display_wc.h oben das kopierte include unter Bedingung des gerade definiertne Defines hinzufügen
  4. anpassen des neuen headers
    1. Enumeration anpassen, Namen sind egal aber DWP_min1 - DWP_min4 müssen existieren. Auch sollten sie die Werte 24 - 28 haben.
      Bei kleineren werden sonst die übrigen Shift-Register-ausgängen mit geschalten.
      Höhere machen keinen Sinn, weil das heißen würde, das mehr Wörter als SR-Kanäle da sind.
    2. display_getMinuteMask und display_getHoursMask so anpassen, das alle Minuten, bzw Stundenkanäle gesetzt werden
    3. display_getTimeSetIndicatorMask gibt den Kanal zurück, der bei Zeiteingabe 0 Minuten visualisieren soll (da sonst nix blinkt)
    4. display_getNumberDispalyState muss eine übergebene Zahl in ein Bild umwandeln, dass die übergebene Zahl erahnen lassen kann.
    5. Modus-Taste - am einfachsten nur Einträge in e_WcGerModes anpassen. Die Schaltung kann behalten werden. Man bBeachte, dass es doppelt so viele Modi gibt, wie in der Enumeration, da jeweils das Es_ist abgeschalten werden kann. Ist das nicht gewünscht, muss das Define DISPLAY_DEACTIVATABLE_ITIS auf 0 gestellt.
  5. anpassen der mapping-funktion Zeit → Ausgabemuster (display_getTimeState)
    1. komplett im Code oder mit look-Up-Tables
    2. Es sollte natürlich der aktuell ausgewählte Modus (g_displayParams->mode) berücksichtigt werden

Benutzer-Interaktion

Mit der Fernbedienung ist folgendes möglich:

  • Einmaliges Anlernen der Fernbedienung
  • Anpassen der automatischen Helligkeitssteuerung
  • Einstellen des Farbprogramms (Übergänge etc)
  • Stellen der Uhr (wenn kein DCF77-Modul angeschlossen)

Softwareentwickler: Vlad Tepesch (vlad_tepesch)


Download

SW V0.11

Datei:Wordclock-0.11.zip

Bitte README.txt lesen!

Ergänzung: im Verzeichnis "art" fehlte ein PDF, ohne das das Handbuch nicht gebaut werden kann. Datei:Regiomap.pdf

Noch ein paar Tips zum Handbuch:
Latex muss 3x ausgeführt werden, damit alles in dem Ausgabedokument stimmt. Am besten TeXnicCenter benutzen und das beiliegende Projectfile (*.tcp) benutzen. Dann ein Ausgabeprofil anlegen (ein vorhandenes kopieren), in dem man eine der bat-Dateien als LaTeX-Compiler angiebt.
Vorteil ist dann, dass man mittels der Buttons schneller durch die Ausgabe navigieren und zu Fehlermeldungen und Warnungen springen kann.


Änderungen:

  • gefixt BUG08_002 (Helligkeitskontrolle funktioniert nicht)
  • Kalibrierung der automaticshen Helligkeitsanpassung
    • --> neues IR-Kommando
    • --> neuer Eeprom-Parameter
    • --> neue Loggingoption
  • an Code-Konfig anpassendes latex-basiertes Handbuch (siehe readme)
  • IOs per IR ein/abschaltbar
    • --> neue IR-Kommandos
    • --> neue Eeprom-Parameter
  • gefixt BUG09_022 (Automatische Abschaltung) geänderte Logik (-> Handbuch)
  • Autosave optional (user.h USER_AUTOSAVE)
  • Eeprom-parameter-Sicherung bei An/Aus IR-cmd
  • Signalisierung im Auto-Aus-Zustand
  • gefixt BUG010_023 (schnelle Modus-Umschaltung verhindert Fading)
  • Schrittweite der Auschaltzeiten als define



ältere Versionen

Hier gibt es noch ältere Software Stände:

SW V0.10

Datei:Wordclock-0.10.zip

Bitte README.txt lesen!

Änderungen:

  • abschaltbares "ES IST" via Sprach-Wahl-Taste für beide deutsche Front Designs
    • (übernommen von wichtel - aber Reihenfolge geändert -> Handbuch)
  • Bootloader Support:
    • Wenn 'R' über die UART empfangen wird, wird ein Watchdog-Reset ausgelöst.
    • Der Watchdog wird direkt nach Systemstart deaktiviert.
  • Indikator für Zeiteingabe definiert -> blinkendes 'Uhr', wenn keine Minutenwörter aktiv
  • Helligkeit für Nachtstunden bei Zeiteingabe reduziert.
  • Sicherung des Hauptmodus (Einfarb-, Farbwechsel- und Pulse-Modus) und des aktiven Farbprofils im EEPROM
  • BAUD_ERROR Makro aktualisiert
  • atmega88 Konfiguration entfernt
  • DCF77 geändert, zwei erfolgreich empfangene Frames vor Zeitübernahme notwendig
  • IRMP-Version 1.7.2:
    • Bugfix: Timeout vor NEC repetition frames um "Geister-Kommandos" zu vermeiden
    • einige weniger wichtige Protokolle hinzugefügt
  • gefixt BUG09_018 (Zeitupdate während Zeiteingabe beinträchtigt Anzeige)
  • gefixt BUG09_019 (gemeldet von Wichtel) ("Gesiter-Kommandos" siehe neue IRMP-Version)
  • gefixt BUG09_020 (gemeldet von Roman) DCF-Initialisierung <=6 anstatt <=7
  • gefixt BUG09_021 (Ambilight in SW an OUTG2 anstatt OUTG1)
  • gefixt Fehler der in Mono-Color-Variante: zurückschalten in Normal-Mode forciert kein Display-Update

Die wichtigsten Einstellungen können in der Main.h geändert werden.


SW V0.9

Datei:Wordclock-09.zip

Bitte README.txt lesen!

zusätzliche Features:

  • Unterstützung für neue (3 sprachige) deutsche Front
  • Unterstützung für TIX-Clock
  • kurze Anzeige von Submodi (Farbprofilauswahl, Sprachvariante)
  • Helligkeits-Offset wird abgespeichert
  • 24h Zeiteingabe (8-20Uhr: hell, 20-8Uhr: dunkel)
  • Standardeeprom-Werte im Flash
  • Ein/Aus-Schalt-Zeiten
  • Pulsierender Modus
  • neue IRMP-Version

Die wichtigsten Einstellungen können in der Main.h geändert werden.

Anmerkung: die vorkompilierten Hexfiles enthalten die 3-sprachig-deutsche Version. Wer noch eine alte Frontplatte hat, muss das Binary nach Ändern der Konfiguration (in der main.h) selbst kompilieren.

Bugfixes

Zum Anwenden der .patch-Files gibt es das patch-Tool, das mit dem AVR-GCC kommt und von der Kommandozeile aus erreichbar ist. Manual-Page zu patch: hier.

V0.8

Datei:Wordclock-08-src.zip Bitte 00README.txt lesen!


Bugs

[bestätigt]
der Bug konnte von den Entwicklern reproduziert werden
[gefixt]
der Bug wurde bereits gefixt, der Fix ist aber in noch keinem Release enthalten.
[gefixt - Vx.y]
der Bug wurde in Version x.y gefixt
[widerlegt]
der Bug konnte nicht bestätigt werden, oder es wurde eine andere Ursache gefunden

Version 0.8

  • BUG08_001 - [bestätigt] [gefixt - V0.9]
    • Helligkeitssteuerung per FB funktioniert nicht richtig
  • BUG08_002 - [bestätigt]
    • Helligkeitssteuerung per LDR funktioniert nicht richtig
    • [Ergänzt 22.5.10 von Wichtel] In pwm.c wird pwm_idx innerhalb pwm_set_brightness_step() falsch normiert: [gefixt - V0.10]
      • pwm_idx % MAX_PWM_STEPS; ersetzen durch:
      • else if (pwm_idx >= MAX_PWM_STEPS ) pwm_idx = MAX_PWM_STEPS - 1;
  • BUG08_003 - [bestätigt] [gefixt - V0.9]
    • OUT23 wird immer mit OUTL1 geschalten
  • BUG08_004 - [bestätigt] [gefixt - V0.9]
    • Helligkeitssteuerung: geänderter Wert wird nicht gespeichert
    • nach Power-ON-Reset immer 100%
  • BUG08_005 [widerlegt] (Fehler lag woanders)
    • die Kommandos der FB gehen nach einem Power-ON-Reset manchmal verloren
  • BUG08_006 (reportet von panik) [widerlegt] (Fehler lag woanders)
    • Die Uhr zeigt nach mehr als 10 Stunden Betrieb für wenige Minuten ein falsches Word mit halber Helligkeit (auf und abschwellend) an.
    • Anzeige korrekt: FÜNF NACH DREI (Ossi-Modus ist permanent aktiv)
    • jetzt beginnt zusätzlich das Word VIERTEL zu leuchten (halber Helligkeit auf und abschwellend)
    • Nach wenigen Minuten ist wieder alles normal.
  • BUG08_007 [widerlegt] (Fehler lag woanders)
    • nach mehr als 12 Stunden Betrieb oft zusätzliche Anzeige der Wörter VIERTEL und NACH (jetzt mit voller Helligkeit bis zum nächsten Bildwechsel)
    • z.B 20:15 Uhr --> Anzeige: ES IST VIERTEL NACH NEUN (Ossimodus aktiv)
    • 20:05 Uhr --> Anzeige: ES IST FÜNF VIERTEL NACH ACHT(Ossimodus aktiv)
    • 09:35 Uhr --> Anzeige: ES IST FÜNF VIERTEL NACH HALB ZEHN(Ossimodus aktiv)

Version 0.9

  • BUG09_008 - [bestätigt] [gefixt V0.9 Patch 1]
    • in der 3-sprachigen deutschen Frontplatte wird die Stunde wird in allen Sprachmodi 5min zu spät hochgezählt
    • Der Fehler liegt in display_wc_ger3.c Zeile 127: das > muss durch ein >= ersetzt werden (Patchfile)
  • BUG09_009 - [bestätigt] [gefixt V0.9 Patch 3]
    • nach Systemstart (nach Ende des Blinken) führt Betätigung des Einfarbmodus-Knopfes (-> Farbprofilwahl) zum Absturz
    • Workaround: zuerst in anderen Modus wechseln (zB. Demo)
  • BUG09_010 - [bestätigt] [gefixt V0.9 Patch 2]
    • Anzeige von EIN oder EINS vertauscht ('eins' wird angezeigt, wenn 'ein' dastehen; vice versa) bei 3 sprachiger Front
  • BUG09_011 - [bestätigt] [gefixt V0.9 Patch 3]
    • IR-Training - bei falsch erkannten Kommandos (falsche Adresse) wird trotzdem hochgezählt.
  • BUG09_012 - [bestätigt] [gefixt V0.9 Patch 3]
    • Der Compiler meint: user.c:164:23: error: userModes.c: No such file or directory - Sollte das nicht usermodes.c heißen?
  • BUG09_013 (gemeldet von Wichtel) - [bestätigt] [gefixt V0.9 Patch 3]
    • Anzeige von EIN und EINS im Bereich von 0-4 und 5-9 min vertauscht, Zeile 153 in display_wc_ger3.c (mit Patch 2) muss lauten:
    • if((hour==1 || hour==13) && minutes==0){ // if "Es ist ein Uhr" <- remove 's' from "eins"
  • BUG09_014 (gemeldet von Wichtel) - [bestätigt] [gefixt V0.9 Patch 3]
    • Nach manueller Uhrzeiteinstellung keine Übernahme der manuell eingestellten Helligkeit, nach einmal Pulsmodus ein/aus wird sie wieder übernommen
  • BUG09_015 (gemeldet von Wichtel) - [bestätigt] [gefixt V0.9 Patch 4]
    • Nach einstellen von Ein/Ausschaltzeit keine Helligkeitssteuerung (Anmerkung von Vlad: -->BUG09_014), keine Modusumschaltung mehr möglich und keine Einblendung des Farbprofilnamens mehr
  • BUG09_016 (gemeldet von Wichtel) - [bestätigt] [gefixt V0.9 Patch 4]
    • Trainingsmodus erreicht letztes Kommando nicht, da curkey vor Schlussabfrage incrementiert wird.
    • durch BUG09_011-fix entstanden
  • BUG09_017 (gemeldet von Wichtel) - [bestätigt] [gefixt V0.9 Patch 5]
    • Uhr geht bis zu einer Minute vor, da die Sekunden durch DCF77-Empfang nicht beeinflusst werden, zur Abhilfe in dcf77.c als Zeile 379 einfügen: (die derzeitige Zeile 379 wird entsprechend nach unten geschoben)
    • DateTime_p->ss = 0;
  • BUG09_018 (gemeldet von Wichtel) - [bestätigt] [gefixt V0.10]
    • Bei manueller Zeiteinstellung und abwarten des realen Minutenwechsels kehrt die Anzeige zur Uhrzeit zurück ohne den Einstellmodus zu beenden
  • BUG09_019 (gemeldet von Wichtel) - [bestätigt] [gefixt V0.10]
    • Zuletzt erfolgreich erkanntes Fernbedienkommando wird sporadisch mehrere Minuten nach dem letzten tatsächlichen Empfang erneut erkannt
  • BUG09_020 (gemeldet von Roman) - [bestätigt] [gefixt V0.10]
    • Fehler in der Initialisierung der DCF77 Struct. Zeile 106 muss wie folgt lauten:
    • for (i=0; i < 6; i++)
  • BUG09_021 - [bestätigt] [gefixt V0.10]
    • Ambilight ist in SW an OUTG2, anstatt OUTG1
  • BUG09_022 (gemeldet von Wichtel) - [bestätigt] [gefixt]
    • Nach manuellem Einschalten während Ausschaltzeit oder man. Ausschalten während Einschaltzeitdauer sind die Ein/ausschaltzeiten wirkungslos
    • Nach erneutem manuellem Eingriff entsprechend programmiertem Zustand wirken sie wieder
    • --> Plan: http://www.mikrocontroller.net/topic/156661?page=15#1795536

Version 0.10

Version 0.11

Flashen mittels Bootloader

Bootloader von Hagen Re "AVRootloader"

Bevorzugt wird der Bootloader von Hagen Re. → AVR-Bootloader_mit_Verschlüsselung_von_Hagen_Re

Dieser Bootloader zeichnet sich durch einen großen Funktionsumfang, einfache Inbetriebnahme, sowie komfortable Benutzung aus.

Hagen Re war so freundlich und hat das OK zur Integration in die WordClock-Auslieferung gegeben. Dies hat den Vorteil, dass der fertig konfigurierte Bootloader, sowie die Windows vorkonfigurierte Flash-Anwendung beiliegen und nicht extra geladen werden müssen.

Vielen Dank an Hagen für diesen tollen Bootloader!

Die vorkompilierten WordClock-Hexfiles sollten sowohl mit, als auch ohne Bootloader funktionstüchtig sein. Das senden eines 'R' per UART löst ein Reset (und damit ein Starten des Bootloaders) aus.

Verwendung des Bootloaders:

  • setzten der BOOTRST-Fuse am AtMega168
    • Damit ergibt sich folgende Konfiguration der Fuses: lfuse: 0xE2 hfuse: 0xDC efuse: 0xFC
  • flashen des AVRootloader-hexfile auf bisherigem Weg
  • Starten der AVRootloader.exe
  • Auswahl des Com-Ports
  • Baudrate auf 9600
  • Sign auf WCMB (WordClock Main Board)
  • "Connect to device" -> Button wird zu "Disconnect"
  • Auswahl des Hexfiles
  • Klick auf "Program"

Das Tool ist so konfiguiert, dass es von sich aus ein 'R' schickt, um die WordClock zu resetten und den Bootloader zu betreten.

Bootloader von Peter Dannegger "FastBoot"

Um den ATmega168 mit dem Fastboot von Peter Dannegger zu flashen, muss vorab das FastBoot.hex eingespielt werden. Ebenso muss dann die eFuse auf 0xFC eingestellt werden.

Um dann später eine neue SW zu flashen, muss dann nur noch das neue Hexfile mittels FBOOT übertragen werden.

Im angehängten ZIP ist der FBOOT von Peter Dannegger und das HEX-File für den ATmega168 einfügt. >> Datei:WordClock FastBoot.zip <<

Ist diese einmal auf dem uC, kann jederzeit einfach über die serielle Schnittstelle (COM 1) mittels einem RS-232/TTL Pegelwandler die neue Firmware eingespielt werden.

Wichtig: FBOOT.exe und die neue Firmware müssen in einem Verzeichnis liegen. Dann kann mittels FBOOT /Pwordcl~1.hex geflasht werden. FBOOT kann nicht mit langen Dateinamen umgehen!

Ein bootloader-client für Linux ist hier zu finden. Credits: Bernhard Michler, Andreas Butti, ad-rem.

Bootloader von chip45.com "chip45boot2"

Bei diesem Bootloader muss die eFuse auf 0xF8 eingestellt werden und zusätzlich in main.h die Option "BOOTLOADER_RESET_WDT" abgeschaltet werden.

Vorkonfigurierte HEX-Files und PC-Software sind hier zu bekommen: http://www.chip45.com/info/chip45boot2.html

Flashen per Bluetooth

Bootloaden über Bluetooth wurde in diesem Post erfolgreich implementiert, siehe auch hier.


Abstimmungen

Eine Stimme ist ein Strich. Nach 5 Strichen bitte ein Leerzeichen einfügen.

offen:

ethernet ntp client: ||||| ||||| |||||
Bewegungsmelder: ||||| ||||| ||||| ||
IR zum PC für Kommunikation/Bootloader |
RFM12 für Kommunikation/Bootloader |||
NTP Server (um eine genaue Zeit ins Netzwerk zu verteilen) |||
kurzzeitiger "Volldampf-Modus" (alle Wörter an für bspw. 30sek): ||||| || - nicht empfehlenswert, da die Treiber/Netzteil überlastet werden
Beim Start, alle LEDs einmal der Reihe nach Durchlaufen lassen zum Funktionstest (statt "Volldampfmodus"): ||||| |||
Ton zur vollen Stunde (Beep/Piezo): ||||
ZBus (Ethersex) zum einstellen der Uhr über das Netzwerk, evt holen der Zeitdaten über ZBus von einem Zeitserver: ||

bereits umgesetzt:

DCF: ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||
IR für Fernbedienung: ||||| ||||| ||||| ||
Ambilight: ||||| ||||| ||||| ||||| ||||
zeitgesteuert Dunkelschalten (z. B. nachts "Aus"): ||||| ||||| ||||
Bluetooth: || (Posting: Bluetooth mit Debug, Bootloader und Autoreset)
Möglichkeit, Zeiteinstellmodus bei "0 Minuten" von Normalmodus zu unterscheiden z.B. blinkendes "UHR" |||||
"ES IST" soll man ein- oder ausschalten können: ||||
Bluetooth per FB ein-/ausschalten: ||
Taste "Speichern" auf FB statt automatisch |||(On Off speichert)



Zurück zum Hauptartikel: Word Clock