Forum: Projekte & Code Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?


von Herbert P. (herb3472)


Lesenswert?

Thema Frontplattendruck Acryl 18 x 16 Matrix 45cm x 45cm, schwarz 
bedruckt:

wie Frank weiter oben geschrieben hat, wird er versuchen, Anfang Februar 
im Zusammenhang mit einer QlockTwo Frontplattenbestellung ein paar 
Exemplare der 18 x 16 Frontplatte (Außenmaße 45 x 45 cm) bei der 
Druckerei mitlaufen zu lassen.

In diesem Zusammenhang meine Frage: wäre es eventuell zweckmäßig, im 
unteren Randbereich der Frontplatte ein Fenster für ein zweizeiliges 
LCD-Display zur Anzeige von Datum, Uhrzeit und Temperatur (alternativ 
evtl. Statusanzeige und Rückmeldungen) vorzusehen?

von Herbert P. (herb3472)


Lesenswert?

@Joachim:

wollte am Wochenende mittels Arduion UNO R3 meinem 1284p im DIP-Geäuse 
einen Bootloader verpassen, hat leider nicht funktioniert:-(

http://www.klingsiek.at/2014/03/trackr-den-arduino-bootloader-auf-einen-atmega-1284p-brennen/

Hattest Du nicht einmal geschrieben, dass da eine kleine Änderung/ 
Adaptierung erforderlich ist? Es gibt ja eine Menge Arduino Clones mit 
dem 1284p. Welche Bootloader-Version ist eigentlich die aktuellste?

Da ich mich über SMD-Löterei nicht drüber traue, ist leider Dein 
mighty1284p PCB für mich nicht verwendbar. Ich denke, das wird auch für 
andere Nachbauer eine unüberwindliche Hürde sein. Wäre es nicht 
zweckmäßig, sich ein PCB mit dem 1284p in DIP-Version zu überlegen 
(müsste ja auch nicht unbedingt Arduino-kompatibel sein)?

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> In diesem Zusammenhang meine Frage: wäre es eventuell zweckmäßig, im
> unteren Randbereich der Frontplatte ein Fenster für ein zweizeiliges
> LCD-Display zur Anzeige von Datum, Uhrzeit und Temperatur (alternativ
> evtl. Statusanzeige und Rückmeldungen) vorzusehen?

Wie ich Dir schon per PM schrieb:

Ich halte es für absolut hässlich, die Frontplatte mit einem "Fenster" 
zu verhunzen. Das schöne ist ja gerade die Schlichtheit des Layouts.

Das Datum könnte man auch zwischenzeitlich über die Buchstaben/Wörter 
einblenden, wenn man es unbedingt will.

Man sollte immer bedenken: So eine Uhr hat nichts mit dem 
Aldi-Funkwecker auf dem Nachttisch zu tun. Es geht hier bestimmt nicht 
um die Anzeige von Sekunden, Datum und Zimmertemperatur. Dafür gibt es 
andere Uhren.

: Bearbeitet durch Moderator
von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Man sollte immer bedenken: So eine Uhr hat nichts mit dem
> Aldi-Funkwecker auf dem Nachttisch zu tun. Es geht hier bestimmt nicht
> um die Anzeige von Sekunden, Datum und Zimmertemperatur. Dafür gibt es
> andere Uhren.

Ich sehe das genauso wie Du, wollte aber den anderen die Möglichkeit 
bieten, ihren Input einzubringen.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Da ich mich über SMD-Löterei nicht drüber traue, ist leider Dein
> mighty1284p PCB für mich nicht verwendbar.

Die einzige SMD-Löterei beim Nucleo besteht darin, ein paar Lötbrücken 
wegzuschnippen. ;-)

Ich verstehe nicht, warum man sich gegen NICHT-AVR-µCs so vehement 
wehrt, wenn man doch gar nichts mit der Software-Entwicklung am Hut 
hat...

P.S.
Die aktuelle Liste, was die STM32-Variante schon kann, kennst Du? Als 
nächstes kommen "Farbprogramme", welche immer beim Minutenwechsel aktiv 
werden, wie z.B.

  - "Reinschieben" der Uhrzeiten von links/rechts/oben/unten bei
    Minutenwechsel, also ähnlich wie bei Fotopräsentationen

  - Die alte Uhrzeit löst sich auf in ein Zufallsmuster und
    formiert sich dann zur neuen Uhrzeit

  - Fallen von "Regentropfen": Diese fallen entweder komplett von
    oben nach unten durch oder bleiben wie zufällig auf irgendeinem
    Buchstaben hängen... bis die neue Uhrzeit zu sehen ist.

  - und und und... mal sehen, was mir da noch einfällt.

Diese "Farbprogramme" sind natürlich einzeln anwählbar. Wers nicht 
möchte, kann die klassische Überblendvariante nehmen, die jetzt schon 
läuft.

Ich habe noch tausend andere Ideen... z.B. könnte man mit der Uhr auch 
"Tron" oder "Snake" übers Handy oder mit der IR-Fernbedienung spielen 
;-)

: Bearbeitet durch Moderator
von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Die einzige SMD-Löterei beim Nucleo besteht darin, ein paar Lötbrücken
> wegzuschnippen. ;-)
>
> Ich verstehe nicht, warum man sich gegen NICHT-AVR-µCs so vehement
> wehrt, wenn man doch gar nichts mit der Software-Entwicklung am Hut
> hat...

Das Statement bezüglich SMD-Löterei hat sich lediglich auf Joachims 
mighty1284p Board bezogen, den 1284p (im DIP-Gehäuse) möchte ich zum 
Einarbeiten in die Materie und zum "Herumspielen" verwenden. Die Uhr 
werde ich mit dem STM32 Nucleo bauen.

Wer sagt denn, dass ich mit der Software-Entwicklung gar nichts am Hut 
hätte? Ich kann lediglich mit Euch Profis nicht mithalten, weil ich erst 
am Anfang stehe, bzw. mich erst wieder hineinfinden muss, da ich 
jahrelang nichts mehr auf diesem Gebiet getan habe.

von Micha S. (ernie)


Lesenswert?

Moin Moin,

Herbert P. schrieb:
> Thema Frontplattendruck Acryl 18 x 16 Matrix 45cm x 45cm, schwarz
> bedruckt:
>
> wie Frank weiter oben geschrieben hat, wird er versuchen, Anfang Februar
> im Zusammenhang mit einer QlockTwo Frontplattenbestellung ein paar
> Exemplare der 18 x 16 Frontplatte (Außenmaße 45 x 45 cm) bei der
> Druckerei mitlaufen zu lassen.
>
> In diesem Zusammenhang meine Frage: wäre es eventuell zweckmäßig, im
> unteren Randbereich der Frontplatte ein Fenster für ein zweizeiliges
> LCD-Display zur Anzeige von Datum, Uhrzeit und Temperatur (alternativ
> evtl. Statusanzeige und Rückmeldungen) vorzusehen?

das würde das klare u. schlichte Design, was schon die original Wortuhr 
auszeichnet, völlig verhunzen.
Was das ganze designtechnisch noch schlimmer machen würde ist, das man 
kein LCD finden wird, welches immer in genau der selben Farbe leuchtet 
wie die Uhr. Man hätte also immer mind. 2 Farben in der die Uhr 
leuchtet.
Und ja, ich interessiere mich sehr für eine o. mehrere dieser Uhren wenn 
denn endgültig alles steht. Die normale Wortuhr zu bauen, macht schon 
keinen Spass mehr :-) Neue Uhren braucht das Land!
Viele Grüße,

Micha

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Das Statement bezüglich SMD-Löterei hat sich lediglich auf Joachims
> mighty1284p Board bezogen, den 1284p (im DIP-Gehäuse) möchte ich zum
> Einarbeiten in die Materie und zum "Herumspielen" verwenden. Die Uhr
> werde ich mit dem STM32 Nucleo bauen.

Achso!

> Wer sagt denn, dass ich mit der Software-Entwicklung gar nichts am Hut
> hätte? Ich kann lediglich mit Euch Profis nicht mithalten, weil ich erst
> am Anfang stehe, bzw. mich erst wieder hineinfinden muss, da ich
> jahrelang nichts mehr auf diesem Gebiet getan habe.

Okay, das verstehe ich.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Micha S. schrieb:
> das würde das klare u. schlichte Design, was schon die original Wortuhr
> auszeichnet, völlig verhunzen.

Ah, einer der Lurker wagt sich aus dem Busch! :-)

Ich habe doch gewusst, dass hier einige stille Mitleser sind. Das sieht 
man auch schon an den Download-Zahlen der hier abgelegten Bilder.

Willkommen und danke für die Anteilnahme.

> Was das ganze designtechnisch noch schlimmer machen würde ist, das man
> kein LCD finden wird, welches immer in genau der selben Farbe leuchtet
> wie die Uhr. Man hätte also immer mind. 2 Farben in der die Uhr
> leuchtet.

Ja, sehe ich auch so.

> Und ja, ich interessiere mich sehr für eine o. mehrere dieser Uhren wenn
> denn endgültig alles steht.

Genau den Eindruck habe ich auch gewonnen. Alle warten auf den 
Zeitpunkt, dass alles endgültig steht. Schade eigentlich, etwas mehr 
Mitarbeit (zum Beispiel Tests der aktuellen Software-Version oder 
einfach nur Zuwurf von Ideen) wäre wünschenswert.

Gruß,

Frank

von Joachim B. (jar)


Lesenswert?

Herbert P. schrieb:
> wollte am Wochenende mittels Arduion UNO R3 meinem 1284p im DIP-Geäuse
> einen Bootloader verpassen, hat leider nicht funktioniert:-(

so schwer ist das nicht, wo klemmts denn?
Ich kann ziemlich sicher helfen wir sollten telefonieren.
ich schicke mal meine Telefonnnummer per Mail

1. kläre deine Verdrahtung, ich habe am DIP/DIL nicht mehr weitergemacht 
weil die PCB gekommen waren, aber auch da muss man etwas aufpassen, 
hatte erst auch keinen Erfolg hatte Bootsrst nicht gesetzt, danach ging 
es, sogar beide Versionen, 57k Baud und 1M Baud, jetzt nutze ich 1M Baud

Herbert P. schrieb:
> Da ich mich über SMD-Löterei nicht drüber traue, ist leider Dein
> mighty1284p PCB für mich nicht verwendbar. Ich denke, das wird auch für
> andere Nachbauer eine unüberwindliche Hürde sein. Wäre es nicht
> zweckmäßig, sich ein PCB mit dem 1284p in DIP-Version zu überlegen
> (müsste ja auch nicht unbedingt Arduino-kompatibel sein)?

habe schon für fertige bestückte Module angefragt, liegt hier noch rum.
DIL Platten dürfte es doch schon geben.......
Eigentlich gibt es schon abweichende fertige SMD Platten.

von Niels J. (niels)


Lesenswert?

Frank M. schrieb:
> Ah, einer der Lurker wagt sich aus dem Busch! :-)
>
> Ich habe doch gewusst, dass hier einige stille Mitleser sind. Das sieht
> man auch schon an den Download-Zahlen der hier abgelegten Bilder.

Dann oute ich mich auch mal offiziell, als einen der solchen ;)

Herbert P. schrieb:
> In diesem Zusammenhang meine Frage: wäre es eventuell zweckmäßig, im
> unteren Randbereich der Frontplatte ein Fenster für ein zweizeiliges
> LCD-Display zur Anzeige von Datum, Uhrzeit und Temperatur (alternativ
> evtl. Statusanzeige und Rückmeldungen) vorzusehen?

Meine Meinung: Es wäre absolut zweckmäßig, allerdings habe ich nicht den 
Einddruck, dass diese Uhr auf Zweckmäßigkeit ausgelegt ist. Wenn ich 
etwas zweckmäßiges haben wollte, würde ich  mir eine 5 € Uhr an die Wand 
hängen und nicht eine knapp 1/4 m² große Uhr, die viel Strom frisst, 
nichtmal Sekunden anzeigen kann und um ein vielfaches teurer ist.
Deswegen sehe ich das ähnlich wie Micha:
Micha S. schrieb:
> das würde das klare u. schlichte Design, was schon die original Wortuhr
> auszeichnet, völlig verhunzen.

Die Wordclock ist doch viel mehr ein Designobjekt und Blickfänger, etwas 
Außergewöhnliches, die man sich um der Uhreswillen aufhängt.

Frank M. schrieb:
> etwas mehr
> Mitarbeit (zum Beispiel Tests der aktuellen Software-Version oder
> einfach nur Zuwurf von Ideen) wäre wünschenswert.
Dann will ich mal ;)
Da die sekundengenaue Uhrzeit, als auch das Datum etc. dennoch von 
Interesse sein könnten, kann man sich sowas ja über MCURSES, oder 
vielleicht sogar die Android App anzeigen lassen.

BTW.: Die aktuelle Version funktioniert soweit ich das auf meinem 
STM32F4 Discovery testen kann einwandfrei. Allerdgings habe ich gerade 
auch nur einen recht kurzen WS2812 Streifen und eine IR Empfänger 
angeschlossen. IRMP erkennt meine RC5 Signale übrigens auch wunderbar 
mit einer/m? TSOP4838.

Falls übrigens noch ein Lichtsensor implementiert wird kann man über den 
evtl. ermitteln, ob sich tatsächlich Leute im Raum befinden, ähnlich wie 
bei Bewegungssensoren für's Licht. Alternativ ließe sich das auch mit 
einem Mikrofon umsetzten, das Discorvery Board hätte für solche Tests ja 
schon eins drauf.

So, das war mein Senf dazu ;)

Beste Grüße

Niels

: Bearbeitet durch User
von Micha S. (ernie)


Lesenswert?

Moin Moin,

Frank M. schrieb:
> Micha S. schrieb:
>> das würde das klare u. schlichte Design, was schon die original Wortuhr
>> auszeichnet, völlig verhunzen.
>
> Ah, einer der Lurker wagt sich aus dem Busch! :-)

immerhin mein 2. Post hier ;-)

>> Und ja, ich interessiere mich sehr für eine o. mehrere dieser Uhren wenn
>> denn endgültig alles steht.
>
> Genau den Eindruck habe ich auch gewonnen. Alle warten auf den
> Zeitpunkt, dass alles endgültig steht. Schade eigentlich, etwas mehr
> Mitarbeit (zum Beispiel Tests der aktuellen Software-Version oder
> einfach nur Zuwurf von Ideen) wäre wünschenswert.

Ich habe seit Samstag ein Nucleo-F401RE hier liegen. Mehr noch nicht, da 
meine Mittel und meine Zeit durch ein Vorverstärker u. Verstärkerprojekt

Beitrag "Re: Verfaerbt sich gebuerstetes Aluminium beim loeten ?"

im Moment sehr eingeschränkt sind o. waren. Vorverstärker ist ja jetzt 
fertig :-)
Als nächstes, also nächsten Monat, wollte ich dann mal 5m (60LEDs/m) 
Streifen besorgen. Dann kann ich mal tatsächlich anfagen zu testen.
Grüße,

Micha

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Niels Janson schrieb:
> BTW.: Die aktuelle Version funktioniert soweit ich das auf meinem
> STM32F4 Discovery testen kann einwandfrei. Allerdgings habe ich gerade
> auch nur einen recht kurzen WS2812 Streifen und eine IR Empfänger
> angeschlossen. IRMP erkennt meine RC5 Signale übrigens auch wunderbar
> mit einer/m? TSOP4838.

Danke für die Info. Ist auch ganz gut, wenn mal ein wenig Feedback kommt 
- auch wenn ich mit einigen schon im Mail-Kontakt stehe, welche die 
Software bereits im "Hintergrund" testen.

Man muss halt nur beachten, ob der TSOP auch mit 3,3V arbeiten kann. 
Dann kann er auch an der 3,3V-Versorgung angeschlossen werden. Die 
verwendeten Pins am Disco- bzw. Nucleo-Board sind aber 5V-fest, so dass 
auch ältere TSOPs, denen 3,3V zuwenig ist, zusammenarbeiten sollten. Im 
Zweifel (ich zum Beispiel habe einen aus der Schublade genommen, wo ich 
nicht mehr wusste, obs ein TSOP1738 oder TSOP31238 war) sollte man ihn 
mit 5V versorgen.

> Falls übrigens noch ein Lichtsensor implementiert wird kann man über den
> evtl. ermitteln, ob sich tatsächlich Leute im Raum befinden, ähnlich wie
> bei Bewegungssensoren für's Licht. Alternativ ließe sich das auch mit
> einem Mikrofon umsetzten, das Discorvery Board hätte für solche Tests ja
> schon eins drauf.

Interessante Idee. Bewegungsmelder wäre auch eine Alternative.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Micha S. schrieb:
> Ich habe seit Samstag ein Nucleo-F401RE hier liegen. [...]
> Als nächstes, also nächsten Monat, wollte ich dann mal 5m (60LEDs/m)
> Streifen besorgen. Dann kann ich mal tatsächlich anfagen zu testen.

Prima, freue mich auf Feedback und weitere Ideen.

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Ich sehe das genauso wie Du, wollte aber den anderen die Möglichkeit
> bieten, ihren Input einzubringen.

Ich sehe das ein Stück weit genau so wie Niels:

Niels Janson schrieb:
> …über … die Android App anzeigen lassen.

Die 3€ für einen ESP machen den Kohl nicht fett.

: Bearbeitet durch User
von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Torsten C. schrieb:
> Die 3€ für einen ESP machen den Kohl nicht fett.

Nicht nur das. Der ESP8266 spart auch das teurere DCF77-Modul ein. Ich 
persönlich werde kein DCF-Modul anschließen - auch wenn das 
STM32-Programm es unterstützt. Der Komfort, die Zeit über einen 
Timeserver einzulesen und das Handy als Fernbedienung zu verwenden, 
rechtfertigt allemal den Einsatz des ESP.

P.S.
Ich habe übrigens in der 1.0er Version die Powerdown-Funktionalität (für 
Stromsparzwecke) des ESP8266 erstmal wieder rausgenommen. Der Grund war 
simpel: Immer wenn ich per Handy die Uhr abschaltete, ging auch das 
ESP8266 in den Powerdown und ich konnte die Uhr nicht mehr per Handy 
einschalten. ;-)

Es wird daher später noch einen "Deep Poweroff" geben, der für die 
Nachtstunden interessant sein wird.

: Bearbeitet durch Moderator
von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Hier nochmal zur Klarheit die Systematik für Viertel:
>
> 12:15  Wessi         viertel nach zwölf
> 12:45  Wessi         viertel vor eins
>
> 12:15  Rhein/Ruhr    viertel nach zwölf
> 12:45  Rhein/Ruhr    viertel vor eins
>
> 12:15  Ossi          viertel eins
> 12:45  Ossi          dreiviertel eins
>
> 12:15  Schwaben      hier wie Ossi
> 12:45  Schwaben      hier wie Ossi
>
> Ossi und Rhein/Ruhr scheint bzgl. "viertel" vertauscht zu sein, siehe
> oben.
>
> Jetzt nochmal die Systematik für Zwanzig:
>
> 12:20  Wessi         zehn vor halb eins
> 12:40  Wessi         zehn nach halb eins
>
> 12:20  Rhein-Ruhr    zwanzig nach
> 12:40  Rhein/Ruhr    zwanzig vor
>
> 12:20  Ossi          zehn vor halb eins
> 12:40  Ossi          zehn nach halb eins
>
> 12:20  Schwaben      hier wie Wessi
> 12:40  Schwaben      hier wie Wessi
>
> Die Schwaben verhalten sich also einmal wie Ossi (für viertel) und
> einmal wie Rhein/Ruhr (für zwanzig).

Bin grad dabei, die .accdb-Minutentabelle gemäß obiger Auflistung zu 
editieren. 12:20 und 12:40 Schwaben soll wohl heißen "hier wie 
Rhein/Ruhr"?

Torsten C. schrieb:
> Dazu noch ein Hinweis: Die Mode-Nummern im JSON-File und von Frank
> entsprechen nicht den Nummern aus der Datenbank. Hier die Übersetzung:

Ist eine diesbezügliche Korrektur der .acccdb-Tabellen erforderlich?

Sonst noch irgend welche Fehler?

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Bin grad dabei, die .accdb-Minutentabelle gemäß obiger Auflistung zu
> editieren. 12:20 und 12:40 Schwaben soll wohl heißen "hier wie
> Rhein/Ruhr"?

Ja, sorry. Wie Du siehst, machen mich diese ganzen Varianten auch konfus 
;-)

> Torsten C. schrieb:
>> Dazu noch ein Hinweis: Die Mode-Nummern im JSON-File und von Frank
>> entsprechen nicht den Nummern aus der Datenbank. Hier die Übersetzung:
>
> Ist eine diesbezügliche Korrektur der .acccdb-Tabellen erforderlich?

Ich glaube nicht. Ich fange halt bei Mode 0 an zu zählen. Du wohl bei 1.
Eine Änderung wäre daher wohl eher schädlich, weil Torsten dann den 
Generator wieder umbauen müsste. Das ist aber nur meine Sicht. Torsten 
kann das besser beantworten als ich.

Viele Grüße,

Frank

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Ist eine diesbezügliche Korrektur der .acccdb-Tabellen erforderlich?

Das liegt daran, dass in der .accdb mit 1 angefangen wird und die 
Nummern nicht durchgängig sind. Diese "Abstraktionsschicht" war m.E. 
gewollt. Ich habe dafür extra die enums eingeführt: "mode_1 = 0, … 
mode_12 = 7".

Man könnte die .accdb näher an den Code bringen.

Aber ist das gewollt? Wenn diese "Abstraktionsschicht" fehlt stünde da 
nur noch: mode_0 = 0, … mode_7 = 7, dann würden die Nummern 1-zu-1 
passen. Mir ist das egal.

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

Niels Janson schrieb:
> Falls übrigens noch ein Lichtsensor implementiert

bei mir auf jeden Fall!

Niels Janson schrieb:
> kann man über den
> evtl. ermitteln, ob sich tatsächlich Leute im Raum befinden, ähnlich wie
> bei Bewegungssensoren für's Licht.

Das schätze ich eher wenig funktionierend ein, der Lichtsensor ist ja 
hinter einem ungenutzten Buchstaben versteckt, ich arbeite 
ausschliesslich mit WS Stripes, ich wüsste nicht wie der Lichtsensor 
Leute zählen sollte.

Torsten C. schrieb:
> Die 3€ für einen ESP machen den Kohl nicht fett.

klaro und kann ich schon mal mit dem Reden und der ist auch bei mir 
vorgesehen, die Frage ob das jeder will (evtl. kein wlan vorhanden?) ich 
sehe für meine WC trotzdem noch ein DCF77 vor auch wenn ich weiss das 
der Empfang mies ist, evtl. bessert sich das ja aum Aufhängort, gekauft 
ist das Modul ja.

Frank M. schrieb:
> Ich
> persönlich werde kein DCF-Modul anschließen

kann ich auch verstehen.

@Frank, BTW ESP8277

ich habe jetzt die alternative? Firmware 0,95 mit 9600 Bd drauf

Vendor:www.ai-thinker.com<\r><\n>
<\r><\n>
SDK Version:0.9.5(b1)<\r><\n>
Compiled @:Dec 25 2014, 21:50:58<\r><\n>
ready<\r><\n>

http://tomeko.net/other/ESP8266/

was mich stört, der ESP ist immer im AP Mode=2

ich hätte den gerne im Mode=1 aber default mir 9600 Bd

welche Firmware empfielst du?
wie kann ich das anpassen?

es gibt auch eine mit NTP Erweiterung, wäre interessant für mich, aber 
die läuft auch wieder auf 115k Baud
https://scargill.wordpress.com/tag/esp8266-ntp-time-in-new-version/

@Frank hast du da eine Idee oder Tipps für mich?

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Joachim B. schrieb:
> ich habe jetzt die alternative? Firmware 0,95 mit 9600 Bd drauf
>
> Vendor:www.ai-thinker.com<\r><\n>
> <\r><\n>
> SDK Version:0.9.5(b1)<\r><\n>
> Compiled @:Dec 25 2014, 21:50:58<\r><\n>
> ready<\r><\n>

