- * M E N U * -

HARDWARE- PROJEKTE

iClock WiFi

Internet- Uhr mit ESP8266-12 Modul

E-Field Detector

Elektrostatische Felder detektieren

ESD-Event Detector

ESD-Entladungen detektieren

PROducer RGB AUDIO

8x8 LED-Matrix (RGB) mit VU-Meter

PROducer DUO

8x8 LED-Matrix Modul (rot/grün)

OPEN SOURCE
LASER-TAG-SYSTEM

Tagger und C4-Simulation

SOFTWARE- PROJEKTE

Tinnitus Audio Tool

Hörtest am heimischen PC und mehr


KONTAKT

LINKS

zu meinen anderen Projekten...


respawnpoint.de


schachportal.net


mas-player.de


tafelrunde.net

iClock WiFi - Einleitung


Internet- Uhr mit ESP8266-12 Modul

Bei diesem Projekt geht es darum eine Uhr für den Wohnbereich zu erschaffen, welche nicht nur schick aussieht, sondern auch ihre Zeit innerhalb von Sekunden aus dem Internet synchronisiert. Zu diesem Zweck kommt das weit verbreitete Modul ESP8266-12 zum Einsatz, welches ein starken Micro Controller mit getakteten 80 MHz und W-LAN Funktionalität bietet. Die Zeit wird über vordefinierte NTP- Server bezogen. Das NTP- Protokoll liefert die Anzahl der Sekunden zurück, die seit 1900 vergangen sind. Die exakte Zeitangabe, welche aus Stunden, Minuten, Sekunden, Jahr, Monat, Tag, Wochentag und Sommerzeit / Winterzeit besteht, muss mit einer komplexen Formel selbst errechnet werden.

Als weiteres Feature ist auf der Schaltung ein Temperatur- und Feuchtesensor montiert, welcher die Temperatur und relative Feuchte im Zimmer misst. Im unteren Bereich des LCDs kann ein Lauftext angezeigt werden. Der Inhalt des Lauftextes kann über einen selbst erstellten Webserver bezogen werden. Auf diese Weise lassen sich zum Beispiel das Wetter in einer bestimmten Stadt oder andere selbst erstellte Informationen darstellen. Und zu guter Letzt darf natürlich eine Weckfunktion nicht fehlen. Ein lautstarker Buzzer holt einen zu einer vordefinierten Zeit aus den Federn.


Hauptbestandteile der Internet- Uhr iClock WiFi
(auf das Bild klicken um es zu vergrößern)

Die Elektronik bietet folgende Features:

  • ESP8266-Prozessor von Espressif mit 80 MHz und WiFi-Front-End
  • Günstiges 2,9 Zoll LC-Display mit einer Auflösung von 128 x 64 Pixel
  • Drei beleuchtete Taster zum Bedienen von Einstellungen
  • Lauter Buzzer für Weckfunktion
  • Temperatur- und Feuchtesensor
  • USB-Schnittstelle über FTDI-Baustein zum Programmieren und Aufspielen der Firmware
  • PC-Software für Windows

iClock WiFi - Funktion & Schaltplan


Beschreibung

Die Versorgung der Schaltung erfolgt über eine USB-Einbaubuchse (X100). Somit lässt sich die Schaltung mit einem USB 2.0 Kabel (A-Stecker auf Mini B) direkt am PC oder einem USB-Ladegerät anschließen. Auf dem Board führt der USB-Steckverbinder an ein FTDI- Baustein (D100). Auf diese Weise wird die Schaltung Plug & Play, denn Windows erkennt diese Hardware beim Anstecken automatisch. Als Herzstück werkelt ein ESP8266-12 Modul mit dem ESP8266 Prozessor von Espressif (D210). Dieses Modul bietet verschiedene Eingänge und Ausgänge, einen ADC- Wandler und volle WiFi- Funktionalität. Mit dem Taster S1 (Reset) kann die Schaltung im Betrieb resettet werden. Wird parallel dazu der Taster S2 (Flash) gehalten, wird die Schaltung in den Programmier-Zustand gesetzt. Aus Mangel an Eingängen werden drei Taster (X221-X223) über verschiedene Spannungsteilerverhältnisse am ADC ausgelesen. Damit die Taster schick aussehen, habe ich mich entschlossen beleuchtete Taster zu nehmen. Die Beleuchtung wird über die Anschlüsse X211-X213 versorgt und kann später über die Software mit verschiedenen Animationen betrieben werden. Die Software wurde mit der Arduino IDE und der ESP8266 Generic Erweiterung programmiert. Das ESP8266-12 Modul benötigt eine Versorgungsspannung von 3,3 Volt. Diese Versorgungsspannung wird über den Linearregler LD1117S33 (N150) erzeugt. Als LCD kommt ein Standard Display vom Typ ST7920 zum Einsatz. Dieses LCD hat eine Auflösung von 128 x 64 Pixel und kann sowohl parallel als auch seriell betrieben werden. Diese Schaltung betreibt das LCD im seriellen Modus. Je nach dem von welchen Hersteller man dieses LCD bezieht, kann es sein, dass für die Umstellung auf seriellen Betrieb ein Widerstand (Jumper) entfernt / gesetzt werden muss. Das LCD wird über eine aufgelötete Stiftleiste direkt auf die LCD-Buchse (X300) gesteckt. Das LCD hat ein Poti auf der Rückseite, mit dem der Kontrast eingestellt werden muss. Der AM2302 Sensor, angeschlossen an X400, stellt Temperatur- und Feuchtemesswerte über ein One-Wire-Protokoll bereit. Und für den guten Ton werkelt auf dem Board ein Buzzer (SG1), welcher für die Weckfunktion nötig ist.