Mir ist die Firmware mittlerweile egal, denn ich greife auf den 
Timeserver nicht mit UDP zu, sondern mit TCP. Dann kann ich zwar keinen 
waschechten NTP-Timeserver ansprechen, aber es gibt ja noch ein paar 
tausend Timeserver auf der Welt, die auch nach RFC 868 arbeiten. Das 
Protokoll ist viel einfacher als NTP.

Der Grund ist folgender:

Ich muss beim UDP-Senden dem ESP8266 einen local-Port mitgeben, auf dem 
ich horchen kann, wenn der NTP-Server eine Antwort zurückgibt. Ohne 
Kenntnisse diesen local-Ports bin ich bei UDP aufgeschmissen, weil ich 
dann nicht weiß, auf welchen Port der Timeserver mir antworten wird.

Das geht bei älteren ESP8266-Firmware-Versionen entweder gar nicht oder 
so ein erweiterter Befehl mit Vorgabe des local-Ports bringt den ESP8266 
zum Crash, d.h. er macht einen Reset. Letzteres passiert bei meinen 
Modulen. Deshalb verzichte ich auf NTP und benutze das klassische 
Time-Protokoll. Denn das funktioniert auch über TCP.

Im Artikel habe ich ein paar Timeserver im Internet angegeben, die das 
unterstützen - auch die deutsche PTB. Desweiteren habe ich dort einen 
Link angegeben, um sich eine umfangreiche Liste von Time-Servern (die 
sowohl TIME als auch NTP sprechen) herunterzuladen bzw. anzuschauen. Da 
hat man genügend Auswahl.

Sollte die Firmware irgendwann nicht nur stabil, sondern auch 
verbreitet sein (was ich bei der Firmware draußen eben vermisse), dann 
werde ich auch den NTP-Support einbauen. Aber solange die Chinesen 
Module mit alten Firmware-Versionen verschicken (und das tun sie!), hat 
das keinen Zweck.

Achja: Die Kommunikation Android Handy -> ESP8266 habe ich auch mit dem 
UDP-Protokoll realisiert. Da ist es kein Problem... jedenfalls solange 
der ESP8266 dem Handy auf einen Befehl nicht antworten muss. Ich habe 
also momentan nur unidirektionale Kommunikation. (Ich habs auf 
bdirektionalem Weg per UDP ausprobiert: dann crasht das Sch..Ding 
wieder, Problem siehe oben).

> ich hätte den gerne im Mode=1 aber default mir 9600 Bd

115200Bd ist doch viel cooler ;-)

Noch ein Grund mehr, TIME statt NTP zu verwenden: TIME kommt mit 4 Bytes 
aus, NTP braucht 48.

Kannst Du den AP-Mode mit AT+CWMODE nicht umstellen?

> welche Firmware empfielst du?

Wie gesagt: Mir ist die Firmware egal. Ich habe einen Weg gefunden, dass 
dem Endanwender nicht zugemutet werden muss, dass er sein ESP8266 
flashen muss.

Das ist:

    TCP mit Timeserver
    UDP mit Android, aber nur unidirektional.

Beides gleichzeitig läuft stabil.

> wie kann ich das anpassen?

Warum hast Du Dir meine timeserver.c + esp8266.c noch nicht angeschaut? 
Das sind High-Level-Routinen und sind nicht µC-spezifisch. Wenn Du 
identische UART-Funktionen bereitstellst, sollten diese direkt auch auf 
einem ATmega laufen.

> es gibt auch eine mit NTP Erweiterung, wäre interessant für mich, aber
> die läuft auch wieder auf 115k Baud
> https://scargill.wordpress.com/tag/esp8266-ntp-time-in-new-version/

Ja, die kenne ich. Ich spielte da auch mal mit dem Gedanken. Habe es 
aber verworfen. Der Anwender mag Plug-n-Play. Je einfacher, desto 
besser. Oder willst Du jedem User ein frisch geflashtes ESP-Modul 
zuschicken?

: Bearbeitet durch Moderator
von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Jetzt dieselben Modes für "12:40":
>
> Mode 6 Ossi:
>
>     http://uclock.de/?x=6&h=11&m=40
>
> Falsch:  "es ist minuten nach halb zehn zwölf"
> Richtig: "es ist zehn minuten nach halb zwölf"
>
> Das ist aber nur eine falsche Auswahl des Wortes "zehn" und ein ganz
> anderer Fehler.

Diesen Fehler konnte ich in der .accdb nicht finden - die Ursache liegt 
wahrscheinlich wo anders.

von Joachim B. (jar)


Lesenswert?

Frank M. schrieb:
> Ja, die kenne ich. Ich spielte da auch mal mit dem Gedanken. Habe es
> aber verworfen. Der Anwender mag Plug-n-Play. Je einfacher, desto
> besser. Oder willst Du jedem User ein frisch geflashtes ESP-Modul
> zuschicken?

OK, gestorben

Frank M. schrieb:
>> ich hätte den gerne im Mode=1 aber default mir 9600 Bd
>
> 115200Bd ist doch viel cooler ;-)

hat aber im Arduino über den FTDI wenig Sinn wenn man den UART1 über den 
FTDI spiegeln will zum debugen oder monitoren wenn der ESP schnelle ist 
als der Arduino das weitergeben kann, OK ich könnte einen 2k Ringbuffer 
zwischenschalten, aber wenns sich vermeiden lässt.

Frank M. schrieb:
> Wie gesagt: Mir ist die Firmware egal. Ich habe einen Weg gefunden, dass
> dem Endanwender nicht zugemutet werden muss, dass er sein ESP8266
> flashen muss.

OK hat auch Sinn

Frank M. schrieb:
> Warum hast Du Dir meine timeserver.c + esp8266.c noch nicht angeschaut?

Nr.5 würde sagen: "zuviel input"
https://www.youtube.com/watch?v=Pj-qBUWOYfE

ich schaue mir mal "meine" + U.Radig alten NTP.C Routinen (letzte 
Bearbeitung 2012) an vom NETIO (Pollin)

da blicke vermutlich leichter wieder durch.

Ob ich die Zeit nun per LAN (NETIO) hole oder per wlan ESP8266 dürfte 
wohl egal sein.

von Thomas S. (thomas-st)


Lesenswert?

Frank M. schrieb:
> Micha S. schrieb:
>> das würde das klare u. schlichte Design, was schon die original Wortuhr
>> auszeichnet, völlig verhunzen.
>
> Ah, einer der Lurker wagt sich aus dem Busch! :-)

Also, wenn heute der Tag des De-lurkens ist, melde ich mich auch mal :)

Micha S. schrieb:
> das würde das klare u. schlichte Design, was schon die original Wortuhr
> auszeichnet, völlig verhunzen.

Sehe ich ähnlich - eine Idee wäre in meinen Augen, eine hinter der 
Frontplatte platzierte LED-Matrix (ohne entsprechenden Ausschnitt auf 
der Frontplatte)

Frank M. schrieb:
> Ich verstehe nicht, warum man sich gegen NICHT-AVR-µCs so vehement
> wehrt, wenn man doch gar nichts mit der Software-Entwicklung am Hut
> hat...

Ich gehe jetzt mal von mir aus: Für AVR habe ich eine funktionierende 
Toolchain hier, für die STM32 muss ich mir die erst noch aufbauen. 
...und da scheitere ich schon ganz am Anfang beim Programmieren :(

Andererseits bin ich neugierig und will auch mal neue HW einsetzen ...

Hier war doch jemand, er ebenfalls Em::blocks mit Nucleo-Board 
(STM32F411RE) einsetzt - vielleicht kann er mir ja mal helfen (siehe 
Beitrag: Beitrag "STM32F411 & Em::block - Schaffe es nicht, Nucleo board direkt aus der IDE heraus zu programmieren" - gern auch per 
PM)

Frank M. schrieb:
> Schade eigentlich, etwas mehr
> Mitarbeit (zum Beispiel Tests der aktuellen Software-Version oder
> einfach nur Zuwurf von Ideen) wäre wünschenswert.

Von der Möglichkeit die SW zu testen bin ich leider noch etwas entfernt 
und zur Möglichkeit beim programmieren mitzuwirken (sofern noch nötig ;) 
) fehlt mir die Zeit (für die klassische WordClock und meinen 
Anpassungen habe ich ca. 1 Jahr gebraucht) ... aber ich werde mich 
bemühen :)

Viele Grüße,
Thomas

von Joachim B. (jar)


Lesenswert?

Micha S. schrieb:
> im
>> unteren Randbereich der Frontplatte ein Fenster für ein zweizeiliges
>> LCD-Display zur Anzeige ....
>
> das würde das klare u. schlichte Design, was schon die original Wortuhr
> auszeichnet, völlig verhunzen.

Thomas St. schrieb:
> Sehe ich ähnlich - eine Idee wäre in meinen Augen, eine hinter der
> Frontplatte platzierte LED-Matrix (ohne entsprechenden Ausschnitt auf
> der Frontplatte)

??? unsichtbar?

entweder Frontplatte verhunzt oder unsichtbar

Für mich gibt es nur Buchstaben auf der Frontplatte,

wobei ich dachte für Status LEDs haben wir uns auf

I für IR Quittung
D für DCF77 in Sync
N für NTP in Sync
S für den Sekunden blink (wer mag) blinkt bei mir schon 200ms on 800ms 
off
@ (steht für unbekannter Buchstabe ungenutzt für TSOP)
@ (steht für unbekannter Buchstabe ungenutzt für Lichtsensor)

geeinigt?

ich denke alles andere kann per wlan aufs Handy oder PC

von Thomas S. (thomas-st)


Lesenswert?

Joachim B. schrieb:
> Thomas St. schrieb:
>> Sehe ich ähnlich - eine Idee wäre in meinen Augen, eine hinter der
>> Frontplatte platzierte LED-Matrix (ohne entsprechenden Ausschnitt auf
>> der Frontplatte)
>
> ??? unsichtbar?

Indem für die LEDs keine Aussparungen für (wie z.B. für die Buchstaben) 
vorgesehen werden, wäre die Matrix unsichtbar, so lange sie nicht 
leuchtet. Erst durch das Leuchten der LEDs wurde überhaupt an der Stelle 
etwas zu erkennen sein.

War allerdings nur ein Kompromissvorschlag; ich sehe es ansonsten 
ähnlich: die Uhr lebt durch ihre Schlichtheit.

Joachim B. schrieb:
[...]
> D für DCF77 in Sync
> N für NTP in Sync

Warum unterscheiden? Uhr in Sync reicht IMO ... und das Ganze 
abschaltbar

Viele Grüße,
Thomas

von Joachim B. (jar)


Lesenswert?

Thomas St. schrieb:
> Warum unterscheiden? Uhr in Sync reicht IMO ... und das Ganze
> abschaltbar

abschaltbar sowieso, 4 Buchstaben hatten wir frei und haben das so mal 
überlegt......

Ich weiss jetzt nicht worauf du hinaus willst, das ganze 
Buchstabendesign umstellen? (ob das sinnvoll ist jeden Monat das neu zu 
verhandeln?)

von Thomas S. (thomas-st)


Lesenswert?

Joachim B. schrieb:
> Ich weiss jetzt nicht worauf du hinaus willst, das ganze
> Buchstabendesign umstellen?

Neee, nee, das will ich nicht ... und bin ja schon ganz ruhig :)

Viele Grüße,
Thomas

von Joachim B. (jar)


Lesenswert?

Thomas St. schrieb:
> ... und bin ja schon ganz ruhig :)

gegen frische Ideen hat ja keiner was und wenn sich eine Mehrheit findet 
ist es halt so ;-)

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Joachim B. schrieb:
> gegen frische Ideen hat ja keiner was

Nur manchmal gibt eine "Warum?" Frage schon eine ellenlange Diskussion. 
Aber da müssen wir halt ggf. durch.

Ich stell mir diese Buchstaben I, D, N und S gerade bildlich vor, wie 
sie leuchten. Ich finde das sieht doof aus, aber auf der Frontplatte 
stören die als "tote" Buchstaben nicht und alles andere ist ja nur SW.

: Bearbeitet durch User
von Micha S. (ernie)


Lesenswert?

Joachim B. schrieb:
> Thomas St. schrieb:
>> Warum unterscheiden? Uhr in Sync reicht IMO ... und das Ganze
>> abschaltbar
>
> abschaltbar sowieso, 4 Buchstaben hatten wir frei und haben das so mal
> überlegt......
>
> Ich weiss jetzt nicht worauf du hinaus willst, das ganze
> Buchstabendesign umstellen? (ob das sinnvoll ist jeden Monat das neu zu
> verhandeln?)

was er meint ist, glaube ich, dass man nur eine SyncLED braucht. Egal ob 
die Uhr mit DCF oder NTP in Sync ist. Sync ist Sync.
Sollte mal jemand auf eine tolle neue Idee für einen der freien 4 
Buchstaben kommen, währe das zum Beispiel eine Alternative. Da aber 
bisher niemand einen weiteren Vorschlag für einen der 4 Buchstaben 
gemacht hat, kann es ja so bleiben wie es ist.
Grüße,

Micha

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Micha S. schrieb:
> Sync ist Sync.

Dann passen aber weder N noch D und S ist schon die Sekunde.

Micha S. schrieb:
> Sollte mal jemand auf eine tolle neue Idee für einen der freien 4
> Buchstaben kommen

Bis wann denn? Frank wollte bald bestellen. Wenn die Bestellung raus 
ist, würden wir damit Matrix-Varianten erzeugen. Gut, vielleicht würde 
das niemanden stören? Dann gibt es die dritte .accdb oder es gibt eine 
neue .accdb wo alle Varianten zusammen drin sind. ;-) :-p

Mir persönlich wär's egal, das war nur ein Hinweis.

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

Torsten C. schrieb:
> Ich stell mir diese Buchstaben I, D, N und S gerade bildlich vor, wie
> sie leuchten.

kann jeder halten wie er mag,

I ist nur 50-200 ms bei IR Empfang (wahlweise erkannt oder nicht)

Torsten C. schrieb:
> Ich finde das sieht doof aus, aber auf der Frontplatte
> stören die als "tote" Buchstaben nicht

eben drum

Torsten C. schrieb:
> alles andere ist ja nur SW.

dito

Torsten C. schrieb:
> Micha S. schrieb:
>> Sync ist Sync.

Torsten C. schrieb:
> Dann passen aber weder N noch D und S ist schon die Sekunde.

N und D ist so mein wWunsch und niemand hatte was dagegen,

als tote Buchstaben stören sie nicht

N soll bei mir zart blau für Sync bis 24h oder 48h leuchten
D stelle ich mir zart orange für Sync bis 24h oder 48h leuchten
S als Sekundenblink in der ordentlichen aktuellen Buchstabenfarbe

von Micha S. (ernie)


Lesenswert?

Torsten C. schrieb:
> Micha S. schrieb:
>> Sync ist Sync.
>
> Dann passen aber weder N noch D und S ist schon die Sekunde.
>
> Micha S. schrieb:
>> Sollte mal jemand auf eine tolle neue Idee für einen der freien 4
>> Buchstaben kommen
>
> Bis wann denn? Frank wollte bald bestellen. Wenn die Bestellung raus
> ist, würden wir damit Matrix-Varianten erzeugen. Gut, vielleicht würde
> das niemanden stören? Dann gibt es die dritte .accdb oder es gibt eine
> neue .accdb wo alle Varianten zusammen drin sind. ;-) :-p
>
> Mir persönlich wär's egal, das war nur ein Hinweis.

Machts doch nicht so kompliziert :-) Davon war und ist in keinem der 
letzten Posts die Rede gewesen! Niemand hat was von Frontplattenänderung 
geschrieben!

Jetzt nochmals zum langsamen mitlesen.

Es sind in der untersten, in der 18. Reihe, 4 Buchstaben frei. Richtig?
Diese 4 Buchstaben sind alle mit der Anzeige einer bestimmten Aktion 
belegt. Richtig? Alles toll soweit.
Jetzt kommt jemand auf die tolle Idee, er fände es gut, das eine der 
LEDs ins Rot blinkt wenn sein Nachbar bei Vollmond Rasen mäht :-) ;-)
Und seltsamerweise finden das 100% aller Uhrenbastler auch.
Welchen der 4 Buchstaben kann man dann am besten nehmen?

thomas-st sagte richtigerweise, für Sync werden 2 Buchstaben benutzt. 
Einmal der NTP-Sync und einmal der DCF77-Sync. Richtig?
Sein Vorschlag war, für einen Sync der Uhr nur einen Buchstaben zu 
nutzen. Also entweder D oder N. Auf jeden Fall sieht man weiterhin den 
Sync der Uhr und man kann dann die frei gewordene LED in Rot blinken 
lassen wenn der Nachbar Rasen mäht.

Für mich wäre es völlig uninteressant zu wissen über welche Quelle die 
Uhr einen Sync bekommen hat. Hauptsache ist sie hat einen. Das mag auch 
daran liegen, dass ich DCF hier sowieso vergessen kann und auf jeden 
Fall NTP/TIME nehmen werden. Und Frank nutzt jetzt schon TIME. Und ein T 
sehe ich bei den 4 Buchstaben auch nicht. Er wird wohl weiterhin für den 
TIME-Sync das N benutzen.

Das hat nichts mit Frontplattenänderung zu tun. Das ist ne reine 
Softwaregeschichte. OK in diesem erfundenen und nie eintretenden Fall 
fehlt noch 'nen Mikro :-)
Mehr hatte thomas-st nicht vorgeschlagen. Das war alles.
Grüße,

Micha

von Thomas S. (thomas-st)


Lesenswert?

Micha S. schrieb:
> Für mich wäre es völlig uninteressant zu wissen über welche Quelle die
> Uhr einen Sync bekommen hat. Hauptsache ist sie hat einen.

Das war der Hintergrund der Frage - ich bin über diese -eher technische- 
Unterscheidung gestolpert und wollte nur nach dem Grund dafür fragen.

Ich will auf keinen Fall nach x Monaten auftauchen und alles 
umstellen. :)

Viele Grüße,
Thomas

von Herbert P. (herb3472)


Lesenswert?

Jetzt muss ich auch noch meinen Senf zu der Diskussion über die 4 LEDs 
beitragen.

Es sind deshalb 4 LEDs, weil ich die Punkte dafür symmetrisch anordnen 
wollte. Und da es keine LED in der Mitte gibt, würde ich aus Gründen der 
Symmetrie vorschlagen, die beiden mittleren LEDs als "Ganganzeige" zu 
verwenden und abwechselnd blinken zu lassen, ähnlich wie auf einer 
Anzeigetafel am Flughafen oder Bahnhof (nur nicht so schnell, denke 
ich).

Die äußerst linke LED kann dann die Synchronisation mit der Funkuhr oder 
der Internet-Uhr anzeigen (unter Umständen auf Tastendruck, damit sie 
nicht ständig leuchtet), die andere sollte bei Empfang eines 
IR-Steuersignals blinken.

Weil ich der Meinung war, dass sich blinkende oder andersfarbige 
Buchstaben nicht sonderlich gut machen würden, habe ich zur deutlichen 
Abgrenzung Punkte für diese 4 LEDs vorgesehen.

Was haltet Ihr von diesem Vorschlag?

--------------------------

Ein anderes Thema ist bisher überhaupt noch nicht behandelt worden:

die WordCLock soll ja eine Rundum-Hintergrund-Beleuchtung bekommen (die 
Bezeichnung "Ambilight" verwende ich nicht gerne, weil sie meines 
Wissens von Philips geschützt ist). Und die Farbe und Helligkeit der 
Hintergrundbeleuchtung sollte meines Erachtens unabhängig von der Farbe 
und Helligkeit der Buchstaben einstellbar sein. Hat sich darüber schon 
jemand Gedanken gemacht?

von Joachim B. (jar)


Lesenswert?

Herbert P. schrieb:
> habe ich zur deutlichen
> Abgrenzung Punkte für diese 4 LEDs vorgesehen.
>
> Was haltet Ihr von diesem Vorschlag?

Punkte?

ich halte nix davon weil ich hier ein Muster mit den 4 Eckpunkten habe 
und die Sekunde blinkt in einem selbstgeschnittenen Fenster.

Mir persönlich würde eine reine Buchstabenfront besser gefallen, aber da 
ich eh andere Maße für die Frontplatte verwende 50 x 50 statt 45 x 45 
ist die Wahl der Felder + meine lasergeschnittenen Stahlplatten eh mein 
eigenes Ding, müsst ihr euch nicht dran stören, die Buchstaben bekomme 
ich schon irgendwie hin.

Schön wäre es halt wenn das Buchstabenfeld von anderen designt wird, 
muss ich mich nicht darum kümmern.

: Bearbeitet durch User
von Herbert P. (herb3472)


Lesenswert?

Joachim B. schrieb:
> meine lasergeschnittenen Stahlplatten eh mein
> eigenes Ding, müsst ihr euch nicht dran stören, die Buchstaben bekomme
> ich schon irgendwie hin.

Für die Stahlplatte muss ich sowieso ein eigenes Design machen mit einem 
anderen Schriftenfont, da mach' ich Dir gerne die gewünschten Buchstaben 
rein. Darfst Dir auch gerne ein etwas größeres Format für den 
Ribba-Rahmen wünschen (50 x 50 cm?). Wird aber noch ein wenig dauern, da 
ich dafür einen Stencil-Schriftfont verwenden und eine Vektorgrafik 
(svg-Format?) als Vorlage anfertigen muss. Die derzeitige Vorlage mit 
der Arial-Schrift für Siebdruck ist ja im pdf-Format und daher als 
Vorlage zum Lasern sowieso nicht geeignet.
__________________________________________________________________

Die korrigierten Datenbanken (accdb und mdb) sind hochgeladen. Bitte um 
Überprüfung!

Im Hinterkopf habe ich noch eine Anmerkung (weiß nicht mehr von wem), 
dass irgend ein Mode in der C-Version eine andere Ordnungsnummer hat als 
in der Datenbank. Sofern mir jemand auf die Sprünge hilft, was das war, 
korrigiere ich das gerne.

: Bearbeitet durch User
von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Micha S. schrieb:
> was er meint ist, glaube ich, dass man nur eine SyncLED braucht. Egal ob
> die Uhr mit DCF oder NTP in Sync ist. Sync ist Sync.

Sehe ich auch so. Wer ein WLAN-Modul anschließt, braucht kein DCF77 
mehr. Man müsste das DCF77-Modul dann sowieso mindestens einen Meter 
entfernt unterbringen, damit überhaupt ein DCF77-Funkempfang möglich 
ist, wenn das ESP8266 durch die Gegend funkt.

Man wird also nur eines von beiden anschließen: Entweder DCF77 oder ESP. 
Dann braucht man auch nur einen Buchstaben dafür.

Ich werde für die 4 Buchstaben irgendwann (da ich es nicht für 
lebensnotwendig halte und mich das Rumgeblitze sowieso stören würde) 
einbauen:

 1. Sync (Egal ob DCF oder ESP)

 2. IR/WLAN (wenn ein Befehl per IR oder WLAN (Android App)
    entgegengenommen wurde)

 3. Sekunden-Blink

Damit bleibt ein Buchstabe frei - oder man lässt 2 LEDs pro Sekunde 
mittig blinken, wie es Herbert vorschlug. Welche Buchstaben da 
eigentlich stehen, ist mir ziemlich schnuppe.

Aber: Das wird man alles per Konfiguration bewusst einschalten müssen. 
Denn mir würde das total auf den Zeiger gehen, wenn da etwas neben 
meinem Fernseher an der Wand sekündlich blinkt. Dann bin ich nach 3 
Stunden reif für die Klappsmühle.

Also: Standardmäßig sind diese Gimmicks abgeschaltet. Es ist immer genau 
eine Minute lang ein stehendes Bild zu sehen.

Dass vielleicht eine kurze Animation läuft, wenn die Uhrzeit einmal pro 
Minute umgeschaltet wird, ist eine ganz andere Geschichte. Aber auch das 
wird konfigurierbar sein.

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Damit bleibt ein Buchstabe frei - oder man lässt 2 LEDs pro Sekunde
> mittig blinken, wie es Herbert vorschlug. Welche Buchstaben da
> eigentlich stehen, ist mir ziemlich schnuppe.

Im derzeitigen Frontplattenentwurf sind für die LEDs keine Buchstaben, 
sondern etwas größere Punkte vorgesehen. Ich denke, das könnte man auch 
so beibehalten.

Frank M. schrieb:
> Aber: Das wird man alles per Konfiguration bewusst einschalten müssen.
> Denn mir würde das total auf den Zeiger gehen, wenn da etwas neben
> meinem Fernseher an der Wand sekündlich blinkt. Dann bin ich nach 3
> Stunden reif für die Klappsmühle.

Das sehe ich auch so. Das einzige, was meines Erachtens ständig 
aktiviert sein sollte, wäre eine blinkende Rückmeldung bei Empfang eines 
Infrarot-Fernsteuersignals.

von Joachim B. (jar)


Lesenswert?

Herbert P. schrieb:
> Im derzeitigen Frontplattenentwurf sind für die LEDs keine Buchstaben,
> sondern etwas größere Punkte vorgesehen. Ich denke, das könnte man auch
> so beibehalten.

ich sagte bereits

Joachim B. schrieb:
> Mir persönlich würde eine reine Buchstabenfront besser gefallen,

Herbert P. schrieb:
> Das einzige, was meines Erachtens ständig
> aktiviert sein sollte, wäre eine blinkende Rückmeldung bei Empfang eines
> Infrarot-Fernsteuersignals.

des erkannten IR Signals, wer will denn bei jeder TV FB Bedienung ne 
Meldung der Uhr?

Man könnte I(r)sogar nur blinken lassen bei Uhr Code Protokoll erkannt 
oder Uhr Code und Befehl erkannt.

Frank M. schrieb:
> Also: Standardmäßig sind diese Gimmicks abgeschaltet.

eben

Frank M. schrieb:
> Denn mir würde das total auf den Zeiger gehen, wenn da etwas neben
> meinem Fernseher an der Wand sekündlich blinkt.

bei mir hängt die Uhr eben nicht neben dem TV, aber wenn ich drauf 
schaue finde ich das Sekundenblink beruhigend, aber wie gesagt ist nur 
SW kann jeder wie er mag.

Frank M. schrieb:
> Wer ein WLAN-Modul anschließt, braucht kein DCF77
> mehr.

nun ja, ich werde beides vorsehen, man weiss ja nie, Module sind eh 
gekauft und vorhanden.

Herbert P. schrieb:
> Für die Stahlplatte muss ich sowieso ein eigenes Design machen mit einem
> anderen Schriftenfont, da mach' ich Dir gerne die gewünschten Buchstaben
> rein.

Danke, ich komme auf dich zurück wenn die 16 x 16 Matrixen im Ribba 
50x50 Rahmen sitzen

Frank M. schrieb:
> Man müsste das DCF77-Modul dann sowieso mindestens einen Meter
> entfernt unterbringen, damit überhaupt ein DCF77-Funkempfang möglich
> ist, wenn das ESP8266 durch die Gegend funkt.

die DCF77 fühlt sich auch durch das WS2812b gestört, aber das kann man 
ja nachts zwischen 3-5 Uhr abschalten genauwie ESP8266 für DCF77 Sync.

von Micha S. (ernie)


Lesenswert?

Herbert P. schrieb:
> Frank M. schrieb:
>> Aber: Das wird man alles per Konfiguration bewusst einschalten müssen.
>> Denn mir würde das total auf den Zeiger gehen, wenn da etwas neben
>> meinem Fernseher an der Wand sekündlich blinkt. Dann bin ich nach 3
>> Stunden reif für die Klappsmühle.
>
> Das sehe ich auch so. Das einzige, was meines Erachtens ständig
> aktiviert sein sollte, wäre eine blinkende Rückmeldung bei Empfang eines
> Infrarot-Fernsteuersignals.

würde ich genauso sehen wie Frank und Herbert. Alles was nicht zur 
reinen Uhrzeitanzeige gehört, muss vom User ab- bzw. anschaltbar sein.

Ich finde die Uhr am schönsten, das ist auch schon bei der "alten" 
Wortuhr so, wenn sie die Zeit anzeigt. Und nur die Zeit. Kein Klimbim 
rundherum welches ablenkt.Grüße,

Micha

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Im derzeitigen Frontplattenentwurf sind für die LEDs keine Buchstaben,
> sondern etwas größere Punkte vorgesehen. Ich denke, das könnte man auch
> so beibehalten.

Die Punkte durchbrechen irgendwie das Layout. Mich störts ein wenig - 
aber nur ein wenig. Buchstaben wären mir lieber.

Aber ich bin da jetzt nicht so erpicht darauf, dass da unbedingt.

  D = DCF
  I = IR
  N = Netz-Sync
  S = Sekunde

stehen muss.

Meinetwegen können da auch unsere Initialen stehen (ja, die vier 
WordClock10x11-Programmierer haben sich auch auf der Frontplatte 
verewigt und keiner hat's gemerkt ;-) ).

Aber mir ist das ziemlich egal. Wie gesagt: Buchstaben fände ich besser.

EDIT:

Wenn man mal später noch die Temperatur anzeigen möchte, wäre GRAD als 
Maß nicht schlecht. Sind auch vier Buchstaben.

: Bearbeitet durch Moderator
von Joachim B. (jar)


Lesenswert?

Frank M. schrieb:
> können da auch unsere Initialen stehen (ja, die vier
> WordClock10x11-Programmierer haben sich auch auf der Frontplatte
> verewigt und keiner hat's gemerkt

auch toll H J F T nicht für mich, aber für die Nurbesteller :-)

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Frank M. schrieb:
> Die Punkte durchbrechen irgendwie das Layout. Mich störts ein wenig -
> aber nur ein wenig. Buchstaben wären mir lieber.

Ich schließe mich an, aber Punkte stören mich schon mehr als nur "ein 
wenig". Die Gründe sind genannt.

von Joachim B. (jar)


Lesenswert?

Joachim B. schrieb:
> Mir persönlich würde eine reine Buchstabenfront besser gefallen,

Frank M. schrieb:
> Aber mir ist das ziemlich egal. Wie gesagt: Buchstaben fände ich besser.

Torsten C. schrieb:
> Ich schließe mich an, aber Punkte stören mich schon mehr als nur "ein
> wenig".

Herbert P. schrieb:
> Im derzeitigen Frontplattenentwurf sind für die LEDs keine Buchstaben,
> sondern etwas größere Punkte vorgesehen. Ich denke, das könnte man auch
> so beibehalten.

3 : 1 Herbert du bist überstimmt.

Frank M. schrieb:
> Wenn man mal später noch die Temperatur anzeigen möchte, wäre GRAD als
> Maß nicht schlecht. Sind auch vier Buchstaben.

hmm, bei der Minutenuhr haben wir alle Buchstaben und
Zahlen, alternativ GRAD anzeigen (automatisch oder auf IR Kommando) 
lassen auch ne gute Idee.....

muss ich auf mich wirken lassen

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Man kann die LED-Kammern ja auch wie eine "Punkt-Matrix-Anzeige" mit 
ganz großen Buchstaben und ggf. sogar Laufschrift verwenden. Vielleicht 
das von Joachim sogar so gemeint?

: Bearbeitet durch User
von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Torsten C. schrieb:
> Man kann die LED-Kammern ja auch wie eine "Punkt-Matrix-Anzeige" mit
> ganz großen Buchstaben und ggf. sogar Laufschrift verwenden. Vielleicht
> das von Joachim sogar so gemeint?

Nö, war von Joachim bestimmt nicht so gemeint. Trotzdem eine gute Idee. 
B&F zeigt auf diese Art die Sekunden an - auf Knopfdruck und 
ausschließlich (d.h. da muss einer zur Uhr latschen und ein Knöpfchen am 
unteren Rand drücken).

von Joachim B. (jar)


Lesenswert?

Torsten C. schrieb:
> mit
> ganz großen Buchstaben und ggf. sogar Laufschrift verwenden. Vielleicht
> das von Joachim sogar so gemeint?

zwar nicht, aber auch denkbar...

gefällt mir, dann kann ich bei meinen I D N S bleiben

es reicht ja 21° z.B.

müsste ich mal in ein Muster der Buchstaben bringen

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Wenn man mal später noch die Temperatur anzeigen möchte, wäre GRAD als
> Maß nicht schlecht. Sind auch vier Buchstaben.

Diese Idee finde ich wirklich sehr gut! Mit einem Fernbedienungsknopf 
könnte man für ein paar Sekunden auf die Temperaturanzeige umschalten. 
Von den vorhandenen Zahlenwörtern könnte die Auflösung sogar auf halbe 
Grad genau sein.

Wer ist dafür, für die 4 Buchstaben "G R A D" zu verwenden? Die 
Sekunden- und Statusanzeigen könnte man ja auch ganz dezent im unteren 
Rand unterhalb der Buchstabenmatrix unterbringen, dafür würden kleine 
Löchlein wie auf'm Handy und diskrete kleine LEDs genügen.

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> B&F zeigt auf diese Art die Sekunden an - auf Knopfdruck und
> ausschließlich (d.h. da muss einer zur Uhr latschen und ein Knöpfchen am
> unteren Rand drücken).

Eine Sekundenanzeige a la B&F könnte man sicher ergänzend vorsehen 
(wenn, dann mit Fernbedienung), für besonders wichtig halte ich sie 
nicht - denn wer will diese Uhr als Stoppuhr verwenden?

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Wer ist dafür, für die 4 Buchstaben "G R A D" zu verwenden?

+1

> Die
> Sekunden- und Statusanzeigen könnte man ja auch ganz dezent im unteren
> Rand unterhalb der Buchstabenmatrix unterbringen, dafür würden kleine
> Löchlein wie auf'm Handy und diskrete kleine LEDs genügen.

Ja, das wäre für mich okay. Ein kleines Mini-Löchlein (5mm) würde mir 
auch reichen. Denn wir sollten eins nicht vergessen: Wir haben ja auch 
noch die Möglichkeit, verschiedene Farben dort anzuzeigen.

Beispiel:

   Grün:    IR-Kommando
   Gelb:    WLAN-Kommando
   Magenta: DCF Sync
   Türkis:  NET-Time Sync
   Rot:     Sekunden Blinker - wers unbedingt mag

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Frank M. schrieb:
> Herbert P. schrieb:
>> Wer ist dafür, für die 4 Buchstaben "G R A D" zu verwenden?
>
> +1

+1 = 3

von Joachim B. (jar)


Lesenswert?

Herbert P. schrieb:
> dafür würden kleine
> Löchlein wie auf'm Handy

wer mag, ich nicht

Herbert P. schrieb:
> und diskrete kleine LEDs genügen

brauchst nicht die 4 WS2812b LEDs können angehängt werden

Herbert P. schrieb:
> Wer ist dafür, für die 4 Buchstaben "G R A D" zu verwenden?

ich nicht, brauchts denn GRAD? wenn das als Matrix im Buchstabenfeld 
leuchtet?

wir haben 16x16(16x18)

eine Ziffer benötigt minimal 6x8 oder large 6x16 (oder6x12) für 2 
Ziffern 12 in der Breite und 4 über für den Kuller '°'

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Joachim B. schrieb:
> ich nicht, brauchts denn GRAD? wenn das als Matrix im Buchstabenfeld
> leuchtet?

Wenn es als Matrix leuchtet, nicht. Aber es ginge ja auch:

   ES IST VIER UND ZWANZIG GRAD

als Buchstaben-Anzeige.

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Joachim B. schrieb:
> brauchts denn GRAD? wenn das als Matrix im Buchstabenfeld
> leuchtet?

Nein, geht auch anders. Aber über Geschmack lässt sich nicht streiten. 
Du hättest also lieber I D N S behalten und nun haben wir ein Problem. 
Richtig?

Ich würde Joachim ungern demokratisch überstimmen, falls "I D N S" für 
ihn sehr wichtig ist und mich im Zweifel lieber enthalten.

von Micha S. (ernie)


Lesenswert?

Frank M. schrieb:
> Herbert P. schrieb:
>> Wer ist dafür, für die 4 Buchstaben "G R A D" zu verwenden?
>
> +1
>
>> Die
>> Sekunden- und Statusanzeigen könnte man ja auch ganz dezent im unteren
>> Rand unterhalb der Buchstabenmatrix unterbringen, dafür würden kleine
>> Löchlein wie auf'm Handy und diskrete kleine LEDs genügen.
>
> Ja, das wäre für mich okay. Ein kleines Mini-Löchlein (5mm) würde mir
> auch reichen. Denn wir sollten eins nicht vergessen: Wir haben ja auch
> noch die Möglichkeit, verschiedene Farben dort anzuzeigen.
>
> Beispiel:
>
>    Grün:    IR-Kommando
>    Gelb:    WLAN-Kommando
>    Magenta: DCF Sync
>    Türkis:  NET-Time Sync
>    Rot:     Sekunden Blinker - wers unbedingt mag

GRAD fände ich auch gut.

Zu den kleinen "Loch/Löchern". Das geht aber nur bei dunklen 
Plexi-Fronten quasi unsichtbar zu machen. Bei Edelstahl, wenn es denn 
Edelstahl als Front geben soll, würdest du das/die Loch/Löcher wiederum 
immer sehen.
Grüße,

Micha

von Herbert P. (herb3472)


Lesenswert?

@Joachim:

Deine stählerne Frontplatte wird ja ohnehin extra behandelt. Da kannst 
Du Dir wünschen, was Du möchtest: "Sie wünschen, wir spielen".

Hier geht es eigentlich um die siebbedruckte 
"Standard"-Acrylglas-Frontplatte im Format 45cm x 45cm. An der hast Du 
ja keinen Bedarf, weil die für Deine Ribba-Rahmen ja ohnehin zu klein 
wäre, dachte ich?

von Thomas S. (thomas-st)


Lesenswert?

Frank M. schrieb:
>  1. Sync (Egal ob DCF oder ESP)
[...]
>  3. Sekunden-Blink

Nur als Anregung: das könnte man auch zusammenfassen:
 AUS: kein Sync
 Blinkt im Sekundentakt: Sync und Sekunden-Blink ist an
 EIN: Sync und Sekunden-Blink ist aus

Allerdings gibt es damit keinen Sekunden-Blink, wenn kein Sync vorhanden 
ist.

Torsten C. schrieb:
> Frank M. schrieb:
>> Herbert P. schrieb:
>>> Wer ist dafür, für die 4 Buchstaben "G R A D" zu verwenden?
>>
>> +1
>
> +1 = 3

+ mich = 3 1/2 (ich zähle mich nur halb, da an der Entwicklung nicht 
beteiligt ;) )

Viele Grüße,
Thomas

von Joachim B. (jar)


Lesenswert?

Torsten C. schrieb:
> Ich würde Joachim ungern demokratisch überstimmen, falls "I D N S" für
> ihn sehr wichtig ist

kein Problem, ich mit meinen Stahlplatten

Herbert P. schrieb:
> @Joachim:
>
> Deine stählerne Frontplatte wird ja ohnehin extra behandelt. Da kannst
> Du Dir wünschen, was Du möchtest: "Sie wünschen, wir spielen".

Herbert hilft.....

da wir eh die einzigen mit 16 x 16 sind vorerst ist es für ihn wohl ein 
Abwasch das Plattendesign zu machen, lasern lasse ich eh hier, 
vermutlich ein Einzelstück oder 2 für mein Stahl 16x16

ob ich später auch noch 16x18 in Stahl mache, immer 1 Schritt nach dem 
anderen.

von Herbert P. (herb3472)


Lesenswert?

Thomas St. schrieb:
> + mich = 3 1/2 (ich zähle mich nur halb, da an der Entwicklung nicht
> beteiligt ;) )

Also somit für die Acrylfrontplatte mit 18 x 16 Matrix einstimmig 
beschlossen:

 "G R A D"

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Also somit für die Acrylfrontplatte mit 18 x 16 Matrix einstimmig
> beschlossen:  "G R A D"

Nun hattest Du gerade um 09:28 Uhr eine neue .accdb hoch geladen und 
schon wieder 'ne Änderung. ;-)

Bist Du Sicher, dass sich durch das GRAD keine Verschiebungen ergeben? 
Dann kann es ja erstmal bei der Version von heute 09:28 Uhr bleiben.

von Herbert P. (herb3472)


Lesenswert?

Torsten C. schrieb:
> Bist Du Sicher, dass sich durch das GRAD keine Verschiebungen ergeben?
> Dann kann es ja erstmal bei der Version von heute 09:28 Uhr bleiben.

Ich hab' lediglich die vier Punkte für die LEDs durch Buchstaben 
ersetzt, sonst hat sich nichts geändert. Ich hatte das schon in meiner 
Kristallkugel gesehen, dass eine Änderung dieser Art kommen würde ;-)

Die Datenbank-Version von heute 9:28 bleibt, die ist davon nicht 
betroffen.

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

ein kleiner Schritt für euch, ein Riesenschritt für mich

juhu.....ich kann mich über den Arduino m1284p mit dem ESP8266 ins wlan 
einloggen.....

Statusmeldungen und Kommunikation läuft noch über die Lupe ist ne 
Arduino Einbindung eines Terminal zum Arduino über USB und FTDI UART0 am 
m1284p gebrückt zu Serial1 UART1 zum ESP8266 umgeflasht auf 9600 Baud.

nun werde ich mal versuchen den NTP zu bekommen

von Herbert P. (herb3472)


Lesenswert?

Joachim B. schrieb:
> juhu.....ich kann mich über den Arduino m1284p mit dem ESP8266 ins wlan
> einloggen.....

Na das ist ja prima, gratuliere!

Joachim B. schrieb:
> Statusmeldungen und Kommunikation läuft noch über die Lupe ist ne
> Arduino Einbindung eines Terminal zum Arduino über USB und FTDI UART0 am
> m1284p gebrückt zu Serial1 UART1 zum ESP8266 umgeflasht auf 9600 Baud

Gott sei Dank ist dieser Satz kurz gehalten, gut strukturiert und 
übersichtlich! Der Aufbau scheint es ja ebenfalls zu sein grins

: Bearbeitet durch User
von Herbert P. (herb3472)


Lesenswert?

So, die 18x16 Frontplattenvorlage mit "GRAD" ist hochgeladen. In die 
Mitte des unteren Randes habe ich für eine einsame Status-LED einen 
dezenten Punkt reingemacht, ich hoffe, das konveniert so....

von Joachim B. (jar)


Lesenswert?

Herbert P. schrieb:
> So, die 18x16 Frontplattenvorlage mit "GRAD" ist hochgeladen.

prima,

der ESP8266 macht ja richtig Laune, schnell ist ein AP sniffer gebaut, 
viel Code brauchts nicht.

Ich bin begeistert

sagt mal spuckt der ESP nicht nach jeder Zeile \r\n aus?

ich finde das Zeilenende nicht.....

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Joachim B. schrieb:
> sagt mal spuckt der ESP nicht nach jeder Zeile \r\n aus?

Doch. Nur beim Echo nicht, falls Du nur \r oder \n sendest.

PS: Zumindest bei meiner Firmware.

Torsten C. schrieb im 
Beitrag "Re: Webserver Alternative auf µC" :
> der AT-Befehlssatz verändert sich.

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?


von Joachim B. (jar)


Lesenswert?

Torsten C. schrieb:
> Doch. Nur beim Echo nicht, falls Du nur \r oder \n sendest.

Problem gelöst

ich wollte nicht in einer Schleife 20 Sekunden warten bis der antwortet

aber ich warte maximal (kann festgelegt werden) bis das OK o.ä. was halt 
erwartet wird, kommt :-)

ich freue mich.....

Torsten C. schrieb:
> Haben alle den Beitrag "Wordclock, warum so kompliziert?" gesehen?

jau

wenn ich bedenke, meine "Erste" läuft mit einem Arduino miniPRO aus 
China 2,50€ in einem Ribba Rahmen 4,99 und LED Stripes für 51€ x 110/300 
nicht alle verbraucht, ach ja Steckernetzteil 12,50€ 5V/4A

war nicht so kompliziert, ausser das Stripe löten


ach ja wlan ESP:
ESP8266
raus: AT+RST, und nun, max. 10 Sekunden warten
line_input: "ready", gewartet: 2 Sekunde(n)

raus: AT+CWMODE=1, und nun, max. 10 Sekunden warten
line_input: "OK", gewartet: 33 ms

raus: AT+CWQAP, und nun, max. 10 Sekunden warten
line_input: "OK", gewartet: 27 ms

raus: AT+CWJAP="SSID","PW";, und nun, max. 10 Sekunden warten
line_input: "OK", gewartet: 5 Sekunde(n)

raus: AT+CIFSR, und nun, max. 10 Sekunden warten
last_line_input1: "+CIFSR:STAIP,"XXX.XXX.XXX.XXX""
last_line_input2: "+CIFSR:STAMAC,"XX:XX:XX:XX:XX:XX""
line_input: "OK", gewartet: 113 ms

muss noch weiterproggen, aber sieht gut aus

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Joachim B. schrieb:
> …, max. 10 Sekunden warten
> …, max. 10 Sekunden warten
> …, max. 10 Sekunden warten
> …, max. 10 Sekunden warten
> …, und nun, max. 10 Sekunden warten
> …, gewartet: 113 ms

Ich kipp um!

Ich warte immer nur auf ein "magic char". Also beim Reset auf ein "y" 
von Read(y) und sonst auf ein "K" von O(K). Das ganze kann man auch auf 
2 oder 3 "magic chars" ausdehenen, falls nötig.

Aber vielleicht habe ich Dich ja auch falsch verstanden. Was ist 
"line_input"? Und was machst Du, wenn die "10 Sekunden warten" um sind? 
Einen HW-Reset am Reset-Pin?

: Bearbeitet durch User
von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> So, die 18x16 Frontplattenvorlage mit "GRAD" ist hochgeladen. In die
> Mitte des unteren Randes habe ich für eine einsame Status-LED einen
> dezenten Punkt reingemacht, ich hoffe, das konveniert so....

Prima, danke! Im Artikel steht noch "Update 11.12.2014" zur PDF. Habe 
das gerade korrigiert.

Anfrage an Druckerei, ob die Vorlage so brauchbar ist, läuft. Sobald ich 
Antwort habe, melde ich mich.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Torsten C. schrieb:
> Dann kann es ja erstmal bei der Version von heute 09:28 Uhr bleiben.

Wenn ich im Artikel nach tables.h und display.h schaue, finde ich da 
noch die alten Versionen von Dezember. Wann wirst Du neue Header-Dateien 
zur Verfügung stellen?

Ich habe da sowieso noch einen Anschlag auf Dich vor:

Da ich beide Includes in zwei C-Modulen (dsp.c und monitor.c) brauche, 
habe ich vor Wochen schon beide Includes geändert, weil die 
static-Definitionen unbrauchbar sind. Denn dann habe ich alle Tabellen 
doppelt und unabhängig im Speicher. Ich habe daher einen Kunstgriff 
vorgenommen:

dsp.c:
1
#include "display.h"
2
#include "tables.h"

monitor.c:
1
#define TABLES_EXTERN
2
#include "display.h"
3
#include "tables.h"