iClock WiFi Schaltplan
(auf das Bild klicken um es zu vergrößern)

Schaltplan

Download Schaltplan als PDF-Datei.
iClock_WiFi_Schematic.pdf

iClock WiFi - Hardware


Layout

Die Leiterplatte besteht aus einen zweiseitigem Layout im Nutzen. Der Nutzen beinhaltet die Elektronik und einen Halterahmen für das LCD. Das Layout wurde mit dem Programm Eagle erstellt. Viele Leiterplattenhersteller unterstützen das Board-Format, welches von der Eagle-Software erzeugt wird. Das Board-File (.brd) kann ohne weitere Anpassungen für eine Leiterplattenfertigung verwendet werden.


Unbestückte iClock WiFi Leiterplatte mit LCD- Rahmen

Eagle Board-File

Download Eagle Board-File (.brd) für die Fertigung einer iClock WiFi Leiterplatte.
ACHTUNG: Das Fertigen von Leiterplatten in geringen Stückzahlen kostet entsprechend Geld.
Ich übernehme keine Gewähr für die Richtigkeit und Funktion der angegebenen Fertigungsdaten!
iClock_WiFi.brd

Bestückungspläne

Download der Bestückungspläne als PDF-Datei:
iClock_WiFi_Component_Placement_T.pdf (Vorderseite)
iClock_WiFi_Component_Placement_B.pdf (Rückseite)

Materialliste

Diese Materialliste ist ein Vorschlag. Für einige Bauteile können Alternativen eingesetzt werden.

Bauteil                     Menge   Bezeichnung                  Distributor   Artikel-Nr.
C100,101,151,400            4       100nF / 1206                 reichelt.de   X7R 1206 CG 100N
C102,150                    2       47µF / SMC_D                 reichelt.de   T491D 47U 16
D100                        1       FT232RL / SSOP28             reichelt.de   FT 232 RL
D210                        1       ESP8266-12                   segor.de      WiFi-Modul (ESP-12F)
Stiftleiste für ESP8266-12  -       Stiftleiste (Teil)           segor.de      SL 1x40-180G/RM2,0
Fassung für ESP8266-12      -       Buchsenleiste (Teil)         segor.de      FL 1x40-180G/RM2,0
N150                        1       LD1117S33 / SOT223           segor.de      LD 1117 S33
R100,101,221,222,223        5       330R / 1206                  reichelt.de   RND 1206 1 330
R210,215,216,217            4       10K / 1206                   reichelt.de   RND 1206 1 10K
R211,212,213                3       160R / 1206                  reichelt.de   SMD 1/4W 160
R220                        1       2K2 / 1206                   reichelt.de   RND 1206 5 2,2K
R310,311                    2       0R / 1206                    reichelt.de   RND 1206 0
R400                        1       5K1 / 1206                   reichelt.de   RND 1206 1 5,1K
S1,2                        2       B3F-31XX Switch Omron        voelkner.de   W26006
SG1                         1       BUZZER 5V / RM6.5            voelkner.de   D94408
V0,1                        2       LED blau / 1206              reichelt.de   LED EL 1206 BL
V110,300                    2       BSS123 / SOT23               segor.de      BSS 123
X100                        1       MINI-USB B                   reichelt.de   LUM 2486-01
X211,212,213,221,222,223    -       Stiftleiste (Teil)           segor.de      SL1x36-90Z/U
Taster mit Beleuchtung      3       Taster beleuchtet M 16       ebay.de 
X300                        1       Buchsenleiste                segor.de      FLLAB 1x20-180G
Stiftleiste für LCD         -       Stiftleiste (Teil)           segor.de      SL1x40-180G
LCD                         1       ST7920 LCD 12864             ebay.de
X400                        1       AM2302                       ebay.de
Mechanik für Montage        4       Distanzhülsen, M3, 8mm       segor.de      M3x 8 IA
Mechanik für Montage        4       Linsenschraube DIN 7985      hornbach.de   M 3,0 x 6,0
Mechanik für Montage        3       Sechskantmutter DIN 934      hornbach.de   M 3,0
Ständer                     1       Abstandsbolzen M3x30mm       segor.de      M3x30 II
USB 2.0 Kabel               1       A Stecker auf Mini B         reichelt.de   DELOCK 82311
		

Verdrahtung