Ein Beispiel der Änderungen in tables.h und display.h:
1
#ifdef TABLES_EXTERN
2
extern const struct Modes           tbl_modes[MODES_COUNT];
3
extern const uint8_t                tbl_hours[HOUR_MODES_COUNT][HOUR_COUNT][MAX_HOUR_WORDS];
4
extern const struct MinuteDisplay   tbl_minutes[MINUTE_MODES_COUNT][MINUTE_COUNT];
5
#else
6
const struct Modes tbl_modes[MODES_COUNT] = {
7
{ MM_10, HM_6, "ES IST HH UHR MM (12)" },
8
....

Ist also TABLES_EXTERN definiert, dann werden in den Includes lediglich 
Extern-Deklarationen vorgenommen, ansonsten Definitionen. Die statics 
sind dabei rausgeflogen.

Damit kann ich aus monitor.c genauso auf dieselben Tabellen zugreifen 
wie aus dsp.c.

Kannst Du das bitte so beim Generator übernehmen? Du müsstest einfach 
mal in meinem Source nach TABLES_EXTERN in display.h und tables.h zu 
suchen. Dann hast Du alle Stellen.

Ausserdem sehe ich überhaupt keinen Grund, warum die Tabellen auf zwei 
Includes aufgeteilt sind. Man braucht in jedem Fall immer sowieso beide.

Ein Include namens "tables.h" wäre daher eleganter. Dann kann ich meine 
dsp.c und dsp.h auch wieder in die aussagekräftigere Namen display.c und 
display.h (welche das Interface zu Funktionen in display.c deklariert) 
umbenennen.

: Bearbeitet durch Moderator
von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Prima, danke! Im Artikel steht noch "Update 11.12.2014" zur PDF. Habe
> das gerade korrigiert.
>
> Anfrage an Druckerei, ob die Vorlage so brauchbar ist, läuft. Sobald ich
> Antwort habe, melde ich mich.

Oki, thx. Ich bitte alle Beteiligten, auch noch einmal zu kontrollieren, 
ob das Layout so in Ordnung ist, und ob die Wortanordnungen stimmig 
sind. Damit wäre dann die Erstellung der Druckvorlage für die 18 x 16 
Matrix im Format 45cm x 45cm für mich abgeschlossen.

Ich werde mich dann in den nächsten Tagen/ Wochen um die Vorlagen für 
die Frontplattenfertigung in Lasercut-Technolgie kümmern. Die werden als 
Vektorgrafik im svg- und cxf-Dateiformat erstellt, als Schriftfont ist 
die Stencil Allround geplant.

In diesem Zusammenhang ersuche ich um Überprüfung der 16 x 16 Matrix 
mittels Mock-Up, Screensaver etc... Der Stand der 16 x 16 Matrix 
(Frontplattenlayout und accdb) ist noch vom November 2014, ich vermute, 
dass da noch Fehler drinnen sind.

von Joachim B. (jar)


Lesenswert?

Torsten C. schrieb:
> Ich kipp um!
>
> Ich warte immer nur auf ein "magic char". Also beim Reset auf ein "y"
> von Read(y) und sonst auf ein "K" von O(K).

kann ich ja noch nachfummeln, das sind meiner allerersten Schritte mit 
dem ESP8266

Torsten C. schrieb:
> Aber vielleicht habe ich Dich ja auch falsch verstanden. Was ist
> "line_input"?

ich buffer die Input Zeilen, kann ja sein das ich die brauche

z.B. für einen AP scan, ich toggle ja noch mit der Breadboard BG 
zwischen @home & @work

Torsten C. schrieb:
> Und was machst Du, wenn die "10 Sekunden warten" um sind?
> Einen HW-Reset am Reset-Pin?

das ist der Gedanke wenn der ESP zickt, der soll manchmal zickig sein, 
ausserdem denke ich an einen LDO mit enable, der wlan muss ja nicht 
immer laufen für NTP

Torsten C. schrieb:
> wenn die "10 Sekunden warten" um

ist erst mal nur ne Hausnumer, weiss ich wie schnell der connect 
bekommt?

Herbert P. schrieb:
> In diesem Zusammenhang ersuche ich um Überprüfung der 16 x 16 Matrix
> mittels Mock-Up, Screensaver etc... Der Stand der 16 x 16 Matrix
> (Frontplattenlayout und accdb) ist noch vom November 2014, ich vermute,
> dass da noch Fehler drinnen sind.

da bitte ich mit weil ich ja auch mit Herbert die 16 x 16 erst mal 
verbauen will.

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Frank M. schrieb:
> Wenn ich im Artikel nach tables.h und display.h schaue, finde ich da
> noch die alten Versionen von Dezember.

Das ist eigentlich nur ein Knopfdruck, erledigt!

Warum heißen die nun .mdb? und nicht mehr .accdb? Da ist mein Tool eben 
erstmal gestolpert, daher habe ich die Dateien einfach umbenannt:

* WC24h18x16_V2.accdb

* WC24h18x16_V2.1.accdb

Ich habe 2.1 genommen. Wo ist der Unterschied?

Mit der Meinung über die "Horror-Seite"^^
hat Frank Gesellschaft bekommen. ;-) Github meckert nun auch:
> This Gist contains files that are too large to edit via the web
> interface. You can still edit this Gist directly using your favorite
> Git client.

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Joachim B. schrieb:
> ausserdem denke ich an einen LDO mit enable, der wlan muss ja nicht
> immer laufen für NTP

@Frank: Macht das für das STM32-PCB vielleicht auch Sinn? Man braucht ja 
nicht beides "Reset" und "Enable". Enable allein würde ja genügen.

Frank M. schrieb:
> Kannst Du das bitte so beim Generator übernehmen?

Wenn klar ist, wie genau: Am Freitag oder Samstag.

Frank M. schrieb:
> Ausserdem sehe ich überhaupt keinen Grund, warum die Tabellen auf zwei
> Includes aufgeteilt sind. …
> Ein Include namens "tables.h" wäre daher eleganter.

Das hatte ich auch schon mal angesprochen, aber niemand hat reagiert und 
Hans H. (loetkolben) wollte das m.E. getrennt.

Ich willte eigentlich eine *.h mit "include header only once" und eine 
*.c. Die können gern "tables" heißen.

Die Extern-Deklarationen wären dann in der tables.h und die Definitionen 
in tables.c:

tables.h:
1
#ifndef TABLES_H
2
#define TABLES_H
3
// Extern-Deklarationen 
4
#endif // TABLES_H

Das ist doch so üblich, oder habe ich gerade einen Denkfehler?

@loetkolben: Auch für Dich OK?

von Herbert P. (herb3472)


Lesenswert?

Torsten C. schrieb:
> Warum heißen die nun .mdb? und nicht mehr .accdb? Da ist mein Tool eben
> erstmal gestolpert, daher habe ich die Dateien einfach umbenannt:

Hast die falsche erwischt, es gibt eine .accdb-Version und eine 
.mdb-Version.

die .accdb-Version ist gleich der erste Eintrag:

> Datei:WC24h16x16.zip 16x16 Matrix, MS Office 2007/2010-Dateien, Update 
28.11.2014

Leider hatte ich da beim Hochladen noch nicht gewusst, dass auch eine 
mdb-Version benötigt wird, drum steht da nicht Office 2007/2010 dabei.

von Herbert P. (herb3472)


Lesenswert?

Torsten C. schrieb:
> Warum heißen die nun .mdb? und nicht mehr .accdb? Da ist mein Tool eben
> erstmal gestolpert, daher habe ich die Dateien einfach umbenannt:

Hast die falsche erwischt, es gibt eine .accdb-Version und eine 
.mdb-Version.

die .accdb-Version ist gleich der erste Eintrag:

> Datei:WC24h16x16.zip 16x16 Matrix, MS Office 2007/2010-Dateien, Update 
28.11.2014

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Torsten C. schrieb:
>> ausserdem denke ich an einen LDO mit enable, der wlan muss ja nicht
>> immer laufen für NTP
>
> @Frank: Macht das für das STM32-PCB vielleicht auch Sinn? Man braucht ja
> nicht beides "Reset" und "Enable". Enable allein würde ja genügen.

Der CH_PD am ESP8266 hat denselben Effek. Damit fährst Du das Ding 
runter und es verbraucht kaum noch Strom. Ich hatte ja schon eingebaut, 
dass der ESP8266 darüber abgeschaltet wird, wenn man ihn nicht mehr 
braucht. Die Zeit vom Time-Server zu holen muss man auch nur 1x täglich, 
wenn man eine RTC dran hat.

Aber: Dann kann man die Uhr nicht mehr steuern übers WLAN, z.B. vom 
Android aus.

In diese Falle bin ich ja schon getappt:

    Android Handy: Uhr aus -> geht aus.
    Android Handy: Uhr an -> geht nicht an, weil ESP schläft.

Ich werde es konfigurierbar machne, ob der ESP in den Dauerschlaf 
geschickt wird oder nicht.

Als 3,3-Spannungsversorgung benutze ich sowieso schon einen 
Schaltregler, nämlich diesen an 5V:

  http://www.reichelt.de/Wandler-Module-DC-DC/TSR-1-2433/3/index.html?ACTION=3&GROUPID=4956&ARTICLE=116849

Vorteil: Man braucht kein Kleinzeugs - vor allem keine Spule und anderes 
platzverbratendes Kleinviech. Nachteil: Das Ding ist sauteuer. Wenn da 
jemand eine andere Quelle oder ähnliche Alternative auftun könnte, wäre 
das nicht verkehrt.

> Frank M. schrieb:
>> Kannst Du das bitte so beim Generator übernehmen?
>
> Wenn klar ist, wie genau: Am Freitag oder Samstag.

Prima, danke!

> Frank M. schrieb:
>> Ausserdem sehe ich überhaupt keinen Grund, warum die Tabellen auf zwei
>> Includes aufgeteilt sind. …
>> Ein Include namens "tables.h" wäre daher eleganter.
>
> Das hatte ich auch schon mal angesprochen, aber niemand hat reagiert und
> Hans H. (loetkolben) wollte das m.E. getrennt.

Ja, weiß ich. Ich habe mich damals zurückgehalten, weil mir nicht 
bekannt war, was die anderen genau brauchen - wie zum Beispiel Hans.

> Ich willte eigentlich eine *.h mit "include header only once" und eine
> *.c. Die können gern "tables" heißen.
>
> Die Extern-Deklarationen wären dann in der tables.h und die Definitionen
> in tables.c:

Ja, so geht das auch und ist perfekt. Meine provisorische Lösung über 
"TABLES_EXTERN" war erstmal ein Hack, damit ich möglichst einfach von 2 
Modulen drauf zugreifen konnte.

> tables.h:
>
1
#ifndef TABLES_H
2
> #define TABLES_H
3
> // Extern-Deklarationen
4
> #endif // TABLES_H
>
> Das ist doch so üblich, oder habe ich gerade einen Denkfehler?

Ja, ist so üblich. Diese Include-Guards sind in meiner Software auch 
schon seit längerem drin.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Hast die falsche erwischt, es gibt eine .accdb-Version und eine
> .mdb-Version.

Heisst das, Torsten muss die Konvertierung nochmal machen?

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Heisst das, Torsten muss die Konvertierung nochmal machen?

Nein, inhaltlich sind beide Datenbanken identisch. Hab lediglich die 
.accdb-DB (MS Office 2007/2010) in die alte .mdb-Version (MS Office 
2000/2003) konvertiert, damit man auch mit der älteren Office-Version 
darauf zugreifen kann.

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Frank M. schrieb:
> Das Ding ist sauteuer. Wenn da
> jemand eine andere Quelle oder ähnliche Alternative auftun könnte, wäre
> das nicht verkehrt

Da steht:
> Input Voltage: 4.75 - 36 VD

Ich hatte weiter oben drei Bucks vorgestellt, unter 1€ / Stück.

Zwei davon sind verstellbare mit max. 23V und max. 28V

Einer ist mit 3.3V und 5.0V Festspannung für max. 16V und - wenn man den 
Elko wechselt - max. 25V, siehe 
Beitrag "Re: Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?"

Da ist keiner für Dich dabei? Ich könnte Dir bei Bedarf welche als Brief 
oder Warensendung schicken.

: Bearbeitet durch User
von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Torsten C. schrieb:
> Ich hatte weiter oben drei Bucks vorgestellt, unter 1€ / Stück.

Ja, aus China. Da würde ich erstmal jedesmal, wenn ich die Wohnung 
verlasse, die Uhr ausstöpseln. Ausserdem sind die Teile richtig groß. 
Der TSR ist nur so groß wie ein 7805 - was die Höhe angeht, sogar 
kleiner.

Und da das Ding sowieso nur für die 200mA des ESP8266 benötigt wird, 
werde ich es durch einen 3,3V-Low-Drop-Linearregler ersetzen. Kostet nur 
ein paar Cent und bei 5V->3,3V wird da auch nicht soviel Leistung 
verbraten.

> Einer ist mit 3.3V und 5.0V Festspannung für max. 16V und - wenn man den
> Elko wechselt - max. 25V, siehe
> Beitrag "Re: Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?"

Wie gesagt: Für meine Ansprüche zu groß: So ein Viech für ein ESP8266?

> Da ist keiner für Dich dabei? Ich könnte Dir bei Bedarf welche als Brief
> oder Warensendung schicken.

Danke für das Angebot, von den Dingern (nicht ganz genau gleich) habe 
ich selber welche zum Experimentieren. Aber ich würde sie niemals in 
Schaltungen einsetzen, die 24h am Tag teils unbeaufsichtigt laufen.

Ein billiger LDO sollte auch reichen, muss hier kein Schaltregler sein. 
Vielleicht nehme ich den LF33.

von Herbert P. (herb3472)


Lesenswert?

Torsten C. schrieb:
> Ich habe 2.1 genommen. Wo ist der Unterschied?

Sorry, die Frage hab ich vorhin übersehen. 2.1 ist die aktuelle Version. 
Und inhaltlich sind die .mdb und die .accdb Datenbank identisch. Alles 
im Lot!

: Bearbeitet durch User
von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Frank M. schrieb:
>> Jetzt dieselben Modes für "12:40":
>>
>> Mode 6 Ossi:
>>
>>     http://uclock.de/?x=6&h=11&m=40
>>
>> Falsch:  "es ist minuten nach halb zehn zwölf"
>> Richtig: "es ist zehn minuten nach halb zwölf"
>>
>> Das ist aber nur eine falsche Auswahl des Wortes "zehn" und ein ganz
>> anderer Fehler.
>
> Diesen Fehler konnte ich in der .accdb nicht finden - die Ursache liegt
> wahrscheinlich wo anders.

Ich habe eben

                  http://uclock.de

auf die aktuellen Tabellen umgestellt... sieht sehr gut aus!

Der oben genannten Fehler, der noch offen war:

    http://uclock.de/?x=6&h=11&m=40

ist nun auch verschwunden. Absolut korrekt!

Gute Arbeit, danke!

von Joachim B. (jar)


Lesenswert?

Frank M. schrieb:
> Als 3,3-Spannungsversorgung benutze ich sowieso schon einen
> Schaltregler, nämlich diesen an 5V:
> Nachteil: Das Ding ist sauteuer.

ich nehme immer diese, etwas günstiger auch weil ich 10% Rabatt bekomme
http://www.conrad.de/ce/de/product/154481/DCDC-Wandler-Print-Recom-International-R-7833-05-33-VDC-05-A-16-W-Anzahl-Ausgaenge-1-x

ABER, hinter meinem USB und der Schottky Diode zur Entkopplung von der 
USB Versorgung stehen nur noch 4,4V an, das langt dicke für den MC mit 
16MHz (brown out auf 2,7V gesetzt) aber für den Schaltregler reichts 
nicht mehr, der will 4,75V als minimum und solange der LDO mit enable 
nicht vorhanden ist quäle ich einen LE33CZ (der nur bis 150mA 
spezifiziert ist), bis jetzt lebt er.

Frank M. schrieb:
> Der CH_PD am ESP8266 hat denselben Effek. Damit fährst Du das Ding
> runter und es verbraucht kaum noch Strom.

oh toll kann ich gleich mal probieren, wusste ich noch nicht, aber wenn 
der ESP sich aufhängt nutzt das nix deswegen denke ich weiter an power 
off per LDO mit power enable

Torsten C. schrieb:
> Ich hatte weiter oben drei Bucks vorgestellt, unter 1€ / Stück.
Frank M. schrieb:
> Wie gesagt: Für meine Ansprüche zu groß: So ein Viech für ein ESP8266?

billig ja, aber mir auch zu fett!

so nun den 2ten ESP umgebaut, mit pullups und Ableitdioden Schottky nach 
VCC, damit genügt ein Serienwiderstand an Rx und Tx 330 Ohm bis 470 Ohm 
um das direkt an 5V Chips zu betreiben, läuft bei mir schon Jahre und 
ist auch bidirektional für I2C

mit dem NTP tue ich mich noch schwer, Verbindung zum NTP bekomme ich, 
muss vermutlich noch bei mir das NTP package 48 Byte oder Bit? 
aufbereiten.

Nach dem NTP connect und den get ist der ESP nur noch busy .......

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Joachim B. schrieb:
> oh toll kann ich gleich mal probieren, wusste ich noch nicht, aber wenn
> der ESP sich aufhängt nutzt das nix deswegen denke ich weiter an power
> off per LDO mit power enable

Wie ich oben bereits geschrieben habe: Ab Version 0.9 der STM32-Software 
hängt CH_PD und RST an einem GPIO. Wenn der ESP hängt, dann droppe ich 
einfach RST und schon läuft der wieder sauber.

> mit dem NTP tue ich mich noch schwer, Verbindung zum NTP bekomme ich,
> muss vermutlich noch bei mir das NTP package 48 Byte oder Bit?
> aufbereiten.

Connect über UDP hast Du, aber hast Du auch eine Antwort über 
"+IPD"-Output?

Es sind 48 Byte, nicht bit.

> Nach dem NTP connect und den get ist der ESP nur noch busy .......

Ich sag doch, dass der ESP bzgl. UDP sch... ist. Glaubt mir ja keiner. 
Auswege habe ich oben beschrieben.

: Bearbeitet durch Moderator
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Frank M. schrieb:
> Wie ich oben bereits geschrieben habe: Ab Version 0.9 der STM32-Software
> hängt CH_PD und RST an einem GPIO.

Ich glaube er meint: Man braucht ja nicht beides: 'Reset' und 'Enable', 
denn 'Enable' allein würde ja genügen. Das spart einen GPIO.

Das hatte ich oben auch bereits geschrieben. ;-)

von Joachim B. (jar)


Lesenswert?

Frank M. schrieb:
> Ich sag doch, dass der ESP bzgl. UDP sch... ist. Glaubt mir ja keiner.

warum kenne ich das nur, mir glaubt auch immer keiner ;-)

und das der ESP zickig ist kann man überall lesen

Frank M. schrieb:
> Auswege habe ich oben beschrieben.

kannst noch mal Link geben bitte?

Frank M. schrieb:
> Connect über UDP hast Du, aber hast Du auch eine Antwort über
> "+IPD"-Output?

? irgendwas kommt aber ich verstehe es noch nicht

Frank M. schrieb:
> Es sind 48 Byte, nicht bit.

OK kann ich forschen oder du gibst mir deinen Ausweg Link

ich grübel gerade ob ich statt LDO mit Enable bis ich den habe nicht mit 
einem Port und OC Trasi den LE33CZ auf GND ziehe, der LE33CZ sollte ja 
Kurzschlußfest sein.

>Internal current and thermal limit :-)

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Joachim B. schrieb:
> Frank M. schrieb:
>> Auswege habe ich oben beschrieben.
>
> kannst noch mal Link geben bitte?

Boah, ist von vorgestern und war eine Antwort auf Dein Posting!
Und ich hab mir sooo viel Mühe gegeben! ;-)

  Beitrag "Re: Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?"

> Frank M. schrieb:
>> Es sind 48 Byte, nicht bit.
>
> OK kann ich forschen oder du gibst mir deinen Ausweg Link

Ausweg: 4 Byte statt 48 Byte, TCP statt UDP, TIME statt NTP, PORT 37 
statt 123, RFC868 statt RFC4330.

Simpler gehts nicht. Lies einfach meine obige Antwort.

EDIT:
Hast Du bei Deinen Versuchen mit NTP über UDP auch einen lokalen Port 
angegeben, damit Dir der NTP-Server überhaupt antworten kann?

: Bearbeitet durch Moderator
von Joachim B. (jar)


Lesenswert?

Frank M. schrieb:
> und war eine Antwort auf Dein Posting!
> Und ich hab mir sooo viel Mühe gegeben! ;-)

glaub ich dir, nur bin ich zu doof?

Frank M. schrieb:
> Lies einfach meine obige Antwort.

lese ich, kommt mir vor wie eine Schnitzeljagt.....

ich folge dem Link:

Beitrag "Re: Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?"

und lese:

"Mir ist die Firmware mittlerweile egal, denn ich greife auf den
Timeserver nicht mit UDP zu, sondern mit TCP. Dann kann ich zwar keinen
waschechten NTP-Timeserver ansprechen, aber es gibt ja noch ein paar
tausend Timeserver auf der Welt, die auch nach RFC 868 arbeiten. Das
Protokoll ist viel einfacher als NTP."

klasse, muss ich die alle einzeln anwählen oder wenn einer nicht on ist 
wird dann weitergeleitet?

"Im Artikel habe ich ein paar Timeserver im Internet angegeben, die das
unterstützen - auch die deutsche PTB."

klar die hat soweit mir bekannt 3 Server 1 2 und 3 und wieder die Frage:
klasse, muss ich die alle einzeln anwählen

oder muss ich eine dns Namensauflösung machen um von
Name
ptbtime1.ptb.de
ptbtime2.ptb.de
ptbtime3.ptb.de
auf die IP zu kommen?

"Warum hast Du Dir meine timeserver.c + esp8266.c noch nicht 
angeschaut?"

müsste ich erst mal wiederfinden, du arbeitest ja auch ständig an deinen 
Files, welches gilt und ist aktuell?

und es ist immer etwas schwierig dich in deinem Code zurechtzufinden mit 
den ganzen #ifdef AVR STM PC da werde ich etwas ramdösig im Kopp......

deswegen:

kommt mir vor wie eine Schnitzeljagt.....



auch wenn du dir viel Mühe mit mir gibst

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Ja, aus China. Da würde ich erstmal jedesmal, wenn ich die Wohnung
> verlasse, die Uhr ausstöpseln.

Nachdem die Uhr ja ohnehin schon zu einer Art "eierlegender 
Wollmilchsau" mutiert, könnte man doch vielleicht auch gleich eine 
Brandmeldeanlage einbauen?

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Nachdem die Uhr ja ohnehin schon zu einer Art "eierlegender
> Wollmilchsau" mutiert, könnte man doch vielleicht auch gleich eine
> Brandmeldeanlage einbauen?

Der Temperatur-Sensor in der DS3231-RTC würde dafür jedenfalls taugen. 
;-)

Zu einer genaueren Anzeige einer Raumtemperatur ist er auf jeden Fall 
eher weniger zu gebrauchen.

von Herbert P. (herb3472)


Lesenswert?

Bei RS-Components gibts den TSR 1-2433 Schaltregler ab 5 Stück um € 6,75 
- das ist das preisgünstigste Angebot, das ich im deutschsprachigen Raum 
gefunden habe (Conrad, Pollin, Reichelt, TME, Watterott).

Allerdings ist der Preis möglicherweise ohne MwSt., darüber konnte ich 
auf der Seite keine Angaben finden. Ist aber immer noch um ein paar Cent 
günstiger als bei Reichelt und den anderen.

http://de.rs-online.com/web/p/schaltregler/6664360/?searchTerm=TSR+1-2433&relevancy-data=636F3D3126696E3D4931384E4272616E644D504E266C753D6465266D6D3D6D61746368616C6C26706D3D5E5B5C707B4C7D5C707B4E647D5C707B5A737D2D2C2F255C2E5D2B2426706F3D3526736E3D592673743D4B4559574F52445F4D554C54495F414C5048415F4E554D455249432677633D4E4F4E45267573743D54535220312D3234333326

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

Herbert P. schrieb:
> Bei RS-Components gibts den TSR 1-2433 Schaltregler ab 5 Stück um € 6,75

ohne MwSt

da kannst gleich zu Conrad gehen, aber die sind beide gleich und 
arbeiten ab 4,75V was ja nicht an jedem Netzteil sicher ist, OK bei den 
5V Netzteilen die wir für WS2812b nutzen wollen sollte genug Strom und V 
anliegen........

aber trotzdem denke ich das Entkopplungsdioden zur Proggerschnitte Sinn 
haben und dann werden aus 5,1V schnell mal 4,65V oder weniger.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Joachim B. schrieb:
> klasse, muss ich die alle einzeln anwählen oder wenn einer nicht on ist
> wird dann weitergeleitet?

Such Dir einfach einen raus. Zum Beispiel uclock.de, also 88.198.64.6. 
Der läuft immer und ist gut erreichbar.

> klar die hat soweit mir bekannt 3 Server 1 2 und 3 und wieder die Frage:
> klasse, muss ich die alle einzeln anwählen

Ja. Aber einer reicht.

> oder muss ich eine dns Namensauflösung machen um von
> Name
> ptbtime1.ptb.de
> ptbtime2.ptb.de
> ptbtime3.ptb.de
> auf die IP zu kommen?

gib an deinem PC "ping uclock.de" ein und schreib Dir die IP ab. Nimm 
die IP für den ESP.

ptbtime1 und ptbtime2 kannst Du mal direkt vergessen. Die machen nur 
NTP, kein TIME. ptbtime3 kanns aber. Und die ganzen amerikanischen 
Server, die in der Liste stehen, sowieso fast alle.

> "Warum hast Du Dir meine timeserver.c + esp8266.c noch nicht
> angeschaut?"
>
> müsste ich erst mal wiederfinden, du arbeitest ja auch ständig an deinen
> Files, welches gilt und ist aktuell?

Die Datei im Artikel WordClock24h ist immer aktuell. Mittlerweile 
1.0.

> und es ist immer etwas schwierig dich in deinem Code zurechtzufinden mit
> den ganzen #ifdef AVR STM PC da werde ich etwas ramdösig im Kopp......

In timeserver.c und esp8266.c ist kein bzw. nur ein einziger #ifdef 
drin! Die vielen #ifdefs gibt es nur im IRMP- und MCURSES-Source, weil 
dieser auf AVR, XMC, PIC, Z80, Unix, Linux, Windows und auch auf STM32 
läuft. Dann gibt's nochmal ganz viele im IRMP, damit man die 40 
untertützen IR-Protokolle alle einzeln aus- und anknipsen kann, um 
AVR-Speicher zu sparen.

Aber deswegen kannst Du doch nicht generell sagen, dass man in meinen 
Sourcen vor lauter #ifdefs den Wald vor lauter Bäumen nicht sieht!

timeserver.c würde sofort auch auf einem AVR laufen, esp8266.c auch, 
wenn man die entsprechenden UART-Funktionen bereitstellt. Aber das 
schrieb ich schon. Vielleicht braucht man da gerade mal ein #ifdef, um 
die richtigen AVR-Includes zu ziehen.

> deswegen:
>
> kommt mir vor wie eine Schnitzeljagt.....

Joachim, manchmal reicht es nicht, sich irgendwo Code zusammenzuklauben, 
ohne das Thema zu verstehen. Manchmal muss man sich auch mal mit der 
Materie beschäftigen. Ich bin mir sicher, dass Du bis heute noch keinen 
blassen Schimmer hast, was in den 48 Bytes eines NTP-Servers und was in 
den 4 Byte eines TIME-Servers an Informationen stehen. Ich glaube auch, 
dass es dir scheißegal ist, was da drin steht. Hauptsache, Du findest 
irgendwo im Netz eine Funktion, die die richtigen 4 Byte aus den 48 
Bytes herausfischt. Ja, das NTP ist einfach einen Übermenge vom 
Time-Protokoll. Auch hier sind nur 4 Byte relevant. Diese sind vom 
Inhalt identisch.

Als nächstes wirst Du Dich dann fragen, was Du mit den 4 Bytes machen 
sollst. Aber kein Problem: Dank Internet findest Du eine Funktion, die 
Dir die 4 Bytes in einen Unix-/Zeitstempel umwandeln. Dann brauchst Du 
eine Funktion, die aus dem Zeitstempel ein Datum und eine Uhrzeit 
generieren. Tja, die gibt es schon auf dem STM32, beim AVR musst Du Dir 
die wahrscheinlich auch irgendwo aus dem Netz saugen - Stichwort 
localtime(). Dann wirst Du feststellen, dass Du Dir den 
localtime()-Ersatz von einem besch.... Ami-Server gezogen hast, die sich 
um europäische Sommerzeit einen Dreck scheren und Dir im Sommer eine 
Stunde fehlt. Also wirst Du Dich wieder auf die Suche machen, um die 
Regeln herauszufinden, wann die Sommerzeit umgestellt wird. Achnee, 
Regeln sind egal, es reicht 'ne C-Funktion, die das macht!

Bis Du damit durch bist, hast Du das auch selber programmiert - oder 
hast versucht, meinen Source zu verstehen.

Manchmal ist der Weg, erstmal ohne Hintergrundwissen drauflos zu 
kopieren, der falsche.

> auch wenn du dir viel Mühe mit mir gibst

Ich habe timeserver.c und esp8266.c bewusst portabel gehalten, weil ich 
mir schon dachte, dass diese beiden Sources durchaus auch einen gewissen 
Wert für andere Projekte auf anderen µCs haben kann.

P.S.
listener.c wäre noch interessant. Dann kannst Du Deine Uhr auch noch 
über eine App fernsteuern.

: Bearbeitet durch Moderator
von Thomas S. (thomas-st)


Lesenswert?

Frank M. schrieb:
> Ich habe eben
>
>                   http://uclock.de
>
> auf die aktuellen Tabellen umgestellt... sieht sehr gut aus!

In den Modes 0-3 leuchtet das "IST" nicht:
z.B.: http://uclock.de/?x=0&h=16&m=47
Anzeige: ES VIER UHR SIEBEN UND VIERZIG
Soll: ES IST VIER UHR SIEBEN UND VIERZIG

Viele Grüße,
Thomas

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Joachim B. schrieb:
> kommt mir vor wie eine Schnitzeljagt.....

Wenn Du möchtest, portiere ich esp8266.c, timeserver.c und listener.c 
direkt auf ATmega - aber ohne Arduino-Lib. Ich brauche dafür ca. eine 
halbe Stunde, mehr nicht. Das mcurses-Zeug schmeiße ich meinetwegen auch 
noch raus, damit ich da bloß kein #ifdef für AVR ohne MCURSES einbauen 
muss. ;-)

Sag mir einfach Bescheid.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Der Source des STM32-Projekts ist nun auch im SVN von 
mikrocontroller.net.

Browser Link:

  http://www.mikrocontroller.net/svnbrowser/wordclock24h/

Da kann man direkt per Bowser in den Sources schnüffeln gehen 
(Unterverzeichnis "src/") oder auch direkt über den Link links unten 
"Download GNU tarball" das ganze Verzeichnis als wordclock24h.tar.gz 
herunterladen.

Den Download-Link setze ich auch noch in den Artikel.

von Joachim B. (jar)


Lesenswert?

Frank M. schrieb:
> Joachim, manchmal reicht es nicht, sich irgendwo Code zusammenzuklauben,
> ohne das Thema zu verstehen. Manchmal muss man sich auch mal mit der
> Materie beschäftigen.

hatte ich schon mal am NETIO von Pollin

Frank M. schrieb:
> Als nächstes wirst Du Dich dann fragen, was Du mit den 4 Bytes machen
> sollst. Aber kein Problem: Dank Internet findest Du eine Funktion, die
> Dir die 4 Bytes in einen Unix-/Zeitstempel umwandeln.

auch das

Frank M. schrieb:
> Manchmal ist der Weg, erstmal ohne Hintergrundwissen drauflos zu
> kopieren, der falsche.

aber für mich effektiv, alles muss ich nicht verstehen, wenn ich das was 
ich brauche habe reichts mir, ich muss nicht jedesmal das Rad neu 
erfinden, OK bei der DCF77 habe ich es schon mal nachempfunden ohne 
parity Prüfung glaube ich, sogar selbstlernend mit verkürzten Impulsen 
weil die auf langer Leitung verschliffen waren, aber so kurz und knackig 
wie Dannegger das gemacht hat war meins nicht, ist doch auch wurscht, 
ich weiss wie es geht und ich muss nicht jedem Proggergenie hier 
Konkurenz machen

Frank M. schrieb:
> Wenn Du möchtest, portiere ich esp8266.c, timeserver.c und listener.c
> direkt auf ATmega - aber ohne Arduino-Lib. Ich brauche dafür ca. eine
> halbe Stunde, mehr nicht. Das mcurses-Zeug schmeiße ich meinetwegen auch
> noch raus, damit ich da bloß kein #ifdef für AVR ohne MCURSES einbauen
> muss. ;-)
>
> Sag mir einfach Bescheid.

ich schau mal wie weit ich komme.....

von Herbert P. (herb3472)


Lesenswert?

Betrifft: 16 x 16 Matrix

Hab grad über die 16 x 16 Matrix drübergerichtet, sind noch einige 
kleine Fehler drin. Mit der letzten Zeile bin ich unzufrieden, da könnte 
man noch was reinpacken (ebenfalls "GRAD"?):

MINUTEN...##UHR#

@Torsten:

Du hast doch auch einnmal von einer Matrix mit 20 x 20 mm 
Buchstabenabstand gesprochen, habe ich das richtig in Erinnerung? Da 
wäre doch die 16 x 16 Matrix das Richtige, die hat einen 
Buchstabenabstand von 20x20mm und ein Außenmaß von 32 x 32 cm.

Insgesamt erscheint mir die Platzaufteilung bei der 16 x 16 Matrix 
optisch eigentlich ansprechender als bei der 18 x 16 Matrix, weil die 
Buchstaben ein wenig größer sein dürfen und auch weiter auseinander 
liegen. Die Lesbarkeit ist dadurch meines Erachtens besser.

von Herbert P. (herb3472)


Lesenswert?

Bitte die 16 x 16 Daten noch nicht bearbeiten, bin grad dabei, einige 
Fehler auszumerzen, die ich aufgefunden habe. Gebe Bescheid, wenn's 
soweit ist.

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Du hast doch auch einnmal von einer Matrix mit 20 x 20 mm
> Buchstabenabstand gesprochen, habe ich das richtig in Erinnerung?

Ja, das hast Du. Davon braucht man 2 Stück, denn die haben 32x16 LEDs im 
10mm-Pitch. Ich habe davon nur eine hier, aber vier mit 6mm-Ptich (12mm 
Buchstabenabstand). Elekrisch sind alle gleich (1/8-Scan), daher kann 
ich die STM32F411-SW damit fertig machen.

Wenn es soweit ist, lege ich sie auch im SVN ab, danke Frank! :-)

Soll ich den Link auf meinen Beitrag in diesem Thread dazu heraussuchen, 
oder finds man den auch so? ;-) :-p

von Herbert P. (herb3472)


Lesenswert?

Torsten C. schrieb:
> Soll ich den Link auf meinen Beitrag in diesem Thread dazu heraussuchen,
> oder finds man den auch so? ;-) :-p

Joachim und ich haben jeweils zwei Matten WS2812 LEDs mit 16 x 8 Matrix 
und 20mm Pitch liegen, die 16 x 16 Vorlage ist dafür gedacht.

Ich bin grad beim Bearbeiten der .accdb für 16 x 16 und habe 
festgestellt, dass ich für die GRAD-Anzeige in der 18 x 16 Datenbank 
keinen Mode definiert habe. Die .accdb Tabellen werden also in beiden 
Varianten (16 x 16 und 18 x 16) noch eine zusätzliche Betriebsart 
"Temperaturanzeige" erhalten müssen. Welchen Zahlenbereich soll die 
Temperaturanzeige enthalten? Von NULL bis VIERZIG, oder ist das zuviel?

Ich denke mir, ich werde halb-Grad-Schritte machen, oder genügen ganze 
Grad-Schritte?

Außerdem brauche ich das Wort "HAT" für die Anzeige "ES HAT NN GRAD", 
das ist bisher noch nicht vorhanden. In der 18 x 16 kann ich es statt 
des nicht benötigten Wortes "BIS" in Zeile 7 einfügen, in der 16 x 16 
Matrix wird es vermutlich keinen Platz mehr haben (soweit bin ich noch 
nicht).

: Bearbeitet durch User
von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Thomas St. schrieb:
> In den Modes 0-3 leuchtet das "IST" nicht:
> z.B.: http://uclock.de/?x=0&h=16&m=47
> Anzeige: ES VIER UHR SIEBEN UND VIERZIG
> Soll: ES IST VIER UHR SIEBEN UND VIERZIG

Danke für die Aufmerksamkeit :-)

Ich habe gerade mal in tables.h nachgeschaut und den Fehler gefunden:

Falsch:
1
{ // tbl_hours[5][] = Mode 6 ES IST HH UHR (12)
2
{WP_ES, WP_ZWOELF_1, WP_UHR_1}, // 0. Stunde in Mode HM_6 = 5
3
...

Richtig wäre:
1
{ // tbl_hours[5][] = Mode 6 ES IST HH UHR (12)
2
{WP_ES, WP_IST, WP_ZWOELF_1, WP_UHR_1}, // 0. Stunde in Mode HM_6 = 5
3
...

Dasselbe gilt für HM_7
1
{ // tbl_hours[6][] = Mode 7 ES IST HH UHR (24)
2
{WP_ES, WP_NULL_1, WP_UHR_1}, // 0. Stunde in Mode HM_7 = 6

Auch hier fehlt das WP_ES in den nächsten 24 Stunden.

@Torsten und Herbert:

Entweder ist in der DB etwas falsch oder im Generator.

Frage: Warum ist WP_ES und WP_IST eigentlich zusätzlich nochmal in 
einigen tbl_minutes[] gesetzt? Reicht es nicht, diese gundsätzlich in 
den tbl_hours[] zu setzen?

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> "ES HAT NN GRAD", das ist bisher noch nicht vorhanden.

Sorry, falls dadurch schon wieder 'ne neue Diskussion los geht, aber 
"HAT" sagt bei uns kein Mensch!

"Es ist ... Grad" geht doch auch, oder? Dann wäre "HAT" nur optional in 
einem separaten Mode.

> Von NULL bis VIERZIG, oder ist das zuviel?

Ich nehme an, Du nimmst nur die Minuten als Index, also keinen 
Stunden-Mode, damit wäre 0..59 möglich, aber ca. 10..35° würden aus 
meiner Sicht reichen.

Dadurch gibt es evt. einen Stunden-Mode "0", oder?

Falls sicher ist, dass die Buchstaben-Anordnung nicht geändert werden 
müsste, würden vielleicht auch erstmal 18..25° reichen.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Ich denke mir, ich werde halb-Grad-Schritte machen, oder genügen ganze
> Grad-Schritte?

Ganze reichen. Übertreib es bloß nicht.

> Außerdem brauche ich das Wort "HAT" für die Anzeige "ES HAT NN GRAD",

Was ist das für ein Deutsch? Ich habe noch nie in den Nachrichten 
gehört:

       ES HAT ZWANZIG GRAD

Entweder:

       ES IST ZWANZIG GRAD
oder
       ES SIND ZWANZIG GRAD
oder
       WIR HABEN ZWANZIG GRAD
oder
       ZWANZIG GRAD

Da wir kein Platz für "SIND" bzw. "WIR HABEN" plädiere ich für die 
einfachste Lösung:

       ES IST ZWANZIG GRAD
oder
       ZWANZIG GRAD


aber niemals "ES HAT ZWANZIG GRAD". Das gibt es nicht.

: Bearbeitet durch Moderator
von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

@Torsten

Da sich unsere Posts überschnitten haben, weiß ich nicht, ob Dir

   Beitrag "Re: Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?"

aufgefallen ist. Fehler in tables.h.

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Frage: Warum ist WP_ES und WP_IST eigentlich zusätzlich nochmal in
> einigen tbl_minutes[] gesetzt? Reicht es nicht, diese gundsätzlich in
> den tbl_hours[] zu setzen?

Es gibt ja zwei grundsätzlich voneinander verschiedene Anzeigeformen:


einmal werden die Stunden zuerst genannt, dann kommen die Minuten:

ES IST HH UHR  -  UND MM MINUTEN

Da ist das "ES IST" Teil des Stunden-Strings.


Bei der anderen Anzeigeform sind die Stunden den Minuten nachgereiht:

ES IST MM MINUTEN NACH - HH UHR

Da ist "ES IST" Teil des Minutenstrings.


Ich habe das benötigt, um mit der Access-Datenbank überhaupt einmal eine 
übersichtliche Struktur schaffen zu können. Natürlich spricht nichts 
dagegen, das dann softwaremäßig anders umzusetzen, wenn es Sinn macht.

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Da wir kein Platz für "SIND" bzw. "WIR HABEN" plädiere ich für die
> einfachste Lösung:
>
>        ES IST ZWANZIG GRAD
> oder
>        ZWANZIG GRAD
>
> aber niemals "ES HAT ZWANZIG GRAD". Das gibt es nicht.

Sorry, aber In Österreich ist "ES HAT ZWANZIG GRAD" üblich, da sagt 
niemand "ES IST ZWANZIG GRAD". Aber mir ist es auch lieber, wenn wir da 
nicht herumklamüsern müssen und es bei "NN GRAD" belassen - zumal das ja 
eine Funktion ist, die wohl kaum verwendet werden wird. Trotzdem werde 
ich das "HAT", das ich auf der 18 x 16 Frontplatte an Stelle des nicht 
verwendeten "BIS" bereits eingefügt habe, so belassen. Es stört nicht 
und muss ja nicht verwendet werden.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Es gibt ja zwei grundsätzlich voneinander verschiedene Anzeigeformen:
> [...]
> einmal werden die Stunden zuerst genannt, dann kommen die Minuten:
> [...]
> Bei der anderen Anzeigeform sind die Stunden den Minuten nachgereiht:

Danke für die Erklärung. Kannst Du prüfen, ob das Wort "IST" für HM_6 
und HM_7 in der Datenbank fehlt? Ich kann mir kaum vorstellen, dass 
lediglich genau da Torstens Generator streikt.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Sorry, aber In Österreich ist "ES HAT ZWANZIG GRAD" üblich,

Sorry. Du kommst aus Österreich? Interessante Variante ;-)

> Aber mir ist es auch lieber, wenn wir da
> nicht herumklamüsern müssen und es bei "NN GRAD" belassen

Gut. Ich würde da auch nicht sooo viel Arbeit reinstecken. Die 
Temperatur-Anzeige ist für mich lediglich ein nettes Gimmick.

> eine Funktion ist, die wohl kaum verwendet werden wird. Trotzdem werde
> ich das "HAT", das ich auf der 18 x 16 Frontplatte an Stelle des nicht
> verwendeten "BIS" bereits eingefügt habe, so belassen.

Okay. Spricht ja nichts dagegen.

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Herbert P. schrieb:
>> Es gibt ja zwei grundsätzlich voneinander verschiedene Anzeigeformen:
>> [...]
>> einmal werden die Stunden zuerst genannt, dann kommen die Minuten:
>> [...]
>> Bei der anderen Anzeigeform sind die Stunden den Minuten nachgereiht:
>
> Danke für die Erklärung. Kannst Du prüfen, ob das Wort "IST" für HM_6
> und HM_7 in der Datenbank fehlt? Ich kann mir kaum vorstellen, dass
> lediglich genau da Torstens Generator streikt.

Schau' ich mir gleich an, geb in ein paar Minuten Bescheid!

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Frank M. schrieb:
> Entweder ist in der DB etwas falsch oder im Generator.

Die DB ist OK, ich schaue am WE nach, wenn ich die neue tables.h + 
tables.c ohne display.h mache. Komischer Fehler. Mal geht´s mal nicht?

BTW: Macht mit  der Temperatur wegen mir kein Fass auf.

Auch ich plädiere ich für die einfachste Lösung:

Frank M. schrieb:
>        ES IST ZWANZIG GRAD
> oder
>        ZWANZIG GRAD

Allerdings - falls es die Buchstabenmatrix her gibt - würde ich schon 
die Möglichkeit für halbe Grad bevorzugen. Das Teil wird richtig teuer 
und darf gerne angemessen genau sein. Lieber kalibriere ich ein 
Billig-Thermometer nach der WC24h als umgekehrt.

SW kostet kein Geld und ein DS18B20 oder DHT22 auch nicht. Klar, muss 
der Sensor irgendwo sein, wo er genau messen  kann. Aber um später per 
SW-Änderung z.B. über den ESP die genaue Temperatur von einer geeigneten 
Stelle zu besorgen, sollte die Option "halbe Grad" möglichst offen 
bleiben.

Ich weiss nicht, ob ich Gespenster sehe: Wenn wir den Minuten-Modus 
nehmen hätten wir von 0..59 dreißig Grad in ½-Grad-Schriten, also z.B. 
7° .. 36,5°. Oder wie ist das gedacht?

Die Einheit Fahrenheit brauchen wir ja zum Glück nicht, da ist man sich 
zwischen Ossis, Wessis, Schwaben usw. ja zum Glück einig.

Ich will keine bunt blinkende Wortuhr, es soll schon schlicht bleiben. 
Aber die Temperatur finde ich trotzdem interessant, weil sich sonst 
womöglich 59 Sekunden lang gar nix auf der Anzeige tut.

: Bearbeitet durch User
von Herbert P. (herb3472)


Lesenswert?

Ich hab die tbl_hours und tbl_minutes komplett durchgeschaut, es gibt 
keinen einzigen Eintrag, bei dem nach dem "ES" das "IST" fehlt.

Torsten C. schrieb:
> Ich weiss nicht, ob ich Gespenster sehe: Wenn wir den Minuten-Modus
> nehmen hätten wir von 0..59 dreißig Grad in ½-Grad-Schriten, z.B. 7° ..
> 36,5°.

Damit ich Dich richtig verstehe:

Ich ergänze die Minutentabelle um einen Modus "Temperatur", der geht von

SIEBEN GRAD
SIEBEN EIN HALB GRAD
ACHT GRAD
ACHT EIN HALB GRAD
.
.
.
SECHS UND DREISSIG GRAD
SECHS UND DREISSIG EIN HALB GRAD

Ist das so gedacht?

Da die Uhr ja kaum für draussen gedacht ist, würde da ja auch 10° bis 
maximal 30° genügen, denke ich? (Is aber wurscht, kann auch von 7 bis 
36,5 Grad gehen)

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Torsten C. schrieb:
> Aber die Temperatur finde ich trotzdem interessant, weil sich sonst
> womöglich 59 Sekunden lang gar nix auf der Anzeige tut.

58,5 Sekunden ;-)

Ich habe mittlerweile ein paar Animationen im Source:

Fading (wie bisher):
  Überblendung von den alten auf die neuen Wörter.

Scroll:
  Der neue Text wird bei Wechsel von unten/rechts/oben/link
  reingerollt, dabei rollt der alte Text nach draußen.

Explosion:
  Die alten Wörter wandern nach außen zu den jeweils nächstgelegenden
  Ecken, die neuen Wörter entstehen zeitgleich in der Mitte und
  wandern von dort nach außen auf den richtigen Platz.

Das ganze dauert etwas mehr als 0.5 Sekunden.

Die Animationen sind natürlich konfigurierbar:

  - keine Animation
  - Fading, wie bisher
  - Scroll
  - Explosion
  - Random: Die Animation wird per Zufall ausgewählt.

Kommt im nächsten Release. Dauert aber noch etwas, ich möchte erst noch 
weitere Animationen einbauen. Hab da noch ein paar Ideen...

: Bearbeitet durch Moderator
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Ist das so gedacht?

Gefällt mir.

Herbert P. schrieb:
> Is aber wurscht

Mir auch. ;-) Den "Offset" können wir ja damit nun festlegen.

Frank M. schrieb:
> Explosion

Hmmm, da laufen unsere Programme gerade auseinander. Ich bin da nämlich 
mit Android und Screen-Modulen etwas anders unterwegs, mit 
"Hintergrund-Grafik", siehe 
Beitrag "Re: Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?"

Aber um "Branches mergen" kommen wir wohl nicht drum rum, befürchte ich. 
Oder es bleiben halt 2 getrennte Programme, ggf. mit gemeinsam genutzten 
Bibliotheken ('device-driver'). Du bist inzwischen viel weiter als ich, 
und wenn ich Deinen Code auf 32x32 Pixel Hintergrund umstellen wollte, 
würde das m.E. eine komplette Umstellung erfordern.