Mit den drei Tastern lässt sich der Wecker bedienen und es ist möglich ein Teil der Einstellungen vorzunehmen. Damit diese Taster funktionieren, müssen sie verdrahtet werden. Das Bildbeispiel zeigt eine Verdrahtung für 12 Volt KFZ-Taster. Diese Taster haben eine LED im Inneren eingebaut, welche bei 3,3 Volt nur noch schwach leuchten. Um dies zu verstärken habe ich einen gewöhnlichen NPN- Transistor (BC 547) als Schalter an 5 Volt davor geschaltet. Diese Spannung reicht aus, damit die LED im Inneren des Tasters hell genug leuchtet.


Beispielverdrahtung der iClock WiFi
(auf das Bild klicken um es zu vergrößern)


Fertiger Aufbau

Das Bild zeigt eine fertig montierte iClock WiFi Schaltung. Hier mit einer speziell schicken Plexiglasplatte.


Fertiger Aufbau der iClock WiFi

iClock WiFi - Firmware


iClock WiFi programmieren

Zum Aufspielen der Firmware wird die iClock WiFi mit einem USB-Kabel am PC angeschlossen. Auf dem PC muss die Programmierumgebung Arduino mit der Erweiterung ESP8266 Generic installiert sein. Die iClock WiFi muss in den Programmiermodus gebracht werden. Dazu die Flash-Taste halten und parallel Reset drücken. Danach muss in der Programmierumgebung Arduino der Sktech (so nennt man den Source-Code) hochgeladen werden.

Firmware

Download der Arduino Firmware für den ESP8266.
iClock_WiFi_Firmware.zip

iClock WiFi - Software für Windows


iClock WiFi Software

Mit der Windows Software lässt sich die iClock WiFi bequem einrichten. Hierzu wird die Uhr wiederum nur mit dem USB-Kabel am PC angeschlossen. Danach kann mit der Windows Software auf die Uhr zugegriffen werden.


Windows Software "iClock WiFi" Life-Anzeige

Die Software bietet folgende Features:

  • Einrichten der Netzwerkverbindung
  • Einrichten der NTP-Server für die Zeitsynchronisation
  • Life-Anzeige der aktuellen Daten, wie Uhrzeit, Datum, Temperatur und Luftfeuchte
  • Einstellen der Weckfunktion
  • Erweiterte Konfiguration der Uhr


Bedienung der Windows Software

Im ersten Schritt muss mit der iClock WiFi Kontakt hergestellt werden. Das grüne Symbol sorgt für den Aufbau der Verbindung. Ein Fenster mit einer Liste an FTDI-Geräten wird gezeigt. Zum Öffnen auf den entsprechenden Eintrag doppelt klicken. Hier im Beispiel heißt das Gerät: FT232R USB UART.


Windows Software "iClock WiFi" - Gerät auswählen

Für das automatische Synchronisieren der Zeit ist es notwendig das Netzwerk einzurichten. Ein Klick auf den Knopf NETZWERK EINRICHTEN öffnet das Fenster für diese Aufgabe. Aus den rechts angezeigten verfügbaren Funknetzwerken muss nun das heimische Netzwerk ausgewählt werden. Nach dem Verbinden werden auf der linken Seite die aktuellen Informationen, wie IP-Adressen usw., angezeigt. Im linken unteren Bereich können bis zu drei NTP-Server definiert werden. Ist NTP-Server 1 nicht erreichbar, wird mit dem zweiten probiert usw.


Windows Software "iClock WiFi" Netzwerk einrichten

Die Software hat verschiedene Tabs. Auf dem zweiten Tab kann die Weckfunktion eingestellt werden. Hierzu gehören die Uhrzeit, der Wochentag und die Lautstärke. Zum Abschluss müssen die Einstellungen mit dem Knopf ALARM SPEICHERN abgespeichert werden.


Windows Software "iClock WiFi" Wecker einstellen

Auf dem dritten Tab werden generelle Einstellungen getroffen:

  • Zeitzone - stellt die Zeitzone ein
  • Automatisch auf Sommerzeit umstellen - angehakt erlaubt die automatische Umstellung
  • Kalibrierungswert in 0,24 Sekunden / Stunde - addiert den Teil der Sekunde pro Stunde auf
  • LCD Helligkeit - stellt die Helligkeit der Hintergrundbeleuchtung ein
  • LED Animation - stellt eine der verschiedenen LED Animationen der drei Taster ein

Mit Hostname und URL kann von einem Webserver ein HTML-Dokument heruntergeladen werden. Dieses Dokument wird auf dem LCD als Lauftext angezeigt (maximal 1024 Zeichen). Die Firmware der iClock WiFi wertet dazu den Text aus, der zwischen den BODY-Tags steht. Ich persönlich habe mir ein Script geschrieben, was mir das aktuelle Wetter anzeigt. Diese Funktion kann deaktiviert werden, wenn der Inhalt aus Hostname gelöscht wird.


Windows Software "iClock WiFi" Generelle Einstellungen

Software Download

Download der Windows Software 'iClock_WiFi'. Das ZIP-Archiv an einer beliebigen Stelle entpacken. Die Software kann ohne Installation direkt aus dem Verzeichnis gestartet werden.
iClock_WiFi_Software.zip