von Herbert P. (herb3472)


Lesenswert?

Wenn Ihr schon so auf Animationen abfahrt, warum nicht einmal was 
"Art-iges" in der Art als Ergänzung zur Uhr als Deko überlegen (anderes 
Projekt)?

https://www.youtube.com/watch?v=G5BicYkAaUc

https://www.youtube.com/watch?v=lL79RO-Tm0s

In Natura super geil, aber sauteuer - ca. € 500,-?

von Herbert P. (herb3472)


Lesenswert?

Ich mach die Temperaturtabelle in der tbl_minutes von 0 Grad aufwärts 
bis 40 Grad. Ist das ok so? Dann kann mans als Kühlschrankthermometer 
und zum Fiebermessen auch nehmen ;-)

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Ich mach die Temperaturtabelle in der tbl_minutes von 0 Grad aufwärts
> bis 40 Grad. Ist das ok so? Dann kann mans als Kühlschrankthermometer
> und zum Fiebermessen auch nehmen ;-)

Klar, wir müssen dafür ja nicht die Uhr in den Kühlschrank legen. Ein 
kleiner µC mit ESP8266, der die Temperatur zur Uhr überträgt, geht doch 
auch.

von Herbert P. (herb3472)


Lesenswert?

Ist es softwaremäßig von Vorteil, wenn der Index mit der jeweiligen 
Temperatur korreliert?

z.B:

000 NULL GRAD
005 NULL EIN HALB GRAD (klingt net gut, geht aber net anders)

010 EIN GRAD
015 EIN EIN HALB GRAD

170 SIEB ZEHN GRAD
175 SIEB ZEHN EIN HALB GRAD

240 VIER UND ZWANZIG GRAD
245 VIER UND ZWANZIG EIN HALB GRAD

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Ist es softwaremäßig von Vorteil, wenn der Index mit der jeweiligen
> Temperatur korreliert?

Nein, wird sowieso über einen Array-Zugriff herauslaufen. Ob da jetzt 
ein Offset drauf ist oder nicht, spielt nicht die Geige.

von Herbert P. (herb3472)


Lesenswert?

Wenn ich in der tbl_words die LEDs 1 - 4 durch "GRAD" ersetze, werden 3 
Wort-Indizes für LED_2 bis LED_4 wegfallen. Soll ich die durch Dummies 
ersetzen oder den Index für das letzte Wort danach ("MITTAGS") nach 
vorne verschieben?

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Wenn ich in der tbl_words die LEDs 1 - 4 durch "GRAD" ersetze, werden 3
> Wort-Indizes für LED_2 bis LED_4 wegfallen. Soll ich die durch Dummies
> ersetzen oder den Index für das letzte Wort danach ("MITTAGS") nach
> vorne verschieben?

Schließe die Lücken bitte. Sonst haben wir irgendwann nur noch 
Dummy-Leichen.

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Schließe die Lücken bitte. Sonst haben wir irgendwann nur noch
> Dummy-Leichen.

Oki.

Die Temperatur-Indizes würde ich gern von 0 bis 400 in 5-er Schritten 
laufen lassen, damit ich beim Erstellen einen Bezug zur Temperatur habe 
(400 = "VIERZIG GRAD"). Allerdings müsste ich dann den Variablentyp von 
Byte auf Integer ändern. Macht's was?

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Frank M. schrieb:
> Schließe die Lücken bitte. Sonst haben wir irgendwann nur noch
> Dummy-Leichen.

Das kann auch der Codegen, bzw. macht er das eh schon, wegen der Lücken 
in den Modes. Du brauchst Dir keine Arbeit und keinen Kopf um Lücken 
machen!

Herbert P. schrieb:
> Die Temperatur-Indizes würde ich gern von 0 bis 400 in 5-er Schritten
> laufen lassen

OK, da sind ja dann auch solche Lücken drin, macht aber nix, siehe oben! 
Das wird dann so:
1
enum {
2
  grad_70, // 7.0° = 0
3
  grad_75, // 7.5° = 1
4
  grad_80, // 8.0° = 2
5
  grad_85, // 8.5° = 3
6
  ...
7
}

… oder so ähnlich, mir egal.

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

Herbert P. schrieb:
> Ergänzung zur Uhr als Deko überlegen (anderes
> Projekt)?
>
> Youtube-Video "My New Flame di Ingo Maurier"
>
> Youtube-Video "Ingo Maurer @ Spazio Krizia 2013"

hatten wir schon, aber nett anzusehen ......

so reset vom ESP per Arduino klappt schon mal, ich ziehe den LE33CZ 3,3V 
Ausgang per Collector einfach mit einem OC Transistor BC335 und pulldown 
R 1k an der Basis auf GND, der LE33CZ ist strombegrenzt und der BC337 
kann 800mA.

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Ich hab die tbl_hours und tbl_minutes komplett durchgeschaut, es gibt
> keinen einzigen Eintrag, bei dem nach dem "ES" das "IST" fehlt.

Hatte ich ja auch schon geschrieben,^^ ging "über Kreuz", egal, nun ist 
es doppelt geprüft. ;-)

Hier der Fehler:
1
if (Data.ColumnExists(reader, "hour_ix_0")) this.AddWord(hour_mode, reader["hour_ix_0"]);
2
if (Data.ColumnExists(reader, "hour_ix_2")) this.AddWord(hour_mode, reader["hour_ix_1"]); // Fehler 2 -> 1
3
if (Data.ColumnExists(reader, "hour_ix_2")) this.AddWord(hour_mode, reader["hour_ix_2"]);
4
if (Data.ColumnExists(reader, "hour_ix_3")) this.AddWord(hour_mode, reader["hour_ix_3"]);
5
if (Data.ColumnExists(reader, "hour_ix_4")) this.AddWord(hour_mode, reader["hour_ix_4"]);
6
if (Data.ColumnExists(reader, "hour_ix_5")) this.AddWord(hour_mode, reader["hour_ix_5"]);
7
if (Data.ColumnExists(reader, "hour_ix_6")) this.AddWord(hour_mode, reader["hour_ix_6"]);

Ich musste so "dämlich" programmieren, weil die Spalten-Überschriften 
bei 16x16 und 18x16 unterschiedlich sind. Und als ich die 16x16 neu 
einlesen musste, musste ich diesen Teil anpassen und schwupps war der 
Fehler drin. Sorry + danke fürs Aufpassen!

Ich kann ja 'ne "for(;;){}" draus machen. ;-)

Das Gist ist mit CodeGen v0.12 aktualisiert, es folgt demnächst die 
Umstellung mit CodeGen v0.13 auf das neue Format ^^ mit tables.c.

Zu den Temperaturen in der .accdb:

Am wenigsten Aufwand wäre, wenn die Temperaturen wie Minuten in die 
.accdb eingetragen werden:

Minute = 0 -> SIEBEN GRAD
Minute = 1 -> SIEBEN EIN HALB GRAD
Minute = 2 -> ACHT GRAD
Minute = 3 -> ACHT EIN HALB GRAD

Alles Andere sorgt für Mehraufwand beim Codegen. Das wäre nicht 
dramatisch, verzögert aber das Ergebnis.

Sorry, ich habe nochmal nachgedacht und bin eben erst drauf gekommen.

Nochmal zu "Schließe die Lücken bitte"^^: Nicht nötig !

: Bearbeitet durch User
von Herbert P. (herb3472)


Lesenswert?

Torsten C. schrieb:
> Ich musste so "dämlich" programmieren, weil die Spalten-Überschriften
> bei 16x16 und 18x16 unterschiedlich sind.

Ich kann das gerne vereinheitlichen, bzw. bin schon dabei. Gebt mir doch 
bitte ein Schema vor, wie Ihr es gerne hättet, und ich schau, ob sich 
das mit vertretbarem Aufwand in der .accdb realisieren lässt.


Torsten C. schrieb:
> Minute = 0 -> SIEBEN GRAD
> Minute = 1 -> SIEBEN EIN HALB GRAD
> Minute = 2 -> ACHT GRAD
> Minute = 3 -> ACHT EIN HALB GRAD

Das lässt sich machen. Ich decke jedoch den Temperaturbereich von 0° bis 
40° Grad ab, das würde dann heißen:

minute_input =  0 -> NULL GRAD
minute_input =  1 -> EIN HALBES GRAD
minute_input =  2 -> EIN GRAD
minute_input =  3 -> EIN EIN HALB GRAD

minute_input = 80 -> VIERZIG GRAD

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Ich kann das gerne vereinheitlichen, bzw. bin schon dabei

Wenn Du willst, ist aber inzwischen egal, da ^^ bereits total flexibel 
implementiert. Danke für das Angebot, aber die Arbeit kannst Du Dir 
sparen!

Herbert P. schrieb:
> minute_input = NN -> VIERZIG GRAD

Also:
minute_input = 80 -> VIERZIG GRAD

Dass heißt, dass MINUTE_COUNT von 60 auf 81 steigt und
1
const struct MinuteDisplay tbl_minutes[MINUTE_MODES_COUNT][MINUTE_COUNT]
... wird dann riesen groß!

Versuche bitte mit 0..59 auszukommen:

Torsten C. schrieb:
> Wenn wir den Minuten-Modus nehmen hätten wir von 0..59 dreißig Grad
> in ½-Grad-Schriten, also z.B. 7° .. 36,5°.

... oder 10° .. 39.5° oder whatever!

: Bearbeitet durch User
von Herbert P. (herb3472)


Lesenswert?

Torsten C. schrieb:
> ... oder 10° .. 39.5° oder whatever!

Ok, dann machen wir's von 10 Grad bis 39,5 Grad (ist ja das eigentlich 
für eine Wohnzimmeruhr auch ein zu großer Bereich, aber da gibts 
wenigstens keinen Overflow. Und wenn der Strom ausfällt und die 
Raumtemperatur im Winter daher gegen 0° geht, zeigt die Uhr ohnehin nix 
mehr an ;-)

Ich denke, "ES IST CC GRAD" können wir auch weglassen, es genügt "CC 
GRAD"

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Ok, dann machen wir's von 10 Grad bis 39,5 Grad

+1

> Ich denke, "ES IST CC GRAD" können wir auch weglassen, es genügt
> "CC GRAD"

+1

Du kannst ja erstmal auf die Schnelle auch nur 18°..24° machen und den 
Rest später, also:

16 = 18°
17 = 18.5°
...
28 = 24°

0..15 und 29..59 kannst Du später ergänzen.

von Thomas S. (thomas-st)


Lesenswert?

Herbert P. schrieb:
> [...] und die
> Raumtemperatur im Winter daher gegen 0° geht, [...]

Schade, das "KALT" nicht mehr möglich ist -> "ES IST KALT"

SCNR ;)

Viele Grüße,
Thomas

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Jo,

unter 10°:  ES IST SEHR KALT

über 39.5°: ES IST SEHR WARM

Sorry, konnte auch nicht wiederstehen. ;-)

von Herbert P. (herb3472)


Lesenswert?

Torsten C. schrieb:
> Du kannst ja erstmal auf die Schnelle auch nur 18°..24° machen und den
> Rest später, also:

Tja, hat sich leider was mit "auf die Schnelle". Die Tabelle ist nicht 
das Problem, die ist schon fertig. Ich hab aber Schwierigkeiten, das 
"EIN HALB" auf der Frontplatte noch irgendwie unterzubringen. Wollte es 
ursprünglich getrennt schreiben: "EIN HALB", wird sich aber 
voraussichtlich nicht ausgehen. Es wird nichts anderes übrig bleiben, 
als es zusammen zu schreiben: "EINHALB"

                EIN


UND ZWANZIG

EINHALB



         GRAD


Weiß nicht recht, begeistert bin ich nicht :-(

Tomorrow is another day - vielleicht fliegt mir im Traum eine Lösung zu 
.... die Hoffnung stirbt zuletzt!

Thomas St. schrieb:
>
> Schade, das "KALT" nicht mehr möglich ist -> "ES IST KALT"

Ja, und vielleicht "LAU", "WARM", "SEHR WARM", "HEISS" und "SEHR HEISS" 
auch noch dazu? Grins...

von Herbert P. (herb3472)


Lesenswert?

Torsten C. schrieb:
> Jo,
>
> unter 10°:  ES IST SEHR KALT
>
> über 39.5°: ES IST SEHR WARM
>
> Sorry, konnte auch nicht wiederstehen. ;-)

Wenn Ihr mich quält, mach ich euch ein Layout mit 64 x 64 Buchstaben! 
LOL

von Niels J. (niels)


Lesenswert?

Herbert P. schrieb:
> Thomas St. schrieb:
>>
>> Schade, das "KALT" nicht mehr möglich ist -> "ES IST KALT"
>
> Ja, und vielleicht "LAU", "WARM", "SEHR WARM", "HEISS" und "SEHR HEISS"
> auch noch dazu? Grins...

Neues Projekt: WordThermometer. Vielleicht auch mit Barometer, 
Luftfeuchtigkeitsmesser und prognostiziertem Wetter :D

von Herbert P. (herb3472)


Lesenswert?

Niels Janson schrieb:
> Herbert P. schrieb:
>> Thomas St. schrieb:
>>>
>>> Schade, das "KALT" nicht mehr möglich ist -> "ES IST KALT"
>>
>> Ja, und vielleicht "LAU", "WARM", "SEHR WARM", "HEISS" und "SEHR HEISS"
>> auch noch dazu? Grins...
>
> Neues Projekt: WordThermometer. Vielleicht auch mit Barometer,
> Luftfeuchtigkeitsmesser und prognostiziertem Wetter :D

Hallo Thomas & Niels! Willkommen hier!

Die Wettervorhersage wird dann als Hologramm in eine Kristallkugel 
projiziert.

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Angehängte Dateien:

Lesenswert?

Torsten C. schrieb:
> es folgt demnächst die
> Umstellung mit CodeGen v0.13 auf das neue Format

So OK? (s. Anlage)

Alt, neu, 18x16, 16x16 und das in allen Kombinationen mit gleichem 
Dateinamen. :-(

Ich würde die Dateien im neuen Format gern

* wc24h1816tables.* und
* wc24h1616tables.*

nennen, langsam verliere ich nämlich den Überblick.

Oder findet Ihr das doof?

PS: Warum geht bei der .c die Codeansicht nicht? Hat jemand 'ne Idee?

: Bearbeitet durch User
von Herbert P. (herb3472)


Lesenswert?

Torsten C. schrieb:
>
> Ich würde die Dateien im neuen Format gern
>
> * wc24h1816tables.* und
> * wc24h1616tables.*
>

+1

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Es gab ja schon mal Mecker, weil ich den AutoCode zum Test nicht durch 
den Compiler gejagt hatte. Ich teste nun immer mit dem MSVC-Compiler, 
bevor ich veröffentliche (ich habe auf diesem PC nur den MSVC 
installiert).

Ich blicke da heute Abend nicht mehr durch. Der MSVC hat immer bei

> static const char* display[1][WC_ROWS]

gemeckert. Bei

> const char* display[1][WC_ROWS]

meckert er nicht, das hat wohl irgendwas mit dem 'extern' zu tun!?

Ich wollte nur darauf hinweisen, dass jetzt bei 'display[][]' das 
'static' fehlt.

BTW: Trotz des neuen Namens …

steht da  "#ifndef TABLES_H"
und nicht "#ifndef WC24H1816TABLES_H".

OK?

PS: Ich habe jetzt auf CP1252 umgestellt, bisher UTF8. Ich hoffe, GitHub 
wird den Code dann richtig ausgeben.

PPS: Diese beiden können aus der .accdb gelöscht werden:
1
    WP_DUMMY_2,     // 4 = "4_DUMMY" = ""
2
    WP_DUMMY_3,     // 5 = "5_DUMMY" = ""

Ein 'Schließen der Lücke' ist nicht erforderlich, da die Zuordung über 
die Enum-Bezeichner und nicht über die Zahlen-Werte erfolgt.

PPPS zur Erinnerung: Torsten C. schrieb im
Beitrag "Re: Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?"
> Ich würde beim nächsten Update der Tabellen "END_OF_WORDS"
> bevorzugen, statt "DUMMY".

: Bearbeitet durch User
von Herbert P. (herb3472)


Lesenswert?

Torsten C. schrieb:
>> Ich würde beim nächsten Update der Tabellen "END_OF_WORDS"
>> bevorzugen, statt "DUMMY".

Wie ist das gemeint? Als letzten Tabelleneintrag "END_OF_WORDS"?

Es gibt nur mehr 1 Dummy mit Index 0 in der tbl_words. Alle anderen 
Dummies sind eliminert, die Indizes sind jetzt lückenlos aufsteigend.

Weil ich das Layout der Frontplatte für die Temperaturanzeige etwas 
ändern musste, bin ich im Augenblick dabei, die Tabellen für die 18 x 16 
Matrix etwas umzubauen.

Die Temperaturanzeige wird von 10° bis 40° gehen, die Anzeige wird in 
der Form "ES IST CC (EIN HALB) GRAD (WARM)" erfolgen. "WARM" soll erst 
ab einer Temperatur von 21 Grad angezeigt werden, denke ich. Leider war 
auf der Frontplatte kein Platz mehr für "KALT" ;-)

Da ich ohnehin die ganzen Tabellen etwas umbauen muss, kann ich auch 
gerne verschiedene andere Änderungen vornehmen - z.B. das "ES IST" aus 
den Tabellen entfernen, oder eine "end_of_string"- Marke ("/"..?) 
einfügen.

Bitte um Rückmeldung

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Es gibt nur mehr 1 Dummy mit Index 0

Jau, den meine ich.

> eine "end_of_string"- Marke ("/"..?) einfügen

Der DUMMY steht bereits genau dafür, dass keine weiteren Wörter mehr 
folgen. Das ist ein Ende-Code wie bei einem nullterminierten String.

{WP_ES, WP_IST, WP_NULL, WP_UHR} ist das Gleiche wie
{WP_ES, WP_IST, WP_NULL, WP_UHR, WP_DUMMY},

weil WP_DUMMY = 0 ist und Arrays mit 0 initialisiert werden. Ich kann 
das im AutoCode auch gern so umsetzen:

{WP_ES, WP_IST, WP_NULL, WP_UHR, WP_END_OF_WORDS}

Herbert P. schrieb:
> bin ich im Augenblick dabei, die Tabellen für die 18 x 16
> Matrix etwas umzubauen

Danke, dass Du Dich drum kümmerst, dazu hätte ich nicht die Geduld.

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> die Anzeige wird in der Form "ES IST CC (EIN HALB) GRAD (WARM)" erfolgen.

Macht das nicht unnötig viel Mühe? OK, wenn's ohne andere Nachteile 
geht, warum nicht.

Herbert P. schrieb:
> Leider war auf der Frontplatte kein Platz mehr für "KALT"

Mein Spruch "unter 10°: ES IST SEHR KALT" war eigentlich nicht ernst 
gemeint. Aber bevor wir erst in zwei Wochen diskutieren, was wir bei 
9.5°C und weniger anzeigen, lass uns das lieber jetzt tun.

Ich fange mal an: Die Anzeige blinkt, um einen Fehler anzuzeigen.

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> das "ES IST" aus den Tabellen entfernen

Gibt es einen Grund, warum "ES IST" manchmal in den Stunden und manchmal 
in den Minuten steht? Da es nur 25 Stunden aber 60 Minuten gibt, kostet 
"ES IST" in den Stunden weniger Speicher als in den Minuten.

Was meinst Du mit "aus den Tabellen entfernen"? Also ganz raus nehmen 
und an den Tabellen vorbei separat in der Software steuern???

von Herbert P. (herb3472)


Lesenswert?

Torsten C. schrieb:
> Was meinst Du mit "aus den Tabellen entfernen"? Also ganz raus nehmen
> und an den Tabellen vorbei separat in der Software steuern???

Der Anzeigestring setzt sich ja aus zwei Teilstrings - einem vorderen 
und einem hinteren Teil - zusammen. Der vordere Teil beginnt stets mit 
"ES IST". Da einmal die Stunden, ein andermal die Minuten als erster 
String angezeigt werden (gehandlet wird das in der tbl_modes), ist das 
"ES IST" einmal Teil des Stundenstrings, ein andermal Teil des 
Minutenstrings:

  tbl_hours                tbl_minutes
ES IST HH UHR ----------- UND MM MINUTEN

   tbl_minutes              tbl_hours
ES IST MM MINUTEN NACH ----- HH UHR

Da "ES IST" immer leuchtet, wenn Text angezeigt wird, könnte man es aus 
Speicherspargründen auch in einer extra Tabelle unterbringen (mit 
lediglich einem Record mit den Indizes für "ES" "IST"), oder direkt als 
Konstante reinschreiben (was allerdings imho schon ein 
programmtechnischer Schönheitsfehler wäre). Das würde schon einigen 
Speicherplatz sparen.

Ich werde jetzt einmal parallel zu der alten Tabellenstruktur auch 
Tabellen ohne das "ES IST" anlegen, mal sehen, wie sich das auswirkt.

Torsten C. schrieb:
> Danke, dass Du Dich drum kümmerst, dazu hätte ich nicht die Geduld.

Mir zieht es auch schön langsam den Nerv. Als ich damit anfing, ein 
wenig Kosmetik zu betreiben, hatte ich nicht gedacht, dass sich die 
relativ kleinen Änderungen so gravierend auswirken würden. Aber da ich 
es als wichtig erachte und saubere Strukturen möchte, beisse ich halt in 
den sauren Apfel.

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Ich werde jetzt einmal parallel zu der alten Tabellenstruktur auch
> Tabellen ohne das "ES IST" anlegen, mal sehen, wie sich das auswirkt.

Da Dir das 'schön langsam den Nerv zieht' warte doch erstmal ab, bevor 
das wegen eines Missverständnisses vielleicht Arbeit 'für die Tonne' 
wird.

VG Torsten,
der nun erstmal auf 'Absenden' drückt, um Herbert vielleicht Arbeit zu 
ersparen und an einer umfassenseren Antwort arbeitet.

: Bearbeitet durch User
von Herbert P. (herb3472)


Lesenswert?

Torsten C. schrieb:
> Da Dir das 'schön langsam den Nerv zieht' warte doch erstmal ab, bevor
> das wegen eines Missverständnisses vielleicht Arbeit 'für die Tonne'
> wird.

Sehr aufmerksam, aber ich ackere schon seit gestern daran herum, da muss 
ich jetzt durch:-)

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> … ist das "ES IST" einmal Teil des Stundenstrings, ein andermal
> Teil des Minutenstrings:
>
>   tbl_hours                tbl_minutes
> ES IST HH UHR ----------- UND MM MINUTEN
>
>    tbl_minutes              tbl_hours
> ES IST MM MINUTEN NACH ----- HH UHR

Vielleicht habe ich was übersehen? Würde nicht das Gleiche angezeigt 
werden, die Tabellen folgendes enthalten würden?

  tbl_hours            tbl_minutes
ES IST HH UHR ------- UND MM MINUTEN

  tbl_minutes           tbl_hours
MM MINUTEN NACH ----- ES IST HH UHR

Letzteres ergäbe auch: ES IST MM MINUTEN NACH HH UHR

… weil es keine WP_ES_1 und WP_ES_2 gibt, sondern nur ein einziges 
WP_ES. Und auch kein WP_IST_1 oder WP_IST_2.

Herbert P. schrieb:
> Der Anzeigestring setzt sich ja aus zwei Teilstrings - einem vorderen
> und einem hinteren Teil …

Nicht wirklich!

Das ist wie bei der Mengenlehre: Auf die Frage 'Ist WP_EINS in der Menge 
der anzuzeigenden Wörter?' gibt es nur 'ja' oder 'nein' als Antwort. Die 
Reihenfolge ist in der Frontplatte 'fest eingebrannt' und daher nicht 
mit (Teil-)strings vergleichbar, wo die Buchstaben und Wörter in der 
Reihenfolge vertauscht werden können.

Anders ist das vielleicht bei Deiner Maske (Access-Formular), da macht 
das womöglich einen Unterschied. Aber wir machen die Tabellen ja nicht 
für Deine Maske, sondern für den µC. Und der µC kennt keine Reihenfolge, 
sondern nur 'ein' und 'aus'.

Herbert P. schrieb:
> Da einmal die Stunden, ein andermal die Minuten als erster
> String angezeigt werden

Nochmal Nein. Nicht mal 'so rum' und mal 'anders rum'. Die Wörter werden 
nur ein- oder aus-geschaltet, und zwar gleichzeitig und an festen 
Stellen, sowohl zeitlich als auch räumlich ist da aus Sicht des µC 
keine Reihenfolge.

Die Reihenfolge kommt dadurch zustande, dass ein EINS_1 räumlich vor 
einem EINS_2 angeordnet ist. ABER: Du verschiebst nicht die 'EINS' 
sondern Du schaltest nur 'ein' und 'aus' - manchmal eben EINS_1 und 
manchmal halt EINS_2.

Herbert P. schrieb:
> Da "ES IST" immer leuchtet, wenn Text angezeigt wird, könnte man es aus
> Speicherspargründen auch in einer extra Tabelle unterbringen

Wenn es immer leuchtet: Was soll dann in der Tabelle drin stehen?

Gibt es einen Modus ohne 'ES IST'? Dann könntest Du in tbl_modes ein 
ja/nein-Feld einbauen, also eine boolean-Spalte für 'ES_IST'.

Herbert P. schrieb:
> oder direkt als Konstante reinschreiben (was allerdings imho schon ein
> programmtechnischer Schönheitsfehler wäre)

Frag Frank (ukw), der müsste seinen Code umschreiben. Ich bin noch nicht 
so weit, dass mich das großartig stören würde.

Deine Konstante wäre ein neues Array:
1
uint8_t it_is[2] = {WP_ES, WP_IST};

… welches über die neue boolean-Spalte in tbl_modes gesteuert werden 
könnte.

Oder ist es von der Stunde (0..24) oder der Minute (0..59) abhängig, ob 
{WP_ES, WP_IST} an oder aus ist? Vielleicht im Mitternacht-Mode? Du hast 
den besseren Überblick.

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Torsten C. schrieb:
> Oder ist es von der Stunde (0..24) oder der Minute (0..59) abhängig, ob
> {WP_ES, WP_IST} an oder aus ist? Vielleicht im Mitternacht-Mode? Du hast
> den besseren Überblick.

PS: Falls wir das ändern (Frank? Sag mal was!): Es spricht ja nichts 
dagen, WP_ES und WP_IST bei solchen Abhängigkeiten (z.B. nur im 
Mitternacht-Mode Minuten-Abhäbgig) mal über ein boolean und  "uint8_t 
it_is[2]" zu steuern und mal über die Minuten-Tabelle.

Das würde aber nur was bringen, wenn MAX_HOUR_WORDS dadurch kleiner 
werden würde. Ich denke, die Analyse kann man sich sparen.

@Herbert: Baue "ES IST" in tbl_hours ein, denn so geht es auch:

>  tbl_minutes           tbl_hours
>MM MINUTEN NACH ----- ES IST HH UHR

… ergibt:

   ES IST MM MINUTEN NACH HH UHR

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Nun haben wir ja eigentlich die richtigen LED-Abstände mit den Strips. 
Trotzdem zur Info:

http://www.banggood.com/50Pcs-DC-5V-3MM-x-10MM-WS2812B-SMD-LED-Board-Built-in-IC-WS2812-p-963382.html

von Joachim B. (jar)


Lesenswert?

Torsten C. schrieb:
> Nun haben wir ja eigentlich die richtigen LED-Abstände mit den Strips.
> Trotzdem zur Info:

nun ja 0,20 USD pro Chip sind schon günstig ich kam bei 300 LEDs auf dem 
5m Stripe auf 0,17 €, also ungefähr ähnlich.

hier gibts 96 LEDs/m auf Stripe
http://www.teask.com/96-rgb-5050-leds-5v-programmierbar-ws2812b-led-streifen.html?___store=default
20,04 €/m
0,20 €/ LED

Das ~10mm Raster gibts doch auch als Flächen LED
16x16 LED auf 17x17 cm -> für den kleinen Ribba Rahmen 25x25
http://www.teask.com/5v-16x16-pixel-ws2812b-ws2811-programmierbare-rgb-led-panel.html?___store=default
54,-€ was wieder ähnlich liegt 0,21€/LED ohne Verdrahtungsstress

das wäre ja auch passend für eine 18x16 möglich mit 2 Stripes im 17mm 
LED Abstand, nur eben nicht mit schmaleren Buchstabenabständen aber 
leicht zu verdrahten

hier 144 LEDs/m 31,-€ also auch um 0,21€ / LED auf Stripe
http://www.ebay.de/itm/5V-5050-RGB-144-LEDs-M-SMD-WS2812B-WS2812-Addressable-Digital-Pixel-LED-Strip-DC-/351200754981?pt=US_String_Lights_Fairy_Lights&var=&hash=item51c5323d25






@Herbert,

http://www.ebay.de/itm/Mighty-Mini-ATMega1284p-compatible-with-Arduino-/331463717483?pt=LH_DefaultDomain_0&hash=item4d2cc6f26b

interessant für dich, das ist meiner fertig!

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Joachim B. schrieb:
> 16x16 LED auf 17x17 cm

Über die feinen Drähtchen knapp 16 Ampere? Ob das wohl klappt?

von Joachim B. (jar)


Lesenswert?

Torsten C. schrieb:
> Über die feinen Drähtchen knapp 16 Ampere? Ob das wohl klappt?

du hast ja 2 Einspeisepunkte mindestens! (man sieht nicht alles)

bei unseren 8x16 Panels sind es mehr.

Ich vermesse mal die Ströme wenn ich die 2 8x16 anschliesse.

Ich bin aber nicht sicher ob die WS nicht den Strom drosseln, mein 
Muster mit 116 LEDs bräuchte ja bei voller Helligkeit 60mA (3x20mA) x 
116 = 7A und trotzdem klappt es mit 4A Netzteil und es fliessen nicht 
mal mehr als 4A, aber Helligkeitseinbruch sehe ich auch nicht. Wir 
dürfen nicht vergessen das die Speisespannung 5V ist aber eine LED 
Spannung pro Farbe nie 5V hat, wenn die intergrierten WS2812 sogar 
switchen dann ist der 5V Strom unabhängig vom LED Strom, man müsste das 
Leistungsprodukt herannehmen.

sagen wir mal 2,7V im Mittel x 60mA pro LED waren nur 18W und unter 4A 
an 5V

von Herbert P. (herb3472)


Lesenswert?

Torsten C. schrieb:
> Vielleicht habe ich was übersehen? Würde nicht das Gleiche angezeigt
> werden, die Tabellen folgendes enthalten würden?
>
>   tbl_hours            tbl_minutes
> ES IST HH UHR ------- UND MM MINUTEN
>
>   tbl_minutes           tbl_hours
> MM MINUTEN NACH ----- ES IST HH UHR
>
> Letzteres ergäbe auch: ES IST MM MINUTEN NACH HH UHR

Na klar! Danke, dass Du mir wieder auf die Sprünge geholfen hast, bei 
der Arbeit an den Tabellen vergess' ich immer wieder mal, dass ja für 
die Arrays andere Anforderungen gelten als für die Strings in der Access 
Datenbank.

Zu Beginn der Entwicklung waren Anzeigetexte geplant, die mittlerweile 
aus Platzgründen weggefallen sind ("ES WIRD", "PROSIT NEUJAHR!",...) Das 
Präfix "ES IST" wird mittlerweile in allen Anzeigevarianten verwendet.
Nachdem das jetzt feststeht, könnte man es wirklich in eine eigene 
"Mini-Tabelle" auslagern und dadurch bei den Arrays ordentlich Platz 
einsparen.

Da ich wegen der Temperaturanzeige ohnehin Einiges umbauen muss (auf der 
Frontplatte haben sich einige Änderungen ergeben), spielt das dann auch 
keine große Rolle mehr (für mich zumindest).

Es tut mir natürlich leid, dass dadurch auf Euch auch wieder Arbeit 
zukommt, aber ich denke, dass es schon Sinn macht, die Tabellen 
(hoffentlich ein letztes Mal) zu optimieren.

: Bearbeitet durch User
von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Torsten C. schrieb:

> PS: Falls wir das ändern (Frank? Sag mal was!): Es spricht ja nichts
> dagen, WP_ES und WP_IST bei solchen Abhängigkeiten (z.B. nur im
> Mitternacht-Mode Minuten-Abhäbgig) mal über ein boolean und  "uint8_t
> it_is[2]" zu steuern und mal über die Minuten-Tabelle.

Meinetwegen können wir auf diese Optimierung verzichten, um ein paar 
Bytes zu sparen, die wir sowieso locker übrig haben.

Ob die Einsparung von ein paar Bytes diesen Aufwand lohnt? Auf jeden 
Fall macht es die Sache ein wenig komplizierter, als sie ohnehin schon 
ist. Wenn wir einen Speicherengpass hätten, dann könnte man darauf 
Energie verwenden. Aber wir haben keinen Engpass. Also warum so viel 
Arbeit darauf verwenden?

Wieviel Bytes spart man denn damit ein?

Hauptsache, bis Ende der kommenden Woche (Deadline: 06.02.15) haben wir 
ein Layout, was alles abdeckt und keine Fehler mehr hat. Denn dann geht 
das in die Druckerei. Ich habe von der Druckerei bereits eine Antwort. 
Sie machen die 30 Stück für den gewohnten Preis von 38 EUR - auch wenn 
beim ersten Mal wegen Erstellung der Siebdruckmaske erstmal höhere 
Kosten anfallen.

Wir sollten also die verbleibenden Tage noch nutzen, um alle möglichen 
Anzeigemodi nochmal komplett durchzuchecken. Das erscheint mir 
wichtiger, als jetzt noch ein paar Bytes rauszuschinden, wofür wir den 
Speicherplatz sowieso übrig haben.

: Bearbeitet durch Moderator
von Herbert P. (herb3472)


Angehängte Dateien:

Lesenswert?

Die Frontplatte ist soweit fertig, ich werde die pdf-Datei morgen 
hochladen. Wegen der Temperaturanzeige waren in den Zeilen 6,7, 11 und 
15 einige Änderungen erforderlich. Die Temperatur wird in der Form "ES 
IST CC (EIN HALB) GRAD" angezeigt, ab 21 Grad kommt hinten noch das Wort 
"WARM" dran.

Da ich die Tabellen für die geänderte Frontplatte umbauen musste, habe 
ich auch gleich das "ES IST" in eine eigene Tabelle "tbl_it_is" 
herausgezogen. Dadurch wurden einige Einträge redundant und die Tabellen 
tbl_hours und tbl_minutes sind geschrumpft. Das war jedoch nicht das 
eigentliche Ziel, es hat sich als Nebeneffekt ergeben.

Hier die Frontplatte in ihrer jetzigen, hoffentlich endgültigen Form. Im 
oberen und im unteren Rand habe ich jeweils ein kleine, runde Ausnehmung 
für den IR-Empfänger (oben) und eine Leuchtdiode für die Rückmeldung 
vorgesehen. Sollte das nicht ausreichen, bitte ich um Rückmeldung.

Die neue Version V3 der accdb-Tabellen werde ich ebenfalls morgen 
hochladen.

: Bearbeitet durch User
von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Hier nochmal zur Klarheit die Systematik für Viertel:

> 12:15  Wessi         viertel nach zwölf
> 12:45  Wessi         viertel vor eins

> 12:15  Rhein/Ruhr    viertel nach zwölf
> 12:45  Rhein/Ruhr    viertel vor eins

> 12:15  Ossi          viertel eins
> 12:45  Ossi          dreiviertel eins

> 12:15  Schwaben      hier wie Ossi
> 12:45  Schwaben      hier wie Ossi

> Ossi und Rhein/Ruhr scheint bzgl. "viertel" vertauscht zu sein, siehe
> oben.

> Jetzt nochmal die Systematik für Zwanzig:

> 12:20  Wessi         zehn vor halb eins
> 12:40  Wessi         zehn nach halb eins

> 12:20  Rhein-Ruhr    zwanzig nach
> 12:40  Rhein/Ruhr    zwanzig vor

> 12:20  Ossi          zehn vor halb eins
> 12:40  Ossi          zehn nach halb eins

> 12:20  Schwaben      hier wie Wessi
> 12:40  Schwaben      hier wie Wessi

> Die Schwaben verhalten sich also einmal wie Ossi (für viertel) und
> einmal wie Rhein/Ruhr (für zwanzig).

Kann das richtig sein? Damit wäre die Anzeige für die Schwaben gleich 
wie für die Ossis?

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
>> 12:15  Schwaben      hier wie Ossi
>> 12:45  Schwaben      hier wie Ossi

>> 12:20  Schwaben      hier wie Wessi
>> 12:40  Schwaben      hier wie Wessi
>
>> Die Schwaben verhalten sich also einmal wie Ossi (für viertel) und
>> einmal wie Rhein/Ruhr (für zwanzig).
>
> Kann das richtig sein? Damit wäre die Anzeige für die Schwaben gleich
> wie für die Ossis?

Du hattest mich schon mal korrigiert bzgl. dieses Postings, schon wieder 
vergessen?

Meine Tabelle war falsch, der Satz:

"Die Schwaben verhalten sich also einmal wie Ossi (für viertel) und 
einmal wie Rhein/Ruhr (für zwanzig)"

war aber korrekt.

Also richtig ist:

12:15  Schwaben      hier wie Ossi
12:45  Schwaben      hier wie Ossi

12:20  Schwaben      hier wie *Rhein/Ruhr*
12:40  Schwaben      hier wie *Rhein/Ruhr*

Du hattest das auch schon längst so in Ordnung gebracht. Ich hatte es 
Dir auch schon bestätigt.

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Du hattest das auch schon längst so in Ordnung gebracht. Ich hatte es
> Dir auch schon bestätigt.

Sorry, vergessen:-(

von Joachim B. (jar)


Lesenswert?

@ Frank

ich verliere langsam den roten Faden

du sprachst ja immer von einer 45x45 Frontplatte (eure 45 passt auch in 
meine 50cm mit verlängertem Rand)

welcher RGB LED Abstand schwebt dir den vor?

bei der 16 x 18 Matrix können wir (Herbert & me) mit unser Flächenmatrix 
16x16 im 2cm Raster nix werden.

bei LED Strip passt 60LEDs/m WS2812B 16 x 1,6cm ~ 26cm nicht schön rein
bei LED Strip passt 30LEDs/m WS2812B 16 x 3,2cm ~ 51cm nicht rein

Ausweg Stripes mit 48 LEDs/m 2,1cm aber die finde ich nur in LPD8806 
(was nicht schlimm ist) aber günstige Lieferanten sind rar.

gibt 16 x 2,1  33cm und die 18 Streifen rutschen näher als 2,1cm 
nebeneinander, 33 x 33 Feld in 45 x 45 Platte sieht passend aus, 4,5cm 
Rand.

Aber ich dachte die ganze Zeit an WS2812b.

oder soll es eine große LP werden mit 288 SMD 5050 RGB WS2812b 
handbestückt?

wie solls nach dem Frontplattendesign weitergehen?

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Joachim B. schrieb:
> ich verliere langsam den roten Faden

Den Faden findest Du immer im Artikel WordClock24h. Leg Dir das doch 
mal als Lesezeichen ab ;-)

> du sprachst ja immer von einer 45x45 Frontplatte (eure 45 passt auch in
> meine 50cm mit verlängertem Rand)

Ja, ich spreche immer noch von 45x45.

Wie sieht denn ein "verlängerter" Ribba-Rahmen aus? Verscherbel den bei 
eBay und kauf Dir was anständiges, wenn Du keine rahmenlose Uhr 
verwenden willst:

    https://www.alutech.de/alu---zuschnitt-profil-18.html

Diese Rahmen werden oft bei der 11x10er WordClock verbaut - in schwarz.

> welcher RGB LED Abstand schwebt dir den vor?

Da schwebt nix vor, das ist für die 18x16er Platte längst festgelegt:

 60 LEDs pro Meter

Den LED-Abstand kannst Du selber ausrechnen. Damit ist bei 18x16 die 
beleuchtete Grundfläche 30x30cm (wie bei der Original QlockTwo bzw. auch 
wie bei der 11x10er Word Clock. Der Rest ist Rand, nämlich auf jeder 
Seite (oben unten links rechts) 7,5cm. Aber das habe ich hier schon ein 
dutzendmal geschrieben.

> Ausweg Stripes mit 48 LEDs/m 2,1cm aber die finde ich nur in LPD8806
> (was nicht schlimm ist) aber günstige Lieferanten sind rar.

Ich verstehe nicht, wieso hier wieder die Diskussion darüber aufflammt. 
Das steht für die 18x16er Version längst fest. Zu der 16x16er Platte 
kann ich nichts sagen, da müsste man erstmal 30 Leute überhaupt 
zusammenbekommen.

> oder soll es eine große LP werden mit 288 SMD 5050 RGB WS2812b
> handbestückt?

Quatsch.

Soll ich Dir den Artikel nochmal vorlesen?

> wie solls nach dem Frontplattendesign weitergehen?

Ich werde Freitag, den 06.02. einen Auftrag über 30 Stück an die 
Druckerei geben, 18x16 Buchstaben. Layout macht Herbert. Dieses steht 
soweit fest.

: Bearbeitet durch Moderator
von Herbert P. (herb3472)


Lesenswert?

Joachim B. schrieb:
> welcher RGB LED Abstand schwebt dir den vor?

Die 16x16 Matrix hat Außenabmessungen (ohne Rand) von 32cm x 32cm, der 
LED-Abstand ist quadratisch und misst 20mm x 20mm. Sie ist für Deine und 
meine WS2812 LED Matten gedacht, wohl aber auch für Torstens LED-Module 
verwendbar.

An der 16x16 Frontplatte ist seit Anfang Dezember nichts mehr gemacht 
worden, sie bedarf höchstwahrscheinlich noch einer Überarbeitung.

Die 18 x 18 Matrix misst ohne Rand 30cm x 30cm und hat einen 
horizontalen LED-Abstand von 16,67mm und einen vertikalen von 18,75mm, 
die Außenmaße der Frontplatte betragen 45cm x 45cm. Diese Matrix ist für 
die WS2812 LED-Strips mit 60 LEDs/lfm gedacht.

von Herbert P. (herb3472)


Lesenswert?

Für die 18x 16 Matrix habe ich soeben die Frontplatten-Siebdruckvorlage 
(siehe obiges Muster vom 01.02.2015) als pdf-Datei sowie die 
überarbeiteten Tabellen (Access-Dateien .accdb, .mdb) und Vorlagen 
(Excel-Dateien .xlsx und .xls) hochgeladen.

Da ich die Frontplatte zur Anzeige der Temperatur etwas umgestalten 
musste - die Temperatur wird in der Form "ES IST CC (EIN HALB) GRAD" 
plus bei über 20 1/2° auch "WARM" - angezeigt, musste ich auch die 
Tabellen entsprechend ändern. Das hat auch eine ziemlich umfangreiche 
Überarbeitung der Tabellen erfordert, wobei ich sie gleich auch 
entrümpelt habe (@Torsten: dadurch konnte ich jetzt auch referentielle 
Integrität herstellen). Leider hat sich dadurch für mich die Möglichkeit 
einer Überprüfung mittels Access-Formular etwas eingeschränkt, ich habe 
aber sehr viel Zeit auf die Überprüfung verwendet (bin das ganze 
Wochenende und auch heute bis jetzt daran gesessen) und hoffe, dass ich 
nicht allzu viele Fehler übrig gelassen habe.

Ich wünsche unseren Software-Spezialisten gutes Gelingen!

Eine Frage habe ich noch: hat sich schon jemand Gedanken über die 
Fräsung der MDF-Platte (Trägerplatte für Frontplatte und Elektronik + 
Gehäuse)gemacht?

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Wie sieht denn ein "verlängerter" Ribba-Rahmen aus? Verscherbel den bei
> eBay und kauf Dir was anständiges, wenn Du keine rahmenlose Uhr
> verwenden willst:

Ich finde das rahmenlose Original QlockTwo-Design am schönsten, und das 
ist wohl auch am einfachsten und billigsten zu realisieren.

Einen daran angelehnten Entwurf, wie das kostengünstig und mechanisch 
stabil aufgebaut werden könnte, habe ich ja auf WordCLock24h schon 
vorgestellt: eine 16mm MDF-Platte als Trägerplatte für die 
Acrylglas-Frontplatte mit Ausfräsungen für die LEDs und für die 
Elektronik. Auf die Rückseite ein Rahmen aus Alu-U-Profil aufgeschraubt, 
der einerseits als Gehäuse für die Elektronik und Verdrahtung dient, und 
gleichzeitig als Träger für die Ambilight-LED-Streifen fungiert. Da das 
Alu-Profil nicht ganz am Rand, sondern etwas nach innen versetzt 
montiert ist, ergibt sich erstens ein zierlicherer Eindruck, und 
zweitens kann man so die Ambilight-LED-Streifen schön verstecken.

von Joachim B. (jar)


Lesenswert?

Frank M. schrieb:
> Leg Dir das doch
> mal als Lesezeichen ab ;-)

passiert! (sorry)

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Für die 18x 16 Matrix habe ich soeben die Frontplatten-Siebdruckvorlage
> (siehe obiges Muster vom 01.02.2015) als pdf-Datei sowie die
> überarbeiteten Tabellen (Access-Dateien .accdb, .mdb) und Vorlagen
> (Excel-Dateien .xlsx und .xls) hochgeladen.

Prima! Wie kann ich die jetzt testen bis Freitag?

Offenbar gar nicht. Woran liegts?

Bevor nicht zweifelsfrei geklärt ist, dass das Frontplatten-Design 
kompatibel zur Software ist und auch alles angezeigt werden kann, was 
gewünscht ist, werde ich jedenfalls keine Frontplatten bestellen. Ich 
habe keine Lust, auf 30 Platten sitzenzubleiben, weil die dann 
fehlerhaft sind und diese keiner mehr haben will.

@Torsten: Wann kommst Du dazu, die neuen tables.[ch] zu generieren?

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> und auch alles angezeigt werden kann

Ich ersuche auch um Überprüfung, ob die Position und Größe der "Löcher" 
für IR-Detektor und Umgebungslicht-Sensor ok sind.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Ich ersuche auch um Überprüfung, ob die Position und Größe der "Löcher"
> für IR-Detektor und Umgebungslicht-Sensor ok sind.

Wir haben jetzt 2 Löcher:

  - 1x LED zur Statusanzeige DCF/NET/IR
  - 1x IR-Sensor

Wo soll denn jetzt der Umgebungslicht-Sensor hin? Doch hinter einen 
Buchstaben?

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Wo soll denn jetzt der Umgebungslicht-Sensor hin? Doch hinter einen
> Buchstaben?

Hatte ich gerade zeitgleich geschrieben, wurde aber komischerweise nicht 
Online übernommen :-(

Die derzeit vorhandenen "Löcher" sind lediglich Platzhalter, weil mir 
noch nicht klar war, wie viele LEDs letztendlich gewünscht werden. Da 
die Buchstaben mit einer transparenten Diffusorschicht hinterlegt 
werden, ist die Positionierung des Umgebungslicht-Sensors hinter einem 
Buchstaben wohl suboptimal. Ich stelle mir daher vor, dass der 
Umgebungslicht-Sensor in den oberen Rand kommt, IR-Empfänger und LED(s) 
in den unteren Rand. Das heißt, das obere "Loch" kann so bleiben, unten 
müssen noch 1 oder 2 Löcher dazu kommen. Auch die erforderliche Größe 
der Löcher ist mir noch nicht klar. Ich bitte daher um diesbezügliche 
Rückmeldungen.

Mit den Wörtern sollte es kein Problem geben, da kein Wort entfernt 
wurde, sondern lediglich vorhandene Lücken mit Wörtern für die 
Temperaturanzeige ergänzt wurden. Aber sicher ist sicher, "Vorsicht ist 
die Mutter der Porzellankiste".

: Bearbeitet durch User
von Micha S. (ernie)


Lesenswert?

Herbert P. schrieb:
> Frank M. schrieb:
>> Wo soll denn jetzt der Umgebungslicht-Sensor hin? Doch hinter einen
>> Buchstaben?
>
> Da die Buchstaben mit einer transparenten Diffusorschicht hinterlegt
> werden, ist die Positionierung des Umgebungslicht-Sensors hinter einem
> Buchstaben wohl suboptimal. Ich stelle mir daher vor, dass der
> Umgebungslicht-Sensor in den oberen Rand kommt, IR-Empfänger und LED(s)
> in den unteren Rand. Das heißt, das obere "Loch" kann so bleiben, unten
> müssen noch 1 oder 2 Löcher dazu kommen. Auch die erforderliche Größe
> der Löcher ist mir noch nicht klar. Ich bitte daher um diesbezügliche
> Rückmeldungen.

bei der alten "Wortuhr" sind IR und LDR doch auch hinter einem 
ungenutzten Buchstaben und es funktioniert gut. Warum hier jetzt extra 
Löcher in die Platte einplanen?
Grüße,

Micha

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Die derzeit vorhandenen "Löcher" sind lediglich Platzhalter, weil mir
> noch nicht klar war, wie viele LEDs letztendlich gewünscht werden.

Wir hatten das schon mal diskutiert und sind zu dem Schluss gekommen, 
dass ein Loch mit einer LED zur Statusanzeige reicht.

Begründung: Die LED kann Farbe. Man nutzt einfach verschiedene Farben 
für solche Status-Anzeigen wie DCF  TIME  IR.

> Da
> die Buchstaben mit einer transparenten Diffusorschicht hinterlegt
> werden, ist die Positionierung des Umgebungslicht-Sensors hinter einem
> Buchstaben wohl suboptimal

Bei dem Word Clock-Projekt mit 11x10 Matrix funktioniert das 
wunderbar. Die komplette Frontplatte ist mit der Diffusor-Schicht 
belegt. Sowohl der TSOP als auch der LDR zur Messung der 
Umgebungshelligkeit ist hinter einem Buchstaben angebracht. Es kommt 
also genug durch die Schicht durch.

> Ich stelle mir daher vor, dass der
> Umgebungslicht-Sensor in den oberen Rand kommt

Ok.

> IR-Empfänger und LED(s)
> in den unteren Rand. Das heißt, das obere "Loch" kann so bleiben, unten
> müssen noch 1 oder 2 Löcher dazu kommen.

Eins würde reichen, oder?

> Auch die erforderliche Größe
> der Löcher ist mir noch nicht klar. Ich bitte daher um diesbezügliche
> Rückmeldungen.

Könnte etwas knapp sein jetzt. Welchen Durchmesser haben die Löcher 
jetzt?

> Mit den Wörtern sollte es kein Problem geben, da kein Wort entfernt
> wurde, sondern lediglich vorhandene Lücken mit Wörtern für die
> Temperaturanzeige ergänzt wurden. Aber sicher ist sicher, "Vorsicht ist
> die Mutter der Porzellankiste".

Eben ;-)

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Micha S. schrieb:
> bei der alten "Wortuhr" sind IR und LDR doch auch hinter einem
> ungenutzten Buchstaben und es funktioniert gut. Warum hier jetzt extra
> Löcher in die Platte einplanen?

Bei der alten Word Clock klappt das gut, weil da auch "echter Platz" 
ist. Hinter den unbenutzten Buchstaben ist keine Streifen-Platine und 
keine LED.

Hier benutzen wir durchgehende LED-Stripes. Wir hatten uns auch hier 
darauf geeinigt, dass die WS2812-Stripes nicht unterbrochen werden, 
sondern durchgehen. Das hat dann auch den Vorteil, dass man auf den 
18x16 Zeichen Animationen oder großflächige Matrix-Anzeigen machen kann.

Es gibt daher bei der WordClock24h so gesehen keine ungenutzten 
Buchstaben.

Bleibt jetzt nur die Frage, wieviel "Löcher" und wohin.

Wenn man es genauer betrachtet, hat auch die Word Clock vier Löcher. 
Das sind dort die Minutenpunkte.

von Joachim B. (jar)


Lesenswert?

Frank M. schrieb:
> Es gibt daher bei der WordClock24h so gesehen keine ungenutzten
> Buchstaben.

für alle Freiheiten hast du Recht, ich dachte zwar an IR und Lichtsensor 
über eine ungenutzte LED, grübel gerade....

vermutlich werde ich die Stahlplatten in einer Ecke um ein "jar" 
bereichern

hat was......

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Hier benutzen wir durchgehende LED-Stripes. Wir hatten uns auch hier
> darauf geeinigt, dass die WS2812-Stripes nicht unterbrochen werden,
> sondern durchgehen. Das hat dann auch den Vorteil, dass man auf den
> 18x16 Zeichen Animationen oder großflächige Matrix-Anzeigen machen kann.

Daher fände ich es schon gescheiter, wenn wir den IR-Sensor neben der 
LED im unteren Rand platzieren.

Die Löchlein haben derzeit einen Durchmesser von 2,5 mm. Da sie ja im 
unbeleuchteten Zustand schwarz erscheinen, wären sie relativ 
unauffällig. Ich würde die LED in der Mitte anbringen, den IR-Sensor 
links oder rechts im Abstand von 5 - 10 mm. Der Symmetrie wegen und zur 
Vereinfachung des Verdrahtungsaufwands könnte man auch den 
Raumlicht-Sensor anstatt oben ebenfalls unten anbringen, dann wären da 
drei kleine Löcher nebeneinander.

Ich habe noch eine Frage wegen der Hardware-Beschaffung:

gibt es Bezugsquellen-Empfehlungen oder -Warnungen (China?) bezüglich 
Nucleo-Board (401 oder 411?) und ESP8266?

: Bearbeitet durch User
von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Die Löchlein haben derzeit einen Durchmesser von 2,5 mm. Da sie ja im
> unbeleuchteten Zustand schwarz erscheinen, wären sie relativ
> unauffällig.

Naja, wegen der weiß-grauen Farbschicht als Diffusor erscheinen sie 
nicht ganz schwarz, eher grau.

> gibt es Bezugsquellen-Empfehlungen oder -Warnungen (China?) bezüglich
> Nucleo-Board (401 oder 411?)

Nucleo aus China ist Quatsch. Es gibt sie dort nicht günstiger.

Hier aus Deutschland:

   http://www.exp-tech.de/stm32-nucleo-development-board-for-stm32-f4-series-with-stm32f411re-mcu-supports-arduino

Kostet 12,51 EUR und ist innerhalb von 2 Tagen da. Du bekommst es in 
China nicht billiger.

> und ESP8266?

Ist eigentlich egal, ob eBay oder AliExpress. Es gibt aber erhebliche 
Preisunterschiede. Ich habe für die letzten 4 gerade mal 2,56 EUR das 
Stück bezahlt.

Wichtig: Nimm ein ESP8266 ESP-01. Weil es auf dem Shield direkt die 
entsprechende Buchsenleiste geben wird, um das Board einfach ohne Löten 
anzustecken. Wenn Du nur ein Modul brauchst, kann ich Dir gern eins 
zuschicken.

Ebenso habe ich noch ein paar DS3231-RTC/EEPROM-Boards (welche bei der 
WordClock24h eingesetzt werden) übrig aus meiner letzten Bestellung. 
Wer Interesse hat, kann sich bei mir per PN melden.

: Bearbeitet durch Moderator
von Joachim B. (jar)


Lesenswert?

Frank M. schrieb:
> Es gibt aber erhebliche
> Preisunterschiede. Ich habe für die letzten 4 gerade mal 2,56 EUR das
> Stück bezahlt.

Mist ich 4,97€ fand das günstig.....

von Micha S. (ernie)


Lesenswert?

Frank M. schrieb:


> Wichtig: Nimm ein ESP8266 ESP-01. Weil es auf dem Shield direkt die
> entsprechende Buchsenleiste geben wird, um das Board einfach ohne Löten
> anzustecken.

wenn ich das richtig verstanden habe unterscheiden sich die ESP-01 bis 
12 doch nur durch unterschiedliches Layout, Anschlussmöglichkeiten und 
ob Antenne onboard o. nicht. Wenn ich also nichts gegen löten habe, 
könnte ich auch andere nehmen?
Ich müsste zu Hause noch ein ESP-07 u. 12 in der Schublade liegen haben. 
Softwareseitig müssten die sich ja alle gleich ansprechen lassen.
Grüße,

Micha

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Micha S. schrieb:
> Wenn ich also nichts gegen löten habe, könnte ich auch andere nehmen?

Ja. Ich begründete die Wahl des ESP01 auch nur mit dem Stecker->Buchse.

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Frank M. schrieb:
> Prima! Wie kann ich die jetzt testen bis Freitag?

Oops, gestern um 16:30 gabs was Neues? Habe ich eben gesehen! Ist ja 
richtig was los hier! :-)

> Offenbar gar nicht. Woran liegts?

Woran liegt was? ?!

Ich habe die neue DB gerade versucht einzulesen.

* 35_EIN: 'length = 4' kann nicht sein -> korrigiert auf '3'

* minute__txt_first: Gibt's nicht mehr => Import anpassen, heißt
  nun anders.

* hour_mode: Gibt's nicht mehr => Import anpassen, heißt nun anders.

* minute_input >59: Passt nich ins Array, alles über 59 ignorieren
  => Import anpassen

* Die 'Horror-Seite' lässt sich gerade nicht erzeugen, ich muss ein
  'Überspringen' des Temperatur-Modus einbauen oder due Stunden nicht
  mit hochzählen.

* { MM_50, HM_0, "TEMPERATUR" }: Der HM_0 (leer, überspringen) wurde
  bisher ignoriert => Import anpassen

Ich bin dran.

PS:

https://gist.github.com/TorstenC/623738a39768ceba25cd
https://gist.github.com/TorstenC/22ef6078188d33e36dfe

: Bearbeitet durch User
von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Naja, wegen der weiß-grauen Farbschicht als Diffusor erscheinen sie
> nicht ganz schwarz, eher grau.

Ich denke, dass die Löcher weniger auffallen würden, wenn sie komplett 
transparent wären. Bei der Sieberstellung für die weiß-graue Farbschicht 
sollte es für die Siebdruckerei kein Problem sein, diese Stellen 
abzudecken. Sollten sie nur einen quadratischen Fleck hinter die 
Buchstaben drucken, ist das kein Aufwand. Falls sie jedoch aus Gründen 
der Farbersparnis (spielt bei 30 Stück eigentlich keine Rolle) nur die 
Buchstaben mit Farbe hinterlegen wollen, kann ich gerne eine 
Positiv-Maske für die Sieberstellung anfertigen.

Passt die Lochgröße?

Torsten C. schrieb:
> * 35_EIN: 'length = 4' kann nicht sein -> korrigiert auf '3'
>

Hab die tbl_words jetzt noch einmal überprüft, war (hoffentlich) der 
einzige Fehler.

> * minute__txt_first: Gibt's nicht mehr => Import anpassen, heißt
>   nun anders.
>
> * hour_mode: Gibt's nicht mehr => Import anpassen, heißt nun anders.
>

Die tbl_modes wurde grundlegend geändert. Da die Redundanzen dadurch 
weggefallen sind, konnte ich auch referentielle Integrität herstellen.

> * minute_input >59: Passt nich ins Array, alles über 59 ignorieren
>   => Import anpassen

Beim Index für die Temperaturanzeige ist mir offensichtlich ein Fehler 
unterlaufen :-( Der Index sollte von 1 bis 59 gehen, nicht von 20 bis 
80. Ich werde das umgehend korrigieren.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Ich denke, dass die Löcher weniger auffallen würden, wenn sie komplett
> transparent wären. Bei der Sieberstellung für die weiß-graue Farbschicht
> sollte es für die Siebdruckerei kein Problem sein, diese Stellen
> abzudecken.

Kann sein, dass die Druckerei dafür eine extra Maske braucht, die dann 
auch zusätzlich kostet. Die Erstellung der Siebdruckmaske kostet allein 
schon 220 EUR + MwSt.

> Passt die Lochgröße?

Hm, 2,5mm sind schon arg klein. Warum sollen die Löcher nicht bewusst 
sichtbar sein - so wie bei den 4 Minutenpunkten der Word Clock. 
Klick bitte mal auf den Link.

> Beim Index für die Temperaturanzeige ist mir offensichtlich ein Fehler
> unterlaufen :-( Der Index sollte von 1 bis 59 gehen, nicht von 20 bis
> 80. Ich werde das umgehend korrigieren.

Von 1 bis 59? Warum nicht von 0 bis 59? Das wären exakt 60 Werte.

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Frank M. schrieb:
> Warum nicht von 0 bis 59? Das wären exakt 60 Werte

Du hast natürlich Recht, sorry! 0..59!!!

Passt das neue Format der tables.c + tables.h?

MSVC hat nicht gemeckert.

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Der Index sollte von 1 bis 59 gehen, nicht von 20 bis 80.
1
 {0,{WP_NEUN_1, WP_UND_1, WP_ZWANZIG_1, WP_EIN_3, WP_HALB, WP_GRAD, WP_WARM}}    // 59. Minute in Mode MM_50 = 10

OK, also bei 0..59 dann nicht bis 29,5°C sondern bis 39,5°C.

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

> // total (tbl_minutes + tbl_hours + tbl_modes + illumination):
> // 7198 bytes

Hmmm, viel hat es nicht gebracht, WP_ES und WP_IST zu separieren. OK, es 
ist die Temperatur dazu gekommen und kaum mehr geworden.

: Bearbeitet durch User
von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Kann sein, dass die Druckerei dafür eine extra Maske braucht.

Für die halbtransparente Hintergrundschicht brauchen sie in jedem Fall 
ein eigenes Sieb. Bei der Wordclock 10 x 11 müssen sie wegen der 4 
Eckpunkte die ganze Frontplatte bedrucken, bei der WordClock 24h würde 
eine Fläche von 30,2 x 30,2 cm nur für die Matrix genügen.

Frank M. schrieb:
> Hm, 2,5mm sind schon arg klein. Warum sollen die Löcher nicht bewusst
> sichtbar sein - so wie bei den 4 Minutenpunkten der Word Clock.
> Klick bitte mal auf den Link.

Ich kenn die Uhr, mir würden transparente Löcher besser gefallen. Wie 
groß soll ich sie machen?

Frank M. schrieb:
> Von 1 bis 59? Warum nicht von 0 bis 59? Das wären exakt 60 Werte

Ja klar - ich verfalle blöderweise immer wieder in das Schema vom Access 
Autowert.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Torsten C. schrieb:
> Passt das neue Format der tables.c + tables.h?

Ich sehe keine tables.c in WordClock24h.

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Torsten C. schrieb:
> So OK? (s. Anlage)

Keine Antwort!

Torsten C. schrieb:
> https://gist.github.com/TorstenC/623738a39768ceba25cd
> https://gist.github.com/TorstenC/22ef6078188d33e36dfe
> 03.02.2015 12:28: Bearbeitet durch User

Übersehen?

Wenn's paßt, aktualisiere ich das Wiki!

PS:

Torsten C. schrieb:
> uint8_t it_is[2] = {WP_ES, WP_IST};

Achtung! Diese Zeile fehlt noch im CodeGen V0.13!

: Bearbeitet durch User
von Herbert P. (herb3472)


Lesenswert?

Korrigierte Datenbanken und Frontplatte sind hochgeladen.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Ich kenn die Uhr, mir würden transparente Löcher besser gefallen.

Die LED wird dabei aber sichtbar, da dann kein Diffusor mehr vorhanden 
ist.

> Wie groß soll ich sie machen?

Im Zweifel größer.

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> Die LED wird dabei aber sichtbar, da dann kein Diffusor mehr vorhanden
> ist.

Ich denke mir, dass die Sichtbarkeit der LED durch das Spiegeln der 
Frontplatte etwas abgeschwächt wird - das sieht dann in etwa aus wie das 
Flashlight auf dem Handy (man könnte die Ausnehmungen auch mit schwarzem 
Filzstift transparent anmalen). Aber so, wie die jetzige 
Frontplattenversion (soeben hochgeladen) aussieht, könnte man sie 
durchaus auch grau machen. Die "Löcher" haben jetzt einen Durchmesser 
von 3mm.

: Bearbeitet durch User
von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Torsten C. schrieb:
> Wenn's paßt, aktualisiere ich das Wiki!

Passt nicht:
1
tables.c:5:27: error: static declaration of 'tbl_modes' follows non-static declaration
2
tables.h:143:27: note: previous declaration of 'tbl_modes' was here
3
tables.c:25:22: error: static declaration of 'tbl_hours' follows non-static declaration
4
tables.h:144:22: note: previous declaration of 'tbl_hours' was here
5
tables.c:271:35: error: static declaration of 'tbl_minutes' follows non-static declaration
6
tables.h:145:35: note: previous declaration of 'tbl_minutes' was here
7
tables.c:955:30: error: static declaration of 'illumination' follows non-static declaration
8
tables.h:146:30: note: previous declaration of 'illumination' was here

Die Schlüsselwörter "static" müssen da weg. Das ist ja gerade der Sinn 
der Sache, dass man modulübergreifend drauf zugreifen kann.

Habs bei mir gerade geändert. Dann gehts schon mal durch den Compiler.

: Bearbeitet durch Moderator
von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Habe es gerade auf

    http://uclock.de/

getestet. Es werden nun nur noch die Minuten angezeigt, also zum 
Beispiel
"SIEB ZEHN".

Wie muss ich vorgehen, um "ES IST" wieder zum Leuchten zu bekommen?
Was muss ich machen, um die Stunden wieder zu sehen?

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Ich weiß, warum ich keine Stunden mehr sehe:
1
const uint8_t tbl_hours[HOUR_MODES_COUNT][HOUR_COUNT][MAX_HOUR_WORDS]= {
2
{ // tbl_hours[0][] = Mode 0 leer, überspringen
3
{}, // 0. Stunde in Mode HM_0 = 0
4
{}, // 1. Stunde in Mode HM_0 = 0
5
{}, // 2. Stunde in Mode HM_0 = 0
6
{}, // 3. Stunde in Mode HM_0 = 0
7
{}, // 4. Stunde in Mode HM_0 = 0
8
{}, // 5. Stunde in Mode HM_0 = 0
9
{}, // 6. Stunde in Mode HM_0 = 0
10
{}, // 7. Stunde in Mode HM_0 = 0
11
{}, // 8. Stunde in Mode HM_0 = 0
12
{}, // 9. Stunde in Mode HM_0 = 0
13
{}, // 10. Stunde in Mode HM_0 = 0
14
{}, // 11. Stunde in Mode HM_0 = 0
15
{}, // 12. Stunde in Mode HM_0 = 0
16
{}, // 13. Stunde in Mode HM_0 = 0
17
{}, // 14. Stunde in Mode HM_0 = 0
18
{}, // 15. Stunde in Mode HM_0 = 0

Was soll das? Ich dachte, es sollte Speicherplatz eingespart werden? Und 
was soll das eigentlich mit dem "überspringen"? Warum fangen die Arrays 
nicht bei 0 an, wie sich das gehört?

von Herbert P. (herb3472)


Lesenswert?

Frank M. schrieb:
> tbl_hours[0][] = Mode 0 leer, überspringen

Der tbl_hours[0] Mode 0 wird in der tbl_modes überhaupt nicht (mehr) 
verwendet. Ich habe aber kein Problem damit, die Indizes nachzusortieren 
und grundsätzlich bei 0 beginnen zu lassen.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Herbert P. schrieb:
> Frank M. schrieb:
>> tbl_hours[0][] = Mode 0 leer, überspringen
>
> Der tbl_hours[0] Mode 0 wird in der tbl_modes überhaupt nicht (mehr)
> verwendet. Ich habe aber kein Problem damit, die Indizes nachzusortieren
> und grundsätzlich bei 0 beginnen zu lassen.

Mir egal, wer von euch beiden das löst. Ich dachte, Torsten hätte keine 
Probleme mit Lücken in der Datenbank? Wenn ein Array mit 1 beginnt, dann 
ist da definitionsgemäß bereits eine Lücke ;-)

Ich wundere mich nur, wo der Kommentar "Überspringen" her kommt. Auch 
aus der Datenbank? Einer von Euch beiden muss sich doch da etwas dabei 
gedacht haben.

Naja, jedenfalls läuft

   http://uclock.de

jetzt erstmal. "ES IST" erscheint nun wieder und ich addiere auf 
hour_mode immer eine 1, um die 0 zu überspringen. Schön ist das aber 
nicht.

Ich rufe alle Mitlesenden auf, das mal durchzuchecken. Danke.

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Frank M. schrieb:
> Ich dachte, Torsten hätte keine Probleme mit Lücken in der Datenbank?

Nein, darum hatte ich die Null ja bislang ignoriert und die 'Lücke' 
aufgefüllt. In der .accdb muss da nix gemacht werden.

Aber da die Null nun bei der Temperatur verwendet wird, ist sie halt 
drin.

Ich kann sie nächstes Mal wieder raus nehmen, wenn ich die 'static' 
direktiven entferne. Aber dann muss halt im Code ergänzt werden, dass er 
z.B. bei -1 ??? nicht in der Stunden-Tabelle sucht. Oder habe ich gerade 
'ne Schere im Kopf?

Frank M. schrieb:
> Wie muss ich vorgehen, um "ES IST" wieder zum Leuchten zu bekommen?

Steht doch da:
Ich schrieb:
> uint8_t it_is[2] = {WP_ES, WP_IST};
> Achtung! Diese Zeile fehlt noch im CodeGen V0.13!

: Bearbeitet durch User
von Micha S. (ernie)


Lesenswert?

Frank M. schrieb:
> Herbert P. schrieb:
>> Frank M. schrieb:
>>> tbl_hours[0][] = Mode 0 leer, überspringen
>>
>> Der tbl_hours[0] Mode 0 wird in der tbl_modes überhaupt nicht (mehr)
>> verwendet. Ich habe aber kein Problem damit, die Indizes nachzusortieren
>> und grundsätzlich bei 0 beginnen zu lassen.
>
> Mir egal, wer von euch beiden das löst. Ich dachte, Torsten hätte keine
> Probleme mit Lücken in der Datenbank? Wenn ein Array mit 1 beginnt, dann
> ist da definitionsgemäß bereits eine Lücke ;-)
>
> Ich wundere mich nur, wo der Kommentar "Überspringen" her kommt. Auch
> aus der Datenbank? Einer von Euch beiden muss sich doch da etwas dabei
> gedacht haben.
>
> Naja, jedenfalls läuft
>
>    http://uclock.de
>
> jetzt erstmal. "ES IST" erscheint nun wieder und ich addiere auf
> hour_mode immer eine 1, um die 0 zu überspringen. Schön ist das aber
> nicht.
>
> Ich rufe alle Mitlesenden auf, das mal durchzuchecken. Danke.

welchen Mode soll man denn jetzt durchprobieren? Nur Mode 0 oder alle 
anderen auch? Denn in allen anderen Modi scheint irgendwo ein Wurm drin 
zu sein.

Mode 1: fehlen bei mir die Stunden
Mode 2: nach Null Uhr Elf sagt er Null Uhr Vierzig
Mode 3: Es ist und eine Minute Mitternacht

weiter habe ich jetzt nicht geschaut.

Micha

Grüße,

Micha

von Torsten C. (torsten_c) Benutzerseite


Angehängte Dateien:

Lesenswert?

Micha S. schrieb:
> Mode 1: fehlen bei mir die Stunden
> Mode 2: nach Null Uhr Elf sagt er Null Uhr Vierzig
> Mode 3: Es ist und eine Minute Mitternacht

Hmmm, der C-Code sieht OK aus und im Mock-Up fehlt nur "ES IST". Deine 
Fehler kann ich nicht nachvollziehen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.